From a0f1899c256be987ee4b30bab50d32882236bf74 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Mon, 7 May 2018 23:21:23 -0400 Subject: [PATCH 01/50] flow initialization: Created trunk: develop. From 8ba4f190d5e052bd7cbb0e7561f467052b106123 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Mon, 7 May 2018 23:21:56 -0400 Subject: [PATCH 02/50] flow: Created branch 'feature/morbus'. From 2df1a4f1f4a8fa20ead7b8e002e4d701c3820bf2 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Mon, 7 May 2018 23:59:26 -0400 Subject: [PATCH 03/50] Clean up tag coloring re: issue #3. --- .flow | 7 +++++++ package.json | 2 +- src/index.js | 21 +++++++++++++++++++-- 3 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 .flow diff --git a/.flow b/.flow new file mode 100644 index 0000000..f5f3c4b --- /dev/null +++ b/.flow @@ -0,0 +1,7 @@ +[branchname] +hotfix=hotfix/ +develop=develop +master=default +release=release/ +support=support/ +feature=feature/ diff --git a/package.json b/package.json index 9bdaba4..23dce23 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "DotGraph", - "version": "2.1.0", + "version": "2.1.1", "description": "A proofing format to make a Graphviz graph of a story.", "author": "M. C. DeMarco", "license": "MIT", diff --git a/src/index.js b/src/index.js index 2cb5b10..881bac8 100755 --- a/src/index.js +++ b/src/index.js @@ -25,8 +25,15 @@ var dotGraph = {}; "#F8A19F", "#1CBE4F", "#C4451C", "#C075A6", "#90AD1C", "#B00068", "#AA0DFE", "#FC1CBF", "#1CFFCE", "#F6222E", "#85660D", "#325A9B", "#B10DA1", "#A0A0A0", "#782AB6", - "#565656"] - }; + "#565656"], + paletteExceptions: { + start: "#C8C8C8", + ends: "#C8C8C8", + other: "#FF6666", + untagged: "#FFFFFF", + default: "#FFFFFF" + } + }; var specialPassageList = ["StoryTitle", "StoryIncludes", "StoryAuthor", "StorySubtitle", "StoryMenu", "StorySettings", @@ -269,6 +276,16 @@ context.graph = (function() { if (indx > -1) hue = config.palette[indx%26]; //color alphabet colors styles.push("fillcolor=\"" + hue + "\""); + } else if (pid == storyObj.startNode) { + styles.push("fillcolor=\"" + config.paletteExceptions.start + "\""); + } else if (config.ends && context.passage.hasTag(passage, config.endTag)) { + styles.push("fillcolor=\"" + config.paletteExceptions.ends + "\""); + } else if (_.find(storyObj.unreachable, function(str){return str == passage.name;})) { + styles.push("fillcolor=\"" + config.paletteExceptions.other + "\""); + } else if (config.color == "tag") { + styles.push("fillcolor=\"" + config.paletteExceptions.untagged + "\""); + } else { + styles.push("fillcolor=\"" + config.paletteExceptions.default + "\""); } //Rename the node if a label was passed in. From 96710c39797b157ef661326116fbb1cd87c4e05a Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 8 May 2018 00:07:04 -0400 Subject: [PATCH 04/50] Rename one of the paletteException types. --- src/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.js b/src/index.js index 881bac8..26c0f41 100755 --- a/src/index.js +++ b/src/index.js @@ -29,7 +29,7 @@ var dotGraph = {}; paletteExceptions: { start: "#C8C8C8", ends: "#C8C8C8", - other: "#FF6666", + unreachable: "#FF6666", untagged: "#FFFFFF", default: "#FFFFFF" } @@ -281,7 +281,7 @@ context.graph = (function() { } else if (config.ends && context.passage.hasTag(passage, config.endTag)) { styles.push("fillcolor=\"" + config.paletteExceptions.ends + "\""); } else if (_.find(storyObj.unreachable, function(str){return str == passage.name;})) { - styles.push("fillcolor=\"" + config.paletteExceptions.other + "\""); + styles.push("fillcolor=\"" + config.paletteExceptions.unreachable + "\""); } else if (config.color == "tag") { styles.push("fillcolor=\"" + config.paletteExceptions.untagged + "\""); } else { From 0c34ec11cc892b284218279dab94c758ecdbd42b Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 15 Jul 2018 18:59:19 -0400 Subject: [PATCH 05/50] Fix empty settings passage issue. --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 26c0f41..a19450a 100755 --- a/src/index.js +++ b/src/index.js @@ -542,7 +542,7 @@ context.settings = (function () { else StorySettings = window.document.querySelector('tw-passagedata[name="StorySettings"]'); - if (!StorySettings) + if (!StorySettings || !StorySettings.innerText) return; var dgSettings = (StorySettings.innerText.split("dotgraph:")[1]).split("\n")[0]; From 935281ee3a6a4ed7a8c151909f186c8e4e0d9914 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Mon, 3 Jun 2019 20:43:21 -0400 Subject: [PATCH 06/50] Fix empty dotgraph settings issue. --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index a19450a..9434244 100755 --- a/src/index.js +++ b/src/index.js @@ -542,7 +542,7 @@ context.settings = (function () { else StorySettings = window.document.querySelector('tw-passagedata[name="StorySettings"]'); - if (!StorySettings || !StorySettings.innerText) + if (!StorySettings || !StorySettings.innerText || StorySettings.innerText.indexOf("dotgraph:") < 0) return; var dgSettings = (StorySettings.innerText.split("dotgraph:")[1]).split("\n")[0]; From 93265d99462dbdbe3aba85ba2da77203cc8a9764 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 10:16:32 -0400 Subject: [PATCH 07/50] Add default list of special tags from issue #4. Also color trace. --- src/index.js | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/src/index.js b/src/index.js index 9434244..21f771e 100755 --- a/src/index.js +++ b/src/index.js @@ -2,7 +2,7 @@ var filesaver = require("filesaver.js-npm"); var _ = require("underscore"); var dotGraph = {}; -(function(context) { +(function(context) { var config = {checkpoint: true, checkpointTag: "checkpoint", @@ -14,6 +14,7 @@ var dotGraph = {}; endTag: "End", lastTag: false, omitSpecialPassages: true, + omitSpecialTags: true, omitTags: [], renumber: false, rotation: "TB", @@ -31,6 +32,7 @@ var dotGraph = {}; ends: "#C8C8C8", unreachable: "#FF6666", untagged: "#FFFFFF", + trace: "#FF8000", default: "#FFFFFF" } }; @@ -42,6 +44,10 @@ var dotGraph = {}; "PassageDone", "PassageFooter", "PassageHeader", "PassageReady", "MenuOptions", "MenuShare"]; + var specialTagList = ["annotation", "debug-footer", "debug-header", "debug-startup", + "footer", "haml", "header", "script", "startup", "stylesheet", + "twee2", "transition", "Twine.private", "widget"]; + var storyObj = {title: "Untitled", startNode: 1, startNodeName: "Start", @@ -276,6 +282,8 @@ context.graph = (function() { if (indx > -1) hue = config.palette[indx%26]; //color alphabet colors styles.push("fillcolor=\"" + hue + "\""); + } else if (passage.trace) { + styles.push("fillcolor=\"" + config.paletteExceptions.trace + "\""); } else if (pid == storyObj.startNode) { styles.push("fillcolor=\"" + config.paletteExceptions.start + "\""); } else if (config.ends && context.passage.hasTag(passage, config.endTag)) { @@ -428,11 +436,11 @@ context.passage = (function() { } function hasOmittedTag(passage) { - if (config.omitTags.length == 0) + if (config.omitTags.length == 0 && config.omitSpecialTags == false) return false; else { - for (var t=0; t -1) + return true; + if (config.omitSpecialTags && specialTagList.indexOf(tag) > -1) + return true; } + return false; } function load() { @@ -594,7 +602,8 @@ context.settings = (function () { /> 
\   \ /> 
\ - />  (StoryAuthor, StorySubtitle, etc.)
\ + />  (StoryTitle, StoryMenu, etc.)
\ + />  (script, stylesheet, etc.)
\   "/>
\ />  \ />  \ From 04f6a7e0dc41d79767f17db9b8311e89e4e48af0 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 10:49:43 -0400 Subject: [PATCH 08/50] Downcase end tag re issue #2. --- src/index.html | 2 +- src/index.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.html b/src/index.html index b76146b..262f41b 100644 --- a/src/index.html +++ b/src/index.html @@ -22,7 +22,7 @@

DotGraph Proofing Format

Graph

- Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "End" tag changes the shape of "End" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG. + Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "end" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG.
diff --git a/src/index.js b/src/index.js index 21f771e..21d6f31 100755 --- a/src/index.js +++ b/src/index.js @@ -11,7 +11,7 @@ var dotGraph = {}; countWords: true, display: true, ends: true, - endTag: "End", + endTag: "end", lastTag: false, omitSpecialPassages: true, omitSpecialTags: true, From d7569b3e3a58b8cee0b132ca3c1c66b376cc54a7 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 11:03:28 -0400 Subject: [PATCH 09/50] Add option to "disable" tooltips. (Graphviz will still default them to the node content.) --- src/index.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 21d6f31..317642e 100755 --- a/src/index.js +++ b/src/index.js @@ -20,6 +20,7 @@ var dotGraph = {}; rotation: "TB", scale: true, showNodeNames: false, + tooltips: true, trace: "", palette: ["#FEAF16", "#2ED9FF", "#DEA0FD", "#FE00FA", "#F7E1A0", "#16FF32", "#3283FE", "#1C8356", "#FBE426", "#FA0087", @@ -301,7 +302,8 @@ context.graph = (function() { styles.push("label=\"" + label + "\""); //Add a tooltip. - styles.push("tooltip=" + getNameOrPid(passage, true, true)); + if (config.tooltips) + styles.push("tooltip=" + getNameOrPid(passage, true, true)); return styles; } From 4d24e84c3a70d95bcaf313818261f6c3feb35c3f Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 11:11:49 -0400 Subject: [PATCH 10/50] Configurable extension. --- src/index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 317642e..ae1f6e0 100755 --- a/src/index.js +++ b/src/index.js @@ -10,6 +10,7 @@ var dotGraph = {}; color: "length", countWords: true, display: true, + dotExtension: "txt", ends: true, endTag: "end", lastTag: false, @@ -107,7 +108,7 @@ context.graph = (function() { function saveDot() { var output = document.getElementById("dotfile").value; var blob = new Blob([output], {type: "text/plain;charset=utf-8"}); - filesaver.saveAs(blob, "dot" + Date.now() + ".txt", true); + filesaver.saveAs(blob, "dot" + Date.now() + "." + config.dotExtension, true); } function saveSvg() { From 3cf6145d562912544e330078f4bc1c7dc95287c2 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 11:13:16 -0400 Subject: [PATCH 11/50] Change default dot extension per issue #5. --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index ae1f6e0..819e7e3 100755 --- a/src/index.js +++ b/src/index.js @@ -10,7 +10,7 @@ var dotGraph = {}; color: "length", countWords: true, display: true, - dotExtension: "txt", + dotExtension: "gv", ends: true, endTag: "end", lastTag: false, From bb9f0d8cdd9510ec219c82eac290399687819b28 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 12:06:03 -0400 Subject: [PATCH 12/50] Apply prefix and postfix using gv labels. No UI. --- src/index.js | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/src/index.js b/src/index.js index 819e7e3..9a513e7 100755 --- a/src/index.js +++ b/src/index.js @@ -17,6 +17,8 @@ var dotGraph = {}; omitSpecialPassages: true, omitSpecialTags: true, omitTags: [], + prefix: "", + postfix: "", renumber: false, rotation: "TB", scale: true, @@ -169,7 +171,7 @@ context.graph = (function() { return linkGraph; } - function getNameOrPid(passage, reversed, withCount) { + function getNameOrPid(passage, reversed, withCount, withAffix) { //Used to get the node label in the style requested by the settings, //except in tooltips, where we give the alternate label and a word count. var name; @@ -182,6 +184,8 @@ context.graph = (function() { } if (withCount && config.countWords) name += " (" + passage.wordCount + " word" + (passage.wordCount == 1 ? "" : "s") + ")"; + if (withAffix) + name = config.prefix + name + config.postfix; return scrub(name); } @@ -236,10 +240,9 @@ context.graph = (function() { var styles = stylePassage(passage, label); var links = graphLinks(passage, scrubbedNameOrPid); - - //Push the node itself with styles (because it's always styled in some way). + //Push the node itself and the styles (because it's always styled in some way). result.push("\r\n" + scrubbedNameOrPid + " [" + styles.join(' ') + "]"); - + //Push the link list. result = result.concat(links); @@ -298,13 +301,22 @@ context.graph = (function() { styles.push("fillcolor=\"" + config.paletteExceptions.default + "\""); } - //Rename the node if a label was passed in. - if (label) - styles.push("label=\"" + label + "\""); + //Rename the node if a label or prefix was passed in. + if (label || config.prefix || config.postfix) { + if (label) + styles.push("label=\"" + config.prefix + label + config.postfix + "\""); + else + styles.push("label=" + getNameOrPid(passage, false, false, true)); + } - //Add a tooltip. - if (config.tooltips) + //Add a tooltip. + /*if ((config.prefix || config.postfix) && !config.tooltips) { + //In the prefix case we don't want to default to the auto-tip, but normally we do. + styles.push("tooltip=" + getNameOrPid(passage)); + } else*/ + if (config.tooltips) { styles.push("tooltip=" + getNameOrPid(passage, true, true)); + } return styles; } From a2ebf94c235d763ed328e55131b4b10a1d93b575 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 12:27:21 -0400 Subject: [PATCH 13/50] Fix some fixes. Note: previous feature was re: issue #7. --- src/index.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/index.js b/src/index.js index 9a513e7..1171a01 100755 --- a/src/index.js +++ b/src/index.js @@ -309,11 +309,7 @@ context.graph = (function() { styles.push("label=" + getNameOrPid(passage, false, false, true)); } - //Add a tooltip. - /*if ((config.prefix || config.postfix) && !config.tooltips) { - //In the prefix case we don't want to default to the auto-tip, but normally we do. - styles.push("tooltip=" + getNameOrPid(passage)); - } else*/ + //Add a tooltip. if (config.tooltips) { styles.push("tooltip=" + getNameOrPid(passage, true, true)); } @@ -589,6 +585,7 @@ context.settings = (function () { config.display = document.getElementById("displayCheckbox") ? document.getElementById("displayCheckbox").checked : true; config.ends = document.getElementById("endsCheckbox") ? document.getElementById("endsCheckbox").checked : false; config.omitSpecialPassages = document.getElementById("specialCheckbox") ? document.getElementById("specialCheckbox").checked : false; + config.omitSpecialTags = document.getElementById("specialTagCheckbox") ? document.getElementById("specialTagCheckbox").checked : false; config.renumber = document.getElementById("renumberCheckbox") ? document.getElementById("renumberCheckbox").checked : false; config.rotation = document.querySelector("input[name='rotateCheckbox']:checked") ? document.querySelector("input[name='rotateCheckbox']:checked").value : "TB"; config.scale = document.getElementById("scaleCheckbox") ? document.getElementById("scaleCheckbox").checked : true; @@ -617,8 +614,8 @@ context.settings = (function () { /> 
\   \ /> 
\ - />  (StoryTitle, StoryMenu, etc.)
\ - />  (script, stylesheet, etc.)
\ + />  (StoryTitle, etc.) \ + />  (script, etc.)
\   "/>
\ />  \ />  \ From 715688ef6409a2d4de8d852a4aaa09dca29d31df Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 17:11:29 -0400 Subject: [PATCH 14/50] flow: Closed 'morbus'. From 4fb4d87849e10768b6f7430274d72026ac3a39a1 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 4 Jun 2019 17:12:01 -0400 Subject: [PATCH 15/50] flow: Created branch 'feature/snowstick'. From 83b56f06ef6e1fc8a9e317951075ce507469815b Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Wed, 5 Jun 2019 00:59:20 -0400 Subject: [PATCH 16/50] Color for snowstick. --- src/index.js | 62 +++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 47 insertions(+), 15 deletions(-) diff --git a/src/index.js b/src/index.js index 1171a01..d21f9ab 100755 --- a/src/index.js +++ b/src/index.js @@ -23,6 +23,8 @@ var dotGraph = {}; rotation: "TB", scale: true, showNodeNames: false, + snowstick: false, + snowstickObj: {}, tooltips: true, trace: "", palette: ["#FEAF16", "#2ED9FF", "#DEA0FD", "#FE00FA", "#F7E1A0", @@ -37,7 +39,9 @@ var dotGraph = {}; unreachable: "#FF6666", untagged: "#FFFFFF", trace: "#FF8000", - default: "#FFFFFF" + default: "#FFFFFF", + read: "#B3EE3A", + leaf: "#698B22" } }; @@ -258,7 +262,9 @@ context.graph = (function() { var tag = passage.theTag; //Start with any special shape for the passage. - if (passage.trace) { + if (config.snowstick && passage.ssBookmark) { + styles.push("shape=note"); + } else if (passage.trace) { styles.push("shape=hexagon"); } else if (pid == storyObj.startNode || _.find(storyObj.unreachable, function(str){return str == passage.name;})) { styles.push("shape=doublecircle"); @@ -287,6 +293,10 @@ context.graph = (function() { if (indx > -1) hue = config.palette[indx%26]; //color alphabet colors styles.push("fillcolor=\"" + hue + "\""); + } else if (config.snowstick && passage.ssLeaf) { + styles.push("fillcolor=\"" + config.paletteExceptions.leaf + "\""); + } else if (config.snowstick && passage.ssRead) { + styles.push("fillcolor=\"" + config.paletteExceptions.read + "\""); } else if (passage.trace) { styles.push("fillcolor=\"" + config.paletteExceptions.trace + "\""); } else if (pid == storyObj.startNode) { @@ -427,6 +437,12 @@ context.passage = (function() { passageObj.omit = hasOmittedTag(passageObj); passageObj.trace = (config.trace && source.innerText.indexOf(config.trace) > -1); + //SnowStick. + if (config.snowstick) { + passageObj.ssLeaf = (config.snowstickObj.leaf.indexOf(passageObj.name) > -1); + passageObj.ssRead = (config.snowstickObj.read.indexOf(passageObj.name) > -1); + passageObj.ssBookmark = (config.snowstickObj.bookmark == passageObj.name); + } return passageObj; } @@ -554,6 +570,17 @@ context.settings = (function () { } function load() { + //Check localStorage for snowstick. + try { + config.snowstickObj["read"] = localStorage.getItem("snowstick-read") ? JSON.parse(localStorage.getItem("snowstick-read")) : []; + config.snowstickObj["leaf"] = localStorage.getItem("snowstick-leaf") ? JSON.parse(localStorage.getItem("snowstick-leaf")) : []; + config.snowstickObj["bookmark"] = localStorage.getItem("snowstick-bookmark") ? localStorage.getItem("snowstick-bookmark") : ""; + config.snowstick = (config.snowstickObj.leaf.length > 0 || config.snowstickObj.read.length > 0 || config.snowstickObj.bookmark.length > 0); + } catch (e) { + config.snowstick = false; + console.log("Error checking local storage for SnowStick data: " + e.description); + } + //Parse the StorySettings for dotgraph presets. var StorySettings; if (window.document.getElementById("storeArea")) @@ -561,19 +588,23 @@ context.settings = (function () { else StorySettings = window.document.querySelector('tw-passagedata[name="StorySettings"]'); - if (!StorySettings || !StorySettings.innerText || StorySettings.innerText.indexOf("dotgraph:") < 0) - return; - - var dgSettings = (StorySettings.innerText.split("dotgraph:")[1]).split("\n")[0]; - try { - dgSettings = JSON.parse(dgSettings); - } catch(e) { - console.log("Found but couldn't parse dotgraph settings: " + dgSettings); - return; + if (StorySettings && StorySettings.innerText && StorySettings.innerText.indexOf("dotgraph:") > -1) { + var dgSettings = (StorySettings.innerText.split("dotgraph:")[1]).split("\n")[0]; + try { + dgSettings = JSON.parse(dgSettings); + } catch(e) { + console.log("Found but couldn't parse dotgraph settings: " + dgSettings); + return; + } + _.each(dgSettings, function(value, key) { + //Do not reset snowstick to true if there's no data. + if (key != "snowstick" || !value) + config[key] = value; + }); } - _.each(dgSettings, function(value, key) { - config[key] = value; - }); + //Switch color to snowstick if there's data. + if (config.snowstick) + config.color = "snow"; } function parse() { @@ -611,7 +642,8 @@ context.settings = (function () { />
\ />  \ />  \ - /> 
\ + />  \ + /> 
\   \ /> 
\ />  (StoryTitle, etc.) \ From 4b52c3915867171f7e385ba4e86cb22e12a17bc7 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Wed, 5 Jun 2019 10:54:24 -0400 Subject: [PATCH 17/50] Improve handling of snowstick color. --- src/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.js b/src/index.js index d21f9ab..80a6ca6 100755 --- a/src/index.js +++ b/src/index.js @@ -642,8 +642,8 @@ context.settings = (function () { />
\ />  \ />  \ - />  \ - /> 
\ + />  ' + + (config.snowstick ? '/> ' : '') + '
\   \ /> 
\ />  (StoryTitle, etc.) \ From a6677b348d453a909f721e7b3e5f85d838f4a03c Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Mon, 10 Jun 2019 22:01:37 -0400 Subject: [PATCH 18/50] Add unplanned feature of sublisting tags for clustering. --- src/index.html | 2 +- src/index.js | 17 ++++++++++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/index.html b/src/index.html index 262f41b..7c74295 100644 --- a/src/index.html +++ b/src/index.html @@ -9,7 +9,7 @@ body {margin:3%;} tw-storydata {display:none;} span#stats {font-style:italic;} - input#omitTags {width:30%;} + input#omitTags, input#clusterTags {width:30%;} label {white-space:nowrap;} div#notes {font-size:smaller;width:45%;padding-top:20px;float:right;} diff --git a/src/index.js b/src/index.js index 80a6ca6..f80e888 100755 --- a/src/index.js +++ b/src/index.js @@ -7,6 +7,7 @@ var dotGraph = {}; var config = {checkpoint: true, checkpointTag: "checkpoint", cluster: false, + clusterTags: [], color: "length", countWords: true, display: true, @@ -139,7 +140,8 @@ context.graph = (function() { if (config.cluster) { buffer = buffer.concat(writeClusters(storyObj.tagObject)); - } else if (config.color == "tag") { + } + if (config.color == "tag" && storyObj.tags.length != config.clusterTags.length) { buffer = buffer.concat(writeTagKey(storyObj,config)); } @@ -341,7 +343,7 @@ context.graph = (function() { var clusters = []; var clusterIndex = 0; for (var tag in tagObject) { - if (tagObject.hasOwnProperty(tag) && !context.settings.isOmittedTag(tag)) { + if (tagObject.hasOwnProperty(tag) && !context.settings.isOmittedTag(tag) && (config.clusterTags.length == 0 || config.clusterTags.indexOf(tag) > -1)) { clusters.push("subgraph cluster_" + clusterIndex + " {"); clusters.push("label=" + scrub(tag)); clusters.push("style=\"rounded, filled\" fillcolor=\"ivory\""); @@ -393,8 +395,9 @@ context.init = (function() { //Private. function activateForm() { document.getElementById("settingsForm").addEventListener('click', context.graph.convert, false); - document.getElementById("omitTags").addEventListener('change', context.graph.convert, false); - document.getElementById("trace").addEventListener('change', context.graph.convert, false); + document.getElementById("clusterTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); + document.getElementById("omitTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); + document.getElementById("trace").addEventListener('input', _.debounce(context.graph.convert,1000), false); document.getElementById("editButton").addEventListener('click', context.graph.edit, false); document.getElementById("saveDotButton").addEventListener('click', context.graph.saveDot, false); @@ -611,7 +614,7 @@ context.settings = (function () { //Check for config changes. config.checkpoints = document.getElementById("checkpointsCheckbox") ? document.getElementById("checkpointsCheckbox").checked : false; config.cluster = document.getElementById("clusterCheckbox") ? document.getElementById("clusterCheckbox").checked : false; -//rewriting to bw/length/tag + config.clusterTags = document.getElementById("clusterTags") ? splitAndTrim(document.getElementById("clusterTags").value) : []; config.color = document.querySelector("input[name='colorCheckbox']:checked") ? document.querySelector("input[name='colorCheckbox']:checked").value : "length"; config.display = document.getElementById("displayCheckbox") ? document.getElementById("displayCheckbox").checked : true; config.ends = document.getElementById("endsCheckbox") ? document.getElementById("endsCheckbox").checked : false; @@ -648,11 +651,11 @@ context.settings = (function () { /> 
\ />  (StoryTitle, etc.) \ />  (script, etc.)
\ -   "/>
\ +   "/>
\ />  \ />  \ /> 
\ - />  \ + />  "/>
\   
\ />  \ />  \ From 35a9855bd7e3463eb1aa53bd308c56a71e25c405 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 11 Jun 2019 11:56:23 -0400 Subject: [PATCH 19/50] Use an HSV range for read and leaf colors. --- src/index.js | 37 +++++++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/src/index.js b/src/index.js index f80e888..d3580b9 100755 --- a/src/index.js +++ b/src/index.js @@ -41,8 +41,8 @@ var dotGraph = {}; untagged: "#FFFFFF", trace: "#FF8000", default: "#FFFFFF", - read: "#B3EE3A", - leaf: "#698B22" + leafHue: 0.30, + readHue: 0.22 } }; @@ -59,7 +59,7 @@ var dotGraph = {}; var storyObj = {title: "Untitled", startNode: 1, - startNodeName: "Start", + startNodeName: "Start", leaves: 0, links: 0, tightEnds: 0, @@ -206,6 +206,10 @@ context.graph = (function() { return name; } + function makeHSV(hue, sat, val) { + return hue.toFixed(2) + "," + sat.toFixed(2) + "," + val.toFixed(2); + } + function passages() { //Graph passages. var subbuffer = []; @@ -259,6 +263,8 @@ context.graph = (function() { var styles = []; var hue = 0; + var sat = 0; + var val = 1; var pid = passage.pid; var content = passage.content; var tag = passage.theTag; @@ -288,17 +294,32 @@ context.graph = (function() { //Calculate color. if (config.color == "length") { - hue = Math.round(100 * (Math.min(1.75, passage.textLength / storyObj.avLength)) / 3)/100; //HSV red-to-green range + //Graphviz supports HSV, so use it to create a red-to-blue/green range + hue = Math.round(100 * (Math.min(1.75, passage.textLength / storyObj.avLength)) / 3)/100; styles.push("fillcolor=\"" + hue + ",0.66,0.85\""); } else if (config.color == "tag" && tag) { var indx = storyObj.tags.indexOf(tag); if (indx > -1) hue = config.palette[indx%26]; //color alphabet colors styles.push("fillcolor=\"" + hue + "\""); + } else if (config.snowstick && passage.ssLeaf && ((config.ends && context.passage.hasTag(passage, config.endTag)) || passage.leaf)) { + //Solid real leaves for clarity. + hue = config.paletteExceptions.leafHue; + styles.push("fillcolor=\"" + makeHSV(hue,0.90,0.50) + "\""); } else if (config.snowstick && passage.ssLeaf) { - styles.push("fillcolor=\"" + config.paletteExceptions.leaf + "\""); + //ssLeaf has been set to a fraction representing how recently it was read (0 for unread). + //Use it to vary both saturation and value. + hue = config.paletteExceptions.leafHue; + sat = passage.ssLeaf; + val = Math.round(100 * passage.ssLeaf / 5) / 100 + 0.50; //Darker value range. + styles.push("fillcolor=\"" + makeHSV(hue,sat,val) + "\""); } else if (config.snowstick && passage.ssRead) { - styles.push("fillcolor=\"" + config.paletteExceptions.read + "\""); + //ssRead has been set to a fraction representing how recently it was read (0 for unread). + //Use it to vary both saturation and value. + hue = config.paletteExceptions.readHue; + sat = passage.ssRead; + val = Math.round(100 * passage.ssRead / 5) / 100 + 0.79; //Lighter value range. + styles.push("fillcolor=\"" + makeHSV(hue,sat,val) + "\""); } else if (passage.trace) { styles.push("fillcolor=\"" + config.paletteExceptions.trace + "\""); } else if (pid == storyObj.startNode) { @@ -442,8 +463,8 @@ context.passage = (function() { //SnowStick. if (config.snowstick) { - passageObj.ssLeaf = (config.snowstickObj.leaf.indexOf(passageObj.name) > -1); - passageObj.ssRead = (config.snowstickObj.read.indexOf(passageObj.name) > -1); + passageObj.ssLeaf = Math.max(config.snowstickObj.leaf.indexOf(passageObj.name), 0) / Math.max(config.snowstickObj.leaf.length,1); + passageObj.ssRead = Math.max(config.snowstickObj.read.indexOf(passageObj.name), 0) / Math.max(config.snowstickObj.read.length,1); passageObj.ssBookmark = (config.snowstickObj.bookmark == passageObj.name); } return passageObj; From c9cbfcc821726907ac4f02ac99135536a1e71579 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Wed, 12 Jun 2019 11:05:50 -0400 Subject: [PATCH 20/50] Add snowstick here, for want of a Twine package manager. --- README.md | 4 + snowstick/README.md | 70 ++++++++++ snowstick/snowstick.css | 49 +++++++ snowstick/snowstick.js | 302 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 425 insertions(+) create mode 100644 snowstick/README.md create mode 100644 snowstick/snowstick.css create mode 100644 snowstick/snowstick.js diff --git a/README.md b/README.md index 650c147..92b872c 100755 --- a/README.md +++ b/README.md @@ -13,6 +13,10 @@ in that case it will still give you the text of the dot source file, as well as DotGraph may fail to save the SVG in Safari; if it fails, try a different browser. +## SnowStick + +SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman-based story formats in order to track your reading/proofing progress and graph it with DotGraph. It can also be used without DotGraph. See [its separate README](snowstick/README.md) for more details. + ## Versions ### 2.1.0 diff --git a/snowstick/README.md b/snowstick/README.md new file mode 100644 index 0000000..bf262a4 --- /dev/null +++ b/snowstick/README.md @@ -0,0 +1,70 @@ +# SnowStick + +SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman (or other story formats based on it), in order to track your reading/proofing progress and graph it with DotGraph. SnowStick can be used without DotGraph, in which case you can still tell where you've been by the link styling (crossed-out for completed branches, squiggly underlining for previously visited links, and no alteration for unvisited links). + + +## Installation + +### Twine 2 + +1. Put the javascript from `snowstick.js` into your Story JavaScript using the Twine menu item *Edit Story JavaScript*. +2. Set a mode manually at the top of the javascript (see below). +3. Put the CSS from `snowstick.css` into your Story Stylesheet using the Twine menu item *Edit Story Stylesheet*. + +### TweeGo + +1. Save the files `snowstick.js` and `snowstick.css` to the directory that contains your story file(s). +2. To change the mode, edit the configuration at the top of `snowstick.js` using your favorite text editor. + +### Twine 1 or Twee + +(This applies to any Twee processor, including TweeGo if you prefer to do it this way.) + +1. Put the javascript from `snowstick.js` into a passage tagged *script*. +2. Set a mode manually at the top of the javascript (see below). +3. Put the CSS from `snowstick.css` into a passage tagged *stylesheet*. + +## Mode + +SnowStick has two main `modes`, *proof* and *read*, which can be set at the top of the SnowStick JavaScript. + + var config = { + mode: 'read', + openBookmark: true, + leafedMessage: ' (all children checked) ' + }; + +In *proof* mode: +* the passage title appears in a footer, and a note appears when the branch is completely proofed; you can change the note using the `leafedMessage` option. +* the passage is only marked proofed when the footer checkbox is checked off. +* the links are restyled according to whether they're completely new, already proofed, or completed. + +In *read* mode: +* the percentage read is the only added UI element. +* the passage is automatically marked read when read. +* the links are restyled according to whether they're completely new, previously read, or completed. + +There is also a *clear* mode for clearing all read data from the current browser. +You should use this when switching between stories, because SnowStick currently does not handle more than one story at a time. + +In *off* mode, SnowStick is turned off (without uninstalling the code). + +## Bookmarking + +SnowStick will, optionally, start the story from the passage you left off at. If the story format is managing your story state (or if state matters), you may want to turn this feature off by setting `openBookmark` to *false*. You can switch it on and off again as necessary to restart the story. + +## Issues + +SnowStick stores its data in your browser's localStorage, so for it to work you must open your story in the same browser and not clear or disable your browser's local storage while reading. You can make changes to the story and republish it, however, without confusing SnowStick. + +As mentioned above, SnowStick needs to be cleared between stories. To read more than one story at a time, use a different browser for each story (*e.g.,* Chrome vs. Brave). + +## Building + +There is no build process. + +## Versions + +### 0.1 + +Needs to be cleared between stories. diff --git a/snowstick/snowstick.css b/snowstick/snowstick.css new file mode 100644 index 0000000..315163e --- /dev/null +++ b/snowstick/snowstick.css @@ -0,0 +1,49 @@ +/* SnowStick 0.1 + supporting CSS for snowstick + see snowstick.js for details + */ + +/* the footer only appears in proofing mode, not in reading mode */ + +#snowstick-footer { + background-color: lightsalmon; + position: bottom center; + width:100%; +} + +#snowstick-name { + font-weight:bold; + font-style: italic; +} + +/* the percentage read always appears; + remove it by setting display to none instead of inline-block */ + +#snowstick-percent { + display: inline-block; + float: right; +} + +.snowstick-read #snowstick-percent { + color: darkslategray; + padding:3px 6px; + border: 1px solid slategray; + border-radius: 3px; +} + +/* styling of completed leaf nodes and of read (or proofed) nodes */ + +body.snowstick a.snowstick-read { + text-decoration-style: wavy; + text-decoration-line: underline; + text-decoration-color: #cc8929; + border: none; +} + +body.snowstick a.snowstick-leaf, +body.snowstick a.snowstick-read.snowstick-leaf { + text-decoration-style: solid; + text-decoration-line: line-through; + text-decoration-color: black; +} + diff --git a/snowstick/snowstick.js b/snowstick/snowstick.js new file mode 100644 index 0000000..7c8bdfc --- /dev/null +++ b/snowstick/snowstick.js @@ -0,0 +1,302 @@ +/* SnowStick 0.1 + M. C. DeMarco, 2019 + a plugin for reading/proofing Twine stories that use Snowman-based story formats. + for more information, see http://mcdemarco.net/tools/scree/snowstick/ + MIT License + */ + +/* Installation: + * put this js into your story javascript, and the CSS in snowstick.css into your story stylesheet. + */ + + +/* TODO: + * support multiple stories on the same localStorage. + * (right now only works on one story at a time; see clear mode) + */ + +var SnowStick = function(){ + + /* Configuration options: + * + * mode: + * proof mode: + * the passage title appears in a footer, and a note appears when the branch is completely proofed. + * the passage is only marked proofed when the footer checkbox is checked off. + * the links are restyled according to whether they're completely new, already proofed, or completed. + * read mode: + * the percentage read is the only added UI element. + * the passage is automatically marked read when read. + * the links are restyled according to whether they're completely new, previously read, or completed. + * clear mode: + * clears snowstick data so you can start over on the same story. + * off mode: + * turns snowstick off without uninstalling the code. + * + * bookmark: + * reopen story to the last proofed passage. + * + * leafedMessage: + * message shown in the footer for fully-proofed leaves of the story. + */ + + var config = { + mode: 'read', + openBookmark: true, + leafedMessage: ' (all children checked) ' + }; + + var previous = ""; + + // Here there be dragons. + + function init() { + //Test init. + if (config.mode == 'off') + return; + if (config.mode == 'clear') { + clear("read"); + clear("leaf"); + return; + } + + //Create the proofing UI. + if (config.mode == 'read') + $("body").append('
0%
'); + else + $("body").append(''); + //This class is used to change link styles, including crossing out leafed options. + $("body").addClass("snowstick").addClass("snowstick-" + config.mode); + + $(document).on('startstory start.sm.story', function() { + //Extend the passages object. + var proofs = retrieve("read"); + var leafs = retrieve("leaf"); + for (var p=0; p -1); + pass.leafed = (leafs.indexOf(pass.name) > -1); + } + } + + //Initialize the percentage. + $("#snowstick-percent").html(Math.round(100 * proofs.length/window.story.passages.length) + "%"); + + //If there's a bookmark saved, go to it. + if (config.openBookmark) { + previous = SnowStick.retrieve("bookmark",true); + if (previous && _.findWhere(window.story.passages, {name: previous})) { + window.story.startPassage = (_.findWhere(window.story.passages, {name: previous})).id; + $("#snowstick-percent").attr("title",previous); + } + } else { + //Need to unset the bookmark to avoid loop issues. + SnowStick.store("bookmark","",true); + } + }); + + if (config.mode == 'read') { + $(document).on('showpassage:after shown.sm.passage', function(event, passage) { + if (window.passage.name) { + window.passage.proofed = true; + var newLength = SnowStick.pusher("read",window.passage.name,true); + $("#snowstick-percent").html(Math.round(100 * newLength/window.story.passages.length) + "%"); + //Put the passage id and title in a tooltip. + $("#snowstick-percent").attr("title",window.passage.id + ": " + window.passage.name); + + //Style the links. Expensive. + $("#passage a[data-passage]").each(function(){ + var passageName = _.unescape($(this).data("passage")); + var targetPassage = _.findWhere(window.story.passages, {name: passageName}); + if (targetPassage) { + if (targetPassage.proofed) + $(this).addClass("snowstick-read"); + if (targetPassage.leafed) + $(this).addClass("snowstick-leaf"); + } + }); + + //Do the leaf checking. Counts are the same when all leafed. + //The other case covers simple loops where the only remaining target is where we just were. + var linkCount = $('#passage a[data-passage]').length; + var leafCount = $('#passage a.snowstick-leaf').length; + var previous = SnowStick.retrieve("bookmark",true); + if (window.passage.name && (linkCount == leafCount || + (linkCount - leafCount == 1 && previous && previous == + _.unescape($('#passage a[data-passage]:not(.snowstick-leaf)').data("passage"))))) { + $('#snowstick-leafed').show(); + //push the leaf; the function will check if it's new. + window.passage.leafed = true; + SnowStick.pusher("leaf",window.passage.name,true); + } else { + $('#snowstick-leafed').hide(); + } + } + }); + } else {//mode == 'proof' + $(document).on('showpassage:after', function(event, passage) { + if (window.passage.name) { + //Write the name to the footer and the id to its tooltip, in case someone cares. + $("#snowstick-name").html(window.passage.name).attr("title",window.passage.id); + + //Show the checkbox with its value. + $("#snowstick-check").prop("checked",window.passage.proofed); + } + //Style the links. Expensive. + $("#passage a[data-passage]").each(function(){ + var passageName = _.unescape($(this).data("passage")); + var targetPassage = _.findWhere(window.story.passages, {name: passageName}); + if (targetPassage) { + if (targetPassage.proofed) + $(this).addClass("snowstick-read"); + if (targetPassage.leafed) + $(this).addClass("snowstick-leaf"); + } + }); + //Regardless, do the leaf checking. (Slightly different from the other case.) + var linkCount = $('#passage a[data-passage]').length; + var leafCount = $('#passage a.snowstick-leaf').length; + var previous = SnowStick.retrieve("bookmark",true); + if (window.passage.name && window.passage.proofed && (linkCount == leafCount || + (linkCount - leafCount == 1 && previous && previous == + _.unescape($('#passage a[data-passage]:not(.snowstick-leaf)').data("passage"))))) { + $('#snowstick-leafed').show(); + //push the leaf; the function will check if it's new. + window.passage.leafed = true; + SnowStick.pusher("leaf",window.passage.name,true); + } else { + $('#snowstick-leafed').hide(); + } + }); + $("body").on("change", "#snowstick-check", function(e) { + //Set the value. + var proofed = $(e.target).prop("checked"); + window.passage.proofed = proofed; + + //Update local storage and the UI. + var newLength = SnowStick.pusher("read", window.passage.name, proofed); + $("#snowstick-percent").html(Math.round(100 * newLength/window.story.passages.length) + "%"); + }); + } + //Both cases. + $(window).on('popstate', function(event) { + //Reset this to avoid mistakes from going back. + SnowStick.store("bookmark","",true); + }); + $(document).on('hidepassage hide.sm.passage', function(event, passage) { + //We store the previous passage name to check for simple loops and to bookmark. + if (window.passage.name) + SnowStick.store("bookmark",window.passage.name,true); + }); + }; + + /* helper functions */ + + /** + Clears a local storage key. + + @method clear + @param keya {String} the local storage item subkey + @return {bool} success or failure + **/ + + function clear(keya) { + var key = "snowstick-" + keya; + try { + localStorage.removeItem(key); + } catch (e) { + console.log("Local storage write error: " + e.description ? e.description : e.name); + return false; + } + return true; + }; + + /** + Stores an array to a local storage key as JSON, + with all the related nonsense. + + @method store + @param keya {String} the local storage item subkey + @param arya {array} the array to be stored + @return {bool} success or failure + **/ + + function store(keya,arya,isString) { + var key = "snowstick-" + keya; + try { + if (isString) + localStorage.setItem(key, arya); + else + localStorage.setItem(key, JSON.stringify(arya)); + } catch (e) { + console.log("Local storage write error: " + e.description ? e.description : e.name); + return false; + } + return true; + }; + + /** + Returns a JSON array from a local storage key, + with all the related nonsense. + + @method retrieve + @param keya {String} the local storage item key + @return {object or array} the parsed JSON object + **/ + + function retrieve(keya,isString) { + var key = "snowstick-" + keya; + var arya = isString ? "" : []; + try { + if (isString) + arya = localStorage.getItem(key) ? localStorage.getItem(key) : ""; + else + arya = localStorage.getItem(key) ? _.chain(JSON.parse(localStorage.getItem(key))).reverse().uniq().reverse().value() : []; + } catch (e) { + console.log("Local storage read error: " + e.description ? e.description : e.name); + } + return arya; + }; + + /** + Pushes or pops an array element to/from the specified local storage key. + + @method pusher + @param keya {String} the local storage item subkey + @param passa {String} the passage name to be pushed or removed + @param pusha {Bool} whether to push (true) or remove (false) the passage + @return {int} current length of the array. + **/ + + function pusher(keya,passa,pusha) { + var ppa = retrieve(keya); + //Always remove. + ppa = _.without(ppa,passa); + if (pusha) { + //Push to new spot. + ppa.push(passa); + } + + //Save the changes and return size. + store(keya, ppa); + return ppa.length; + } + + // public methods and variable(s) + return { + init:init, + previous:previous, + pusher:pusher, + retrieve:retrieve, + store:store + }; +}(); + +SnowStick.init(); + From 97d16de57a99eaf860c649760d169c4330394891 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Thu, 13 Jun 2019 00:48:44 -0400 Subject: [PATCH 21/50] Support multiple Twine 2 (i.e., IFID'd) stories. --- snowstick/README.md | 7 +++---- snowstick/snowstick.js | 17 +++++++---------- src/index.js | 7 ++++--- 3 files changed, 14 insertions(+), 17 deletions(-) diff --git a/snowstick/README.md b/snowstick/README.md index bf262a4..1412c78 100644 --- a/snowstick/README.md +++ b/snowstick/README.md @@ -2,7 +2,6 @@ SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman (or other story formats based on it), in order to track your reading/proofing progress and graph it with DotGraph. SnowStick can be used without DotGraph, in which case you can still tell where you've been by the link styling (crossed-out for completed branches, squiggly underlining for previously visited links, and no alteration for unvisited links). - ## Installation ### Twine 2 @@ -45,7 +44,7 @@ In *read* mode: * the links are restyled according to whether they're completely new, previously read, or completed. There is also a *clear* mode for clearing all read data from the current browser. -You should use this when switching between stories, because SnowStick currently does not handle more than one story at a time. +You can use this to start fresh on the current story, or to switch between Twine 1 stories. (See *Issues* below). In *off* mode, SnowStick is turned off (without uninstalling the code). @@ -55,9 +54,9 @@ SnowStick will, optionally, start the story from the passage you left off at. I ## Issues -SnowStick stores its data in your browser's localStorage, so for it to work you must open your story in the same browser and not clear or disable your browser's local storage while reading. You can make changes to the story and republish it, however, without confusing SnowStick. +SnowStick stores its data in your browser's localStorage, so for it to work you must open your story in the same browser and not clear or disable your browser's local storage while reading. You can make changes to the story and republish it, however, without confusing SnowStick. (If you change the IFID, it will be treated as a different story.) -As mentioned above, SnowStick needs to be cleared between stories. To read more than one story at a time, use a different browser for each story (*e.g.,* Chrome vs. Brave). +In certain cases, such as Twine 1 stories and other stories without IFID, SnowStick will need to be cleared between stories. To read more than one such story at a time, use a different browser for each story (*e.g.,* Chrome vs. Brave). (This is not a concern for Twine 2 stories that have distinct IFIDs.) ## Building diff --git a/snowstick/snowstick.js b/snowstick/snowstick.js index 7c8bdfc..24395fb 100644 --- a/snowstick/snowstick.js +++ b/snowstick/snowstick.js @@ -9,12 +9,6 @@ * put this js into your story javascript, and the CSS in snowstick.css into your story stylesheet. */ - -/* TODO: - * support multiple stories on the same localStorage. - * (right now only works on one story at a time; see clear mode) - */ - var SnowStick = function(){ /* Configuration options: @@ -29,7 +23,7 @@ var SnowStick = function(){ * the passage is automatically marked read when read. * the links are restyled according to whether they're completely new, previously read, or completed. * clear mode: - * clears snowstick data so you can start over on the same story. + * clears snowstick data so you can start over on the same story or switch between Twine 1 stories. * off mode: * turns snowstick off without uninstalling the code. * @@ -47,6 +41,7 @@ var SnowStick = function(){ }; var previous = ""; + var ifid = ""; // Here there be dragons. @@ -54,6 +49,8 @@ var SnowStick = function(){ //Test init. if (config.mode == 'off') return; + + ifid += $("tw-storydata").attr("ifid") ? "-" + $("tw-storydata").attr("ifid").toUpperCase() : ""; if (config.mode == 'clear') { clear("read"); clear("leaf"); @@ -207,7 +204,7 @@ var SnowStick = function(){ **/ function clear(keya) { - var key = "snowstick-" + keya; + var key = "snowstick-" + keya + ifid; try { localStorage.removeItem(key); } catch (e) { @@ -228,7 +225,7 @@ var SnowStick = function(){ **/ function store(keya,arya,isString) { - var key = "snowstick-" + keya; + var key = "snowstick-" + keya + ifid; try { if (isString) localStorage.setItem(key, arya); @@ -251,7 +248,7 @@ var SnowStick = function(){ **/ function retrieve(keya,isString) { - var key = "snowstick-" + keya; + var key = "snowstick-" + keya + ifid; var arya = isString ? "" : []; try { if (isString) diff --git a/src/index.js b/src/index.js index d3580b9..b9e0079 100755 --- a/src/index.js +++ b/src/index.js @@ -596,9 +596,10 @@ context.settings = (function () { function load() { //Check localStorage for snowstick. try { - config.snowstickObj["read"] = localStorage.getItem("snowstick-read") ? JSON.parse(localStorage.getItem("snowstick-read")) : []; - config.snowstickObj["leaf"] = localStorage.getItem("snowstick-leaf") ? JSON.parse(localStorage.getItem("snowstick-leaf")) : []; - config.snowstickObj["bookmark"] = localStorage.getItem("snowstick-bookmark") ? localStorage.getItem("snowstick-bookmark") : ""; + var ifid = window.document.querySelector('tw-storydata') ? "-" + window.document.querySelector('tw-storydata').getAttribute('ifid').toUpperCase() : ""; + config.snowstickObj["read"] = localStorage.getItem("snowstick-read" + ifid) ? JSON.parse(localStorage.getItem("snowstick-read" + ifid)) : []; + config.snowstickObj["leaf"] = localStorage.getItem("snowstick-leaf" + ifid) ? JSON.parse(localStorage.getItem("snowstick-leaf" + ifid)) : []; + config.snowstickObj["bookmark"] = localStorage.getItem("snowstick-bookmark" + ifid) ? localStorage.getItem("snowstick-bookmark" + ifid) : ""; config.snowstick = (config.snowstickObj.leaf.length > 0 || config.snowstickObj.read.length > 0 || config.snowstickObj.bookmark.length > 0); } catch (e) { config.snowstick = false; From d644211db8656d2f7ff1ab3c7d350061b879171a Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Thu, 13 Jun 2019 14:25:47 -0400 Subject: [PATCH 22/50] Add and document bar setting. --- snowstick/README.md | 15 ++++++++++----- snowstick/snowstick.css | 22 +++++++++++++++++++++ snowstick/snowstick.js | 42 +++++++++++++++++++++++++++++++++-------- 3 files changed, 66 insertions(+), 13 deletions(-) diff --git a/snowstick/README.md b/snowstick/README.md index 1412c78..8fc29dc 100644 --- a/snowstick/README.md +++ b/snowstick/README.md @@ -25,21 +25,26 @@ SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman ## Mode -SnowStick has two main `modes`, *proof* and *read*, which can be set at the top of the SnowStick JavaScript. +SnowStick has two main `modes`, *proof* and *read*, which can be set at the top of the SnowStick JavaScript, along with some minor configuration settings you can change: var config = { mode: 'read', openBookmark: true, - leafedMessage: ' (all children checked) ' + leafedMessage: ' (all children checked) ', + bar: true }; In *proof* mode: -* the passage title appears in a footer, and a note appears when the branch is completely proofed; you can change the note using the `leafedMessage` option. + +* the passage title and overall percentage read appear in a footer, and a note appears when the branch is completely proofed; you can change the note using the `leafedMessage` option +* the percentage can be replaced with a gradient bar using the *bar* setting. * the passage is only marked proofed when the footer checkbox is checked off. * the links are restyled according to whether they're completely new, already proofed, or completed. In *read* mode: -* the percentage read is the only added UI element. + +* the percentage read is the only added UI element (hover on it for details); +* the percentage can be changed from text to a bar with the *bar* setting * the passage is automatically marked read when read. * the links are restyled according to whether they're completely new, previously read, or completed. @@ -66,4 +71,4 @@ There is no build process. ### 0.1 -Needs to be cleared between stories. +Betaish. diff --git a/snowstick/snowstick.css b/snowstick/snowstick.css index 315163e..e3589b0 100644 --- a/snowstick/snowstick.css +++ b/snowstick/snowstick.css @@ -9,6 +9,12 @@ background-color: lightsalmon; position: bottom center; width:100%; + padding-left:3px; +} + +.snowstick-bar #snowstick-footer { + background-color: white; + background-image: linear-gradient(to right, lightsalmon, white 1%); } #snowstick-name { @@ -31,6 +37,22 @@ border-radius: 3px; } +.snowstick-bar.snowstick-proof #snowstick-percent { + width: auto!important; +} + +.snowstick-bar.snowstick-read #snowstick-percent { + display:block; + position:fixed; + left:0; + bottom:0; + height:2px; + width:1%; + background-color: rgba(204,136,41,0.45); + border: 0; + border-radius: 0; +} + /* styling of completed leaf nodes and of read (or proofed) nodes */ body.snowstick a.snowstick-read { diff --git a/snowstick/snowstick.js b/snowstick/snowstick.js index 24395fb..c9f1c42 100644 --- a/snowstick/snowstick.js +++ b/snowstick/snowstick.js @@ -35,9 +35,10 @@ var SnowStick = function(){ */ var config = { - mode: 'read', + mode: 'proof', openBookmark: true, - leafedMessage: ' (all children checked) ' + leafedMessage: ' (all children checked) ', + bar: true }; var previous = ""; @@ -59,16 +60,18 @@ var SnowStick = function(){ //Create the proofing UI. if (config.mode == 'read') - $("body").append('
0%
'); + $("body").append('
'); else $("body").append(''); + '
'); //This class is used to change link styles, including crossing out leafed options. $("body").addClass("snowstick").addClass("snowstick-" + config.mode); + if (config.bar) + $("body").addClass("snowstick-bar"); $(document).on('startstory start.sm.story', function() { //Extend the passages object. @@ -83,7 +86,7 @@ var SnowStick = function(){ } //Initialize the percentage. - $("#snowstick-percent").html(Math.round(100 * proofs.length/window.story.passages.length) + "%"); + percent(proofs.length); //If there's a bookmark saved, go to it. if (config.openBookmark) { @@ -103,9 +106,11 @@ var SnowStick = function(){ if (window.passage.name) { window.passage.proofed = true; var newLength = SnowStick.pusher("read",window.passage.name,true); - $("#snowstick-percent").html(Math.round(100 * newLength/window.story.passages.length) + "%"); + var pcnt = percent(newLength); + //Put the passage id and title in a tooltip. - $("#snowstick-percent").attr("title",window.passage.id + ": " + window.passage.name); + var title = window.passage.id + ": " + window.passage.name + (config.bar ? " (" + pcnt + ")" : ""); + $("#snowstick-percent").attr("title",title); //Style the links. Expensive. $("#passage a[data-passage]").each(function(){ @@ -178,7 +183,7 @@ var SnowStick = function(){ //Update local storage and the UI. var newLength = SnowStick.pusher("read", window.passage.name, proofed); - $("#snowstick-percent").html(Math.round(100 * newLength/window.story.passages.length) + "%"); + percent(newLength); }); } //Both cases. @@ -195,6 +200,26 @@ var SnowStick = function(){ /* helper functions */ + /** + Sets the percentage of passages read. + + @method percent + @param numer {int} the number of passages read for calculating a percentage + @return {string} the formatted percentage (e.g., "93%") + **/ + + function percent(numer) { + var percent = Math.round(100 * numer/window.story.passages.length) + "%"; + if (config.bar) { + $("#snowstick-percent").css("width",percent); + if (config.mode == "proof") { + $("#snowstick-footer").css("background-image", "linear-gradient(to right, lightsalmon, white " + percent + ")"); + } + } else + $("#snowstick-percent").html(percent); + return percent; + } + /** Clears a local storage key. @@ -288,6 +313,7 @@ var SnowStick = function(){ // public methods and variable(s) return { init:init, + percent:percent, previous:previous, pusher:pusher, retrieve:retrieve, From 9c98bdcb98f4c20057a1433416c0558c6c3fffe6 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Thu, 13 Jun 2019 17:55:11 -0400 Subject: [PATCH 23/50] Edit doc and defaults. --- snowstick/README.md | 12 ++++++------ snowstick/snowstick.js | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/snowstick/README.md b/snowstick/README.md index 8fc29dc..fa3e4a4 100644 --- a/snowstick/README.md +++ b/snowstick/README.md @@ -25,26 +25,26 @@ SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman ## Mode -SnowStick has two main `modes`, *proof* and *read*, which can be set at the top of the SnowStick JavaScript, along with some minor configuration settings you can change: +SnowStick has two main `modes`, *proof* and *read*; you should set one at the top of the SnowStick JavaScript (where you can also set some minor configuration options): var config = { mode: 'read', openBookmark: true, leafedMessage: ' (all children checked) ', - bar: true + bar: false }; In *proof* mode: * the passage title and overall percentage read appear in a footer, and a note appears when the branch is completely proofed; you can change the note using the `leafedMessage` option -* the percentage can be replaced with a gradient bar using the *bar* setting. +* the percentage can be replaced with a gradient bar by setting the `bar` option to *true* * the passage is only marked proofed when the footer checkbox is checked off. * the links are restyled according to whether they're completely new, already proofed, or completed. In *read* mode: * the percentage read is the only added UI element (hover on it for details); -* the percentage can be changed from text to a bar with the *bar* setting +* the percentage can be changed from text to a bar by setting the `bar` option to *true* * the passage is automatically marked read when read. * the links are restyled according to whether they're completely new, previously read, or completed. @@ -63,9 +63,9 @@ SnowStick stores its data in your browser's localStorage, so for it to work you In certain cases, such as Twine 1 stories and other stories without IFID, SnowStick will need to be cleared between stories. To read more than one such story at a time, use a different browser for each story (*e.g.,* Chrome vs. Brave). (This is not a concern for Twine 2 stories that have distinct IFIDs.) -## Building +## ToDo -There is no build process. +It would be nice to validate the current read/leaf lists against the full passage list (in case passage names change), but that could slow things down and should perhaps be a separate mode. ## Versions diff --git a/snowstick/snowstick.js b/snowstick/snowstick.js index c9f1c42..c2149ee 100644 --- a/snowstick/snowstick.js +++ b/snowstick/snowstick.js @@ -35,10 +35,10 @@ var SnowStick = function(){ */ var config = { - mode: 'proof', + mode: 'read', openBookmark: true, leafedMessage: ' (all children checked) ', - bar: true + bar: false }; var previous = ""; From 55b79fb5c65bce4daeee35e0919c36e044e43574 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 10:14:52 -0400 Subject: [PATCH 24/50] Edit readme. --- snowstick/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/snowstick/README.md b/snowstick/README.md index fa3e4a4..198939e 100644 --- a/snowstick/README.md +++ b/snowstick/README.md @@ -63,6 +63,8 @@ SnowStick stores its data in your browser's localStorage, so for it to work you In certain cases, such as Twine 1 stories and other stories without IFID, SnowStick will need to be cleared between stories. To read more than one such story at a time, use a different browser for each story (*e.g.,* Chrome vs. Brave). (This is not a concern for Twine 2 stories that have distinct IFIDs.) +The total passage count includes special and unreachable passages, so you may not hit 100%. + ## ToDo It would be nice to validate the current read/leaf lists against the full passage list (in case passage names change), but that could slow things down and should perhaps be a separate mode. From 7e2b09737defd9d734d0622c849e13c4509fe698 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 10:33:03 -0400 Subject: [PATCH 25/50] flow: Closed 'snowstick'. From 98797a5bcb95f6a2ed77b0302e6a799f821f1f8b Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 10:35:15 -0400 Subject: [PATCH 26/50] flow: Created branch 'feature/dgaas'. From 87a094200489800c8ca9af3d87cbf2d192b508ea Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 10:43:29 -0400 Subject: [PATCH 27/50] Add new passage option for settings. --- README.md | 4 ++++ src/index.js | 42 +++++++++++++++++++++++++++++------------- 2 files changed, 33 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 92b872c..7bf074d 100755 --- a/README.md +++ b/README.md @@ -19,6 +19,10 @@ SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman ## Versions +### 2.2.0 + +Add SnowStick (q.v.) and support for configuration using the DotGraphSettings passage, a safer and more flexible spot than StorySettings (which is still supported). + ### 2.1.0 Add a text tracing option and and support for configuration using the StorySettings passage. diff --git a/src/index.js b/src/index.js index b9e0079..12c615c 100755 --- a/src/index.js +++ b/src/index.js @@ -51,7 +51,7 @@ var dotGraph = {}; "StoryColophon", "StoryBanner", "StoryCaption", "StoryInit", "StoryShare", "PassageDone", "PassageFooter", "PassageHeader", "PassageReady", - "MenuOptions", "MenuShare"]; + "MenuOptions", "MenuShare", "DotGraphSettings"]; var specialTagList = ["annotation", "debug-footer", "debug-header", "debug-startup", "footer", "haml", "header", "script", "startup", "stylesheet", @@ -606,28 +606,44 @@ context.settings = (function () { console.log("Error checking local storage for SnowStick data: " + e.description); } - //Parse the StorySettings for dotgraph presets. - var StorySettings; + var DotGraphSettings; if (window.document.getElementById("storeArea")) - StorySettings = window.document.getElementById("storeArea").querySelector('div[tiddler="StorySettings"]'); + DotGraphSettings = window.document.getElementById("storeArea").querySelector('div[tiddler="DotGraphSettings"]'); else - StorySettings = window.document.querySelector('tw-passagedata[name="StorySettings"]'); + DotGraphSettings = window.document.querySelector('tw-passagedata[name="DotGraphSettings"]'); - if (StorySettings && StorySettings.innerText && StorySettings.innerText.indexOf("dotgraph:") > -1) { - var dgSettings = (StorySettings.innerText.split("dotgraph:")[1]).split("\n")[0]; + if (DotGraphSettings) { + //Don't require dotgraph: label or single-line layout but must still parse as a JSON object. + dgSettings = DotGraphSettings.innerText; + } else { + //Parse the StorySettings for dotgraph presets. May fail mysteriously under Tweego 1.3. + var StorySettings, dgSettings; + if (window.document.getElementById("storeArea")) + StorySettings = window.document.getElementById("storeArea").querySelector('div[tiddler="StorySettings"]'); + else + StorySettings = window.document.querySelector('tw-passagedata[name="StorySettings"]'); + + if (StorySettings && StorySettings.innerText && StorySettings.innerText.indexOf("dotgraph:") > -1) { + dgSettings = (StorySettings.innerText.split("dotgraph:")[1]).split("\n")[0]; + } + } + + if (dgSettings) { try { dgSettings = JSON.parse(dgSettings); } catch(e) { console.log("Found but couldn't parse dotgraph settings: " + dgSettings); return; } - _.each(dgSettings, function(value, key) { - //Do not reset snowstick to true if there's no data. - if (key != "snowstick" || !value) - config[key] = value; - }); } - //Switch color to snowstick if there's data. + + _.each(dgSettings, function(value, key) { + //Do not reset snowstick to true if there's no data. + if (key != "snowstick" || !value) + config[key] = value; + }); + + //Lastly, switch color to snowstick if there's data and no 'false' setting. if (config.snowstick) config.color = "snow"; } From df782fc70a1127286739fdb151f02b8ec192c2d6 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 10:50:53 -0400 Subject: [PATCH 28/50] Add preliminary load, proxy, and layout changes for DGaaS. --- src/index.html | 35 +++++++++++++++++++++++------------ src/index.js | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 12 deletions(-) diff --git a/src/index.html b/src/index.html index 7c74295..60962bd 100644 --- a/src/index.html +++ b/src/index.html @@ -17,13 +17,18 @@

DotGraph Proofing Format

-
- If rendering of the graph fails (i.e., you only see the dot source file) or you need the output in a different format, the dot source can also be rendered using the free desktop program Graphviz, or rendered online at GraphvizFiddle or WebGraphviz. -
-

Graph

-
- Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "end" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG. -
+ +
+
+ If rendering of the graph fails (i.e., you only see the dot source file) or you need the output in a different format, the dot source can also be rendered using the free desktop program Graphviz, or rendered online at GraphvizFiddle or WebGraphviz. +
+
+ +

Graph

+
+
+ Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "end" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG. +
0 nodes, @@ -35,13 +40,19 @@

Graph


+
+
-

Dot Source

- -
- - + +

Dot Source

+
+ + +
+ +
+ <%= passages %> <%= script %> diff --git a/src/index.js b/src/index.js index 12c615c..8d990b2 100755 --- a/src/index.js +++ b/src/index.js @@ -4,6 +4,8 @@ var dotGraph = {}; (function(context) { + var corsProxy = "https://cors-anywhere.herokuapp.com/"; + var config = {checkpoint: true, checkpointTag: "checkpoint", cluster: false, @@ -14,6 +16,8 @@ var dotGraph = {}; dotExtension: "gv", ends: true, endTag: "end", + hideDot: false, + hideSettings: false, lastTag: false, omitSpecialPassages: true, omitSpecialTags: true, @@ -409,6 +413,7 @@ context.init = (function() { //Onload function. context.settings.load(); context.settings.write(); + context.settings.toggle(); activateForm(); context.graph.convert(); } @@ -419,10 +424,14 @@ context.init = (function() { document.getElementById("clusterTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); document.getElementById("omitTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); document.getElementById("trace").addEventListener('input', _.debounce(context.graph.convert,1000), false); + document.getElementById("loadStory").addEventListener('input', _.debounce(context.story.load,1000), false); document.getElementById("editButton").addEventListener('click', context.graph.edit, false); document.getElementById("saveDotButton").addEventListener('click', context.graph.saveDot, false); document.getElementById("saveSvgButton").addEventListener('click', context.graph.saveSvg, false); + + document.getElementById("dotHeader").addEventListener('click', function(){context.settings.toggle("dotSection");}, false); + document.getElementById("settingsHeader").addEventListener('click', function(){context.settings.toggle("settingsSection");}, false); } })(); @@ -578,6 +587,7 @@ context.settings = (function () { load: load, parse: parse, scale: scale, + toggle: toggle, write: write }; @@ -676,6 +686,20 @@ context.settings = (function () { } } + function toggle(section) { + //Check all toggleable sections against the settings and adapt. + if (section) { + document.getElementById(section).style.display = (document.getElementById(section).offsetParent ? "none" : ""); + } else { + if (config.hideDot) + document.getElementById("dotSection").style.display = "none"; + if (config.hideSettings) + document.getElementById("settingsSection").style.display = "none"; + if (config.hideDot || config.hideSettings) + document.getElementById("failSection").style.disylay = "none"; + } + } + function write() { //Write the current config object as a settings panel. var output = _.template('/> \ @@ -728,9 +752,30 @@ context.settings = (function () { context.story = (function () { return { + load: load, parse: parse }; + function load() { + //Get the URL, parse it for story bits, write them to the page (overwriting the existing story if nec.) + var URL = document.getElementById("loadStory").value; + if (!URL) return; + URL = corsProxy + URL; + var xhr = new XMLHttpRequest(); + xhr.addEventListener("load", listener); + xhr.open('GET', URL); + xhr.responseType = 'document'; + xhr.send(); + function listener() { + var _story = this.response.querySelector('tw-storydata, div#storeArea'); + if (!_story) + return; + document.querySelector('tw-storydata, div#storeArea').remove(); + document.querySelector("body").append(_story); + context.graph.convert(); + }; + }; + function parse() { //Parse the story from the relevant Twine 1 or Twine 2 source data. //Avoid division by zero in corner case by pretending we have non-empty passages. From fc02f70d36c0873788f90a2c8a41671bee845b55 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 11:23:50 -0400 Subject: [PATCH 29/50] Fix minor issues. --- src/index.html | 5 +++-- src/index.js | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/index.html b/src/index.html index 60962bd..95c1236 100644 --- a/src/index.html +++ b/src/index.html @@ -24,7 +24,7 @@

DotGraph Proofing Format

-

Graph

+

Settings

Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "end" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG. @@ -42,13 +42,14 @@

Graph

+

Graph

Dot Source

-
+
diff --git a/src/index.js b/src/index.js index 8d990b2..b031d8a 100755 --- a/src/index.js +++ b/src/index.js @@ -690,13 +690,14 @@ context.settings = (function () { //Check all toggleable sections against the settings and adapt. if (section) { document.getElementById(section).style.display = (document.getElementById(section).offsetParent ? "none" : ""); + document.getElementById("failSection").style.display = "none"; } else { if (config.hideDot) document.getElementById("dotSection").style.display = "none"; if (config.hideSettings) document.getElementById("settingsSection").style.display = "none"; if (config.hideDot || config.hideSettings) - document.getElementById("failSection").style.disylay = "none"; + document.getElementById("failSection").style.display = "none"; } } From f8d256a2f055a1cbac0794ccffc13ed9c1a98ac6 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 12:00:43 -0400 Subject: [PATCH 30/50] Style on load. --- src/index.js | 47 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 32 insertions(+), 15 deletions(-) diff --git a/src/index.js b/src/index.js index b031d8a..ae10bc6 100755 --- a/src/index.js +++ b/src/index.js @@ -93,6 +93,10 @@ context.graph = (function() { }; function convert() { + //A change in the settings is what normally triggers (re)graphing, so (re)parse. + context.settings.parse(); + context.story.parse(); + //Get the dot graph source. var output = dot(); @@ -132,13 +136,9 @@ context.graph = (function() { //Private function dot() { - //(Re)parse the story and return the dot graph source. + //Return the dot graph source. var buffer = []; - //A change in the settings is what normally triggers regraphing. - context.settings.parse(); - context.story.parse(); - buffer.push("digraph " + scrub(storyObj.title) + " {"); buffer.push("rankdir=" + config.rotation + "\r\n"); @@ -758,23 +758,40 @@ context.story = (function () { }; function load() { - //Get the URL, parse it for story bits, write them to the page (overwriting the existing story if nec.) + //Load a story from a URL. + //Get the URL. var URL = document.getElementById("loadStory").value; if (!URL) return; URL = corsProxy + URL; var xhr = new XMLHttpRequest(); - xhr.addEventListener("load", listener); + xhr.addEventListener("load", loadListener); xhr.open('GET', URL); xhr.responseType = 'document'; xhr.send(); - function listener() { - var _story = this.response.querySelector('tw-storydata, div#storeArea'); - if (!_story) - return; - document.querySelector('tw-storydata, div#storeArea').remove(); - document.querySelector("body").append(_story); - context.graph.convert(); - }; + }; + + function loadListener() { + //Parse the response for story bits. + var _story = this.response.querySelector('tw-storydata, div#storeArea'); + if (!_story) + return; + + //Write story to the page (overwriting the existing story if necessary). + document.querySelector('tw-storydata, div#storeArea').remove(); + document.querySelector("body").append(_story); + + //Programmatically choose some appropriate settings. + config.scale = true; + if (_story.children && _story.children.length && _story.children.length < 15) { + config.showNodeNames = true; + } else { + config.showNodeNames = false; + } + //Rewrite the config because otherwise we'll read the old config. + context.settings.write(); + + //Graph. + context.graph.convert(); }; function parse() { From a75ecb6c1283fe10be9bbee93c65586ad9a890b6 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 13:44:59 -0400 Subject: [PATCH 31/50] Improve layout. --- src/index.html | 42 ++++++++++++++++++++++++------------------ src/index.js | 5 +---- 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/src/index.html b/src/index.html index 95c1236..224cb17 100644 --- a/src/index.html +++ b/src/index.html @@ -8,48 +8,54 @@ <%= vizScript %>

DotGraph Proofing Format

-
-
- If rendering of the graph fails (i.e., you only see the dot source file) or you need the output in a different format, the dot source can also be rendered using the free desktop program Graphviz, or rendered online at GraphvizFiddle or WebGraphviz. -
-
+
+ 0 nodes, + 0 leaves, + 0 links, and + 0 links per node. +
-

Settings

+

Settings

Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "end" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG.
- - 0 nodes, - 0 leaves, - 0 links, and - 0 links per node. -
-

Graph

-
+
+ +
+
+
-

Dot Source

+

Dot Source

+ +

+ If rendering of the graph fails (i.e., you only see the dot source file) or you need the output in a different format, the dot source can also be rendered using the free desktop program Graphviz, or rendered online at GraphvizFiddle or WebGraphviz. +

+ - -
+
diff --git a/src/index.js b/src/index.js index ae10bc6..f7d27a2 100755 --- a/src/index.js +++ b/src/index.js @@ -690,14 +690,11 @@ context.settings = (function () { //Check all toggleable sections against the settings and adapt. if (section) { document.getElementById(section).style.display = (document.getElementById(section).offsetParent ? "none" : ""); - document.getElementById("failSection").style.display = "none"; } else { if (config.hideDot) document.getElementById("dotSection").style.display = "none"; if (config.hideSettings) document.getElementById("settingsSection").style.display = "none"; - if (config.hideDot || config.hideSettings) - document.getElementById("failSection").style.display = "none"; } } @@ -910,7 +907,7 @@ context.story = (function () { } document.getElementById("linkCount").innerHTML = storyObj.links; - document.getElementById("average").innerHTML = Math.round(100 * (storyObj.links / storyObj.passages.length))/100; + document.getElementById("average").innerHTML = Math.round(100 * (storyObj.links / Math.max(storyObj.passages.length,1)))/100; document.getElementById("stats").setAttribute("title","Twine " + storyObj.twineVersion); } From 2692df1b7ea07beb8e17045e04ed7ebe2ba6f7e5 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 14:13:31 -0400 Subject: [PATCH 32/50] Pass URL in query. --- src/index.html | 1 - src/index.js | 14 +++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/index.html b/src/index.html index 224cb17..40735f8 100644 --- a/src/index.html +++ b/src/index.html @@ -44,7 +44,6 @@

Graph

-

Dot Source

diff --git a/src/index.js b/src/index.js index f7d27a2..6a2dd9c 100755 --- a/src/index.js +++ b/src/index.js @@ -416,6 +416,11 @@ context.init = (function() { context.settings.toggle(); activateForm(); context.graph.convert(); + + //Check for a passed-in URL. + if (window.location.search && window.location.search.split("?")[1].length > 0) { + context.story.load(window.location.search.split("?")[1]); + } } //Private. @@ -424,7 +429,6 @@ context.init = (function() { document.getElementById("clusterTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); document.getElementById("omitTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); document.getElementById("trace").addEventListener('input', _.debounce(context.graph.convert,1000), false); - document.getElementById("loadStory").addEventListener('input', _.debounce(context.story.load,1000), false); document.getElementById("editButton").addEventListener('click', context.graph.edit, false); document.getElementById("saveDotButton").addEventListener('click', context.graph.saveDot, false); @@ -754,11 +758,11 @@ context.story = (function () { parse: parse }; - function load() { + function load(URL) { //Load a story from a URL. //Get the URL. - var URL = document.getElementById("loadStory").value; - if (!URL) return; + if (!URL) + return; URL = corsProxy + URL; var xhr = new XMLHttpRequest(); xhr.addEventListener("load", loadListener); @@ -779,7 +783,7 @@ context.story = (function () { //Programmatically choose some appropriate settings. config.scale = true; - if (_story.children && _story.children.length && _story.children.length < 15) { + if (_story.children && _story.children.length && _story.children.length < 20) { config.showNodeNames = true; } else { config.showNodeNames = false; From 516cfa65863f8eec781bd212b751f88f25e0de01 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 15:41:46 -0400 Subject: [PATCH 33/50] Handle some error cases. --- src/index.html | 1 + src/index.js | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/index.html b/src/index.html index 40735f8..516962e 100644 --- a/src/index.html +++ b/src/index.html @@ -44,6 +44,7 @@

Graph

+

Dot Source

diff --git a/src/index.js b/src/index.js index 6a2dd9c..a0f9cf9 100755 --- a/src/index.js +++ b/src/index.js @@ -357,7 +357,12 @@ context.graph = (function() { //Put names into a legal dot format. if (name) { // dangerously scrubbing non-ascii characters for graphviz bug - name = name.replace(/"/gm,"\\\"").replace(/[^\x00-\x7F]/g, ""); + name = name.replace(/"/gm,"\\\""); //.replace(/[^\x00-\x7F]/g, ""); + //New emoji-squashing method: + name = _.map(name.split(""), function(chr) { + chrat = chr.charCodeAt(0); + return (chrat >= 32 && chrat <= 126 ? chr : "_"); + }).join(""); // add literal quotes for names in all cases. name = '"' + name + '"'; } @@ -760,6 +765,11 @@ context.story = (function () { function load(URL) { //Load a story from a URL. + //Clear now for clarity. + if (document.querySelector('tw-storydata, div#storeArea')) + document.querySelector('tw-storydata, div#storeArea').remove(); + document.getElementById("graph").innerHTML = "

Loading " + URL + " ...

" + //Get the URL. if (!URL) return; @@ -778,7 +788,6 @@ context.story = (function () { return; //Write story to the page (overwriting the existing story if necessary). - document.querySelector('tw-storydata, div#storeArea').remove(); document.querySelector("body").append(_story); //Programmatically choose some appropriate settings. From acb0730a799cbcdbd727a765dda9ba60bf869616 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 16 Jun 2019 16:49:42 -0400 Subject: [PATCH 34/50] Handle more error cases. --- README.md | 4 +++- src/index.js | 7 ++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7bf074d..e8176c1 100755 --- a/README.md +++ b/README.md @@ -6,6 +6,8 @@ To add DotGraph to Twine 2, use this URL (under Formats > Add a New Format): [ht To add DotGraph to Twine 1, create a new folder called `dotgraph` inside your targets folder, then download this file [https://mcdemarco.net/tools/scree/dotgraph/header.html](https://mcdemarco.net/tools/scree/dotgraph/header.html) and place it inside the `dotgraph` folder. (See the Twine wiki for more information about installing and using story formats in Twine 1.) +To use DotGraph to graph a published story, open an already-dotgrapphed story in a browser and add a question mark followed by the story's URL. You can also do this by typing in the URL at the DotGraph site [here](https://mcdemarco.net/tools/scree/dotgraph/). + ## Troubleshooting DotGraph may fail to draw the graph in some versions of Twine 2 due to issues with Chrome; @@ -21,7 +23,7 @@ SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman ### 2.2.0 -Add SnowStick (q.v.) and support for configuration using the DotGraphSettings passage, a safer and more flexible spot than StorySettings (which is still supported). +Add SnowStick (a reading tracker integrated with DotGraph), support for configuration using the DotGraphSettings passage (a safer and more flexible spot than StorySettings, though the latter is still supported), and viewing another story by URL (a quicker way than by loading the story and this format into Twine). ### 2.1.0 diff --git a/src/index.js b/src/index.js index a0f9cf9..9425050 100755 --- a/src/index.js +++ b/src/index.js @@ -357,10 +357,11 @@ context.graph = (function() { //Put names into a legal dot format. if (name) { // dangerously scrubbing non-ascii characters for graphviz bug - name = name.replace(/"/gm,"\\\""); //.replace(/[^\x00-\x7F]/g, ""); - //New emoji-squashing method: - name = _.map(name.split(""), function(chr) { + name = name.toString().replace(/"/gm,"\\\""); //.replace(/[^\x00-\x7F]/g, ""); + //Another emoji-squashing method: + name = _.map(name.toString().split(""), function(chr) { chrat = chr.charCodeAt(0); + // (chrat == 34 ? '\\\"' : chr) return (chrat >= 32 && chrat <= 126 ? chr : "_"); }).join(""); // add literal quotes for names in all cases. From 5ee75036f4eb4bc695b820dcec764c6ea87f4c2d Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Thu, 20 Jun 2019 22:53:41 -0400 Subject: [PATCH 35/50] Convert to new/final viz (2.1.2) (partial). --- grunt/build.js | 8 +- lib/full.render.js | 90 +++++++++++++ lib/viz.js | 328 ++++++++++++++++++++++++++++++++++++++++++++- src/index.js | 61 +++++++-- 4 files changed, 469 insertions(+), 18 deletions(-) create mode 100644 lib/full.render.js diff --git a/grunt/build.js b/grunt/build.js index a81b464..1ddab13 100644 --- a/grunt/build.js +++ b/grunt/build.js @@ -42,7 +42,7 @@ module.exports = function(grunt) { var data = { name: '{{STORY_NAME}}', passages: '{{STORY_DATA}}', - vizScript: '', + vizScript: '', script: '' }; @@ -55,7 +55,7 @@ module.exports = function(grunt) { var data = { name: '{{STORY_NAME}}', passages: '{{STORY_DATA}}', - vizScript: '', + vizScript: '', script: '' }; @@ -68,7 +68,7 @@ module.exports = function(grunt) { var data = { name: 'DotGraph', passages: '

', - vizScript: '', + vizScript: '', script: '' }; @@ -81,7 +81,7 @@ module.exports = function(grunt) { var data = { name: 'DotGraph', passages: '', - vizScript: '', + vizScript: '', script: '' }; diff --git a/lib/full.render.js b/lib/full.render.js new file mode 100644 index 0000000..ced6626 --- /dev/null +++ b/lib/full.render.js @@ -0,0 +1,90 @@ +/* +Viz.js 2.1.2 (Graphviz 2.40.1, Expat 2.2.5, Emscripten 1.37.36) +*/ +(function(global) { +var Module = function(Module) { + Module = Module || {}; +var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var PAGE_SIZE=16384;var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var ASM_CONSTS=[(function($0,$1){var path=Pointer_stringify($0);var data=Pointer_stringify($1);FS.createPath("/",PATH.dirname(path));FS.writeFile(PATH.join("/",path),data)})];function _emscripten_asm_const_iii(code,a0,a1){return ASM_CONSTS[code](a0,a1)}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+194160;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAIMEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSQAAAAAAAAFJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkAAIMEAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSQAAAAAAAAFJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkACEAAAAAAAAAAAAAAAABBAoC8AAAgAAAABAAAAAAAAAAIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICWQAAAAAAAgJZABJDDAAAAAAAAAAAAAAAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEAAAAAAAABYQAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYQAAAAAAAAFhAAAAAAAAAAAAAAAAAAAAQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkAAAAAAAABSQAAgAwIAAAAAAAAAAAAAEEAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAABCQAAAAAAAAEJAAAAAAAAgg0AAAAAAAMCIQAAAAAAAAFJAAAAAAAAAUkAAAAAAAAAAAAAAAAAAAEJAAAAAAAAAQkAAAAAAACCDQAAAAAAAwIhAAAAAAAAAUkAAAAAAAABSQACwwQAAAAAAAAAAAAAAEEBANgAAkwAAAAEAAAAAAAAAQAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkAAEAACAAAAAAAAAAAAABBAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYQAAAAAAAAFhAALDBAAAAAAAAAAAAAAAAABw6AAAQAAAAAQAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEAAAAAAAABYQEAgPgMAAAAAAAAAAAAAEEAkOwAAegAAAAEAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFJAAAAAAAAAUkAAAAAAAAAAAAAAAAAAABBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSQAAAAAAAAFJA////////73/////////vf////////+//////////7/8AAAAAAAD4PzMzMzMzM9M/PAAAAAAAAACamZmZmZmpPwEAAAAAAAAAAQAAAAAAAAAAAAAAAADwPwEAAAAAAAAAAgAAAAAAAAAAAAAAAADwPwIAAAAAAAAAAwAAAAAAAAAAAAAAAADgPwMAAAAAAAAABAAAAAAAAAAAAAAAAADwPwQAAAAAAAAABQAAAAAAAAAzMzMzMzPzPwUAAAAAAAAABgAAAAAAAACamZmZmZnpPwYAAAAAAAAABwAAAAAAAAAAAAAAAADwPwcAAAAAAAAACAAAAAAAAAAAAAAAAADgPwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAMzMzMzMz078AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAgEZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAmpmZmZmZ2b8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzMzMzMzPjPwAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAexSuR+F65L8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAEAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqQVQAAAQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAAAgGZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAgGZAmpmZmZmZ2b8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAgGZAexSuR+F65L8AAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAgEZAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAQAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAAAAAAAAAEAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAAAAAAAAAEAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPC/AAAAAAAAAQAAAAAAAAAAAAAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQP1ioNc07TtU/JXUCmggb2j8AAAAAAADgPwAAAAAAAOA/LNSa5h2n6j9q3nGKjuToP1ioNc07TtU/WKg1zTtO1T9YqDXNO07VPwAAAAAAAOA/XdxGA3gL4j8AAAAAAADQP1ioNc07TtU/AAAAAAAA0D/TvOMUHcnRPwAAAAAAAOA/AAAAAAAA4D8AAAAAAADgPwAAAAAAAOA/AAAAAAAA4D8AAAAAAADgPwAAAAAAAOA/AAAAAAAA4D8AAAAAAADgPwAAAAAAAOA/07zjFB3J0T/TvOMUHcnRP13cRgN4C+I/XdxGA3gL4j9d3EYDeAviPw1xrIvbaNw/ZF3cRgN47T/Sb18HzhnnPxB6Nqs+V+U/EHo2qz5X5T/Sb18HzhnnP3gLJCh+jOM/tRX7y+7J4T/Sb18HzhnnP9JvXwfOGec/WKg1zTtO1T+IhVrTvOPYP9JvXwfOGec/eAskKH6M4z/EQq1p3nHsP9JvXwfOGec/0m9fB84Z5z+1FfvL7snhP9JvXwfOGec/EHo2qz5X5T+1FfvL7snhP3gLJCh+jOM/0m9fB84Z5z/Sb18HzhnnP4Y41sVtNO4/0m9fB84Z5z/Sb18HzhnnP3gLJCh+jOM/WKg1zTtO1T/TvOMUHcnRP1ioNc07TtU/pgpGJXUC3j8AAAAAAADgP1ioNc07TtU/DXGsi9to3D8AAAAAAADgPw1xrIvbaNw/AAAAAAAA4D8NcayL22jcP1ioNc07TtU/AAAAAAAA4D8AAAAAAADgP9O84xQdydE/07zjFB3J0T8AAAAAAADgP9O84xQdydE/at5xio7k6D8AAAAAAADgPwAAAAAAAOA/AAAAAAAA4D8AAAAAAADgP1ioNc07TtU/iIVa07zj2D/TvOMUHcnRPwAAAAAAAOA/AAAAAAAA4D/Sb18HzhnnPwAAAAAAAOA/AAAAAAAA4D8NcayL22jcP/RsVn2utt4/ETY8vVKWyT/0bFZ9rrbePzsBTYQNT+E/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D9YqDXNO07VPwAAAAAAAOA/AAAAAAAA4D8+6Nms+lzFPwAAAAAAAOA/AAAAAAAA4D8AAAAAAADgPwAAAAAAAOA/gnNGlPYGxz8NcayL22jcPwAAAAAAAOA/WKg1zTtO1T9YqDXNO07VP7UV+8vuyeE/tRX7y+7J4T8AAAAAAADQPwAAAAAAAOA/AAAAAAAA4D8AAAAAAADgPwAAAAAAANA/AAAAAAAA0D8H8BZIUPzcP6K0N/jCZNY/WKg1zTtO1T8NcayL22jcPw1xrIvbaNw/AAAAAAAA4D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA0D8NcayL22jcPwAAAAAAANA/WKg1zTtO1T9YqDXNO07VP1ioNc07TtU/WKg1zTtO1T9YqDXNO07VP1ioNc07TtU/WKg1zTtO1T9YqDXNO07VPwAAAAAAANA/WKg1zTtO1T9YqDXNO07VPwAAAAAAANA/WKg1zTtO1T9YqDXNO07VP1ioNc07TtU/AAAAAAAA8D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQP8RCrWnecew/AAAAAAAA0D9/2T15WKjRPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/eAskKH6M4z/Sb18HzhnnP8RCrWnecew/E/JBz2bV0z8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/EHo2qz5X5T8AAAAAAADQPwAAAAAAANA/AAAAAAAA0D/TvOMUHcnRPwAAAAAAANA/AAAAAAAA0D/TvOMUHcnRPwAAAAAAAOA/0m9fB84Z5z8AAAAAAADgPwAAAAAAANA/AAAAAAAA0D8AAAAAAADQPwAAAAAAANA/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z9R2ht8YTLjP1HaG3xhMuM/UdobfGEy4z/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP/RsVn2uttY/tRX7y+7J4T+1FfvL7snhP8RCrWnecew/EHo2qz5X5T/129eBc0bMP1ioNc07TtU/WKg1zTtO1T+IhVrTvOPYPwFNhA1Pr+I/07zjFB3J0T9YqDXNO07VP9O84xQdydE/07zjFB3J0T+1FfvL7snhP7UV+8vuyeE/tRX7y+7J4T+1FfvL7snhP7UV+8vuyeE/tRX7y+7J4T+1FfvL7snhP7UV+8vuyeE/tRX7y+7J4T+1FfvL7snhP9O84xQdydE/07zjFB3J0T8BTYQNT6/iPwFNhA1Pr+I/AU2EDU+v4j+1FfvL7snhP8xdS8gHPfA/EHo2qz5X5T8QejarPlflP9JvXwfOGec/0m9fB84Z5z8QejarPlflP3gLJCh+jOM/at5xio7k6D/Sb18HzhnnP9O84xQdydE/AAAAAAAA4D8QejarPlflP7UV+8vuyeE/LNSa5h2n6j/Sb18HzhnnP2recYqO5Og/EHo2qz5X5T9q3nGKjuToP9JvXwfOGec/EHo2qz5X5T94CyQofozjP9JvXwfOGec/EHo2qz5X5T+GONbFbTTuPxB6Nqs+V+U/EHo2qz5X5T94CyQofozjP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP6YKRiV1At4/tRX7y+7J4T9Iv30dOGfMP7UV+8vuyeE/tRX7y+7J4T8AAAAAAADgP7UV+8vuyeE/tRX7y+7J4T/TvOMUHcnRP7UV+8vuyeE/tRX7y+7J4T9Iv30dOGfMP0i/fR04Z8w/AAAAAAAA4D9Iv30dOGfMPyzUmuYdp+o/tRX7y+7J4T+1FfvL7snhP7UV+8vuyeE/tRX7y+7J4T9YqDXNO07VPwAAAAAAAOA/07zjFB3J0T+1FfvL7snhPwAAAAAAAOA/0m9fB84Z5z8AAAAAAADgPwAAAAAAAOA/AAAAAAAA4D8Cmggbnl7VP+C+DpwzotA/ApoIG55e1T8BTYQNT6/iP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/WKg1zTtO1T+1FfvL7snhP7UV+8vuyeE/PujZrPpcxT+1FfvL7snhP7UV+8vuyeE/tRX7y+7J4T+1FfvL7snhPx04Z0Rpb8g/WKg1zTtO1T+1FfvL7snhP1ioNc07TtU/WKg1zTtO1T8AAAAAAADgPwAAAAAAAOA/07zjFB3J0T+1FfvL7snhP7UV+8vuyeE/tRX7y+7J4T/TvOMUHcnRP9O84xQdydE/5x2n6Egu4T+itDf4wmTWP0i/fR04Z8w/WKg1zTtO1T9YqDXNO07VP7UV+8vuyeE/AAAAAAAA8D8AAAAAAADwP9O84xQdydE/eAskKH6M4z/TvOMUHcnRP1ioNc07TtU/WKg1zTtO1T9YqDXNO07VP1ioNc07TtU/WKg1zTtO1T9YqDXNO07VP1ioNc07TtU/WKg1zTtO1T/TvOMUHcnRP1ioNc07TtU/WKg1zTtO1T/TvOMUHcnRP1ioNc07TtU/WKg1zTtO1T9YqDXNO07VPwAAAAAAAPA/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T8AAAAAAADwP9O84xQdydE/6pWyDHGs1z/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP7UV+8vuyeE/at5xio7k6D8AAAAAAADwP5jdk4eFWtc/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP8RCrWnecew/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP9O84xQdydE/SL99HThnzD94CyQofozjP4Y41sVtNO4/eAskKH6M4z/TvOMUHcnRP9O84xQdydE/07zjFB3J0T/TvOMUHcnRP1GgT+RJ0g5AtMh2vp86NcA6It+l1CXVv/OCPkeaLoo/n+V5cHfW+b9+/RAbLJzmP5bs2AjE68w/zc6idyrg0D+w479AECDtv62h1F5E29g/O6F85lGWdj/TbnD5eoR7P4HMzqJ3KuS/0a3X9KCgyD9q3zcZsD+EP77KkBle/4Q/HJYGflTDxL+lSSno9uIjQKnZA63AkME/CMSQQZNpiT/6RJ4kXTPQvwHwmTYtwl4/DZx9L8+Ulz+JtfgUAOOJP+WpWEY0y7G/jwDJz6Fnpr9ctcb7zLSIP02kj1Q6s5A/5scEoWHWoL/HaWccE/eCvyp/a+UtcFy/5FdiVAiadT/R8YdVcgS3P5XUCWgiPDPAZCMQr+t3EMCnIarwZ3jHP9r/AGvVrsE/TihEwCFU97+qSIWxhSD1P51oVyHlJ/Y/TS7GwDqOzT9Zayi1F9HcvwM/qmG/J8w/pkdTPZl/2j+2gTtQpzyuP1FM3gAz37m/9XaV/9oLpj/UpTW8D/aUPx+tILws3JA/KCzxgLLJI0AjWuFMAoq3P0ijZVGWKX8/u7SG98Gekz8XqHtTR32gvyErruBtlIs/M3PchNYetb+geISJ9fyPP2k1JO6x9JG/uM0zel6/aj+SPq2iPzTNv36w58ZPPpi/ByObUC3HpD8+GMJ7WLmRvy18fa1LjcY/AAAAQPsh+T8AAAAALUR0PgAAAICYRvg8AAAAYFHMeDsAAACAgxvwOQAAAEAgJXo4AAAAgCKC4zYAAAAAHfNpNQAAAAAAAPC/VAQBAOgqAAADAAAAEC0AAAMAAADoLwAAAwAAALAwAAADAAAAADIAAAMAAAB4NQAAAwAAALQ4AAADAAAAxC4AAAMAAAB8OQAAAwAAAIQ6AAADAAAAED8AAAMAAAA0PQAAAAAAANQsAAAAAAAAwC8AAAAAAAAQMAAAAAAAANgxAAAAAAAAKDIAAAAAAACMOAAAAAAAAGAuAAAAAAAAVDkAAAAAAABcOgAAAAAAAOg+AAAAAAAADD0AAAQAAAA4PwAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAACAAAAAQAAAAEAAAADAAAAAAAAAAAAAAAAzQIAEM0CACDNAgAwzQIAQM0CAFDNAgBgzQIAcM0CABDNAgAQzQIAUM0CAFDNAgAfAAAAPwAAAH8AAAAAAAAA0HkBAAEAAACoKwAAaAAAAAQAAABtCAEAAQAAACAsAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUBAAEAAAAAAAAA4AAAAAAAAAAQBQEAAQAAAAAAAADgAAAAAQAAABcFAQABAAAAAAAAAKgAAAACAAAAIQUBAAEAAAAAAAAA4AAAAAMAAAArBQEAAQAAAAAAAADgAAAABAAAADkFAQABAAAAAAAAAOAAAAAFAAAAQwUBAAEAAAAAAAAA4AAAAAYAAABQBQEAAQAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAA/////wAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcggBAAEAAADELQAAGAEAAAEAAAB3CAEAAQAAAMQtAAAYAQAAAgAAAH0IAQABAAAAxC0AABgBAAADAAAAhggBAAEAAADELQAAGAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAIAQABAAAAAAAAAHABAAABAAAAmggBAAEAAAAAAAAAcAEAAAIAAAClCAEAAQAAAAAAAAA4AQAAAwAAALMIAQABAAAAAAAAADgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAkAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAwAAAANAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAQAAAAYAAAACAAAAAgAAAAcAAAACAAAAAAAAAFgMAgBd9QEA7vYBAC79AQAlBAIAZAgCAOQLAgD1CwIAAAAAAPoIAQABAAAAKC8AAKgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+CAEAAQAAAAAAAADIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAABgkBAAEAAAA4MAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAD4KAQABAAAAAAAAACACAAACAAAASAoBAAEAAAAAAAAAWAIAAAAAAABRCgEAAQAAAAAAAABYAgAAAwAAAFoKAQABAAAAAAAAAFgCAAAAAAAAZAoBAAEAAAAAAAAAIAIAAAMAAABwCgEAAQAAAAAAAAAgAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAASAAAAAAAAAAAAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAVAAAAFgAAABcAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAMAAAAJAAAAAwAAAAMAAAAKAAAABAAAAAAAAABYDAIAXfUBAC79AQDu9gEAZAgCACUEAgD1CwIA5AsCAAAAAAAAAAAALQwBAP////88MQAAkAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAMAQD/////AAAAALACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADWgQEAAQAAAFAyAADoAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAGQAAABoAAAAAAAAABAAAAAAAAAAbAAAAHAAAAB0AAAAeAAAAAAAAAAAAAAAAAAAAAAAAAB8AAAAgAAAAIQAAACIAAAACAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAMAAAABQAAAAQAAAANAAAABQAAAAMAAAAtEAEAOxABAFEQAQDr7QIAXxABAG4QAQBzEAEAkRABAOvtAgCjEAEA0xABAOvtAgDxEAEAGREBACcRAQBWEQEAihEBAJsRAQDAEQEA4xEBAOkRAQAFEgEAIhIBAD0SAQBeEgEAeBIBAJoSAQC5EgEA3xIBAPcSAQAXEwEANBMBAFgTAQBkEwEA6+0CAG8TAQCVEwEAuRMBAN8TAQDr7QIAFRQBAC0UAQA6FAEAaRQBAGQTAQDr7QIAdhQBAH8UAQCgFAEA2xQBACYVAQB6FQEAnBUBALEVAQDIFQEA3hUBAPYVAQDr7QIADBYBACcWAQBLFgEAbxYBAJQWAQDr7QIAtRYBAM8WAQDhFgEA7hYBAPsWAQAPFwEAHhcBACYXAQA7FwEASRcBAIcXAQCSFwEAZBMBAOvtAgCYFwEApBcBALMXAQDjEQEA6+0CAMYXAQDvFwEADRgBAB0YAQAuGAEANRgBAEQYAQBUGAEAmBgBAJ8YAQDjEQEA6+0CAKkYAQDVGAEA4BgBAOkYAQDyGAEAAxkBABQZAQAoGQEAZBMBAOvtAgA0GQEARBkBAFIZAQBgGQEAbRkBAHoZAQCQGQEAmRkBAKgZAQC1GQEAxhkBAGQTAQDr7QIA0RkBAPAZAQDr7QIAAhoBABEaAQBBGgEASxoBAFgaAQBlGgEAchoBAH8aAQCCGgEA6+0CAIYaAQDr7QIAqRoBANoaAQAJGwEAIBsBADsbAQBWGwEAZBMBAOvtAgByGwEA6+0CAJobAQCmGwEAuRsBAMwbAQDhGwEA9hsBAPobAQDjEQEA6+0CAAYcAQDr7QIAFhwBACQcAQAwHAEAPRwBAF0cAQBzHAEA6+0CAIccAQDQHAEAFh0BAEYdAQB5HQEAgB0BAKcdAQDOHQEA6+0CANMdAQAAAAAAAAAAAJFHAQABAAAAAAAAAAgDAAABAAAARx4BAAEAAAAAAAAACAMAAAIAAACKRwEAAQAAAAAAAABAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjAAAAAAAAACQAAAAlAAAABgAAACYAAAAnAAAAKAAAACkAAAAqAAAAAAAAAAAAAAAAAAAAAAAAACsAAAAsAAAALQAAAC4AAAAEAAAALwAAAAAAAAAAAAAADgAAAAAAAAAPAAAABwAAAAUAAAAQAAAABgAAAAAAAAB19AEAf/QBABExAQDE9AEA//QBACH1AQAn9QEAWAwCAE71AQBd9QEAevUBAIX1AQCn9QEA3fUBABP2AQBO9gEAhPYBAKb2AQC19gEA5vYBAO72AQDXJAEA4CQBAAv3AQDpJAEAVfcBAPIkAQBf9wEA+yQBAGn3AQC49wEA8/cBAAclAQAu+AEAOfgBAH74AQCM+AEA1vgBAOT4AQDy+AEA/fgBAC75AQBu+QEAdvkBAH75AQC5+QEA7/kBAPv5AQAWMQEAB/oBABH6AQAc+gEAOfoBAG/6AQAu/QEAUP0BAFz9AQAbAAIATAACAHgAAgCuAAIAuwACAN0AAgD/AAIACAECAFIBAgBcAQIAoQECANcBAgDiAQIAZwICAHwCAgAPJQEAhgICAJACAgDGAgIABgMCABQDAgBoAwIAdwMCAIYDAgDVAwIAHjEBABUEAgAfBAIAJQQCAFEEAgB4BAIAiQQCAJQEAgDZBAIAHgUCAC0FAgA9BQIATwUCAF8FAgBvBQIAfAUCAIYFAgC8BQIAxQUCAAUGAgAYBgIAIzEBACAGAgBWBgIAfQYCALMGAgDaBgIA6AYCAB4HAgBoBwIAsgcCAL0HAgDzBwIA+AcCABUIAgAyCAIAPQgCAGQIAgB8CAIAsggCAOgIAgD0CAIAGwkCACYJAgBXCQIAiAkCABA8AQCvCQIA2wkCABEKAgBHCgIAUQoCAG4KAgCuCgIA5AoCACkxAQD8CgIAKAsCAE8LAgCFCwIAwgsCAOQLAgDqCwIA9QsCABwMAgAAAAAA2YEBAAEAAADINQAAeAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhIAQABAAAAAAAAAJgDAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMgAAAAAAAAAzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAABIAAAAIAAAABgAAABMAAAAHAAAAAAAAAAAAAABFJgEAAQAAANw4AADQAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASCYBAAEAAAAAAAAA8AMAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAAAAAAAA1AAAANgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAADcAAAAAAAAAAAAAABQAAAAAAAAAFQAAAAkAAAAHAAAAFgAAAAgAAAAAAAAAETEBAFgMAgBd9QEAFjEBAG/6AQAu/QEAHjEBAFEEAgAFBgIAIzEBAD0IAgBkCAIAEDwBACkxAQDkCwIA9QsCAAAAAAAuMQEAAQAAAKQ5AAAoBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjEBAAEAAAAAAAAASAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAA5AAAAOgAAAAoAAAA7AAAAPAAAAD0AAAA+AAAAPwAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQQAAAEIAAABDAAAAAAAAAAAAAAAAAAAAAAAAABcAAAAAAAAAGAAAAAsAAAAIAAAAGQAAAAkAAAAAAAAAxPQBAKY6AQBYDAIAXfUBAHr1AQCxOgEAtzoBAMI6AQDJOgEAhfUBAN31AQDROgEA1zoBAOI6AQCE9gEApvYBAO72AQDpOgEAVfcBAGn3AQDz9wEA8zoBAH74AQCM+AEA1vgBAP46AQDk+AEABjsBAA87AQAdOwEAJzsBALn5AQAwOwEA+/kBABz6AQA5+gEANjsBAID6AQCr+gEA1PoBAPf6AQAg+wEAQ/sBAGz7AQCP+wEAuPsBANv7AQAE/AEAJ/wBAFD8AQBz/AEAnPwBAL/8AQDo/AEAC/0BAC79AQA9OwEAUP0BAEk7AQB4AAIA3QACAKEBAgBWOwEAhgMCAGM7AQAVBAIAJQQCAG07AQBRBAIAeAQCAIkEAgB8OwEAjjsBAJQEAgAeBQIALQUCAD0FAgBPBQIAXwUCAJ47AQCpOwEAtDsBAG8FAgAFBgIACgYCALk7AQDCOwEAyzsBANs7AQDiOwEAVgYCAH0GAgCzBgIA6AYCAPgHAgAVCAIA6jsBAGQIAgDxOwEA9AgCAPo7AQAmCQIAAjwBAIgJAgAQPAEArwkCANsJAgAXPAEAbgoCAK4KAgAhPAEA5AoCAPwKAgBPCwIAKzwBADk8AQCFCwIAjAsCAMILAgDkCwIA9QsCABwMAgAAAAAASzwBAAEAAACsOgAAgAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE88AQABAAAAAAAAAKAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAEUAAAAAAAAAAAAAAEYAAABHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAAABsAAAAMAAAACQAAABwAAAAKAAAAAAAAAEFCAADelQEAQUkAALiVAQBBUgAAi5UBAEFYAADzlQEAQiAAAC+YAQBCSQAAQJgBAENCAAB4lgEAQ08AAGaWAQBDWAAAhZYBAEggAACplgEASEIAALOWAQBISQAAP5cBAEhYAADClgEASGIAAPOWAQBIaQAAJpcBAEhyAADYlgEASHgAAAmXAQBJIAAAUZgBAEtCAAAKlgEAS0kAAFKWAQBLUgAAPpYBAEtYAAArlgEATkIAAFGXAQBOSQAAmJcBAE5SAACwlwEATlgAAHyXAQBQQQAAEZgBAFBCAADNlwEAUEkAAAGYAQBQWAAA7ZcBAFIgAAAImgEAUyAAACCYAQBaRAAAjpgBAAAAAAAAAAAAAQAAAAAAAAD+RgEA/////1w9AADYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkcBAP////8AAAAA+AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAApHAQABAAAAIEMAAAAAAAAQAAAAEkcBAAEAAAAgQwAAAAAAABEAAAAaRwEAAQAAACBDAAAAAAAAEQAAACNHAQABAAAAIEMAAAAAAAARAAAAK0cBAAEAAAAgQwAAAAAAABMAAAAzRwEAAQAAACRDAAAAAAAAFAAAADtHAQABAAAAJEMAAAAAAAAVAAAAQ0cBAAEAAAAkQwAAAAAAABUAAABMRwEAAQAAACRDAAAAAAAAFQAAAFRHAQABAAAAJEMAAAAAAAAWAAAAXEcBAAEAAAAoQwAAAAAAABcAAABlRwEAAQAAAChDAAAAAAAAGAAAAG5HAQABAAAAKEMAAAAAAAAYAAAAeEcBAAEAAAAoQwAAAAAAABgAAACBRwEAAQAAAChDAAAAAAAAGQAAAIpHAQABAAAALEMAAAAAAAAZAAAAkUcBAAEAAAAsQwAAAAAAABoAAACXRwEAAQAAADBDAAAAAAAACgAAAKBHAQABAAAANEMAAAAAAAALAAAAqEcBAAEAAAA0QwAAAAAAAAwAAACwRwEAAQAAADRDAAAAAAAADAAAALlHAQABAAAANEMAAAAAAAAMAAAAwUcBAAEAAAA0QwAAAAAAAA4AAADJRwEAAQAAADRDAAAAAAAADgAAANBHAQABAAAANEMAAAAAAAANAAAA2EcBAAEAAAA0QwAAAAAAAAUAAADgRwEAAQAAADRDAAAAAAAABgAAAOhHAQABAAAANEMAAAAAAAAHAAAA8EcBAAEAAAA0QwAAAAAAAAcAAAD5RwEAAQAAADRDAAAAAAAABwAAAAFIAQABAAAANEMAAAAAAAAJAAAACUgBAAEAAAA0QwAAAAAAAAkAAAAQSAEAAQAAADRDAAAAAAAACAAAABhIAQABAAAANEMAAAAAAAAAAAAAIEgBAAEAAAA4QwAAAAAAAAEAAAApSAEAAQAAADhDAAAAAAAAAgAAADJIAQABAAAAOEMAAAAAAAACAAAAPEgBAAEAAAA4QwAAAAAAAAIAAABFSAEAAQAAADhDAAAAAAAABAAAAE5IAQABAAAAOEMAAAAAAAAEAAAAVkgBAAEAAAA4QwAAAAAAAAMAAABfSAEAAQAAADhDAAAAAAAAEgAAAGhIAQABAAAAIEMAAAAAAAAbAAAAcEgBAAEAAAA8QwAAAAAAABwAAAB4SAEAAQAAADxDAAAAAAAAHQAAAIBIAQABAAAAPEMAAAAAAAAdAAAAiUgBAAEAAAA8QwAAAAAAAB0AAACRSAEAAQAAADxDAAAAAAAAHgAAAJlIAQABAAAAQEMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAAARMAQBMQwAAAQAAAGhDAAAAAAAAAAAAAEgAAABJAAAAAQAAAAAAAADQeQEAAAAAAFxDAABkQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAAAAAABAAAAAQAAAAEAAAABAAAAAgAAAAIAAAABAAAAAgAAAAQAAAAYAQAAMAEAALAAAAApVAEALlQBADJUAQA5VAEAPVQBAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAAAAAAdAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAyWQEAKEQAAAEAAAB4RAAAAAAAAAAAAABKAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAUQAAAFIAAABLAAAAUwAAAEsAAABUAAAAVQAAAFYAAABXAAAAAAAAAD9ZAQAAAAAAOEQAACDPAgABAAAARVkBAAAAAABARAAAIM8CAAMAAABJWQEAAAAAAEhEAAAgzwIABAAAAE9ZAQAAAAAAUEQAACDPAgAFAAAAVVkBAAAAAABoRAAAIM8CAAYAAABfWQEAAAAAAHBEAAAgzwIABwAAAGVZAQAAAAAAWEQAACDPAgAHAAAAaVkBAAAAAABYRAAAIM8CAAcAAABuWQEAAAAAAGBEAAAgzwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAMAAAAAAAAAABAAAAIAAAAAEAAAAAAAAAAAAAAAAAAAADAAAABAAAAAAAAAAAAAAA6+0CAAAAAAATBgIAAQAAAHRkAQAHAAAAOGQBAAMAAAC8GQIABQAAAHxkAQAPAAAAvoEBAAgAAAC+gQEAEAAAAIRkAQAEAAAAhGQBABEAAACJZAEABQAAAIlkAQACAAAAj2QBAAYAAACWZAEABAAAAKJkAQAHAAAAqmQBAAcAAAC6ZAEABQAAAMBkAQAIAAAA12QBAAgAAADAZAEACQAAAOBkAQAHAAAA6GQBAAoAAAACZQEABwAAAAplAQALAAAAJGUBAAYAAAArZQEADAAAAEllAQAJAAAAK2UBAA0AAABTZQEACAAAAFxlAQAOAAAAfWUBAAgAAACGZQEAEgAAAKdlAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAACAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAADAAAAIQAAAAQAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAEAAAAIgAAAAUAAAAAAAAAAAAAAAAAAAAFAAAAQAAAACBHAAAwRwAABgAAAAQAAAA8RwAABgAAAAgAAAAGAAAABAAAAERHAAAABAAACAAAAP////8AAAAAAAAAACMAAAAAAAAAAAAAAAAAAAAAAAAANQAAAAAAAAAAAAAAIAAAAAAAAAAAAAAABgAAAAAAAAAHAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAABgAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAACAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAACAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAACQAAAAAAAAAHAAAAAAAAAAkAAAALAAAACAAAAAoAAADISAAATEgAALBIAAABAAAAAQAAAAoAAAAWAAAACwAAAFgAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAANAAAAAAAAAAcAAAAAAAAABwAAAAIAAAAFAAAACAAAAAAAAAAAAAAABgAAAAMAAAAOAAAACwAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA8AAAAAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJQAAABAAAAAAAAAABwAAAAAAAAAIAAAACAAAAAAAAAAAAAAAJgAAAAAAAAAAAAAAAAAAAAAAAAAQAAAA/////wAAAAAAAAAAJwAAAAAAAAAAAAAABwAAAAAAAAABAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAgAAAAMAAAABAAAAAQAAAAIAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAQAAAAQAAAAFAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAABgAAAAEAAAABAAAABwAAAAgAAAAJAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAEAAAABAAAACwAAAAEAAAAMAAAAAQAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAATAAAAEwAAABMAAAATAAAAFwAAABgAAAAZAAAAEwAAABoAAAAbAAAAHAAAAB0AAAATAAAAEwAAABMAAAATAAAAEwAAAAEAAAAeAAAAAQAAAAEAAAATAAAAAQAAAB8AAAAgAAAAIQAAACIAAAAjAAAAEwAAACQAAAAlAAAAJgAAABMAAAATAAAAEwAAABMAAAAnAAAAKAAAACkAAAATAAAAKgAAACsAAAAsAAAALQAAABMAAAATAAAAEwAAABMAAAATAAAAAQAAAAEAAAABAAAAAQAAAAEAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAAC4AAAATAAAAEwAAABMAAAAvAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAAwAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAAAAAAAABAAAAAQAAAAIAAAADAAAAAQAAAAQAAAABAAAABQAAAAEAAAAGAAAABwAAAAcAAAABAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAMAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAACAAAAAb6cBAFCnAQAWcAEAfKcBAHSnAQCCpwEAAAAAABx0AQAldAEALHQBADp0AQBBdAEAmKcBAEh0AQBPdAEAAQAAAAgAAAD/////AAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAO11AQAIAAAAAwAAAPZ1AQD6dQEACwAAAAYAAADWgQEABnYBAAIAAAABAAAACXYBAA12AQAEAAAAAgAAABJ2AQAWdgEABAAAAAQAAAAbdgEAIHYBAAUAAAAFAAAAJnYBACp2AQAEAAAABwAAAC92AQAzdgEABQAAAAkAAAA5dgEAPXYBAAQAAAAKAAAAQnYBAEd2AQAEAAAADAAAAEx2AQAQewEAAAAAAAEAAAAYewEAAQAAAAAAAACjpgEAAQAAAAEAAAATBgIAAAAAAAAAAAAAAAAAAAAAAAAAAAD5eQEAMQAAAAAAAAAAAAAA0aEBABAAAAA7EgIAgAAAAPJ5AQBAAAAAPJQBABAAAAD0eQEAQAAAAAAAAAAAAAAAwHkBAAEAAADHeQEAAgAAAMx5AQADAAAA+poBAAQAAABekQEABQAAANB5AQAGAAAAEwYCAAgAAADUeQEAIQAAANh5AQAiAAAA3HkBACIAAADgeQEAAQAAAOV5AQAHAAAA63kBACcAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAP////8AAAAAKQAAAAAAAAAAAAAAAAAAAAAAAAArfwEAMn8BAAAAAADTgQEA1oEBANmBAQAAAAAAAAAAAAEAAAACAAAA/////5aBAQCcgQEAEwYCAAAAAABkAAAAZQAAAGYAAABkAAAACAAAAAgAAAAAAAAAAAAAACoAAAARAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAAAAAACQAAACsAAAARAAAAAAAAAAAAAAAAAAAACAAAAP////8AAAAAAAAAACwAAAAAAAAAAAAAAAAAAAAAAAAA+poBAPhUAACABgAAAAAAACeRAQD4VAAAsAYAAAAAAAAAmgEA+FQAAOAGAAAAAAAAL5EBAPhUAADgBgAAAAAAADSRAQD4VAAAEAcAAAAAAAA7kQEAEFUAABAHAAAAAAAAQZEBAPhUAABABwAAAAAAAEWRAQD4VAAAcAcAAAAAAAATBgIA+FQAAKAHAAAAAAAATpEBAPhUAACgBwAAAAAAAFiRAQD4VAAAUAYAAAAAAABekQEA+FQAANAHAAAAAAAAZpEBAPhUAAAACAAAAAAAAHCRAQD4VAAAMAgAAAAAAAB+kQEA+FQAAGAIAAAAAAAAhJEBAPhUAACQCAAAAAAAAI2RAQD4VAAAwAgAAAAAAACVkQEA+FQAAPAIAAAAAAAAnpEBAPhUAAAgCQAAAAAAAKaRAQD4VAAAUAkAAAAAAACrkQEA+FQAAIAJAAAAAAAAr5EBAPhUAACwCQAAAAAAALaRAQD4VAAA4AkAAAAAAAC8kQEA+FQAABAKAAAAAAAAxpEBAChVAABACgAAAAAAAM+RAQD4VAAAgAYAAAAAAADUkQEA+FQAAIAGAAAAAAAA3pEBAPhUAABwCgAAAAAAAOWRAQD4VAAAoAoAAAAAAADykQEA+FQAANAKAAAAAAAAAJIBAPhUAAAACwAAAAAAAA6SAQD4VAAAMAsAAAAAAAAakgEA+FQAAGALAAAAAAAAJ5IBAPhUAACQCwAAAAAAADCSAQD4VAAAwAsAAAAAAAA6kgEA+FQAAPALAAAAAAAAQ5IBAPhUAAAgDAAAAAAAAEuSAQD4VAAAUAwAAAAAAABTkgEA+FQAAIAMAAAAAAAAXJIBAPhUAACwDAAAAAAAAGCSAQD4VAAA4AwAAAAAAABrkgEA+FQAABANAAAAAAAAb5IBAPhUAABADQAAAAAAAHmSAQD4VAAAcA0AAAAAAACCkgEA+FQAAKANAAAAAAAAipIBAPhUAADQDQAAAAAAAJeSAQD4VAAAAA4AAAAAAACjkgEA+FQAADAOAAAAAAAArpIBAPhUAABgDgAAAAAAAL6SAQD4VAAAkA4AAAAAAADMkgEA+FQAAMAOAAAAAAAA25IBAPhUAADwDgAAAAAAAOWSAQD4VAAAIA8AAAAAAADukgEA+FQAAFAPAAAAAAAA+JIBAPhUAACADwAAAAAAAAKTAQD4VAAAsA8AAAAAAAAJkwEA+FQAAOAPAAAAAAAAEJMBAPhUAAAQEAAAAAAAABqTAQBAVQAAAAAAAAAAAAAhkwEAQFUAAAAAAAAAAAAAA5EBAFhVAAAAAAAAAAAAACmTAQBwVQAAQBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWQAAAFoAAAAXAAAABAAAAAIAAAAMAAAAWwAAAFoAAAAXAAAABQAAAAAAAAANAAAAWQAAAFoAAAAXAAAABAAAAAIAAAAMAAAAXAAAAF0AAAAYAAAABgAAAAMAAAAOAAAAXgAAAF8AAAAXAAAABwAAAAAAAAAPAAAAWQAAAFoAAAAXAAAACAAAAAIAAAAMAAAAEAAAABEAAAASAAAAEwAAACuUAQAylAEAAAAAADqUAQA8lAEAdRICAD6UAQAMAAAABAAAAAYAAAACAAAAAwAAAAEAAAAJAAAACAAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAfAAAAIAAAACEAAAAiAAAAIwAAACQAAAAlAAAAJgAAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADoAAAA9AAAAPgAAAD8AAABAAAAAQQAAAEIAAABDAAAARAAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAAUQAAAFIAAABTAAAAVAAAAFUAAABWAAAAVwAAAFgAAACLlQEAm5UBAKiVAQAAAAAAAAAAAAQAAACtlQEAAAAAAAAAAAC4lQEAm5UBAKiVAQAAAAAAz5UBAAUAAACtlQEAAAAAANeVAQDelQEAm5UBAO6VAQAAAAAAAAAAAAYAAACtlQEAGaYBAAAAAADzlQEAm5UBAO6VAQAAAAAAz5UBAAcAAACtlQEAGaYBANeVAQAKlgEAF5YBAO6VAQAAAAAAAAAAAAoAAAAllgEAGaYBAAAAAAArlgEAF5YBAO6VAQAAAAAA15UBAAsAAAAllgEAGaYBANeVAQA+lgEAF5YBAEyWAQAAAAAAAAAAAAgAAAAllgEAAAAAAAAAAABSlgEAF5YBAEyWAQAAAAAA15UBAAkAAAAllgEAAAAAANeVAQBmlgEAZpYBAAAAAAAAAAAAAAAAAAwAAABulgEAAAAAAAAAAAB4lgEAZpYBABmmAQAAAAAAAAAAAA4AAABulgEAGaYBAAAAAACFlgEAZpYBABmmAQAAAAAAz5UBAA8AAABulgEAGaYBANeVAQCZlgEAZpYBAAAAAAAAAAAAz5UBAA0AAABulgEAAAAAANeVAQCplgEAqZYBAAAAAAAAAAAAAAAAABAAAACtlQEAAAAAAAAAAACzlgEAqZYBABmmAQAAAAAAAAAAABIAAACtlQEAGaYBAAAAAADClgEAqZYBABmmAQAAAAAAz5UBABMAAACtlQEAGaYBANeVAQDYlgEAqZYBAAAAAADplgEAAAAAABQAAACtlQEAAAAAAAAAAADzlgEAqZYBABmmAQDplgEAAAAAABYAAACtlQEAGaYBAAAAAAAJlwEAqZYBABmmAQDplgEAz5UBABcAAACtlQEAGaYBANeVAQAmlwEAqZYBAAAAAADplgEAz5UBABUAAACtlQEAAAAAANeVAQA/lwEAqZYBAAAAAAAAAAAAz5UBABEAAACtlQEAAAAAANeVAQBRlwEAZ5cBABmmAQAAAAAAAAAAABoAAAAllgEAGaYBAAAAAAB8lwEAZ5cBABmmAQAAAAAA15UBABsAAAAllgEAGaYBANeVAQCYlwEAZ5cBAAAAAAAAAAAA15UBABkAAAAllgEAAAAAANeVAQCwlwEAZ5cBAMeXAQAAAAAAAAAAABgAAAAllgEAAAAAAAAAAADNlwEA25cBABmmAQAAAAAAAAAAAB4AAAAllgEAGaYBAAAAAADtlwEA25cBABmmAQAAAAAA15UBAB8AAAAllgEAGaYBANeVAQABmAEA25cBAAAAAAAAAAAA15UBAB0AAAAllgEAAAAAANeVAQARmAEA25cBAMeXAQAAAAAAAAAAABwAAAAllgEAAAAAAAAAAAAgmAEAIJgBAAAAAAAAAAAAAAAAACAAAAAnmAEAAAAAAAAAAAAvmAEAOpgBABmmAQAAAAAAAAAAAAIAAAAllgEAGaYBAAAAAABAmAEAOpgBABmmAQAAAAAA15UBAAMAAAAllgEAGaYBANeVAQBRmAEAOpgBAAAAAAAAAAAA15UBAAEAAAAllgEAAAAAANeVAQAImgEAOpgBAAAAAAAAAAAAAAAAAAAAAAAllgEAAAAAAAAAAABemAEAeJgBAIeYAQAAAAAA15UBACEAAAAllgEAAAAAANeVAQCOmAEAm5gBAAAAAAAAAAAAAAAAACIAAAAnmAEAAAAAAAAAAAAIAAAABAAAAAAAAAAKAAAALQAAABIAAAAAAAAAAAAAAAAAAAAIAAAA/////wAAAAAAAAAALgAAAAAAAAAAAAAAAAAAAAAAAAA3mwEAxgAAAD2bAQDBAAAARJsBAMIAAABKmwEAwAAAAFGbAQCRAwAAV5sBAMUAAABdmwEAwwAAAGSbAQDEAAAAaZsBAJIDAABumwEAxwAAAHWbAQCnAwAAeZsBACEgAACAmwEAlAMAAIabAQDQAAAAipsBAMkAAACRmwEAygAAAJebAQDIAAAAnpsBAJUDAACmmwEAlwMAAKqbAQDLAAAAr5sBAJMDAAC1mwEAzQAAALybAQDOAAAAwpsBAMwAAADJmwEAmQMAAM6bAQDPAAAA05sBAJoDAADZmwEAmwMAAOCbAQCcAwAA45sBANEAAADqmwEAnQMAAO2bAQBSAQAA85sBANMAAAD6mwEA1AAAAACcAQDSAAAAB5wBAKkDAAANnAEAnwMAABWcAQDYAAAAHJwBANUAAAAjnAEA1gAAACicAQCmAwAALJwBAKADAAAvnAEAMyAAADWcAQCoAwAAOZwBAKEDAAA9nAEAYAEAAEScAQCjAwAASpwBAN4AAABQnAEApAMAAFScAQCYAwAAWpwBANoAAABhnAEA2wAAAGecAQDZAAAAbpwBAKUDAAB2nAEA3AAAAHucAQCeAwAAfpwBAN0AAACFnAEAeAEAAIqcAQCWAwAAj5wBAOEAAACWnAEA4gAAAJycAQC0AAAAopwBAOYAAAConAEA4AAAAK+cAQA1IQAAt5wBALEDAAC9nAEAJgAAAMGcAQAnIgAAxZwBACAiAADJnAEA5QAAAM+cAQBIIgAA1ZwBAOMAAADcnAEA5AAAAOGcAQAeIAAA55wBALIDAADsnAEApgAAAPOcAQAiIAAA+JwBACkiAAD8nAEA5wAAAAOdAQC4AAAACZ0BAKIAAAAOnQEAxwMAABKdAQDGAgAAF50BAGMmAAAdnQEARSIAACKdAQCpAAAAJ50BALUhAAAtnQEAKiIAADGdAQCkAAAAOJ0BANMhAAA9nQEAICAAAESdAQCTIQAASZ0BALAAAABNnQEAtAMAAFOdAQBmJgAAWZ0BAPcAAABgnQEA6QAAAGedAQDqAAAAbZ0BAOgAAAB0nQEABSIAAHqdAQADIAAAf50BAAIgAACEnQEAtQMAAIydAQBhIgAAkp0BALcDAACWnQEA8AAAAJqdAQDrAAAAn50BAKwgAACknQEAAyIAAKqdAQCSAQAAr50BAAAiAAC2nQEAvQAAAL2dAQC8AAAAxJ0BAL4AAADLnQEARCAAANGdAQCzAwAA150BAGUiAADanQEAPgAAAN2dAQDUIQAA4p0BAJQhAADnnQEAZSYAAO6dAQAmIAAA9Z0BAO0AAAD8nQEA7gAAAAKeAQChAAAACJ4BAOwAAAAPngEAESEAABWeAQAeIgAAG54BACsiAAAfngEAuQMAACSeAQC/AAAAK54BAAgiAAAwngEA7wAAADWeAQC6AwAAO54BANAhAABAngEAuwMAAEeeAQApIwAATJ4BAKsAAABSngEAkCEAAFeeAQAIIwAAXZ4BABwgAABjngEAZCIAAGaeAQAKIwAAbZ4BABciAAB0ngEAyiUAAHieAQAOIAAAfJ4BADkgAACDngEAGCAAAImeAQA8AAAAjJ4BAK8AAACRngEAFCAAAJeeAQC1AAAAnZ4BALcAAAA8pwEAEiIAAKSeAQC8AwAAp54BAAciAACtngEAoAAAALKeAQATIAAAuJ4BAGAiAAC7ngEACyIAAL6eAQCsAAAAwp4BAAkiAADIngEAhCIAAM2eAQDxAAAA1J4BAL0DAADXngEA8wAAAN6eAQD0AAAA5J4BAFMBAADqngEA8gAAAPGeAQA+IAAA954BAMkDAAD9ngEAvwMAAAWfAQCVIgAAC58BACgiAAAOnwEAqgAAABOfAQC6AAAAGJ8BAPgAAAAfnwEA9QAAACafAQCXIgAALZ8BAPYAAAAynwEAtgAAADefAQACIgAAPJ8BADAgAABDnwEApSIAAEifAQDGAwAATJ8BAMADAABPnwEA1gMAAFOfAQCxAAAAWp8BAKMAAABgnwEAMiAAAGafAQAPIgAAa58BAB0iAABwnwEAyAMAAHSfAQAiAAAAeZ8BANIhAAB+nwEAGiIAAISfAQAqIwAAiZ8BALsAAACPnwEAkiEAAJSfAQAJIwAAmp8BAB0gAACgnwEAHCEAAKWfAQCuAAAAqZ8BAAsjAACwnwEAwQMAALSfAQAPIAAAuJ8BADogAAC/nwEAGSAAAMWfAQAaIAAAy58BAGEBAADSnwEAxSIAANefAQCnAAAA3J8BAK0AAADgnwEAwwMAAOafAQDCAwAA7Z8BADwiAADxnwEAYCYAAPifAQCCIgAA/J8BAIYiAAABoAEAESIAAAWgAQCDIgAACaABALkAAAAOoAEAsgAAABOgAQCzAAAAGKABAIciAAAdoAEA3wAAACOgAQDEAwAAJ6ABADQiAAAuoAEAuAMAADSgAQDRAwAAPaABAAkgAABEoAEA/gAAAEqgAQDcAgAAUKABANcAAABWoAEAIiEAAFygAQDRIQAAYaABAPoAAABooAEAkSEAAG2gAQD7AAAAc6ABAPkAAAB6oAEAqAAAAH6gAQDSAwAAhKABAMUDAACMoAEA/AAAAJGgAQAYIQAAmKABAL4DAACboAEA/QAAAKKgAQClAAAApqABAP8AAACroAEAtgMAALCgAQANIAAAtKABAAwgAAAHAAAACAAAAAEBAAAIAAAACAAAAAAAAAAAAAAALwAAABMAAAAAAAAAAAAAAAAAAAAIAAAAEAAAAAAAAAAAAAAAMAAAABQAAAAAAAAAAAAAAAAAAAD8pgEACQAAAP6mAQAKAAAAA6cBAAoAAAALpwEACwAAABGnAQALAAAAGqcBAAwAAAAdpwEADAAAACOnAQANAAAAKKcBAA0AAAAwpwEADgAAADWnAQAOAAAAPKcBAA8AAABCpwEADwAAAE6nAQAQAAAAYAAAADEAAAAyAAAAFAAAADMAAABhAAAANAAAABUAAAA1AAAACAAAAAQAAAD/////AAAAAAAAAAAVAAAAAAAAAAAAAAAAAAAAmagBAFVdyX/Jf/8ApKgBALst1L6u1P8Ar6gBABR3/f3Ahv8AuqgBAFVdyX/Jf/8AxagBALst1L6u1P8A0KgBABR3/f3Ahv8A26gBACpm////mf8A5qgBAFVdyX/Jf/8A8agBALst1L6u1P8A/KgBABR3/f3Ahv8AB6kBACpm////mf8AEqkBAJetsDhssP8AHakBAFVdyX/Jf/8AKKkBALst1L6u1P8AM6kBABR3/f3Ahv8APqkBACpm////mf8ASakBAJetsDhssP8AVKkBAOj88PACf/8AX6kBAFVdyX/Jf/8AaqkBALst1L6u1P8AdakBABR3/f3Ahv8AgKkBACpm////mf8Ai6kBAJetsDhssP8AlqkBAOj88PACf/8AoakBABHgv79bF/8ArKkBAFVdyX/Jf/8At6kBALst1L6u1P8AwqkBABR3/f3Ahv8AzakBACpm////mf8A2KkBAJetsDhssP8A46kBAOj88PACf/8A7qkBABHgv79bF/8A+akBAAAAZmZmZv8ABKoBAJMZ997r9/8ADqoBAI5L4Z7K4f8AGKoBAJG8vTGCvf8AIqoBAJ8Q/+/z//8ALKoBAI8u573X5/8ANqoBAI9/1muu1v8AQKoBAJPQtSFxtf8ASqoBAJ8Q/+/z//8AVKoBAI8u573X5/8AXqoBAI9/1muu1v8AaKoBAJG8vTGCvf8AcqoBAJXxnAhRnP8AfKoBAJ8Q/+/z//8AhqoBAJQr78bb7/8AkKoBAI5L4Z7K4f8AmqoBAI9/1muu1v8ApKoBAJG8vTGCvf8ArqoBAJXxnAhRnP8AuKoBAJ8Q/+/z//8AwqoBAJQr78bb7/8AzKoBAI5L4Z7K4f8A1qoBAI9/1muu1v8A4KoBAJCpxkKSxv8A6qoBAJPQtSFxtf8A9KoBAJfxlAhFlP8A/qoBAJQI//f7//8ACKsBAJMZ997r9/8AEqsBAJQr78bb7/8AHKsBAI5L4Z7K4f8AJqsBAI9/1muu1v8AMKsBAJCpxkKSxv8AOqsBAJPQtSFxtf8ARKsBAJfxlAhFlP8ATqsBAJQI//f7//8AWKsBAJMZ997r9/8AYqsBAJQr78bb7/8AbKsBAI5L4Z7K4f8AdqsBAI9/1muu1v8AgKsBAJCpxkKSxv8AiqsBAJPQtSFxtf8AlKsBAJXxnAhRnP8AnqsBAJjrawgwa/8AqKsBABfvVFQwBf8AsqsBAHf/PAA8MP8AvasBABfsjIxRCv8Ax6sBABjCv7+BLf8A0asBAB1w39/Cff8A26sBAB409vbow/8A5asBAHkm6sfq5f8A76sBAHhfzYDNwf8A+asBAHyllzWXj/8AA6wBAHz8ZgFmXv8ADawBABfvVFQwBf8AF6wBAHz8ZgFmXv8AIqwBAHf/PAA8MP8ALawBABfsjIxRCv8AN6wBABjCv7+BLf8AQawBAB1w39/Cff8AS6wBAB409vbow/8AVawBAAAA9fX19f8AX6wBAHkm6sfq5f8AaawBAHhfzYDNwf8Ac6wBAHyllzWXj/8AfawBAByH2NizZf8AhqwBAAAA9fX19f8Aj6wBAHt/tFq0rP8AmKwBABXXpqZhGv8AoawBAB1w39/Cff8AqqwBAHhfzYDNwf8As6wBAHn9hQGFcf8AvKwBABXXpqZhGv8AxawBAB1w39/Cff8AzqwBAAAA9fX19f8A16wBAHhfzYDNwf8A4KwBAHn9hQGFcf8A6awBABfsjIxRCv8A8qwBAByH2NizZf8A+6wBAB409vbow/8ABK0BAHkm6sfq5f8ADa0BAHt/tFq0rP8AFq0BAHz8ZgFmXv8AH60BABfsjIxRCv8AKK0BAByH2NizZf8AMa0BAB409vbow/8AOq0BAAAA9fX19f8AQ60BAHkm6sfq5f8ATK0BAHt/tFq0rP8AVa0BAHz8ZgFmXv8AXq0BABfsjIxRCv8AZ60BABjCv7+BLf8AcK0BAB1w39/Cff8Aea0BAB409vbow/8Agq0BAHkm6sfq5f8Ai60BAHhfzYDNwf8AlK0BAHyllzWXj/8Ana0BAHz8ZgFmXv8Apq0BABfsjIxRCv8Ar60BABjCv7+BLf8AuK0BAB1w39/Cff8Awa0BAB409vbow/8Ayq0BAAAA9fX19f8A060BAHkm6sfq5f8A3K0BAHhfzYDNwf8A5a0BAHyllzWXj/8A7q0BAHz8ZgFmXv8A960BAIcU+eX1+f8AAK4BAHVK2JnYyf8ACa4BAGe5oiyiX/8AEq4BAIgO++34+/8AG64BAH824rLi4v8AJK4BAHF4wmbCpP8ALa4BAGK+iyOLRf8ANq4BAIgO++34+/8AP64BAH824rLi4v8ASK4BAHF4wmbCpP8AUa4BAGe5oiyiX/8AWq4BAGb/bQBtLP8AY64BAIgO++34+/8AbK4BAHci7Mzs5v8Ada4BAHVK2JnYyf8Afq4BAHF4wmbCpP8Ah64BAGe5oiyiX/8AkK4BAGb/bQBtLP8Ama4BAIgO++34+/8Aoq4BAHci7Mzs5v8Aq64BAHVK2JnYyf8AtK4BAHF4wmbCpP8Ava4BAGmfrkGudv8Axq4BAGK+iyOLRf8Az64BAGb/WABYJP8A2K4BAIYG/ff8/f8A4a4BAIcU+eX1+f8A6q4BAHci7Mzs5v8A864BAHVK2JnYyf8A/K4BAHF4wmbCpP8ABa8BAGmfrkGudv8ADq8BAGK+iyOLRf8AF68BAGb/WABYJP8AIK8BAIYG/ff8/f8AKa8BAIcU+eX1+f8AMq8BAHci7Mzs5v8AO68BAHVK2JnYyf8ARK8BAHF4wmbCpP8ATa8BAGmfrkGudv8AVq8BAGK+iyOLRf8AX68BAGb/bQBtLP8AaK8BAGX/RABEG/8Aca8BAJAU9ODs9P8Aeq8BAJRG2p682v8Ag68BAMR7p4hWp/8AjK8BAIgO++34+/8Ala8BAJI147PN4/8Anq8BAKJKxoyWxv8Ap68BAMqVnYhBnf8AsK8BAIgO++34+/8Aua8BAJI147PN4/8Awq8BAKJKxoyWxv8Ay68BAMR7p4hWp/8A1K8BANbhgYEPfP8A3a8BAIgO++34+/8A5q8BAJQr5r/T5v8A768BAJRG2p682v8A+K8BAKJKxoyWxv8AAbABAMR7p4hWp/8ACrABANbhgYEPfP8AE7ABAIgO++34+/8AHLABAJQr5r/T5v8AJbABAJRG2p682v8ALrABAKJKxoyWxv8AN7ABAL5ksYxrsf8AQLABAMqVnYhBnf8ASbABANX8bm4Ba/8AUrABAIYG/ff8/f8AW7ABAJAU9ODs9P8AZLABAJQr5r/T5v8AbbABAJRG2p682v8AdrABAKJKxoyWxv8Af7ABAL5ksYxrsf8AiLABAMqVnYhBnf8AkbABANX8bm4Ba/8AmrABAIYG/ff8/f8Ao7ABAJAU9ODs9P8ArLABAJQr5r/T5v8AtbABAJRG2p682v8AvrABAKJKxoyWxv8Ax7ABAL5ksYxrsf8A0LABAMqVnYhBnf8A2bABANbhgYEPfP8A4rABANX/TU0AS/8A67ABAHLTnhued/8A9bABABL82dlfAv8A/7ABAK1fs3Vws/8ACbEBAHLTnhued/8AE7EBABL82dlfAv8AHbEBAK1fs3Vws/8AJ7EBAOnR5+cpiv8AMbEBAHLTnhued/8AO7EBABL82dlfAv8ARbEBAK1fs3Vws/8AT7EBAOnR5+cpiv8AWbEBAD7QpmamHv8AY7EBAHLTnhued/8AbbEBABL82dlfAv8Ad7EBAK1fs3Vws/8AgbEBAOnR5+cpiv8Ai7EBAD7QpmamHv8AlbEBAB/85uarAv8An7EBAHLTnhued/8AqbEBABL82dlfAv8As7EBAK1fs3Vws/8AvbEBAOnR5+cpiv8Ax7EBAD7QpmamHv8A0bEBAB/85uarAv8A27EBABvSpqZ2Hf8A5bEBAHLTnhued/8A77EBABL82dlfAv8A+bEBAK1fs3Vws/8AA7IBAOnR5+cpiv8ADbIBAD7QpmamHv8AF7IBAB/85uarAv8AIbIBABvSpqZ2Hf8AK7IBAAAAZmZmZv8ANbIBAEwZ8+Dz2/8APrIBAF893ajdtf8AR7IBAIyqykOiyv8AULIBAEER+fD56P8AWbIBAFcu5LrkvP8AYrIBAHtlzHvMxP8Aa7IBAI3FviuMvv8AdLIBAEER+fD56P8AfbIBAFcu5LrkvP8AhrIBAHtlzHvMxP8Aj7IBAIyqykOiyv8AmLIBAJHzrAhorP8AobIBAEER+fD56P8AqrIBAE0p68zrxf8As7IBAF893ajdtf8AvLIBAHtlzHvMxP8AxbIBAIyqykOiyv8AzrIBAJHzrAhorP8A17IBAEER+fD56P8A4LIBAE0p68zrxf8A6bIBAF893ajdtf8A8rIBAHtlzHvMxP8A+7IBAImg006z0/8ABLMBAI3FviuMvv8ADbMBAJPynghYnv8AFrMBADwM/Pf88P8AH7MBAEwZ8+Dz2/8AKLMBAE0p68zrxf8AMbMBAF893ajdtf8AOrMBAHtlzHvMxP8AQ7MBAImg006z0/8ATLMBAI3FviuMvv8AVbMBAJPynghYnv8AXrMBADwM/Pf88P8AZ7MBAEwZ8+Dz2/8AcLMBAE0p68zrxf8AebMBAF893ajdtf8AgrMBAHtlzHvMxP8Ai7MBAImg006z0/8AlLMBAI3FviuMvv8AnbMBAJHzrAhorP8AprMBAJbvgQhAgf8Ar7MBAEoV9eX14P8AurMBAFBI2aHZm/8AxbMBAGKyozGjVP8A0LMBAEkP+O346f8A27MBAE425Lrks/8A5rMBAFZoxHTEdv8A8bMBAGK+iyOLRf8A/LMBAEkP+O346f8AB7QBAE425Lrks/8AErQBAFZoxHTEdv8AHbQBAGKyozGjVP8AKLQBAGb/bQBtLP8AM7QBAEkP+O346f8APrQBAE0s6cfpwP8ASbQBAFBI2aHZm/8AVLQBAFZoxHTEdv8AX7QBAGKyozGjVP8AarQBAGb/bQBtLP8AdbQBAEkP+O346f8AgLQBAE0s6cfpwP8Ai7QBAFBI2aHZm/8AlrQBAFZoxHTEdv8AobQBAGCeq0GrXf8ArLQBAGK+iyOLRf8At7QBAGz/WgBaMv8AwrQBAEgH/Pf89f8AzbQBAEoV9eX14P8A2LQBAE0s6cfpwP8A47QBAFBI2aHZm/8A7rQBAFZoxHTEdv8A+bQBAGCeq0GrXf8ABLUBAGK+iyOLRf8AD7UBAGz/WgBaMv8AGrUBAEgH/Pf89f8AJbUBAEoV9eX14P8AMLUBAE0s6cfpwP8AO7UBAFBI2aHZm/8ARrUBAFZoxHTEdv8AUbUBAGCeq0GrXf8AXLUBAGK+iyOLRf8AZ7UBAGb/bQBtLP8AcrUBAGX/RABEG/8AfbUBAAAA8PDw8P8Ah7UBAAAAvb29vf8AkbUBAAAAY2NjY/8Am7UBAAAA9/f39/8ApbUBAAAAzMzMzP8Ar7UBAAAAlpaWlv8AubUBAAAAUlJSUv8Aw7UBAAAA9/f39/8AzbUBAAAAzMzMzP8A17UBAAAAlpaWlv8A4bUBAAAAY2NjY/8A67UBAAAAJSUlJf8A9bUBAAAA9/f39/8A/7UBAAAA2dnZ2f8ACbYBAAAAvb29vf8AE7YBAAAAlpaWlv8AHbYBAAAAY2NjY/8AJ7YBAAAAJSUlJf8AMbYBAAAA9/f39/8AO7YBAAAA2dnZ2f8ARbYBAAAAvb29vf8AT7YBAAAAlpaWlv8AWbYBAAAAc3Nzc/8AY7YBAAAAUlJSUv8AbbYBAAAAJSUlJf8Ad7YBAAAA//////8AgbYBAAAA8PDw8P8Ai7YBAAAA2dnZ2f8AlbYBAAAAvb29vf8An7YBAAAAlpaWlv8AqbYBAAAAc3Nzc/8As7YBAAAAUlJSUv8AvbYBAAAAJSUlJf8Ax7YBAAAA//////8A0bYBAAAA8PDw8P8A27YBAAAA2dnZ2f8A5bYBAAAAvb29vf8A77YBAAAAlpaWlv8A+bYBAAAAc3Nzc/8AA7cBAAAAUlJSUv8ADbcBAAAAJSUlJf8AF7cBAAAAAAAAAP8AIbcBABUw/v7mzv8ALbcBABOT/f2ua/8AObcBAA7w5uZVDf8ARbcBABMg/v7t3v8AUbcBABR4/f2+hf8AXbcBABHC/f2NPP8AabcBAA392dlHAf8AdbcBABMg/v7t3v8AgbcBABR4/f2+hf8AjbcBABHC/f2NPP8AmbcBAA7w5uZVDf8ApbcBAA36pqY2A/8AsbcBABMg/v7t3v8AvbcBABVb/f3Qov8AybcBABOT/f2ua/8A1bcBABHC/f2NPP8A4bcBAA7w5uZVDf8A7bcBAA36pqY2A/8A+bcBABMg/v7t3v8ABbgBABVb/f3Qov8AEbgBABOT/f2ua/8AHbgBABHC/f2NPP8AKbgBABDq8fFpE/8ANbgBAA392dlIAf8AQbgBAAz3jIwtBP8ATbgBABUU///16/8AWbgBABUw/v7mzv8AZbgBABVb/f3Qov8AcbgBABOT/f2ua/8AfbgBABHC/f2NPP8AibgBABDq8fFpE/8AlbgBAA392dlIAf8AobgBAAz3jIwtBP8ArbgBABUU///16/8AubgBABUw/v7mzv8AxbgBABVb/f3Qov8A0bgBABOT/f2ua/8A3bgBABHC/f2NPP8A6bgBABDq8fFpE/8A9bgBAA392dlIAf8AAbkBAA36pqY2A/8ADbkBAAz2f38nBP8AGbkBABk2/v7oyP8AIrkBABN5/f27hP8AK7kBAAXF4+NKM/8ANLkBABol/v7w2f8APbkBABhz/f3Miv8ARrkBAA2k/PyNWf8AT7kBAAPa19cwH/8AWLkBABol/v7w2f8AYbkBABhz/f3Miv8AarkBAA2k/PyNWf8Ac7kBAAXF4+NKM/8AfLkBAAD/s7MAAP8AhbkBABol/v7w2f8AjrkBABhf/f3Unv8Al7kBABN5/f27hP8AoLkBAA2k/PyNWf8AqbkBAAXF4+NKM/8AsrkBAAD/s7MAAP8Au7kBABol/v7w2f8AxLkBABhf/f3Unv8AzbkBABN5/f27hP8A1rkBAA2k/PyNWf8A37kBAAey7+9lSP8A6LkBAAPa19cwH/8A8bkBAAD/mZkAAP8A+rkBABgS///37P8AA7oBABk2/v7oyP8ADLoBABhf/f3Unv8AFboBABN5/f27hP8AHroBAA2k/PyNWf8AJ7oBAAey7+9lSP8AMLoBAAPa19cwH/8AOboBAAD/mZkAAP8AQroBABgS///37P8AS7oBABk2/v7oyP8AVLoBABhf/f3Unv8AXboBABN5/f27hP8AZroBAA2k/PyNWf8Ab7oBAAey7+9lSP8AeLoBAAPa19cwH/8AgboBAAD/s7MAAP8AiroBAAD/f38AAP8Ak7oBAI5E46bO4/8An7oBAL6Zmmo9mv8ArLoBAJDTtB94tP8AuLoBAEFh37Lfiv8AxLoBAFK4oDOgLP8A0LoBAABj+/uamf8A3LoBAP7h4+MaHP8A6LoBABeP/f2/b/8A9LoBABX///9/AP8AALsBAMYq1sqy1v8ADLsBAI5E46bO4/8AGLsBAL6Zmmo9mv8AJbsBACpm////mf8AMrsBAJDTtB94tP8APrsBAEFh37Lfiv8ASrsBAFK4oDOgLP8AVrsBAABj+/uamf8AYrsBAP7h4+MaHP8AbrsBABeP/f2/b/8AersBABX///9/AP8AhrsBAMYq1sqy1v8AkrsBAI5E46bO4/8AnrsBAL6Zmmo9mv8Aq7sBACpm////mf8AuLsBAA/FsbFZKP8AxbsBAJDTtB94tP8A0bsBAEFh37Lfiv8A3bsBAFK4oDOgLP8A6bsBAABj+/uamf8A9bsBAP7h4+MaHP8AAbwBABeP/f2/b/8ADbwBABX///9/AP8AGbwBAMYq1sqy1v8AJbwBAI5E46bO4/8AMLwBAJDTtB94tP8AO7wBAEFh37Lfiv8ARrwBAI5E46bO4/8AUbwBAJDTtB94tP8AXLwBAEFh37Lfiv8AZ7wBAFK4oDOgLP8AcrwBAI5E46bO4/8AfbwBAJDTtB94tP8AiLwBAEFh37Lfiv8Ak7wBAFK4oDOgLP8AnrwBAABj+/uamf8AqbwBAI5E46bO4/8AtLwBAJDTtB94tP8Av7wBAEFh37Lfiv8AyrwBAFK4oDOgLP8A1bwBAABj+/uamf8A4LwBAP7h4+MaHP8A67wBAI5E46bO4/8A9rwBAJDTtB94tP8AAb0BAEFh37Lfiv8ADL0BAFK4oDOgLP8AF70BAABj+/uamf8AIr0BAP7h4+MaHP8ALb0BABeP/f2/b/8AOL0BAI5E46bO4/8AQ70BAJDTtB94tP8ATr0BAEFh37Lfiv8AWb0BAFK4oDOgLP8AZL0BAABj+/uamf8Ab70BAP7h4+MaHP8Aer0BABeP/f2/b/8Ahb0BABX///9/AP8AkL0BAI5E46bO4/8Am70BAJDTtB94tP8Apr0BAEFh37Lfiv8Asb0BAFK4oDOgLP8AvL0BAABj+/uamf8Ax70BAP7h4+MaHP8A0r0BABeP/f2/b/8A3b0BABX///9/AP8A6L0BAMYq1sqy1v8A870BAANO+/u0rv8A/70BAJI147PN4/8AC74BAE0p68zrxf8AF74BAANO+/u0rv8AI74BAJI147PN4/8AL74BAE0p68zrxf8AO74BAMob5N7L5P8AR74BAANO+/u0rv8AU74BAJI147PN4/8AX74BAE0p68zrxf8Aa74BAMob5N7L5P8Ad74BABhY/v7Zpv8Ag74BAANO+/u0rv8Aj74BAJI147PN4/8Am74BAE0p68zrxf8Ap74BAMob5N7L5P8As74BABhY/v7Zpv8Av74BACoy////zP8Ay74BAANO+/u0rv8A174BAJI147PN4/8A474BAE0p68zrxf8A774BAMob5N7L5P8A+74BABhY/v7Zpv8AB78BACoy////zP8AE78BABws5eXYvf8AH78BAANO+/u0rv8AK78BAJI147PN4/8AN78BAE0p68zrxf8AQ78BAMob5N7L5P8AT78BABhY/v7Zpv8AW78BACoy////zP8AZ78BABws5eXYvf8Ac78BAOkj/f3a7P8Af78BAANO+/u0rv8Ai78BAJI147PN4/8Al78BAE0p68zrxf8Ao78BAMob5N7L5P8Ar78BABhY/v7Zpv8Au78BACoy////zP8Ax78BABws5eXYvf8A078BAOkj/f3a7P8A378BAAAA8vLy8v8A678BAGw14rPizf8A978BABFR/f3NrP8AA8ABAJsf6MvV6P8AD8ABAGw14rPizf8AG8ABABFR/f3NrP8AJ8ABAJsf6MvV6P8AM8ABAOQr9PTK5P8AP8ABAGw14rPizf8AS8ABABFR/f3NrP8AV8ABAJsf6MvV6P8AY8ABAOQr9PTK5P8Ab8ABADgt9eb1yf8Ae8ABAGw14rPizf8Ah8ABABFR/f3NrP8Ak8ABAJsf6MvV6P8An8ABAOQr9PTK5P8Aq8ABADgt9eb1yf8At8ABACNR///yrv8Aw8ABAGw14rPizf8Az8ABABFR/f3NrP8A28ABAJsf6MvV6P8A58ABAOQr9PTK5P8A88ABADgt9eb1yf8A/8ABACNR///yrv8AC8EBABkn8fHizP8AF8EBAGw14rPizf8AI8EBABFR/f3NrP8AL8EBAJsf6MvV6P8AO8EBAOQr9PTK5P8AR8EBADgt9eb1yf8AU8EBACNR///yrv8AX8EBABkn8fHizP8Aa8EBAAAAzMzMzP8Ad8EBAOb9jo4BUv8AgcEBAE2/ZCdkGf8AjMEBAObcxcUbff8AlsEBAOh23t53rv8AoMEBAOU+8fG22v8AqsEBAOkd/f3g7/8AtMEBADsm9eb10P8AvsEBAD1n4bjhhv8AyMEBAD+mvH+8Qf8A0sEBAETFkk2SIf8A3MEBAOb9jo4BUv8A5sEBAETFkk2SIf8A8cEBAE2/ZCdkGf8A/MEBAObcxcUbff8ABsIBAOh23t53rv8AEMIBAOU+8fG22v8AGsIBAOkd/f3g7/8AJMIBAAAA9/f39/8ALsIBADsm9eb10P8AOMIBAD1n4bjhhv8AQsIBAD+mvH+8Qf8ATMIBAOdM6emjyf8AVcIBAAAA9/f39/8AXsIBAD+B16HXav8AZ8IBAOTc0NAci/8AcMIBAOU+8fG22v8AecIBAD1n4bjhhv8AgsIBAEjGrE2sJv8Ai8IBAOTc0NAci/8AlMIBAOU+8fG22v8AncIBAAAA9/f39/8ApsIBAD1n4bjhhv8Ar8IBAEjGrE2sJv8AuMIBAObcxcUbff8AwcIBAOdM6emjyf8AysIBAOkd/f3g7/8A08IBADsm9eb10P8A3MIBAD+B16HXav8A5cIBAETFkk2SIf8A7sIBAObcxcUbff8A98IBAOdM6emjyf8AAMMBAOkd/f3g7/8ACcMBAAAA9/f39/8AEsMBADsm9eb10P8AG8MBAD+B16HXav8AJMMBAETFkk2SIf8ALcMBAObcxcUbff8ANsMBAOh23t53rv8AP8MBAOU+8fG22v8ASMMBAOkd/f3g7/8AUcMBADsm9eb10P8AWsMBAD1n4bjhhv8AY8MBAD+mvH+8Qf8AbMMBAETFkk2SIf8AdcMBAObcxcUbff8AfsMBAOh23t53rv8Ah8MBAOU+8fG22v8AkMMBAOkd/f3g7/8AmcMBAAAA9/f39/8AosMBADsm9eb10P8Aq8MBAD1n4bjhhv8AtMMBAD+mvH+8Qf8AvcMBAETFkk2SIf8AxsMBAM7/S0AAS/8A0MMBAGX/RABEG/8A28MBAM6tg3Yqg/8A5cMBAMdXq5lwq/8A78MBAMczz8Klz/8A+cMBANIV6OfU6P8AA8QBAEwe8Nnw0/8ADcQBAFBE26bboP8AF8QBAFh7rlquYf8AIcQBAGHFeBt4N/8AK8QBAM7/S0AAS/8ANcQBAGHFeBt4N/8AQMQBAGX/RABEG/8AS8QBAM6tg3Yqg/8AVcQBAMdXq5lwq/8AX8QBAMczz8Klz/8AacQBANIV6OfU6P8Ac8QBAAAA9/f39/8AfcQBAEwe8Nnw0/8Ah8QBAFBE26bboP8AkcQBAFh7rlquYf8Am8QBAMRGw6+Nw/8ApMQBAAAA9/f39/8ArcQBAFJav3+/e/8AtsQBAMmolHsylP8Av8QBAMczz8Klz/8AyMQBAFBE26bboP8A0cQBAGb/iACIN/8A2sQBAMmolHsylP8A48QBAMczz8Klz/8A7MQBAAAA9/f39/8A9cQBAFBE26bboP8A/sQBAGb/iACIN/8AB8UBAM6tg3Yqg/8AEMUBAMRGw6+Nw/8AGcUBANIV6OfU6P8AIsUBAEwe8Nnw0/8AK8UBAFJav3+/e/8ANMUBAGHFeBt4N/8APcUBAM6tg3Yqg/8ARsUBAMRGw6+Nw/8AT8UBANIV6OfU6P8AWMUBAAAA9/f39/8AYcUBAEwe8Nnw0/8AasUBAFJav3+/e/8Ac8UBAGHFeBt4N/8AfMUBAM6tg3Yqg/8AhcUBAMdXq5lwq/8AjsUBAMczz8Klz/8Al8UBANIV6OfU6P8AoMUBAEwe8Nnw0/8AqcUBAFBE26bboP8AssUBAFh7rlquYf8Au8UBAGHFeBt4N/8AxMUBAM6tg3Yqg/8AzcUBAMdXq5lwq/8A1sUBAMczz8Klz/8A38UBANIV6OfU6P8A6MUBAAAA9/f39/8A8cUBAEwe8Nnw0/8A+sUBAFBE26bboP8AA8YBAFh7rlquYf8ADMYBAGHFeBt4N/8AFcYBAL0L8uzn8v8AHsYBAJc926a92/8AJ8YBAI3FviuMvv8AMMYBALkI9vHu9v8AOcYBAJso4b3J4f8AQsYBAJFwz3Spz/8AS8YBAI/3sAVwsP8AVMYBALkI9vHu9v8AXcYBAJso4b3J4f8AZsYBAJFwz3Spz/8Ab8YBAI3FviuMvv8AeMYBAI/3jQRajf8AgcYBALkI9vHu9v8AisYBAKgY5tDR5v8Ak8YBAJc926a92/8AnMYBAJFwz3Spz/8ApcYBAI3FviuMvv8ArsYBAI/3jQRajf8At8YBALkI9vHu9v8AwMYBAKgY5tDR5v8AycYBAJc926a92/8A0sYBAJFwz3Spz/8A28YBAI63wDaQwP8A5MYBAI/3sAVwsP8A7cYBAI/4ewNOe/8A9sYBAOkI///3+/8A/8YBAL0L8uzn8v8ACMcBAKgY5tDR5v8AEccBAJc926a92/8AGscBAJFwz3Spz/8AI8cBAI63wDaQwP8ALMcBAI/3sAVwsP8ANccBAI/4ewNOe/8APscBAOkI///3+/8AR8cBAL0L8uzn8v8AUMcBAKgY5tDR5v8AWccBAJc926a92/8AYscBAJFwz3Spz/8Aa8cBAI63wDaQwP8AdMcBAI/3sAVwsP8AfccBAI/3jQRajf8AhscBAI/5WAI4WP8Aj8cBAMgO8Ozi8P8AmscBAJc926a92/8ApccBAILQmRyQmf8AsMcBAM8I9/bv9/8Au8cBAJso4b3J4f8AxscBAI+Az2epz/8A0ccBAIL7igKBiv8A3McBAM8I9/bv9/8A58cBAJso4b3J4f8A8scBAI+Az2epz/8A/ccBAILQmRyQmf8ACMgBAHf8bAFsWf8AE8gBAM8I9/bv9/8AHsgBAKgY5tDR5v8AKcgBAJc926a92/8ANMgBAI+Az2epz/8AP8gBAILQmRyQmf8ASsgBAHf8bAFsWf8AVcgBAM8I9/bv9/8AYMgBAKgY5tDR5v8Aa8gBAJc926a92/8AdsgBAI+Az2epz/8AgcgBAI63wDaQwP8AjMgBAIL7igKBiv8Al8gBAHb8ZAFkUP8AosgBAOkI///3+/8ArcgBAMgO8Ozi8P8AuMgBAKgY5tDR5v8Aw8gBAJc926a92/8AzsgBAI+Az2epz/8A2cgBAI63wDaQwP8A5MgBAIL7igKBiv8A78gBAHb8ZAFkUP8A+sgBAOkI///3+/8ABckBAMgO8Ozi8P8AEMkBAKgY5tDR5v8AG8kBAJc926a92/8AJskBAI+Az2epz/8AMckBAI63wDaQwP8APMkBAIL7igKBiv8AR8kBAHf8bAFsWf8AUskBAHX7RgFGNv8AXckBABLuf387CP8AZ8kBAMP/Sy0AS/8AcskBABT2s7NYBv8AfMkBABbo4OCCFP8AhskBABeb/f24Y/8AkMkBABhI/v7gtv8AmskBAKUU69ja6/8ApMkBALEv0rKr0v8ArskBALNUrIBzrP8AuMkBAL21iFQniP8AwskBABLuf387CP8AzMkBAL21iFQniP8A18kBAMP/Sy0AS/8A4skBABT2s7NYBv8A7MkBABbo4OCCFP8A9skBABeb/f24Y/8AAMoBABhI/v7gtv8ACsoBAAAA9/f39/8AFMoBAKUU69ja6/8AHsoBALEv0rKr0v8AKMoBALNUrIBzrP8AMsoBABe78fGjQP8AO8oBAAAA9/f39/8ARMoBALJFw5mOw/8ATcoBABH95uZhAf8AVsoBABeb/f24Y/8AX8oBALEv0rKr0v8AaMoBALmbmV48mf8AccoBABH95uZhAf8AesoBABeb/f24Y/8Ag8oBAAAA9/f39/8AjMoBALEv0rKr0v8AlcoBALmbmV48mf8AnsoBABT2s7NYBv8Ap8oBABe78fGjQP8AsMoBABhI/v7gtv8AucoBAKUU69ja6/8AwsoBALJFw5mOw/8Ay8oBAL21iFQniP8A1MoBABT2s7NYBv8A3coBABe78fGjQP8A5soBABhI/v7gtv8A78oBAAAA9/f39/8A+MoBAKUU69ja6/8AAcsBALJFw5mOw/8ACssBAL21iFQniP8AE8sBABT2s7NYBv8AHMsBABbo4OCCFP8AJcsBABeb/f24Y/8ALssBABhI/v7gtv8AN8sBAKUU69ja6/8AQMsBALEv0rKr0v8AScsBALNUrIBzrP8AUssBAL21iFQniP8AW8sBABT2s7NYBv8AZMsBABbo4OCCFP8AbcsBABeb/f24Y/8AdssBABhI/v7gtv8Af8sBAAAA9/f39/8AiMsBAKUU69ja6/8AkcsBALEv0rKr0v8AmssBALNUrIBzrP8Ao8sBAL21iFQniP8ArMsBALwO7+fh7/8AtcsBANZDycmUx/8AvssBAOre3d0cd/8Ax8sBALkI9vHu9v8A0MsBANMp2Ne12P8A2csBAOSL399lsP8A4ssBAO/ozs4SVv8A68sBALkI9vHu9v8A9MsBANMp2Ne12P8A/csBAOSL399lsP8ABswBAOre3d0cd/8AD8wBAOz/mJgAQ/8AGMwBALkI9vHu9v8AIcwBAMwm2tS52v8AKswBANZDycmUx/8AM8wBAOSL399lsP8APMwBAOre3d0cd/8ARcwBAOz/mJgAQ/8ATswBALkI9vHu9v8AV8wBAMwm2tS52v8AYMwBANZDycmUx/8AacwBAOSL399lsP8AcswBAOnR5+cpiv8Ae8wBAO/ozs4SVv8AhMwBAOz/kZEAP/8AjcwBAMMF+ff0+f8AlswBALwO7+fh7/8An8wBAMwm2tS52v8AqMwBANZDycmUx/8AscwBAOSL399lsP8AuswBAOnR5+cpiv8Aw8wBAO/ozs4SVv8AzMwBAOz/kZEAP/8A1cwBAMMF+ff0+f8A3swBALwO7+fh7/8A58wBAMwm2tS52v8A8MwBANZDycmUx/8A+cwBAOSL399lsP8AAs0BAOnR5+cpiv8AC80BAO/ozs4SVv8AFM0BAOz/mJgAQ/8AHc0BAPL/Z2cAH/8AJs0BALQI9e/t9f8AMs0BAKgl3Ly93P8APs0BALBksXVrsf8ASs0BALYH9/Lw9/8AVs0BAK0c4svJ4v8AYs0BAK06yJ6ayP8Abs0BALaAo2pRo/8Aes0BALYH9/Lw9/8Ahs0BAK0c4svJ4v8Aks0BAK06yJ6ayP8Ans0BALBksXVrsf8Aqs0BALy5j1Qnj/8Ats0BALYH9/Lw9/8Aws0BAKoS69ra6/8Azs0BAKgl3Ly93P8A2s0BAK06yJ6ayP8A5s0BALBksXVrsf8A8s0BALy5j1Qnj/8A/s0BALYH9/Lw9/8ACs4BAKoS69ra6/8AFs4BAKgl3Ly93P8AIs4BAK06yJ6ayP8ALs4BAKxTuoB9uv8AOs4BALaAo2pRo/8ARs4BAL7YhkoUhv8AUs4BAL8C/fz7/f8AXs4BALQI9e/t9f8Aas4BAKoS69ra6/8Ads4BAKgl3Ly93P8Ags4BAK06yJ6ayP8Ajs4BAKxTuoB9uv8Ams4BALaAo2pRo/8Aps4BAL7YhkoUhv8Ass4BAL8C/fz7/f8Avs4BALQI9e/t9f8Ays4BAKoS69ra6/8A1s4BAKgl3Ly93P8A4s4BAK06yJ6ayP8A7s4BAKxTuoB9uv8A+s4BALaAo2pRo/8ABs8BALy5j1Qnj/8AEs8BAL//fT8Aff8AHs8BAPL/Z2cAH/8AKM8BAJbxYQUwYf8AM88BAPncsrIYK/8APc8BAAWj1tZgTf8AR88BAA139PSlgv8AUc8BAA82/f3bx/8AW88BAI4g8NHl8P8AZc8BAI1X3pLF3v8Ab88BAI+nw0OTw/8Aec8BAJTOrCFmrP8Ag88BAPL/Z2cAH/8Ajc8BAJTOrCFmrP8AmM8BAJbxYQUwYf8Ao88BAPncsrIYK/8Arc8BAAWj1tZgTf8At88BAA139PSlgv8Awc8BAA82/f3bx/8Ay88BAAAA9/f39/8A1c8BAI4g8NHl8P8A388BAI1X3pLF3v8A6c8BAI+nw0OTw/8A888BAAyW7++KYv8A/M8BAAAA9/f39/8ABdABAI+Az2epz/8ADtABAPj/ysoAIP8AF9ABAA139PSlgv8AINABAI1X3pLF3v8AKdABAI/3sAVxsP8AMtABAPj/ysoAIP8AO9ABAA139PSlgv8ARNABAAAA9/f39/8ATdABAI1X3pLF3v8AVtABAI/3sAVxsP8AX9ABAPncsrIYK/8AaNABAAyW7++KYv8AcdABAA82/f3bx/8AetABAI4g8NHl8P8Ag9ABAI+Az2epz/8AjNABAJTOrCFmrP8AldABAPncsrIYK/8AntABAAyW7++KYv8Ap9ABAA82/f3bx/8AsNABAAAA9/f39/8AudABAI4g8NHl8P8AwtABAI+Az2epz/8Ay9ABAJTOrCFmrP8A1NABAPncsrIYK/8A3dABAAWj1tZgTf8A5tABAA139PSlgv8A79ABAA82/f3bx/8A+NABAI4g8NHl8P8AAdEBAI1X3pLF3v8ACtEBAI+nw0OTw/8AE9EBAJTOrCFmrP8AHNEBAPncsrIYK/8AJdEBAAWj1tZgTf8ALtEBAA139PSlgv8AN9EBAA82/f3bx/8AQNEBAAAA9/f39/8ASdEBAI4g8NHl8P8AUtEBAI1X3pLF3v8AW9EBAI+nw0OTw/8AZNEBAJTOrCFmrP8AbdEBAPL/Z2cAH/8Ad9EBAAAAGhoaGv8AgtEBAPncsrIYK/8AjNEBAAWj1tZgTf8AltEBAA139PSlgv8AoNEBAA82/f3bx/8AqtEBAAAA4ODg4P8AtNEBAAAAurq6uv8AvtEBAAAAh4eHh/8AyNEBAAAATU1NTf8A0tEBAPL/Z2cAH/8A3NEBAAAATU1NTf8A59EBAAAAGhoaGv8A8tEBAPncsrIYK/8A/NEBAAWj1tZgTf8ABtIBAA139PSlgv8AENIBAA82/f3bx/8AGtIBAAAA//////8AJNIBAAAA4ODg4P8ALtIBAAAAurq6uv8AONIBAAAAh4eHh/8AQtIBAAyW7++KYv8AS9IBAAAA//////8AVNIBAAAAmZmZmf8AXdIBAPj/ysoAIP8AZtIBAA139PSlgv8Ab9IBAAAAurq6uv8AeNIBAAAAQEBAQP8AgdIBAPj/ysoAIP8AitIBAA139PSlgv8Ak9IBAAAA//////8AnNIBAAAAurq6uv8ApdIBAAAAQEBAQP8ArtIBAPncsrIYK/8At9IBAAyW7++KYv8AwNIBAA82/f3bx/8AydIBAAAA4ODg4P8A0tIBAAAAmZmZmf8A29IBAAAATU1NTf8A5NIBAPncsrIYK/8A7dIBAAyW7++KYv8A9tIBAA82/f3bx/8A/9IBAAAA//////8ACNMBAAAA4ODg4P8AEdMBAAAAmZmZmf8AGtMBAAAATU1NTf8AI9MBAPncsrIYK/8ALNMBAAWj1tZgTf8ANdMBAA139PSlgv8APtMBAA82/f3bx/8AR9MBAAAA4ODg4P8AUNMBAAAAurq6uv8AWdMBAAAAh4eHh/8AYtMBAAAATU1NTf8Aa9MBAPncsrIYK/8AdNMBAAWj1tZgTf8AfdMBAA139PSlgv8AhtMBAA82/f3bx/8Aj9MBAAAA//////8AmNMBAAAA4ODg4P8AodMBAAAAurq6uv8AqtMBAAAAh4eHh/8As9MBAAAATU1NTf8AvNMBAAMg/f3g3f8AxdMBAPRc+vqftf8AztMBAOPcxcUbiv8A19MBAA0c/v7r4v8A4NMBAPxI+/u0uf8A6dMBAO6T9/doof8A8tMBAOD9rq4Bfv8A+9MBAA0c/v7r4v8ABNQBAPxI+/u0uf8ADdQBAO6T9/doof8AFtQBAOPcxcUbiv8AH9QBANX8enoBd/8AKNQBAA0c/v7r4v8AMdQBAAM8/PzFwP8AOtQBAPRc+vqftf8AQ9QBAO6T9/doof8ATNQBAOPcxcUbiv8AVdQBANX8enoBd/8AXtQBAA0c/v7r4v8AZ9QBAAM8/PzFwP8AcNQBAPRc+vqftf8AedQBAO6T9/doof8AgtQBAObD3d00l/8Ai9QBAOD9rq4Bfv8AlNQBANX8enoBd/8AndQBAA4M///38/8AptQBAAMg/f3g3f8Ar9QBAAM8/PzFwP8AuNQBAPRc+vqftf8AwdQBAO6T9/doof8AytQBAObD3d00l/8A09QBAOD9rq4Bfv8A3NQBANX8enoBd/8A5dQBAA4M///38/8A7tQBAAMg/f3g3f8A99QBAAM8/PzFwP8AANUBAPRc+vqftf8ACdUBAO6T9/doof8AEtUBAObD3d00l/8AG9UBAOD9rq4Bfv8AJNUBANX8enoBd/8ALdUBAMf/akkAav8ANtUBAPX/paUAJv8AQtUBAKerlTE2lf8AT9UBAALQ19cwJ/8AW9UBAAq49PRtQ/8AZ9UBABSd/f2uYf8Ac9UBAB5u/v7gkP8Af9UBAIgY+ODz+P8Ai9UBAIpD6avZ6f8Al9UBAI9x0XSt0f8Ao9UBAJedtEV1tP8Ar9UBAPX/paUAJv8Au9UBAJedtEV1tP8AyNUBAKerlTE2lf8A1dUBAALQ19cwJ/8A4dUBAAq49PRtQ/8A7dUBABSd/f2uYf8A+dUBAB5u/v7gkP8ABdYBACpA////v/8AEdYBAIgY+ODz+P8AHdYBAIpD6avZ6f8AKdYBAI9x0XSt0f8ANdYBAA2k/PyNWf8AQNYBACpA////v/8AS9YBAI9W25G/2/8AVtYBAP7h19cZHP8AYdYBABSd/f2uYf8AbNYBAIpD6avZ6f8Ad9YBAJHBtix7tv8AgtYBAP7h19cZHP8AjdYBABSd/f2uYf8AmNYBACpA////v/8Ao9YBAIpD6avZ6f8ArtYBAJHBtix7tv8AudYBAALQ19cwJ/8AxNYBAA2k/PyNWf8Az9YBAB5u/v7gkP8A2tYBAIgY+ODz+P8A5dYBAI9W25G/2/8A8NYBAJedtEV1tP8A+9YBAALQ19cwJ/8ABtcBAA2k/PyNWf8AEdcBAB5u/v7gkP8AHNcBACpA////v/8AJ9cBAIgY+ODz+P8AMtcBAI9W25G/2/8APdcBAJedtEV1tP8ASNcBAALQ19cwJ/8AU9cBAAq49PRtQ/8AXtcBABSd/f2uYf8AadcBAB5u/v7gkP8AdNcBAIgY+ODz+P8Af9cBAIpD6avZ6f8AitcBAI9x0XSt0f8AldcBAJedtEV1tP8AoNcBAALQ19cwJ/8Aq9cBAAq49PRtQ/8AttcBABSd/f2uYf8AwdcBAB5u/v7gkP8AzNcBACpA////v/8A19cBAIgY+ODz+P8A4tcBAIpD6avZ6f8A7dcBAI9x0XSt0f8A+NcBAJedtEV1tP8AA9gBAPX/paUAJv8AD9gBAGv/aABoN/8AHNgBAALQ19cwJ/8AKNgBAAq49PRtQ/8ANNgBABSd/f2uYf8AQNgBAB9z/v7gi/8ATNgBADNq79nvi/8AWNgBAD6C2abZav8AZNgBAFN5vWa9Y/8AcNgBAGfTmBqYUP8AfNgBAPX/paUAJv8AiNgBAGfTmBqYUP8AldgBAGv/aABoN/8AotgBAALQ19cwJ/8ArtgBAAq49PRtQ/8AutgBABSd/f2uYf8AxtgBAB9z/v7gi/8A0tgBACpA////v/8A3tgBADNq79nvi/8A6tgBAD6C2abZav8A9tgBAFN5vWa9Y/8AAtkBAA2k/PyNWf8ADdkBACpA////v/8AGNkBAEKIz5HPYP8AI9kBAP7h19cZHP8ALtkBABSd/f2uYf8AOdkBAD6C2abZav8ARNkBAGLSlhqWQf8AT9kBAP7h19cZHP8AWtkBABSd/f2uYf8AZdkBACpA////v/8AcNkBAD6C2abZav8Ae9kBAGLSlhqWQf8AhtkBAALQ19cwJ/8AkdkBAA2k/PyNWf8AnNkBAB9z/v7gi/8Ap9kBADNq79nvi/8AstkBAEKIz5HPYP8AvdkBAGfTmBqYUP8AyNkBAALQ19cwJ/8A09kBAA2k/PyNWf8A3tkBAB9z/v7gi/8A6dkBACpA////v/8A9NkBADNq79nvi/8A/9kBAEKIz5HPYP8ACtoBAGfTmBqYUP8AFdoBAALQ19cwJ/8AINoBAAq49PRtQ/8AK9oBABSd/f2uYf8ANtoBAB9z/v7gi/8AQdoBADNq79nvi/8ATNoBAD6C2abZav8AV9oBAFN5vWa9Y/8AYtoBAGfTmBqYUP8AbdoBAALQ19cwJ/8AeNoBAAq49PRtQ/8Ag9oBABSd/f2uYf8AjtoBAB9z/v7gi/8AmdoBACpA////v/8ApNoBADNq79nvi/8Ar9oBAD6C2abZav8AutoBAFN5vWa9Y/8AxdoBAGfTmBqYUP8A0NoBAA0s/v7g0v8A2doBAAmL/PyScv8A4toBAAHT3t4tJv8A69oBAA0l/v7l2f8A9NoBAAts/Pyukf8A/doBAAez+/tqSv8ABtsBAP3gy8sYHf8AD9sBAA0l/v7l2f8AGNsBAAts/Pyukf8AIdsBAAez+/tqSv8AKtsBAAHT3t4tJv8AM9sBAP3npaUPFf8APNsBAA0l/v7l2f8ARdsBAAxc/Py7of8ATtsBAAmL/PyScv8AV9sBAAez+/tqSv8AYNsBAAHT3t4tJv8AadsBAP3npaUPFf8ActsBAA0l/v7l2f8Ae9sBAAxc/Py7of8AhNsBAAmL/PyScv8AjdsBAAez+/tqSv8AltsBAAPQ7+87LP8An9sBAP3gy8sYHf8AqNsBAPv/mZkADf8AsdsBAA4P///18P8AutsBAA0s/v7g0v8Aw9sBAAxc/Py7of8AzNsBAAmL/PyScv8A1dsBAAez+/tqSv8A3tsBAAPQ7+87LP8A59sBAP3gy8sYHf8A8NsBAPv/mZkADf8A+dsBAA4P///18P8AAtwBAA0s/v7g0v8AC9wBAAxc/Py7of8AFNwBAAmL/PyScv8AHdwBAAez+/tqSv8AJtwBAAPQ7+87LP8AL9wBAP3gy8sYHf8AONwBAP3npaUPFf8AQdwBAPn/Z2cADf8AStwBAP7h5OQaHP8AU9wBAJKyuDd+uP8AXNwBAFOTr02vSv8AZdwBAP7h5OQaHP8AbtwBAJKyuDd+uP8Ad9wBAFOTr02vSv8AgNwBAM+Eo5hOo/8AidwBAP7h5OQaHP8AktwBAJKyuDd+uP8Am9wBAFOTr02vSv8ApNwBAM+Eo5hOo/8ArdwBABX///9/AP8AttwBAP7h5OQaHP8Av9wBAJKyuDd+uP8AyNwBAFOTr02vSv8A0dwBAM+Eo5hOo/8A2twBABX///9/AP8A49wBACrM////M/8A7NwBAP7h5OQaHP8A9dwBAJKyuDd+uP8A/twBAFOTr02vSv8AB90BAM+Eo5hOo/8AEN0BABX///9/AP8AGd0BACrM////M/8AIt0BAA/BpqZWKP8AK90BAP7h5OQaHP8ANN0BAJKyuDd+uP8APd0BAFOTr02vSv8ARt0BAM+Eo5hOo/8AT90BABX///9/AP8AWN0BACrM////M/8AYd0BAA/BpqZWKP8Aat0BAOh59/eBv/8Ac90BAP7h5OQaHP8AfN0BAJKyuDd+uP8Ahd0BAFOTr02vSv8Ajt0BAM+Eo5hOo/8Al90BABX///9/AP8AoN0BACrM////M/8Aqd0BAA/BpqZWKP8Ast0BAOh59/eBv/8Au90BAAAAmZmZmf8AxN0BAHJ4wmbCpf8Azd0BAAub/PyNYv8A1t0BAJxNy42gy/8A390BAHJ4wmbCpf8A6N0BAAub/PyNYv8A8d0BAJxNy42gy/8A+t0BAORm5+eKw/8AA94BAHJ4wmbCpf8ADN4BAAub/PyNYv8AFd4BAJxNy42gy/8AHt4BAORm5+eKw/8AJ94BADqb2KbYVP8AMN4BAHJ4wmbCpf8AOd4BAAub/PyNYv8AQt4BAJxNy42gy/8AS94BAORm5+eKw/8AVN4BADqb2KbYVP8AXd4BACLQ///ZL/8AZt4BAHJ4wmbCpf8Ab94BAAub/PyNYv8AeN4BAJxNy42gy/8Agd4BAORm5+eKw/8Ait4BADqb2KbYVP8Ak94BACLQ///ZL/8AnN4BABla5eXElP8Apd4BAHJ4wmbCpf8Art4BAAub/PyNYv8At94BAJxNy42gy/8AwN4BAORm5+eKw/8Ayd4BADqb2KbYVP8A0t4BACLQ///ZL/8A294BABla5eXElP8A5N4BAAAAs7Ozs/8A7d4BAHhU043Tx/8A994BANNSvbyAvf8AAt8BACpM////s/8ADN8BAK8l2r662v8AFt8BAASL+/uAcv8AIN8BAJBk04Cx0/8AKt8BABac/f20Yv8ANN8BADqG3rPeaf8APt8BAOkv/PzN5f8ASN8BAAAA2dnZ2f8AUt8BAHhU043Tx/8AXN8BANNSvbyAvf8AZ98BAE0p68zrxf8Act8BACpM////s/8AfN8BAK8l2r662v8Aht8BAASL+/uAcv8AkN8BAJBk04Cx0/8Amt8BABac/f20Yv8ApN8BADqG3rPeaf8Art8BAOkv/PzN5f8AuN8BAAAA2dnZ2f8Awt8BAHhU043Tx/8AzN8BANNSvbyAvf8A198BAE0p68zrxf8A4t8BACWQ///tb/8A7d8BACpM////s/8A998BAK8l2r662v8AAeABAASL+/uAcv8AC+ABAJBk04Cx0/8AFeABABac/f20Yv8AH+ABADqG3rPeaf8AKeABAOkv/PzN5f8AM+ABAAAA2dnZ2f8APeABAHhU043Tx/8ARuABACpM////s/8AT+ABAK8l2r662v8AWOABAHhU043Tx/8AYeABACpM////s/8AauABAK8l2r662v8Ac+ABAASL+/uAcv8AfOABAHhU043Tx/8AheABACpM////s/8AjuABAK8l2r662v8Al+ABAASL+/uAcv8AoOABAJBk04Cx0/8AqeABAHhU043Tx/8AsuABACpM////s/8Au+ABAK8l2r662v8AxOABAASL+/uAcv8AzeABAJBk04Cx0/8A1uABABac/f20Yv8A3+ABAHhU043Tx/8A6OABACpM////s/8A8eABAK8l2r662v8A+uABAASL+/uAcv8AA+EBAJBk04Cx0/8ADOEBABac/f20Yv8AFeEBADqG3rPeaf8AHuEBAHhU043Tx/8AJ+EBACpM////s/8AMOEBAK8l2r662v8AOeEBAASL+/uAcv8AQuEBAJBk04Cx0/8AS+EBABac/f20Yv8AVOEBADqG3rPeaf8AXeEBAOkv/PzN5f8AZuEBAHhU043Tx/8Ab+EBACpM////s/8AeOEBAK8l2r662v8AgeEBAASL+/uAcv8AiuEBAJBk04Cx0/8Ak+EBABac/f20Yv8AnOEBADqG3rPeaf8ApeEBAOkv/PzN5f8AruEBAAAA2dnZ2f8At+EBAO39np4BQv8AxeEBALGCol5Pov8A1OEBAPq01dU+T/8A4uEBAAq49PRtQ/8A8OEBABSd/f2uYf8A/uEBAB9z/v7gi/8ADOIBADFg9eb1mP8AGuIBAE9B3avdpP8AKOIBAHJ4wmbCpf8ANuIBAI+7vTKIvf8AROIBAO39np4BQv8AUuIBAI+7vTKIvf8AYeIBALGCol5Pov8AcOIBAPq01dU+T/8AfuIBAAq49PRtQ/8AjOIBABSd/f2uYf8AmuIBAB9z/v7gi/8AqOIBACpA////v/8AtuIBADFg9eb1mP8AxOIBAE9B3avdpP8A0uIBAHJ4wmbCpf8A4OIBAA2k/PyNWf8A7eIBACpA////v/8A+uIBAFFN1ZnVlP8AB+MBAP7h19cZHP8AFOMBABSd/f2uYf8AIeMBAE9B3avdpP8ALuMBAI/EuiuDuv8AO+MBAP7h19cZHP8ASOMBABSd/f2uYf8AVeMBACpA////v/8AYuMBAE9B3avdpP8Ab+MBAI/EuiuDuv8AfOMBAPq01dU+T/8AieMBAA2k/PyNWf8AluMBAB9z/v7gi/8Ao+MBADFg9eb1mP8AsOMBAFFN1ZnVlP8AveMBAI+7vTKIvf8AyuMBAPq01dU+T/8A1+MBAA2k/PyNWf8A5OMBAB9z/v7gi/8A8eMBACpA////v/8A/uMBADFg9eb1mP8AC+QBAFFN1ZnVlP8AGOQBAI+7vTKIvf8AJeQBAPq01dU+T/8AMuQBAAq49PRtQ/8AP+QBABSd/f2uYf8ATOQBAB9z/v7gi/8AWeQBADFg9eb1mP8AZuQBAE9B3avdpP8Ac+QBAHJ4wmbCpf8AgOQBAI+7vTKIvf8AjeQBAPq01dU+T/8AmuQBAAq49PRtQ/8Ap+QBABSd/f2uYf8AtOQBAB9z/v7gi/8AweQBACpA////v/8AzuQBADFg9eb1mP8A2+QBAE9B3avdpP8A6OQBAHJ4wmbCpf8A9eQBAI+7vTKIvf8AAuUBAJMP//D4//8AEeUBABgj+vrr1/8AI+UBAH///wD///8ALeUBAHGA/3//1P8APeUBAH8P//D///8ASOUBACoa9fX13P8AU+UBABc6///kxP8AX+UBAAAAAAAAAP8AauUBABkx///rzf8AfuUBAKr//wAA//8AiOUBAMDO4oor4v8AmOUBAAC+paUqKv8Ao+UBABdj3t64h/8AsuUBAIBnoF+eoP8AweUBAD///3//AP8A0eUBABHa0tJpHv8A4OUBAAuv//9/UP8A6+UBAJqT7WSV7f8A/+UBACEi///43P8ADeYBAPbn3NwUPP8AGuYBAH///wD///8AJOYBAKr/iwAAi/8AMuYBAH//iwCLi/8AQOYBAB7vuLiGC/8AU+YBAAAAqampqf8AYeYBAFX/ZABkAP8AcOYBAAAAqampqf8AfuYBACduvb23a/8AjeYBANT/i4sAi/8AnuYBADqOa1VrL/8AsuYBABf///+MAP8AwuYBAMbAzJkyzP8A0uYBAAD/i4sAAP8A3+YBAAp56emWev8A7+YBAFU9vI+8j/8AAecBAK+Pi0g9i/8AFOcBAH9nTy9PT/8AJ+cBAH9nTy9PT/8AOucBAID/0QDO0f8ATecBAMf/05QA0/8AXecBAOjr//8Uk/8Aa+cBAIr//wC///8AfOcBAAAAaWlpaf8AiecBAAAAaWlpaf8AlucBAJTh/x6Q//8ApucBAADOsrIiIv8AtecBABwP///68P8AxucBAFXAiyKLIv8A1+cBANT///8A//8A5OcBAAAA3Nzc3P8A8+cBAKoH//j4//8AA+gBACP////XAP8ADegBAB7Z2tqlIP8AHOgBAAAAgICAgP8AJugBAFX/gACAAP8AMegBADvQ/63/L/8AQugBAAAAgICAgP8ATOgBAFUP//D/8P8AWugBAOmW//9ptP8AZ+gBAACMzc1cXP8AdugBAML/gksAgv8AgugBACoP////8P8AjegBACZq8PDmjP8AmOgBAKoU+ubm+v8ApugBAPAP///w9f8AuegBAED//Hz8AP8AyOgBACYx///6zf8A2ugBAIk/5q3Y5v8A6egBAAB38PCAgP8A+egBAH8f/+D///8ACOkBACoo+vr60v8AIukBAAAA09PT0/8AMekBAFVk7pDukP8AQekBAAAA09PT0/8AUOkBAPhJ//+2wf8AX+kBAAyE//+gev8AcOkBAH3RsiCyqv8Ag+kBAI91+ofO+v8AlekBAJQ4mXeImf8AqekBAJQ4mXeImf8AvekBAJc03rDE3v8A0ekBACof////4P8A4ukBAFX//wD/AP8A7OkBAFXAzTLNMv8A++kBABUU+vrw5v8ABuoBANT///8A//8AE+oBAAD/gIAAAP8AH+oBAHGAzWbNqv8ANeoBAKr/zQAAzf8AReoBAMyY07pV0/8AV+oBALd825Nw2/8AaeoBAGepszyzcf8AfeoBALCP7nto7v8AkuoBAG//+gD6mv8AqeoBAH2n0UjRzP8AvuoBAOTkx8cVhf8A0+oBAKrGcBkZcP8A5eoBAGoJ//X/+v8A9OoBAAQe///k4f8AA+sBABpJ///ktf8AEesBABlR///erf8AIusBAKr/gAAAgP8ALOsBABsX/f315v8AOesBACr/gICAAP8AROsBADjAjmuOI/8AU+sBABv///+lAP8AX+sBAAv///9FAP8AbusBANZ72tpw1v8AeusBACZI7u7oqv8AjesBAFVk+5j7mP8AnOsBAH9D7q/u7v8Ar+sBAPF829twk/8AwusBABop///v1f8A0usBABRG///auf8A4esBABSwzc2FP/8A6+sBAPc////Ay/8A9esBANRG3d2g3f8A/+sBAIQ75rDg5v8AD+wBANT/gIAAgP8AG+wBAAD///8AAP8AJOwBAAA9vLyPj/8AM+wBAJ+14UFp4f8AQuwBABHci4tFE/8AU+wBAASK+vqAcv8AX+wBABOa9PSkYP8Ab+wBAGeqiy6LV/8AfewBABEQ///17v8Ai+wBAA23oKBSLf8Al+wBAAAAwMDAwP8Ao+wBAIts64fO6/8AsOwBAK+PzWpazf8Av+wBAJQ4kHCAkP8AzuwBAJQ4kHCAkP8A3ewBAAAF///6+v8A5+wBAGr//wD/f/8A+OwBAJKbtEaCtP8AB+0BABhU0tK0jP8AEO0BAH//gACAgP8AGu0BANQd2Ni/2P8AJ+0BAAa4//9jR/8AM+0BAHu24EDg0P8AQu0BANRz7u6C7v8ATu0BABtE9fXes/8AWe0BAAAA//////8AZO0BAAAA9fX19f8AdO0BACr/////AP8AgO0BADjAzZrNMv8Ake0BAC1D/Pf8uf8Amu0BAERb3a3djv8Ao+0BAGKyozGjVP8ArO0BACoy////zP8Ate0BAD5V5sLmmf8Avu0BAFVkxnjGef8Ax+0BAGO7hCOEQ/8A0O0BACoy////zP8A2e0BAD5V5sLmmf8A4u0BAFVkxnjGef8A6+0BAGKyozGjVP8A9O0BAGv/aABoN/8A/e0BACoy////zP8ABu4BADdR8Nnwo/8AD+4BAERb3a3djv8AGO4BAFVkxnjGef8AIe4BAGKyozGjVP8AKu4BAGv/aABoN/8AM+4BACoy////zP8APO4BADdR8Nnwo/8ARe4BAERb3a3djv8ATu4BAFVkxnjGef8AV+4BAGCeq0GrXf8AYO4BAGO7hCOEQ/8Aae4BAGz/WgBaMv8Acu4BACoZ////5f8Ae+4BAC1D/Pf8uf8AhO4BADdR8Nnwo/8Aje4BAERb3a3djv8Alu4BAFVkxnjGef8An+4BAGCeq0GrXf8AqO4BAGO7hCOEQ/8Ase4BAGz/WgBaMv8Auu4BACoZ////5f8Aw+4BAC1D/Pf8uf8AzO4BADdR8Nnwo/8A1e4BAERb3a3djv8A3u4BAFVkxnjGef8A5+4BAGCeq0GrXf8A8O4BAGO7hCOEQ/8A+e4BAGv/aABoN/8AAu8BAG7/RQBFKf8AC+8BADFJ+O34sf8AFu8BAHVhzX/Nu/8AIe8BAJDCuCx/uP8ALO8BACoy////zP8AN+8BAGNC2qHatP8AQu8BAISqxEG2xP8ATe8BAJbLqCJeqP8AWO8BACoy////zP8AY+8BAGNC2qHatP8Abu8BAISqxEG2xP8Aee8BAJDCuCx/uP8AhO8BAKS/lCU0lP8Aj+8BACoy////zP8Amu8BAEU66cfptP8Ape8BAHVhzX/Nu/8AsO8BAISqxEG2xP8Au+8BAJDCuCx/uP8Axu8BAKS/lCU0lP8A0e8BACoy////zP8A3O8BAEU66cfptP8A5+8BAHVhzX/Nu/8A8u8BAISqxEG2xP8A/e8BAIvYwB2RwP8ACPABAJbLqCJeqP8AE/ABAJ7nhAwshP8AHvABACom////2f8AKfABADFJ+O34sf8ANPABAEU66cfptP8AP/ABAHVhzX/Nu/8ASvABAISqxEG2xP8AVfABAIvYwB2RwP8AYPABAJbLqCJeqP8Aa/ABAJ7nhAwshP8AdvABACom////2f8AgfABADFJ+O34sf8AjPABAEU66cfptP8Al/ABAHVhzX/Nu/8AovABAISqxEG2xP8ArfABAIvYwB2RwP8AuPABAJbLqCJeqP8Aw/ABAKS/lCU0lP8AzvABAJ7nWAgdWP8A2fABACVC///3vP8A5PABAByv/v7ET/8A7/ABABDu2dlfDv8A+vABACoq////1P8ABfEBABxw/v7Zjv8AEPEBABbV/v6ZKf8AG/EBAA/8zMxMAv8AJvEBACoq////1P8AMfEBABxw/v7Zjv8APPEBABbV/v6ZKf8AR/EBABDu2dlfDv8AUvEBAA34mZk0BP8AXfEBACoq////1P8AaPEBAB9t/v7jkf8Ac/EBAByv/v7ET/8AfvEBABbV/v6ZKf8AifEBABDu2dlfDv8AlPEBAA34mZk0BP8An/EBACoq////1P8AqvEBAB9t/v7jkf8AtfEBAByv/v7ET/8AwPEBABbV/v6ZKf8Ay/EBABLp7OxwFP8A1vEBAA/8zMxMAv8A4fEBAAz3jIwtBP8A7PEBACoZ////5f8A9/EBACVC///3vP8AAvIBAB9t/v7jkf8ADfIBAByv/v7ET/8AGPIBABbV/v6ZKf8AI/IBABLp7OxwFP8ALvIBAA/8zMxMAv8AOfIBAAz3jIwtBP8ARPIBACoZ////5f8AT/IBACVC///3vP8AWvIBAB9t/v7jkf8AZfIBAByv/v7ET/8AcPIBABbV/v6ZKf8Ae/IBABLp7OxwFP8AhvIBAA/8zMxMAv8AkfIBAA34mZk0BP8AnPIBAA3wZmYlBv8Ap/IBACJf///toP8AsvIBABiy/v6yTP8AvfIBAAXd8PA7IP8AyPIBACpN////sv8A0/IBAB2i/v7MXP8A3vIBABHC/f2NPP8A6fIBAP7h4+MaHP8A9PIBACpN////sv8A//IBAB2i/v7MXP8ACvMBABHC/f2NPP8AFfMBAAXd8PA7IP8AIPMBAPb/vb0AJv8AK/MBACpN////sv8ANvMBAB6I/v7Zdv8AQfMBABiy/v6yTP8ATPMBABHC/f2NPP8AV/MBAAXd8PA7IP8AYvMBAPb/vb0AJv8AbfMBACpN////sv8AePMBAB6I/v7Zdv8Ag/MBABiy/v6yTP8AjvMBABHC/f2NPP8AmfMBAAfU/PxOKv8ApPMBAP7h4+MaHP8Ar/MBAPX/sbEAJv8AuvMBACoy////zP8AxfMBACJf///toP8A0PMBAB6I/v7Zdv8A2/MBABiy/v6yTP8A5vMBABHC/f2NPP8A8fMBAAfU/PxOKv8A/PMBAP7h4+MaHP8AB/QBAPX/sbEAJv8AEvQBACoy////zP8AHfQBACJf///toP8AKPQBAB6I/v7Zdv8AM/QBABiy/v6yTP8APvQBABHC/f2NPP8ASfQBAAfU/PxOKv8AVPQBAP7h4+MaHP8AX/QBAPb/vb0AJv8AavQBAPL/gIAAJv8AdfQBAJMP//D4//8Af/QBABgj+vrr1/8AjPQBABck///v2/8AmvQBABck7u7fzP8AqPQBABckzc3AsP8AtvQBABgii4uDeP8AxPQBAHGA/3//1P8Az/QBAHGA/3//1P8A2/QBAHGA7nbuxv8A5/QBAHGAzWbNqv8A8/QBAHGAi0WLdP8A//QBAH8P//D///8ABfUBAH8P//D///8ADPUBAH8P7uDu7v8AE/UBAH8OzcHNzf8AGvUBAH8Oi4OLi/8AIfUBACoa9fX13P8AJ/UBABc6///kxP8ALvUBABc6///kxP8ANvUBABc67u7Vt/8APvUBABY6zc23nv8ARvUBABc6i4t9a/8AWAwCAAAAAAAAAP8ATvUBABkx///rzf8AXfUBAKr//wAA//8AYvUBAKr//wAA//8AaPUBAKr/7gAA7v8AbvUBAKr/zQAAzf8AdPUBAKr/iwAAi/8AevUBAMDO4oor4v8AhfUBAAC+paUqKv8Ai/UBAAC///9AQP8AkvUBAAC/7u47O/8AmfUBAAC/zc0zM/8AoPUBAAC+i4sjI/8Ap/UBABdj3t64h/8AsfUBABdk///Tm/8AvPUBABdj7u7Fkf8Ax/UBABdjzc2qff8A0vUBABdji4tzVf8A3fUBAIBnoF+eoP8A5/UBAINn/5j1//8A8vUBAINm7o7l7v8A/fUBAINnzXrFzf8ACPYBAINmi1OGi/8AE/YBAD///3//AP8AHvYBAD///3//AP8AKvYBAD//7nbuAP8ANvYBAD//zWbNAP8AQvYBAD//i0WLAP8ATvYBABHa0tJpHv8AWPYBABHb//9/JP8AY/YBABHb7u52If8AbvYBABHazc1mHf8AefYBABHci4tFE/8AhPYBAAuv//9/UP8AivYBAAep//9yVv8AkfYBAAap7u5qUP8AmPYBAAapzc1bRf8An/YBAAaoi4s+L/8ApvYBAJqT7WSV7f8AtfYBACEi///43P8AvvYBACEi///43P8AyPYBACIj7u7ozf8A0vYBACIizc3Isf8A3PYBACMii4uIeP8A5vYBAPbn3NwUPP8A7vYBAH///wD///8A8/YBAH///wD///8A+fYBAH//7gDu7v8A//YBAH//zQDNzf8ABfcBAH//iwCLi/8AC/cBAB7vuLiGC/8AGfcBAB7w//+5D/8AKPcBAB7w7u6tDv8AN/cBAB7wzc2VDP8ARvcBAB7wi4tlCP8AVfcBAFX/ZABkAP8AX/cBACduvb23a/8AafcBADqOa1VrL/8AePcBADqP/8r/cP8AiPcBADqP7rzuaP8AmPcBADqPzaLNWv8AqPcBADqPi26LPf8AuPcBABf///+MAP8Aw/cBABX///9/AP8Az/cBABX/7u52AP8A2/cBABX/zc1mAP8A5/cBABX/i4tFAP8A8/cBAMbAzJkyzP8A/vcBAMbB/78+//8ACvgBAMbA7rI67v8AFvgBAMbAzZoyzf8AIvgBAMbAi2gii/8ALvgBAAp56emWev8AOfgBAFU9vI+8j/8ARvgBAFU+/8H/wf8AVPgBAFU+7rTutP8AYvgBAFU+zZvNm/8AcPgBAFU+i2mLaf8AfvgBAK+Pi0g9i/8AjPgBAH9nTy9PT/8AmvgBAH9o/5f///8AqfgBAH9n7o3u7v8AuPgBAH9ozXnNzf8Ax/gBAH9oi1KLi/8A1vgBAH9nTy9PT/8A5PgBAID/0QDO0f8A8vgBAMf/05QA0/8A/fgBAOjr//8Uk/8ABvkBAOjr//8Uk/8AEPkBAOjr7u4Sif8AGvkBAOjrzc0Qdv8AJPkBAOfsi4sKUP8ALvkBAIr//wC///8AOvkBAIr//wC///8AR/kBAIr/7gCy7v8AVPkBAIr/zQCazf8AYfkBAIr/iwBoi/8AbvkBAAAAaWlpaf8AdvkBAAAAaWlpaf8AfvkBAJTh/x6Q//8AifkBAJTh/x6Q//8AlfkBAJTh7hyG7v8AofkBAJThzRh0zf8ArfkBAJThixBOi/8AufkBAADOsrIiIv8Aw/kBAADP//8wMP8AzvkBAADP7u4sLP8A2fkBAADPzc0mJv8A5PkBAADPi4saGv8A7/kBABwP///68P8A+/kBAFXAiyKLIv8AB/oBAAAA3Nzc3P8AEfoBAKoH//j4//8AHPoBACP////XAP8AIfoBACP////XAP8AJ/oBACP/7u7JAP8ALfoBACP/zc2tAP8AM/oBACP/i4t1AP8AOfoBAB7Z2tqlIP8AQ/oBAB7a///BJf8ATvoBAB7a7u60Iv8AWfoBAB7azc2bHf8AZPoBAB7ai4tpFP8Ab/oBAAAAwMDAwP8AdPoBAAAAAAAAAP8AevoBAAAAAwMDA/8AgPoBAAAAGhoaGv8Ah/oBAAAA//////8Aj/oBAAAAHBwcHP8AlvoBAAAAHx8fH/8AnfoBAAAAISEhIf8ApPoBAAAAJCQkJP8Aq/oBAAAAJiYmJv8AsvoBAAAAKSkpKf8AufoBAAAAKysrK/8AwPoBAAAALi4uLv8Ax/oBAAAAMDAwMP8AzvoBAAAABQUFBf8A1PoBAAAAMzMzM/8A2/oBAAAANjY2Nv8A4voBAAAAODg4OP8A6foBAAAAOzs7O/8A8PoBAAAAPT09Pf8A9/oBAAAAQEBAQP8A/voBAAAAQkJCQv8ABfsBAAAARUVFRf8ADPsBAAAAR0dHR/8AE/sBAAAASkpKSv8AGvsBAAAACAgICP8AIPsBAAAATU1NTf8AJ/sBAAAAT09PT/8ALvsBAAAAUlJSUv8ANfsBAAAAVFRUVP8APPsBAAAAV1dXV/8AQ/sBAAAAWVlZWf8ASvsBAAAAXFxcXP8AUfsBAAAAXl5eXv8AWPsBAAAAYWFhYf8AX/sBAAAAY2NjY/8AZvsBAAAACgoKCv8AbPsBAAAAZmZmZv8Ac/sBAAAAaWlpaf8AevsBAAAAa2tra/8AgfsBAAAAbm5ubv8AiPsBAAAAcHBwcP8Aj/sBAAAAc3Nzc/8AlvsBAAAAdXV1df8AnfsBAAAAeHh4eP8ApPsBAAAAenp6ev8Aq/sBAAAAfX19ff8AsvsBAAAADQ0NDf8AuPsBAAAAf39/f/8Av/sBAAAAgoKCgv8AxvsBAAAAhYWFhf8AzfsBAAAAh4eHh/8A1PsBAAAAioqKiv8A2/sBAAAAjIyMjP8A4vsBAAAAj4+Pj/8A6fsBAAAAkZGRkf8A8PsBAAAAlJSUlP8A9/sBAAAAlpaWlv8A/vsBAAAADw8PD/8ABPwBAAAAmZmZmf8AC/wBAAAAnJycnP8AEvwBAAAAnp6env8AGfwBAAAAoaGhof8AIPwBAAAAo6Ojo/8AJ/wBAAAApqampv8ALvwBAAAAqKioqP8ANfwBAAAAq6urq/8APPwBAAAAra2trf8AQ/wBAAAAsLCwsP8ASvwBAAAAEhISEv8AUPwBAAAAs7Ozs/8AV/wBAAAAtbW1tf8AXvwBAAAAuLi4uP8AZfwBAAAAurq6uv8AbPwBAAAAvb29vf8Ac/wBAAAAv7+/v/8AevwBAAAAwsLCwv8AgfwBAAAAxMTExP8AiPwBAAAAx8fHx/8Aj/wBAAAAycnJyf8AlvwBAAAAFBQUFP8AnPwBAAAAzMzMzP8Ao/wBAAAAz8/Pz/8AqvwBAAAA0dHR0f8AsfwBAAAA1NTU1P8AuPwBAAAA1tbW1v8Av/wBAAAA2dnZ2f8AxvwBAAAA29vb2/8AzfwBAAAA3t7e3v8A1PwBAAAA4ODg4P8A2/wBAAAA4+Pj4/8A4vwBAAAAFxcXF/8A6PwBAAAA5eXl5f8A7/wBAAAA6Ojo6P8A9vwBAAAA6+vr6/8A/fwBAAAA7e3t7f8ABP0BAAAA8PDw8P8AC/0BAAAA8vLy8v8AEv0BAAAA9fX19f8AGf0BAAAA9/f39/8AIP0BAAAA+vr6+v8AJ/0BAAAA/Pz8/P8ALv0BAFX//wD/AP8ANP0BAFX//wD/AP8AO/0BAFX/7gDuAP8AQv0BAFX/zQDNAP8ASf0BAFX/iwCLAP8AUP0BADvQ/63/L/8AXP0BAAAAwMDAwP8AYf0BAAAAAAAAAP8AZ/0BAAAAAwMDA/8Abf0BAAAAGhoaGv8AdP0BAAAA//////8AfP0BAAAAHBwcHP8Ag/0BAAAAHx8fH/8Aiv0BAAAAISEhIf8Akf0BAAAAJCQkJP8AmP0BAAAAJiYmJv8An/0BAAAAKSkpKf8Apv0BAAAAKysrK/8Arf0BAAAALi4uLv8AtP0BAAAAMDAwMP8Au/0BAAAABQUFBf8Awf0BAAAAMzMzM/8AyP0BAAAANjY2Nv8Az/0BAAAAODg4OP8A1v0BAAAAOzs7O/8A3f0BAAAAPT09Pf8A5P0BAAAAQEBAQP8A6/0BAAAAQkJCQv8A8v0BAAAARUVFRf8A+f0BAAAAR0dHR/8AAP4BAAAASkpKSv8AB/4BAAAACAgICP8ADf4BAAAATU1NTf8AFP4BAAAAT09PT/8AG/4BAAAAUlJSUv8AIv4BAAAAVFRUVP8AKf4BAAAAV1dXV/8AMP4BAAAAWVlZWf8AN/4BAAAAXFxcXP8APv4BAAAAXl5eXv8ARf4BAAAAYWFhYf8ATP4BAAAAY2NjY/8AU/4BAAAACgoKCv8AWf4BAAAAZmZmZv8AYP4BAAAAaWlpaf8AZ/4BAAAAa2tra/8Abv4BAAAAbm5ubv8Adf4BAAAAcHBwcP8AfP4BAAAAc3Nzc/8Ag/4BAAAAdXV1df8Aiv4BAAAAeHh4eP8Akf4BAAAAenp6ev8AmP4BAAAAfX19ff8An/4BAAAADQ0NDf8Apf4BAAAAf39/f/8ArP4BAAAAgoKCgv8As/4BAAAAhYWFhf8Auv4BAAAAh4eHh/8Awf4BAAAAioqKiv8AyP4BAAAAjIyMjP8Az/4BAAAAj4+Pj/8A1v4BAAAAkZGRkf8A3f4BAAAAlJSUlP8A5P4BAAAAlpaWlv8A6/4BAAAADw8PD/8A8f4BAAAAmZmZmf8A+P4BAAAAnJycnP8A//4BAAAAnp6env8ABv8BAAAAoaGhof8ADf8BAAAAo6Ojo/8AFP8BAAAApqampv8AG/8BAAAAqKioqP8AIv8BAAAAq6urq/8AKf8BAAAAra2trf8AMP8BAAAAsLCwsP8AN/8BAAAAEhISEv8APf8BAAAAs7Ozs/8ARP8BAAAAtbW1tf8AS/8BAAAAuLi4uP8AUv8BAAAAurq6uv8AWf8BAAAAvb29vf8AYP8BAAAAv7+/v/8AZ/8BAAAAwsLCwv8Abv8BAAAAxMTExP8Adf8BAAAAx8fHx/8AfP8BAAAAycnJyf8Ag/8BAAAAFBQUFP8Aif8BAAAAzMzMzP8AkP8BAAAAz8/Pz/8Al/8BAAAA0dHR0f8Anv8BAAAA1NTU1P8Apf8BAAAA1tbW1v8ArP8BAAAA2dnZ2f8As/8BAAAA29vb2/8Auv8BAAAA3t7e3v8Awf8BAAAA4ODg4P8AyP8BAAAA4+Pj4/8Az/8BAAAAFxcXF/8A1f8BAAAA5eXl5f8A3P8BAAAA6Ojo6P8A4/8BAAAA6+vr6/8A6v8BAAAA7e3t7f8A8f8BAAAA8PDw8P8A+P8BAAAA8vLy8v8A//8BAAAA9fX19f8ABgACAAAA9/f39/8ADQACAAAA+vr6+v8AFAACAAAA/Pz8/P8AGwACAFUP//D/8P8AJAACAFUP//D/8P8ALgACAFUP7uDu4P8AOAACAFUOzcHNwf8AQgACAFUOi4OLg/8ATAACAOmW//9ptP8AVAACAOqR//9utP8AXQACAOuN7u5qp/8AZgACAOyHzc1gkP8AbwACAOqUi4s6Yv8AeAACAACMzc1cXP8AggACAACU//9qav8AjQACAACU7u5jY/8AmAACAACVzc1VVf8AowACAACUi4s6Ov8ArgACAML/gksAgv8AtQACACoA/////gAAuwACACoP////8P8AwQACACoP////8P8AyAACACoP7u7u4P8AzwACACoOzc3Nwf8A1gACACoOi4uLg/8A3QACACZq8PDmjP8A4wACACdw///2j/8A6gACACdw7u7mhf8A8QACACdvzc3Gc/8A+AACACdvi4uGTv8A/wACAKoU+ubm+v8ACAECAPAP///w9f8AFgECAPAP///w9f8AJQECAO8P7u7g5f8ANAECAPAOzc3Bxf8AQwECAO8Oi4uDhv8AUgECAED//Hz8AP8AXAECACYx///6zf8AaQECACYx///6zf8AdwECACUy7u7pv/8AhQECACYxzc3Jpf8AkwECACcxi4uJcP8AoQECAIk/5q3Y5v8AqwECAIpA/7/v//8AtgECAIpA7rLf7v8AwQECAIo/zZrAzf8AzAECAIlAi2iDi/8A1wECAAB38PCAgP8A4gECAH8f/+D///8A7AECAH8f/+D///8A9wECAH8f7tHu7v8AAgICAH8fzbTNzf8ADQICAH8fi3qLi/8AGAICACNz7u7dgv8AJwICACN0///si/8ANwICACNz7u7cgv8ARwICACNzzc2+cP8AVwICACNzi4uBTP8AZwICACoo+vr60v8AfAICAAAA09PT0/8AhgICAAAA09PT0/8AkAICAPhJ//+2wf8AmgICAPlR//+uuf8ApQICAPhR7u6irf8AsAICAPlQzc2Mlf8AuwICAPlQi4tfZf8AxgICAAyE//+gev8A0gICAAyE//+gev8A3wICAAuE7u6Vcv8A7AICAAyFzc2BYv8A+QICAAyFi4tXQv8ABgMCAH3RsiCyqv8AFAMCAI91+ofO+v8AIQMCAI9P/7Di//8ALwMCAI9P7qTT7v8APQMCAI5PzY22zf8ASwMCAI9Oi2B7i/8AWQMCAK+P/4Rw//8AaAMCAJQ4mXeImf8AdwMCAJQ4mXeImf8AhgMCAJc03rDE3v8AlQMCAJc1/8rh//8ApQMCAJc17rzS7v8AtQMCAJc1zaK1zf8AxQMCAJY1i257i/8A1QMCACof////4P8A4QMCACof////4P8A7gMCACof7u7u0f8A+wMCACofzc3NtP8ACAQCACofi4uLev8AFQQCAFXAzTLNMv8AHwQCABUU+vrw5v8AJQQCANT///8A//8ALQQCANT///8A//8ANgQCANT/7u4A7v8APwQCANT/zc0Azf8ASAQCANT/i4sAi/8AUQQCAO+5sLAwYP8AWAQCAOTL//80s/8AYAQCAOTL7u4wp/8AaAQCAOTMzc0pkP8AcAQCAOTLi4scYv8AeAQCAHGAzWbNqv8AiQQCAKr/zQAAzf8AlAQCAMyY07pV0/8AoQQCAMuZ/+Bm//8ArwQCAMuZ7tFf7v8AvQQCAMuZzbRSzf8AywQCAMuai3o3i/8A2QQCALd825Nw2/8A5gQCALd9/6uC//8A9AQCALd97p957v8AAgUCALd9zYlozf8AEAUCALd8i11Hi/8AHgUCAGepszyzcf8ALQUCALCP7nto7v8APQUCAG//+gD6mv8ATwUCAH2n0UjRzP8AXwUCAOTkx8cVhf8AbwUCAKrGcBkZcP8AfAUCAGoJ//X/+v8AhgUCAAQe///k4f8AkAUCAAQe///k4f8AmwUCAAQe7u7V0v8ApgUCAAMdzc23tf8AsQUCAAUdi4t9e/8AvAUCABpJ///ktf8AxQUCABlR///erf8A0QUCABlR///erf8A3gUCABlS7u7Pof8A6wUCABlSzc2zi/8A+AUCABlSi4t5Xv8ABQYCAKr/gAAAgP8ACgYCAKr/gAAAgP8AEwYCACoA/////gAAGAYCABsX/f315v8AIAYCADjAjmuOI/8AKgYCADjB/8D/Pv8ANQYCADjA7rPuOv8AQAYCADjAzZrNMv8ASwYCADjAi2mLIv8AVgYCABv///+lAP8AXQYCABv///+lAP8AZQYCABv/7u6aAP8AbQYCABv/zc2FAP8AdQYCABv/i4taAP8AfQYCAAv///9FAP8AhwYCAAv///9FAP8AkgYCAAv/7u5AAP8AnQYCAAv/zc03AP8AqAYCAAv/i4slAP8AswYCANZ72tpw1v8AugYCANZ8//+D+v8AwgYCANZ87u566f8AygYCANZ8zc1pyf8A0gYCANV8i4tHif8A2gYCACZI7u7oqv8A6AYCAFVk+5j7mP8A8gYCAFVl/5r/mv8A/QYCAFVk7pDukP8ACAcCAFVkzXzNfP8AEwcCAFVki1SLVP8AHgcCAH9D7q/u7v8ALAcCAH9E/7v///8AOwcCAH9E7q7u7v8ASgcCAH9EzZbNzf8AWQcCAH9Di2aLi/8AaAcCAPF829twk/8AdgcCAPF9//+Cq/8AhQcCAPF97u55n/8AlAcCAPF9zc1oif8AowcCAPF8i4tHXf8AsgcCABop///v1f8AvQcCABRG///auf8AxwcCABRG///auf8A0gcCABNF7u7Lrf8A3QcCABNFzc2vlf8A6AcCABRFi4t3Zf8A8wcCABSwzc2FP/8A+AcCAPc////Ay/8A/QcCAPVJ//+1xf8AAwgCAPVJ7u6puP8ACQgCAPVKzc2Rnv8ADwgCAPVJi4tjbP8AFQgCANRG3d2g3f8AGggCANRE//+7//8AIAgCANRE7u6u7v8AJggCANREzc2Wzf8ALAgCANRDi4tmi/8AMggCAIQ75rDg5v8APQgCAMTd8KAg8P8ARAgCAL/P/5sw//8ATAgCAMDP7pEs7v8AVAgCAMDPzX0mzf8AXAgCAMDPi1Uai/8AZAgCAAD///8AAP8AaAgCAAD///8AAP8AbQgCAAD/7u4AAP8AcggCAAD/zc0AAP8AdwgCAAD/i4sAAP8AfAgCAAA9vLyPj/8AhggCAAA+///Bwf8AkQgCAAA+7u60tP8AnAgCAAA+zc2bm/8ApwgCAAA+i4tpaf8AsggCAJ+14UFp4f8AvAgCAJ+3/0h2//8AxwgCAJ+37kNu7v8A0ggCAJ+2zTpfzf8A3QgCAJ+3iydAi/8A6AgCABHci4tFE/8A9AgCAASK+vqAcv8A+wgCAAmW//+Maf8AAwkCAAmW7u6CYv8ACwkCAAmWzc1wVP8AEwkCAAmWi4tMOf8AGwkCABOa9PSkYP8AJgkCAGeqiy6LV/8ALwkCAGer/1T/n/8AOQkCAGer7k7ulP8AQwkCAGerzUPNgP8ATQkCAGeqiy6LV/8AVwkCABEQ///17v8AYAkCABEQ///17v8AagkCABIR7u7l3v8AdAkCABIRzc3Fv/8AfgkCABIQi4uGgv8AiAkCAA23oKBSLf8AjwkCAA24//+CR/8AlwkCAA247u55Qv8AnwkCAA24zc1oOf8ApwkCAA25i4tHJv8ArwkCAIts64fO6/8AtwkCAJB4/4fO//8AwAkCAJB47n7A7v8AyQkCAJB4zWymzf8A0gkCAJF3i0pwi/8A2wkCAK+PzWpazf8A5QkCAK+Q/4Nv//8A8AkCAK+Q7npn7v8A+wkCAK+QzWlZzf8ABgoCAK+Qi0c8i/8AEQoCAJQ4kHCAkP8AGwoCAJU4/8bi//8AJgoCAJU47rnT7v8AMQoCAJQ5zZ+2zf8APAoCAJU4i2x7i/8ARwoCAJQ4kHCAkP8AUQoCAAAF///6+v8AVgoCAAAF///6+v8AXAoCAAAF7u7p6f8AYgoCAAAEzc3Jyf8AaAoCAAADi4uJif8AbgoCAGr//wD/f/8AegoCAGr//wD/f/8AhwoCAGr/7gDudv8AlAoCAGr/zQDNZv8AoQoCAGr/iwCLRf8ArgoCAJKbtEaCtP8AuAoCAJKc/2O4//8AwwoCAJKc7lys7v8AzgoCAJKczU+Uzf8A2QoCAJObizZki/8A5AoCABhU0tK0jP8A6AoCABSw//+lT/8A7QoCABSw7u6aSf8A8goCABSwzc2FP/8A9woCABSwi4taK/8A/AoCANQd2Ni/2P8ABAsCANQe///h//8ADQsCANQe7u7S7v8AFgsCANQdzc21zf8AHwsCANQdi4t7i/8AKAsCAAa4//9jR/8ALwsCAAa4//9jR/8ANwsCAAa47u5cQv8APwsCAAa4zc1POf8ARwsCAAa5i4s2Jv8AmQwCACoA/////gAATwsCAHu24EDg0P8AWQsCAIH//wD1//8AZAsCAIH/7gDl7v8AbwsCAIH/zQDFzf8AegsCAIH/iwCGi/8AhQsCANRz7u6C7v8AjAsCAOPX0NAgkP8AlgsCAOvB//8+lv8AoQsCAOvA7u46jP8ArAsCAOvAzc0yeP8AtwsCAOvAi4siUv8AwgsCABtE9fXes/8AyAsCABtF///nuv8AzwsCABtE7u7Yrv8A1gsCABtEzc26lv8A3QsCABtDi4t+Zv8A5AsCAAAA//////8A6gsCAAAA9fX19f8A9QsCACr/////AP8A/AsCACr/////AP8ABAwCACr/7u7uAP8ADAwCACr/zc3NAP8AFAwCACr/i4uLAP8AHAwCADjAzZrNMv8AkBACAHUgAgCsDAIArgwCALAMAgCyDAIAtAwCALYMAgC4DAIAugwCALwMAgC/DAIAwgwCAMUMAgDIDAIAywwCAM4MAgDRDAIA1AwCANcMAgDaDAIAAAAAAAQAAAAEAAAACwAAADYAAAAWAAAAAAAAAAAAAAAAAAAACAAAABAAAAAYAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAACAAAABAAAAAYAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAAAAAADcAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAvBkCAAkAAADCGQIACgAAAMsZAgALAAAADRoCAAwAAAATGgIADQAAABgaAgAOAAAAyxkCAA8AAACgGgIAEAAAAKcaAgARAAAArxoCABIAAAC2GgIAEwAAAMIaAgAUAAAADRoCABUAAADOGgIAFgAAANYaAgAXAAAA4BoCABgAAADuGgIAGQAAAPUaAgAaAAAA+hoCABsAAAD9GgIAHAAAAAIbAgAdAAAAChsCAB4AAAAQGwIAHwAAABYbAgAgAAAAHRsCACEAAAAjGwIAIQAAACsbAgAiAAAAMhsCACMAAADLGQIAJAAAAKcaAgARAAAArxoCABIAAAApHQIAJQAAALYaAgATAAAAwhoCABQAAAANGgIAFQAAADQdAgAmAAAA1hoCABcAAADgGgIAGAAAAO4aAgAZAAAA9RoCABoAAAD6GgIAGwAAAP0aAgAcAAAAPB0CACcAAAAKGwIAHgAAABAbAgAfAAAAFhsCACAAAAAdGwIAIQAAACMbAgAhAAAAKxsCACIAAAAyGwIAIwAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAoAAAAKQAAACAAAAAqAAAADAAAABkAAAAhAAAABAAAAAUAAAABAAAAAAAAAAAAAAAAAAAAABUKAAAJAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////////////////////////////////////AAAAAAAAAAT+//+H/v//BwAAAAAAAAAA//9/////f//////////zf/79//////9///////////8P4P////8x/P///wAAAAAAAAD//////////////wEA+AMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDX///7/////39/VP3/DwD+3////////////t//////AwD///////+fGf///88/AwAAAAAAAP7///9/Av7///9/AAAAAAAAAAAA////BwcAAAAAAP7//wf+BwAAAAD+//////////98/38vAGAAAADg////////IwAAAP8DAAAA4J/5///9xQMAAACwAwADAOCH+f///W0DAAAAXgAAHADgr/v///3tIwAAAAABAAAA4J/5///9zSMAAACwAwAAAODHPdYYx78DAAAAAAAAAADg3/3///3vAwAAAAADAAAA4N/9///97wMAAABAAwAAAODf/f///f8DAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAA/v////9/DQA/AAAAAAAAAJYl8P6ubA0gHwAAAAAAAAAAAAAAAAAAAP/+////AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////z8A/////38A7doHAAAAAFABUDGCq2IsAAAAAEAAyYD1BwAAAAAIAQL/////////////////////////D///////////////A///Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAEBMAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAACAAAAA/gMAAP7///////////8fAP7/////////////B+D/////HwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////8/AAAAAAAAAAAAAAD//////////////////////////w8AAAAAAAAAAAAAAAAAAAAAYP8H/v//h/7//wcAAAAAAACAAP//f////3//////AAAAAAAAAP//////////////AQD4AwADAAAAAAD//////////z8AAAADAAAAwNf///v/////f39U/f8PAP7f///////////+3/////97AP///////58Z////zz8DAAAAAAAA/v///38C/v///38A/v/7//+7FgD///8HBwAAAAAA/v//B///BwD/A////////////3z/f+///z3/A+7////////z/z8e/8//AADun/n///3F0585gLDP/wMA5If5///9bdOHOQBewP8fAO6v+////e3zvzsAAMH/AADun/n///3N8485wLDD/wAA7Mc91hjHv8PHPYAAgP8AAO7f/f///e/D3z1gAMP/AADs3/3///3vw989YEDD/wAA7N/9///9/8PPPYAAw/8AAAAAAAAAAAAAAAAAAAAAAAD+/////3//B/9//wMAAAAAliXw/q5s/ztfP/8DAAAAAAAAAAP/A6DC//7///8D/v/fD7/+/z/+AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/HwIAAACgAAAA/v8+AP7///////////8fZv7/////////////dxkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAoAAAAKQAAACAAAAAqAAAADAAAABkAAAAhAAAABgAAAAcAAAABAAAAAQAAAAAAAAAAAAAAABUKAAAVAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcHAAAAAAAAAAAAAQErAAAALAAAAC0AAAAuAAAALwAAAC0AAAAwAAAAMQAAADIAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAKAAAACkAAAAgAAAAKgAAAAwAAAAZAAAAIQAAAAYAAAAHAAAAAQAAAAEAAAAAAAAAAAAAAAAVCgAACQAAAAAAAAAAAAAAAAAAAAAAABUQDBMcHgMNHyAhIiMbGhEZGRkZGRkZGRkZFhICDgsPHBgYGBgYGBYWFhYWFhYWFhYWFhYWFhYWFhYWFBwEHBYcGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYcJBwcHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQYGBgYGBgYGBgYGBgYGBgYHBwcHBwAAAAAAAAAAAAEBKwAAACwAAAAtAAAALgAAAC8AAAAtAAAAMAAAADEAAAAyAAAAmNwAAPjlAABw5AAAZOcAAGTnAADQ6AAAcOQAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAoAAAAKQAAACAAAAAqAAAADAAAABkAAAAhAAAACAAAAAUAAAABAAAAAQAAAAAAAAAAAAAAABUKAAAJAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiAAAAIwAAACQAAAAlAAAAJgAAACcAAAAoAAAAMwAAADQAAAApAAAANQAAAA0AAAAaAAAAKgAAAAkAAAAKAAAAAgAAAAAAAAAAAAAAAAAAAAAVCgAACQAAAAAAAAAAAAAAAAAAAAAAABUQDBMcHgMNHyAhIiMbGhEZGRkZGRkZGRkZFhICDgsPHBgYGBgYGBYWFhYWFhYWFhYWFhYWFhYWFhYWFBwEHBYcGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYcJBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBYcHBwcHBwcHBwcFhwaHBwWHBwcHBwWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhwWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMQAAADYAAAA3AAAAMgAAADgAAAAOAAAAGwAAADMAAAALAAAADAAAAAIAAAAAAQAAAAAAAAAAAAAAFQoAAAkAAAAAAAAAAAAAAAAAAAAAAAAVEAwTHB4DDR8gISIjGxoRGRkZGRkZGRkZGRYSAg4LDxwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhQcBBwWHBgYGBgYGBYWFhYWFhYWFhYWFhYWFhYWFhYWHCQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwWHBwcHBwcHBwcHBYcGhwcFhwcHBwcFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhwWFhYWFhYWFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP2BAQCoJwIAgYIBALEnAgC4JwIAwScCABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAoAAAAKQAAACAAAAAqAAAADAAAABkAAAAhAAAABgAAAAcAAAABAAAAAQAAAAAAAAAAAAAAABUKAAAVAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcHAAAAAAAAAAAAAQErAAAALAAAAC0AAAAuAAAALwAAAC0AAAAwAAAAMQAAADIAAADc6wAASO0AALTuAAAg8AAAIPAAAIzxAAC07gAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACgAAAApAAAAIAAAACoAAAAMAAAAGQAAACEAAAAEAAAABQAAAAEAAAAAAAAAAAAAAAAAAAAAFQoAAAkAAAAAAAAAAAAAAAAAAAAAAAAVEAwTHB4DDR8gISIjGxoRGRkZGRkZGRkZGRcSAg4LDxwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhQcBBwWHBgYGBgYGBYWFhYWFhYWFhYWFhYWFhYWFhYWHCQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwWHBwcHBwcHBwcHBYcGhwcFhwcHBwcFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhwWFhYWFhYWFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAoAAAAKQAAACAAAAAqAAAADAAAABkAAAAhAAAACAAAAAUAAAABAAAAAQAAAAAAAAAAAAAAABUKAAAJAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAKAAAACkAAAAgAAAAKgAAAAwAAAAZAAAAIQAAAAYAAAAHAAAAAQAAAAEAAAAAAAAAAAAAAAAVCgAACQAAAAAAAAAAAAAAAAAAAAAAABUQDBMcHgMNHyAhIiMbGhEZGRkZGRkZGRkZFxICDgsPHBgYGBgYGBYWFhYWFhYWFhYWFhYWFhYWFhYWFBwEHBYcGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYcJBwcHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQYGBgYGBgYGBgYGBgYGBgYHBwcHBwAAAAAAAAAAAAEBKwAAACwAAAAtAAAALgAAAC8AAAAtAAAAMAAAADEAAAAyAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAADMAAAA0AAAAKQAAADUAAAANAAAAGgAAACoAAAAJAAAACgAAAAIAAAAAAAAAAAAAAAAAAAAAFQoAAAkAAAAAAAAAAAAAAAAAAAAAAAAVEAwTHB4DDR8gISIjGxoRGRkZGRkZGRkZGRcSAg4LDxwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhQcBBwWHBgYGBgYGBYWFhYWFhYWFhYWFhYWFhYWFhYWHCQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwWHBwcHBwcHBwcHBYcGhwcFhwcHBwcFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhwWFhYWFhYWFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAA2AAAANwAAADIAAAA4AAAADgAAABsAAAAzAAAACwAAAAwAAAACAAAAAAEAAAAAAAAAAAAAABUKAAAJAAAAAAAAAAAAAAAAAAAAAAAAFRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABTKAIAWSgCAFwoAgBiKAIA/CcCAGkoAgByKAIAeigCADTzAAAUAAAAQy5VVEYtOAAAAAAAAAAAAAAAAADeEgSVAAAAAP///////////////wIAAMADAADABAAAwAUAAMAGAADABwAAwAgAAMAJAADACgAAwAsAAMAMAADADQAAwA4AAMAPAADAEAAAwBEAAMASAADAEwAAwBQAAMAVAADAFgAAwBcAAMAYAADAGQAAwBoAAMAbAADAHAAAwB0AAMAeAADAHwAAwAAAALMBAADDAgAAwwMAAMMEAADDBQAAwwYAAMMHAADDCAAAwwkAAMMKAADDCwAAwwwAAMMNAADTDgAAww8AAMMAAAy7AQAMwwIADMMDAAzDBAAM0xj0AAAJAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAEAAAAPTtAgAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmPQAAAUAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAQAAAA/PECAAAEAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAr/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACY9AAAHPUAAAUAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAAQAAAABPYCAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJDcAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAQAAAAEAAAABgAAAIP5ogBETm4A/CkVANFXJwDdNPUAYtvAADyZlQBBkEMAY1H+ALveqwC3YcUAOm4kANJNQgBJBuAACeouAByS0QDrHf4AKbEcAOg+pwD1NYIARLsuAJzphAC0JnAAQX5fANaROQBTgzkAnPQ5AItfhAAo+b0A+B87AN7/lwAPmAUAES/vAApaiwBtH20Az342AAnLJwBGT7cAnmY/AC3qXwC6J3UA5evHAD178QD3OQcAklKKAPtr6gAfsV8ACF2NADADVgB7/EYA8KtrACC8zwA29JoA46kdAF5hkQAIG+YAhZllAKAUXwCNQGgAgNj/ACdzTQAGBjEAylYVAMmocwB74mAAa4zAACAAAAAJAAAACgAAAA0AAAALAAAADAAAAIUAAAAAIAAAASAAAAIgAAADIAAABCAAAAUgAAAGIAAACCAAAAkgAAAKIAAAKCAAACkgAABfIAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvD3QAAADzSwIAbgAAAPVLAgByAAAA90sCAGYAAAD5SwIAYQAAAPtLAgBlAAAA/UsCAHcAAAD/SwIAVwAAAAxMAgBzAAAAGkwCAFMAAAAmTAIAZAAAADNMAgBEAAAAP0wCAAAAAAAAAAAAAAAAAAAABAAEABsAGwAgACAAIwAhAAoAAgAWAAkAIQAhACEAFQAcAAEAFAAUABQAFAAUABQAFAAIAAQABQAbAAIAFwAbACAAHwAeAB0ACQATAAAAFQASABUAAwAHABUAFQAUABQAFAAUABQAFAAUABQACAAEAAUABQAGABsAGgAYABkAIAAHABUAFAAUABQAFAAUABQACwAUAA0AFAAMABQAFAAUAA4AFAAUABQAEAAUAA8AFAARAAAAAAAAAK4ALgAvADMANQAwADcAqgDbANsA2wDbAAAAPQCHADcANwDbANsAAAAoADUALgAyAC8AYgAAAAAARwAAAAAA2wBRAAAA2wDbANsAAADbAIQAVQDbAIIA2wAAAIEA2wAAAD4AQgBBAEgARABSAFsAAAAAAF4AXwDbAAAA2wDbANsAAAAAAHsASQBXAFIAWgBaAF0AAABfAAAAXwAAAGUAXQBfAAAAXQBuAGoAAABpAAAAbgAAANsAkwCaAKEAqACrAHAAsQC4AL8AxgDNANMAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADAAQABwADAAQABQAFAAYABgAIAAcABwARABYAEgARABIACAAIAA8ADwAXAA8AGAAPABkAGgAaAB4AFgA0AB4ABQAyAAYAIgAiADMAFwAYADUAGQAaABoAKgA2ACoANAA3ADIARQA7ADwAMwA7ADwARgA1AEcASABMADYAIgBJAEoANwBFAE4AUABiAFEAUgBUAEYARwBVAEgATABWAEkASgBYAFoATgBEAFAAUQBSAFQAOAAvACwAVQApAFYAGwAQAFgAWgBdAF0AXQBdAF0AXQBdAF4AXgBeAF4AXgBeAF4AXwBfAF8AXwBfAF8AXwBgAAkAYABgAGAAYABgAGEAYQBjAAIAYwBjAGMAYwBjAGQAAABkAAAAZABkAGQAZQAAAGUAZQBlAGUAZQBmAGYAAABmAGYAZgBmAGcAAABnAGcAZwBnAGgAAABoAGgAaABoAGgAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAAAFwAAQBdAF0AXgBeAF8AXwBcAFwAXABcAFwAYABcAFwAXABhAFwAXABiAGIAYgBiAGIAYgBiAGMAZABlAGYAZgBcAFwAZwBcAFwAXABgAFwAXABhAFwAYQBcAGgAYQBcAGIAYgBiAGIAYgBiAGIAYgBjAGQAZQBlAFwAZgBcAFwAXABnAGgAYQBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAAABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAAAAoACwAMAA0ADgAKAA8AEAARABIAEwAKABQAFQAVABUAFgAXABUAGAAVABUAGQAVABUAFQAaABUAFQAKABUAFQAVABYAFwAYABUAFQAZABUAFQAVABoAFQAVABUAFQAbAAwADAAkAB4AHgAgACEAIAAhACQAJQAmAC0AMgAvAC4AKgAlACYAKAApADMAKgA0ACsANQA2ADcAPAAyAEcAPQAiAEUAIgA/AEAARgAzADQASAA1ADYANwAvAEkAKgBHAEoARQBMAFwAPABGAFwAPQBNAEgATgBPAFIASQBBAFAAUQBKAEwAUwBUADEAVQBWAFcATQBOAFgATwBSAFkAUABRAFoAWwBTAEQAVABVAFYAVwBLAEQALABYACwAWQA4ACwAWgBbAB0AHQAdAB0AHQAdAB0AHwAfAB8AHwAfAB8AHwAjACMAIwAjACMAIwAjACcAXAAnACcAJwAnACcAMAAwADkAHAA5ADkAOQA5ADkAOgBcADoAXAA6ADoAOgA7AFwAOwA7ADsAOwA7AD4APgBcAD4APgA+AD4AQgBcAEIAQgBCAEIAQwBcAEMAQwBDAEMAQwAJAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAAgArv/RAAoArv+u/wsArv+u/67/rv+u/67/rv+u/wUA0QCu/9EA0QDRANEA0QDRANEA0QCu//v/rv8OAOz/rv+u/67/rv/RANEA0QDRANEADQAlAAwAQgAQAFAAEwBtAHsAFACYAA8ApgDDAK7/rv+u/67/rv+u/67/rv+u/67/rv+u/67/rv+u/67/rv+u/67/rv+u/67/rv+u/xcArv93AK7/BwAuAK7/JgCu/xcAEQAjAK7/DQCu/67/rv+u/zoArv+u/zUArv+u/67/KACu/wcArv87AEUArv9IAK7/rv+u/67/rv+u/67//P/oAPb///8aAAAAJwABADIArv+u/wIAJAADAC8Arv+u/67/rv+u//7/lACu/wkAGwCu/7z/rv+u/6//rv+u/67/rv+u/67/rv8AAAAAAABt5uzeBQALAEkAMQFTAH8BMAFpAHgB/wCBAVMCggGDAYQBhQGGAVQChwGIAYkBVgKKAVcCiwGMAY4B3QGPAVkCkAFbApEBkgGTAWAClAFjApYBaQKXAWgCmAGZAZwBbwKdAXICnwF1AqYBgAKnAagBqQGDAqwBrQGuAYgCrwGwAbEBigKyAYsCtwGSArgBuQG8Ab0BxAHGAcQBxQHFAcYBxwHJAccByAHIAckBygHMAcoBywHLAcwB8QHzAfEB8gHyAfMB9AH1AfYBlQH3Ab8BIAKeAYYDrAOIA60DiQOuA4oDrwOMA8wDjgPNA48DzgOZA0UDmQO+H6MDwgP3A/gD+gP7A2Aemx6eHt8AWR9RH1sfUx9dH1UfXx9XH7wfsx/MH8Mf7B/lH/wf8x86AmUsOwI8Aj0CmgE+AmYsQQJCAkMCgAFEAokCRQKMAvQDuAP5A/ID/QN7A/4DfAP/A30DwATPBCYhyQMqIWsAKyHlADIhTiGDIYQhYCxhLGIsawJjLH0dZCx9Am0sUQJuLHECbyxQAnAsUgJyLHMsdSx2LH4sPwJ/LEAC8izzLH2neR2Lp4ynjadlAqqnZgLHECctzRAtLXYDdwOcA7UAkgPQA5gD0QOmA9UDoAPWA5oD8AOhA/EDlQP1A88D1wMAAAAAQQAgGsAAIB8AAQEvMgEBBTkBAQ9KAQEteQEBBXADAQORAyARowMgCQAEUBAQBCAgYAQBIYoEATXBBAEN0AQBPxQFARMxBTAmoAEBBbMBAQPNAQEP3gEBEfgBASciAgER2AMBFwAeAZWgHgFfCB/4CBgf+AYoH/gIOB/4CEgf+AZoH/gIiB/4CJgf+AioH/gIuB/4AroftgLIH6oE2B/4AtofnALoH/gC6h+QAvgfgAL6H4ICRgIBCRAFAQNgIRAQACwwL2csAQWALAFj6ywBA0CmAS2ApgEXIqcBDTKnAT15pwEDfqcBCZCnAQOgpwEJIf8gGgAAAAB7IHZhciBwYXRoID0gUG9pbnRlcl9zdHJpbmdpZnkoJDApOyB2YXIgZGF0YSA9IFBvaW50ZXJfc3RyaW5naWZ5KCQxKTsgRlMuY3JlYXRlUGF0aCgiLyIsIFBBVEguZGlybmFtZShwYXRoKSk7IEZTLndyaXRlRmlsZShQQVRILmpvaW4oIi8iLCBwYXRoKSwgZGF0YSk7IH0AY29yZQB4ZG90dmVyc2lvbgAxLjcAMS40ADEuMgBfbGRyYXdfAF9oZHJhd18AX3RkcmF3XwBfaGxkcmF3XwBfdGxkcmF3XwB4ZG90IHZlcnNpb24gIiVzIiB0b28gbG9uZwAgJWQgACUuMDJmACVzJWQgLQAjJTAyeCUwMnglMDJ4JTAyeABzZXRsaW5ld2lkdGgoACUuM2YAUyAAQyAAMiAARSAAZSAARiAAdCAldSAAVCAAZG90OmRvdABndjpkb3QAY2Fub246ZG90AHBsYWluOmRvdABwbGFpbi1leHQ6ZG90AHhkb3Q6eGRvdAB4ZG90MS4yOnhkb3QAeGRvdDEuNDp4ZG90AEkgACJfc3ViZ3JhcGhfY250IjogJWQAIl9ndmlkIjogJWQAImVkZ2VzIjogWwoAIl9ndmlkIjogJWQsCgAidGFpbCI6ICVkLAoAImhlYWQiOiAlZAAib2JqZWN0cyI6IFsKACJub2RlcyI6IFsKACJuYW1lIjogIiVzIgBcIgBcLwBcYgBcZgBcbgBccgBcdAAic3ViZ3JhcGhzIjogWwoAIiVzIjogACIlcyIAQ291bGQgbm90IHBhcnNlIHhkb3QgIiVzIgoAWwoAIm9wIjogIiVjIiwKACJyZWN0IjogWyUuMDNmLCUuMDNmLCUuMDNmLCUuMDNmXQoAIm9wIjogIkwiLAoAIm9wIjogIlQiLAoAInB0IjogWyUuMDNmLCUuMDNmXSwKACJhbGlnbiI6ICIlYyIsCgAid2lkdGgiOiAlLjAzZiwKACJ0ZXh0IjogIiVzIgoAImdyYWQiOiAibm9uZSIsCgAiY29sb3IiOiAiJXMiCgAiZ3JhZCI6ICJsaW5lYXIiLAoAImdyYWQiOiAicmFkaWFsIiwKACJvcCI6ICJGIiwKACJzaXplIjogJS4wM2YsCgAiZmFjZSI6ICIlcyIKACJvcCI6ICJTIiwKACJzdHlsZSI6ICIlcyIKACJvcCI6ICJ0IiwKACJmb250Y2hhciI6ICVkCgAicDAiOiBbJS4wM2YsJS4wM2YsJS4wM2ZdLAoAInAxIjogWyUuMDNmLCUuMDNmLCUuMDNmXSwKACJzdG9wcyI6IFsAeyJmcmFjIjogJS4wM2YsICJjb2xvciI6ICIlcyJ9AF0KACJwMCI6IFslLjAzZiwlLjAzZl0sCgAicDEiOiBbJS4wM2YsJS4wM2ZdLAoAInBvaW50cyI6IFsAWyUuMDNmLCUuMDNmXQBkcmF3XwBsZHJhd18AaGRyYXdfAHRkcmF3XwBobGRyYXdfAHRsZHJhd18AImRpcmVjdGVkIjogJXMsCgAic3RyaWN0IjogJXMARHVwbGljYXRlIGNsdXN0ZXIgbmFtZSAiJXMiCgB4ZG90AGpzb24AanNvbjAAZG90X2pzb24AeGRvdF9qc29uAGpzb246anNvbgBqc29uMDpqc29uAGRvdF9qc29uOmpzb24AeGRvdF9qc29uOmpzb24AbiA+PSA0AGd2cmVuZGVyX2NvcmVfZmlnLmMAZmlnX2JlemllcgBmaWdfcmVzb2x2ZV9jb2xvcgBmaWcAZmlnOmZpZwBtYXAAcmVjdCAlcyAlZCwlZCAlZCwlZAoAY2lyY2xlICVzICVkLCVkLCVkCgBwb2x5ICVzACAlZCwlZABndnJlbmRlcl9jb3JlX21hcC5jAG1hcF9vdXRwdXRfc2hhcGUAcmVjdGFuZ2xlICglZCwlZCkgKCVkLCVkKSAlcyAlcwoAPGFyZWEgc2hhcGU9ImNpcmNsZSIAPGFyZWEgc2hhcGU9InJlY3QiADxhcmVhIHNoYXBlPSJwb2x5IgAgaHJlZj0iACB0aXRsZT0iACBhbHQ9IiIAIGNvb3Jkcz0iACVkLCVkLCVkACVkLCVkLCVkLCVkACVkLCVkACwlZCwlZAAiPgoAPC9tYXA+CgBiYXNlIHJlZmVyZXIKAGRlZmF1bHQgADxtYXAgaWQ9IgAiIG5hbWU9IgBpc21hcDptYXAAY21hcDptYXAAaW1hcDptYXAAY21hcHg6bWFwAGltYXBfbnA6bWFwAGNtYXB4X25wOm1hcAAjICVzCgAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlLjFmICVkICVkICVkICVkICVkICVkCgAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlLjFmICVkICVkICVkICVkCgAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlLjNmICVkICUuNGYgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQKACVkICVkICMlMDJ4JTAyeCUwMngKAGd2cmVuZGVyX2NvcmVfbXAuYwBtcF9yZXNvbHZlX2NvbG9yACVkICVkICVkICVkICVkICVkICUuMWYgJS40ZiAlZCAlLjFmICUuMWYgJWQgJWQgJXNcMDAxCgAjIGVuZCBvZiBGSUcgZmlsZQoAI0ZJRyAzLjIKACMgR2VuZXJhdGVkIGJ5ICVzIHZlcnNpb24gJXMgKCVzKQoAIyBUaXRsZTogJXMKACMgUGFnZXM6ICVkCgBQb3J0cmFpdAoAQ2VudGVyCgBJbmNoZXMKAExldHRlcgoAMTAwLjAwCgBTaW5nbGUKAC0yCgAxMjAwACAyCgBtcABtcDptcAAgXSAgJWQgdHJ1ZSAlcwoAIF0gICVkIGZhbHNlICVzCgAgc2V0bGluZXdpZHRoCgAlcyAAc2V0aHNiACUuNWcgJS41ZyAlLjVnICVzY29sb3IKACUgAG5ld3BhdGggACBtb3ZldG8KACBsaW5ldG8KAHN0cm9rZQoAIGN1cnZldG8KAGNsb3NlcGF0aCBmaWxsCgBjbG9zZXBhdGggc3Ryb2tlCgAgZWxsaXBzZV9wYXRoIGZpbGwKACBlbGxpcHNlX3BhdGggc3Ryb2tlCgAgLyVzIHNldF9mb250CgAgbW92ZXRvIAAgJXMgYWxpZ25lZHRleHQKAFsgL1JlY3QgWyAAIF0KACAgL0JvcmRlciBbIDAgMCAwIF0KICAvQWN0aW9uIDw8IC9TdWJ0eXBlIC9VUkkgL1VSSSAlcyA+PgogIC9TdWJ0eXBlIC9MaW5rCi9BTk4gcGRmbWFyawoAZ3NhdmUKACUlICVzCgAwIDAgMCBlZGdlY29sb3IKAGVuZHBhZ2UKc2hvd3BhZ2UKZ3Jlc3RvcmUKACUlUGFnZVRyYWlsZXIKACUlJSVFbmRQYWdlOiAlZAoAJSUlJVBhZ2U6ICVkICVkCgAlJSUlUGFnZUJvdW5kaW5nQm94OiAlZCAlZCAlZCAlZAoATGFuZHNjYXBlAFBvcnRyYWl0ACUlJSVQYWdlT3JpZW50YXRpb246ICVzCgA8PCAvUGFnZVNpemUgWyVkICVkXSA+PiBzZXRwYWdlZGV2aWNlCgAlZCAlZCAlZCBiZWdpbnBhZ2UKAGdzYXZlCiVkICVkICVkICVkIGJveHByaW0gY2xpcCBuZXdwYXRoCgAlZyAlZyBzZXRfc2NhbGUgJWQgcm90YXRlICVnICVnIHRyYW5zbGF0ZQoAY2FudmFzIHNpemUgKCVkLCVkKSBleGNlZWRzIFBERiBsaW1pdCAoJWQpCgkoc3VnZ2VzdCBzZXR0aW5nIGEgYm91bmRpbmcgYm94IHNpemUsIHNlZSBkb3QoMSkpCgBbIC9Dcm9wQm94IFslZCAlZCAlZCAlZF0gL1BBR0VTIHBkZm1hcmsKACVkICVkIHNldGxheWVyCgAlJSUlVGl0bGU6ICVzCgAlJVBhZ2VzOiAoYXRlbmQpCgAlJVBhZ2VzOiAxCgAlJUJvdW5kaW5nQm94OiAoYXRlbmQpCgAlJSUlQm91bmRpbmdCb3g6ICVkICVkICVkICVkCgAlJUVuZENvbW1lbnRzCnNhdmUKAHNldHVwTGF0aW4xCgBbIHtDYXRhbG9nfSA8PCAvVVJJIDw8IC9CYXNlICVzID4+ID4+Ci9QVVQgcGRmbWFyawoAJSVCZWdpblByb2xvZwAvRG90RGljdCAyMDAgZGljdCBkZWYARG90RGljdCBiZWdpbgAvc2V0dXBMYXRpbjEgewBtYXJrAC9FbmNvZGluZ1ZlY3RvciAyNTYgYXJyYXkgZGVmACBFbmNvZGluZ1ZlY3RvciAwAElTT0xhdGluMUVuY29kaW5nIDAgMjU1IGdldGludGVydmFsIHB1dGludGVydmFsAEVuY29kaW5nVmVjdG9yIDQ1IC9oeXBoZW4gcHV0ACUgU2V0IHVwIElTTyBMYXRpbiAxIGNoYXJhY3RlciBlbmNvZGluZwAvc3Rhcm5ldElTTyB7ACAgICAgICAgZHVwIGR1cCBmaW5kZm9udCBkdXAgbGVuZ3RoIGRpY3QgYmVnaW4AICAgICAgICB7IDEgaW5kZXggL0ZJRCBuZSB7IGRlZiB9eyBwb3AgcG9wIH0gaWZlbHNlACAgICAgICAgfSBmb3JhbGwAICAgICAgICAvRW5jb2RpbmcgRW5jb2RpbmdWZWN0b3IgZGVmACAgICAgICAgY3VycmVudGRpY3QgZW5kIGRlZmluZWZvbnQAfSBkZWYAL1RpbWVzLVJvbWFuIHN0YXJuZXRJU08gZGVmAC9UaW1lcy1JdGFsaWMgc3Rhcm5ldElTTyBkZWYAL1RpbWVzLUJvbGQgc3Rhcm5ldElTTyBkZWYAL1RpbWVzLUJvbGRJdGFsaWMgc3Rhcm5ldElTTyBkZWYAL0hlbHZldGljYSBzdGFybmV0SVNPIGRlZgAvSGVsdmV0aWNhLU9ibGlxdWUgc3Rhcm5ldElTTyBkZWYAL0hlbHZldGljYS1Cb2xkIHN0YXJuZXRJU08gZGVmAC9IZWx2ZXRpY2EtQm9sZE9ibGlxdWUgc3Rhcm5ldElTTyBkZWYAL0NvdXJpZXIgc3Rhcm5ldElTTyBkZWYAL0NvdXJpZXItT2JsaXF1ZSBzdGFybmV0SVNPIGRlZgAvQ291cmllci1Cb2xkIHN0YXJuZXRJU08gZGVmAC9Db3VyaWVyLUJvbGRPYmxpcXVlIHN0YXJuZXRJU08gZGVmAGNsZWFydG9tYXJrAH0gYmluZCBkZWYAJSVCZWdpblJlc291cmNlOiBwcm9jc2V0IGdyYXBodml6IDAgMAAvY29vcmQtZm9udC1mYW1pbHkgL1RpbWVzLVJvbWFuIGRlZgAvZGVmYXVsdC1mb250LWZhbWlseSAvVGltZXMtUm9tYW4gZGVmAC9jb29yZGZvbnQgY29vcmQtZm9udC1mYW1pbHkgZmluZGZvbnQgOCBzY2FsZWZvbnQgZGVmAC9JbnZTY2FsZUZhY3RvciAxLjAgZGVmAC9zZXRfc2NhbGUgewAgICAgICAgZHVwIDEgZXhjaCBkaXYgL0ludlNjYWxlRmFjdG9yIGV4Y2ggZGVmACAgICAgICBzY2FsZQAlIHN0eWxlcwAvc29saWQgeyBbXSAwIHNldGRhc2ggfSBiaW5kIGRlZgAvZGFzaGVkIHsgWzkgSW52U2NhbGVGYWN0b3IgbXVsIGR1cCBdIDAgc2V0ZGFzaCB9IGJpbmQgZGVmAC9kb3R0ZWQgeyBbMSBJbnZTY2FsZUZhY3RvciBtdWwgNiBJbnZTY2FsZUZhY3RvciBtdWxdIDAgc2V0ZGFzaCB9IGJpbmQgZGVmAC9pbnZpcyB7L2ZpbGwge25ld3BhdGh9IGRlZiAvc3Ryb2tlIHtuZXdwYXRofSBkZWYgL3Nob3cge3BvcCBuZXdwYXRofSBkZWZ9IGJpbmQgZGVmAC9ib2xkIHsgMiBzZXRsaW5ld2lkdGggfSBiaW5kIGRlZgAvZmlsbGVkIHsgfSBiaW5kIGRlZgAvdW5maWxsZWQgeyB9IGJpbmQgZGVmAC9yb3VuZGVkIHsgfSBiaW5kIGRlZgAvZGlhZ29uYWxzIHsgfSBiaW5kIGRlZgAvdGFwZXJlZCB7IH0gYmluZCBkZWYAJSBob29rcyBmb3Igc2V0dGluZyBjb2xvciAAL25vZGVjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYAL2VkZ2Vjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYAL2dyYXBoY29sb3IgeyBzZXRoc2Jjb2xvciB9IGJpbmQgZGVmAC9ub3Bjb2xvciB7cG9wIHBvcCBwb3B9IGJpbmQgZGVmAC9iZWdpbnBhZ2UgewklIGkgaiBucGFnZXMACS9ucGFnZXMgZXhjaCBkZWYACS9qIGV4Y2ggZGVmAAkvaSBleGNoIGRlZgAJL3N0ciAxMCBzdHJpbmcgZGVmAAlucGFnZXMgMSBndCB7AAkJZ3NhdmUACQkJY29vcmRmb250IHNldGZvbnQACQkJMCAwIG1vdmV0bwAJCQkoXCgpIHNob3cgaSBzdHIgY3ZzIHNob3cgKCwpIHNob3cgaiBzdHIgY3ZzIHNob3cgKFwpKSBzaG93AAkJZ3Jlc3RvcmUACX0gaWYAL3NldF9mb250IHsACWZpbmRmb250IGV4Y2gACXNjYWxlZm9udCBzZXRmb250ACUgZHJhdyB0ZXh0IGZpdHRlZCB0byBpdHMgZXhwZWN0ZWQgd2lkdGgAL2FsaWduZWR0ZXh0IHsJCQklIHdpZHRoIHRleHQACS90ZXh0IGV4Y2ggZGVmAAkvd2lkdGggZXhjaCBkZWYACWdzYXZlAAkJd2lkdGggMCBndCB7AAkJCVtdIDAgc2V0ZGFzaAAJCQl0ZXh0IHN0cmluZ3dpZHRoIHBvcCB3aWR0aCBleGNoIHN1YiB0ZXh0IGxlbmd0aCBkaXYgMCB0ZXh0IGFzaG93AAkJfSBpZgAJZ3Jlc3RvcmUAL2JveHByaW0gewkJCQklIHhjb3JuZXIgeWNvcm5lciB4c2l6ZSB5c2l6ZQAJCTQgMiByb2xsAAkJbW92ZXRvAAkJMiBjb3B5AAkJZXhjaCAwIHJsaW5ldG8ACQkwIGV4Y2ggcmxpbmV0bwAJCXBvcCBuZWcgMCBybGluZXRvAAkJY2xvc2VwYXRoAC9lbGxpcHNlX3BhdGggewAJL3J5IGV4Y2ggZGVmAAkvcnggZXhjaCBkZWYACS95IGV4Y2ggZGVmAAkveCBleGNoIGRlZgAJbWF0cml4IGN1cnJlbnRtYXRyaXgACW5ld3BhdGgACXggeSB0cmFuc2xhdGUACXJ4IHJ5IHNjYWxlAAkwIDAgMSAwIDM2MCBhcmMACXNldG1hdHJpeAAvZW5kcGFnZSB7IHNob3dwYWdlIH0gYmluZCBkZWYAL3Nob3dwYWdlIHsgfSBkZWYAL2xheWVyY29sb3JzZXEACVsJJSBsYXllciBjb2xvciBzZXF1ZW5jZSAtIGRhcmtlc3QgdG8gbGlnaHRlc3QACQlbMCAwIDBdAAkJWy4yIC44IC44XQAJCVsuNCAuOCAuOF0ACQlbLjYgLjggLjhdAAkJWy44IC44IC44XQAJXQBkZWYAL2xheWVybGVuIGxheWVyY29sb3JzZXEgbGVuZ3RoIGRlZgAvc2V0bGF5ZXIgey9tYXhsYXllciBleGNoIGRlZiAvY3VybGF5ZXIgZXhjaCBkZWYACWxheWVyY29sb3JzZXEgY3VybGF5ZXIgMSBzdWIgbGF5ZXJsZW4gbW9kIGdldAAJYWxvYWQgcG9wIHNldGhzYmNvbG9yAAkvbm9kZWNvbG9yIHtub3Bjb2xvcn0gZGVmAAkvZWRnZWNvbG9yIHtub3Bjb2xvcn0gZGVmAAkvZ3JhcGhjb2xvciB7bm9wY29sb3J9IGRlZgAvb25sYXllciB7IGN1cmxheWVyIG5lIHtpbnZpc30gaWYgfSBkZWYAL29ubGF5ZXJzIHsACS9teXVwcGVyIGV4Y2ggZGVmAAkvbXlsb3dlciBleGNoIGRlZgAJY3VybGF5ZXIgbXlsb3dlciBsdAAJY3VybGF5ZXIgbXl1cHBlciBndAAJb3IACXtpbnZpc30gaWYAL2N1cmxheWVyIDAgZGVmACUlRW5kUmVzb3VyY2UAJSVFbmRQcm9sb2cAJSVCZWdpblNldHVwADE0IGRlZmF1bHQtZm9udC1mYW1pbHkgc2V0X2ZvbnQAJSAvYXJyb3dsZW5ndGggMTAgZGVmACUgL2Fycm93d2lkdGggNSBkZWYAJSBtYWtlIHN1cmUgcGRmbWFyayBpcyBoYXJtbGVzcyBmb3IgUFMtaW50ZXJwcmV0ZXJzIG90aGVyIHRoYW4gRGlzdGlsbGVyAC9wZGZtYXJrIHdoZXJlIHtwb3B9IHt1c2VyZGljdCAvcGRmbWFyayAvY2xlYXJ0b21hcmsgbG9hZCBwdXR9IGlmZWxzZQAlIG1ha2UgJzw8JyBhbmQgJz4+JyBzYWZlIG9uIFBTIExldmVsIDEgZGV2aWNlcwAvbGFuZ3VhZ2VsZXZlbCB3aGVyZSB7cG9wIGxhbmd1YWdlbGV2ZWx9ezF9IGlmZWxzZQAyIGx0IHsAICAgIHVzZXJkaWN0ICg8PCkgY3ZuIChbKSBjdm4gbG9hZCBwdXQAICAgIHVzZXJkaWN0ICg+PikgY3ZuIChbKSBjdm4gbG9hZCBwdXQAfSBpZgAlJUVuZFNldHVwACUlVHJhaWxlcgoAJSUlJVBhZ2VzOiAlZAoAZW5kCnJlc3RvcmUKACUlRU9GCgAlIVBTLUFkb2JlLTMuMAAgRVBTRi0zLjAKACUlJSVDcmVhdG9yOiAlcyB2ZXJzaW9uICVzICglcykKAHBzMjpwcwA8IS0tIAA8cG9seWxpbmUAIHBvaW50cz0iACIvPgoAIGZpbGw9IgB1cmwoI2xfJWQpAHVybCgjcl8lZCkAIiBmaWxsLW9wYWNpdHk9IiVmACIgc3Ryb2tlPSIAIiBzdHJva2Utd2lkdGg9IgAiIHN0cm9rZS1kYXNoYXJyYXk9IiVzADUsMgAxLDUAIiBzdHJva2Utb3BhY2l0eT0iJWYAZ3ZyZW5kZXJfY29yZV9zdmcuYwBzdmdfcHJpbnRfY29sb3IAPHBhdGgAIGlkPSIAX3AiIAAgZD0iACVjADxkZWZzPgo8cmFkaWFsR3JhZGllbnQgaWQ9InJfJWQiIGN4PSI1MCUlIiBjeT0iNTAlJSIgcj0iNzUlJSIgZng9IiVkJSUiIGZ5PSIlZCUlIj4KADxzdG9wIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6ADtzdG9wLW9wYWNpdHk6ADEuADsiLz4KADxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6ADsiLz4KPC9yYWRpYWxHcmFkaWVudD4KPC9kZWZzPgoAPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0ibF8lZCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIAB4MT0iACIgeTE9IgAiIHgyPSIAIiB5Mj0iACIgPgoAPHN0b3Agb2Zmc2V0PSIlLjAzZiIgc3R5bGU9InN0b3AtY29sb3I6ADsiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgoAPHBvbHlnb24APGVsbGlwc2UAIGN4PSIAIiBjeT0iACIgcng9IgAiIHJ5PSIAPHRleHQAIHRleHQtYW5jaG9yPSJzdGFydCIAIHRleHQtYW5jaG9yPSJlbmQiACB0ZXh0LWFuY2hvcj0ibWlkZGxlIgAgeD0iACIgeT0iACBmb250LWZhbWlseT0iJXMALCVzACBmb250LXdlaWdodD0iJXMiACBmb250LXN0cmV0Y2g9IiVzIgAgZm9udC1zdHlsZT0iJXMiACBmb250LWZhbWlseT0iJXMiACBmb250LXdlaWdodD0iYm9sZCIAIGZvbnQtc3R5bGU9Iml0YWxpYyIAIHRleHQtZGVjb3JhdGlvbj0iACVzb3ZlcmxpbmUAJXNsaW5lLXRocm91Z2gAIGJhc2VsaW5lLXNoaWZ0PSJzdXBlciIAIGJhc2VsaW5lLXNoaWZ0PSJzdWIiACBmb250LXNpemU9IiUuMmYiACBmaWxsPSIlcyIAIGZpbGw9IiMlMDJ4JTAyeCUwMngiAHN2Z190ZXh0c3BhbgA+ADx0ZXh0UGF0aCB4bGluazpocmVmPSIjJXNfcCIgc3RhcnRPZmZzZXQ9IjUwJSUiPgA8dHNwYW4geD0iMCIgZHk9IgAiPgA8L3RzcGFuPjwvdGV4dFBhdGg+ADwvdGV4dD4KADwvZz4KADxnACBpZD0iYV8AIHhsaW5rOmhyZWY9IgAgeGxpbms6dGl0bGU9IgAgdGFyZ2V0PSIAPHRpdGxlPgA8L3RpdGxlPgoAPGcgaWQ9IgBfJXMAIiBjbGFzcz0iJXMAY2xhc3MAIHRyYW5zZm9ybT0ic2NhbGUoACkgcm90YXRlKCVkKSB0cmFuc2xhdGUoACkiPgoAPC9zdmc+CgA8IS0tACBQYWdlczogJWQgLS0+CgA8c3ZnIHdpZHRoPSIlZHB0IiBoZWlnaHQ9IiVkcHQiCgAgdmlld0JveD0iJS4yZiAlLjJmICUuMmYgJS4yZiIAIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIAIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgA8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KAHN0eWxlc2hlZXQAPD94bWwtc3R5bGVzaGVldCBocmVmPSIAIiB0eXBlPSJ0ZXh0L2NzcyI/PgoAPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIgoAICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgoAPCEtLSBHZW5lcmF0ZWQgYnkgAGRhcmtibHVlAGRhcmtjeWFuAGRhcmtncmF5AGRhcmtncmV5AGRhcmttYWdlbnRhAGRhcmtyZWQAbGlnaHRncmVlbgAjIAAgY3JlYXRlIGxpbmUgACAtZmlsbCAAIC1kYXNoIDUAIC1kYXNoIDIAZ3ZyZW5kZXJfY29yZV90ay5jAHRrZ2VuX3ByaW50X3RhZ3MAZ3JhcGggbGFiZWwAIC10YWdzIHslZCVzJXB9AHRrZ2VuX3ByaW50X2NvbG9yACRjACAtd2lkdGggACAtc21vb3RoIGJlemllciAAIGNyZWF0ZSBwb2x5Z29uIAAgLW91dGxpbmUgACBjcmVhdGUgb3ZhbCAAIGNyZWF0ZSB0ZXh0IAAgLXRleHQgewB9ACAtZm9udCB7ACAlZH0AIC1hbmNob3IgdwAgLWFuY2hvciBlACMAIFRpdGxlOiAAIFBhZ2VzOiAlZAoAIyBHZW5lcmF0ZWQgYnkgACkKAHRrAHRrOnRrACAgICAgIDwhLS0gACAtLT4KAEVycm9yIGR1cmluZyBjb252ZXJzaW9uIHRvICJVVEYtOCIuICBRdWl0aW5nLgoAIDx2OnNoYXBlIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgACB3aWR0aDogJWQ7IGhlaWdodDogJWQiIGZpbGxlZD0iZmFsc2UiPgA8djpwYXRoIHY9IgAgbSAAJS4wZiwlLjBmIAAgbCAAIGUgACIvPgA8L3Y6c2hhcGU+CgA8djpzdHJva2UgY29sb3I9IgAiIHdlaWdodD0iJS4wZnB0ACIgZGFzaHN0eWxlPSJkYXNoACIgZGFzaHN0eWxlPSJkb3QAIiAvPgAjJTAyeCUwMnglMDJ4AGd2cmVuZGVyX2NvcmVfdm1sLmMAdm1sX3ByaW50X2NvbG9yACB3aWR0aDogJWQ7IGhlaWdodDogJWQiACA+ADx2OnBhdGggIHY9IgAvPjwvdjpzaGFwZT4KAG0gACVzJS4wZiwlLjBmIABjIAAgZmlsbGVkPSJ0cnVlIiBmaWxsY29sb3I9IgAiIAAgZmlsbGVkPSJmYWxzZSIgACUuMGYgJS4wZiAAbCAAeCBlICIvPgAgIDx2Om92YWwgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlOwAgbGVmdDogJS4yZjsgdG9wOiAlLjJmOwAgd2lkdGg6ICUuMmY7IGhlaWdodDogJS4yZiIAPC92Om92YWw+CgA8djpyZWN0IHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgACBzdHJva2VkPSJmYWxzZSIgZmlsbGVkPSJmYWxzZSI+CgA8djp0ZXh0Ym94IGluc2V0PSIwLDAsMCwwIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHYtdGV4dC13cmFwcGluZzonZmFsc2UnO3BhZGRpbmc6JzAnOwBmb250LWZhbWlseTogJyVzJzsAZm9udC13ZWlnaHQ6ICVzOwBmb250LXN0cmV0Y2g6ICVzOwBmb250LXN0eWxlOiAlczsAIGZvbnQtc2l6ZTogJS4yZnB0OwBjb2xvcjolczsAY29sb3I6IyUwMnglMDJ4JTAyeDsAdm1sX3RleHRzcGFuACI+PGNlbnRlcj4APC9jZW50ZXI+PC92OnRleHRib3g+CgA8L3Y6cmVjdD4KADwvYT4KADxhACBocmVmPSIlcyIAIHRpdGxlPSIlcyIAIHRhcmdldD0iJXMiAD4KADwvdjpncm91cD4KADwvRElWPgoAPERJViBpZD0nX1ZNTDJfJyBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7dmlzaWJpbGl0eTpoaWRkZW4iPgoAPCEtLSBpbnNlcnQgYW55IG90aGVyIGh0bWwgY29udGVudCBoZXJlIC0tPgoAPERJViBpZD0nX25vdFZNTDFfJyBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7Ij4KADwhLS0gdGhpcyBzaG91bGQgb25seSBkaXNwbGF5IG9uIE5PTi1JRSBicm93c2VycyAtLT4KADxIMj5Tb3JyeSwgdGhpcyBkaWFncmFtIHdpbGwgb25seSBkaXNwbGF5IGNvcnJlY3RseSBvbiBJbnRlcm5ldCBFeHBsb3JlciA1IChhbmQgdXApIGJyb3dzZXJzLjwvSDI+CgA8RElWIGlkPSdfbm90Vk1MMl8nIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTsiPgoAPCEtLSBpbnNlcnQgYW55IG90aGVyIE5PTi1JRSBodG1sIGNvbnRlbnQgaGVyZSAtLT4KADwvQk9EWT4KPC9IVE1MPgoAPEhFQUQ+ADxNRVRBIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ij4KADxUSVRMRT4APC9USVRMRT4APCEtLSBQYWdlczogJWQgLS0+CgAgICA8U0NSSVBUIExBTkdVQUdFPSdKYXZhc2NyaXB0Jz4KACAgIGZ1bmN0aW9uIGJyb3dzZXJjaGVjaygpCgAgICB7CgAgICAgICB2YXIgdWEgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudAoAICAgICAgdmFyIG1zaWUgPSB1YS5pbmRleE9mICggJ01TSUUgJyApCgAgICAgICB2YXIgaWV2ZXJzOwoAICAgICAgdmFyIGl0ZW07CgAgICAgICB2YXIgVk1MeWVzPW5ldyBBcnJheSgnX1ZNTDFfJywnX1ZNTDJfJyk7CgAgICAgICB2YXIgVk1Mbm89bmV3IEFycmF5KCdfbm90Vk1MMV8nLCdfbm90Vk1MMl8nKTsKACAgICAgIGlmICggbXNpZSA+IDAgKXsgICAgICAvLyBJZiBJbnRlcm5ldCBFeHBsb3JlciwgcmV0dXJuIHZlcnNpb24gbnVtYmVyCgAgICAgICAgICBpZXZlcnM9IHBhcnNlSW50ICh1YS5zdWJzdHJpbmcgKG1zaWUrNSwgdWEuaW5kZXhPZiAoJy4nLCBtc2llICkpKQoAICAgICAgfQoAICAgICAgaWYgKGlldmVycz49NSl7CgAgICAgICAgZm9yICh4IGluIFZNTHllcyl7CgAgICAgICAgICBpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoVk1MeWVzW3hdKTsKACAgICAgICAgIGlmIChpdGVtKSB7CgAgICAgICAgICAgIGl0ZW0uc3R5bGUudmlzaWJpbGl0eT0ndmlzaWJsZSc7CgAgICAgICAgICB9CgAgICAgICAgfQoAICAgICAgIGZvciAoeCBpbiBWTUxubyl7CgAgICAgICAgICBpdGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoVk1Mbm9beF0pOwoAICAgICAgICAgICBpdGVtLnN0eWxlLnZpc2liaWxpdHk9J2hpZGRlbic7CgAgICAgIH1lbHNlewoAICAgICB9CgAgICB9CgAgICA8L1NDUklQVD4KADwvSEVBRD4APEJPRFkgb25sb2FkPSdicm93c2VyY2hlY2soKTsnPgoAPERJViBpZD0nX1ZNTDFfJyBzdHlsZT0icG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5lOyB2aXNpYmlsaXR5OmhpZGRlbgAgd2lkdGg6ICVkcHQ7IGhlaWdodDogJWRwdCI+CgA8U1RZTEU+CgB2XDoqIHsgYmVoYXZpb3I6IHVybCgjZGVmYXVsdCNWTUwpO2Rpc3BsYXk6aW5saW5lLWJsb2NrfQoAPC9TVFlMRT4KADx4bWw6bmFtZXNwYWNlIG5zPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOnZtbCIgcHJlZml4PSJ2IiAvPgoAIDx2Omdyb3VwIHN0eWxlPSJwb3NpdGlvbjpyZWxhdGl2ZTsgACB3aWR0aDogJWRwdDsgaGVpZ2h0OiAlZHB0IgAgY29vcmRvcmlnaW49IjAsMCIgY29vcmRzaXplPSIlZCwlZCIgPgA8SFRNTD4KAAo8IS0tIEdlbmVyYXRlZCBieSAAIHZlcnNpb24gACAoACkKLS0+CgBhcXVhAGZ1Y2hzaWEAbGltZQBvbGl2ZQB0ZWFsAHZtbAB2bWw6dm1sAC8vKioqIGNvbW1lbnQ6ICVzCgAvLyoqKiBwb2x5bGluZQoAc2NhbGUgICAgPCU5LjNmLCAlOS4zZiwgJTkuM2Y+CgByb3RhdGUgICA8JTkuM2YsICU5LjNmLCAlOS4zZj4KAHRyYW5zbGF0ZTwlOS4zZiwgJTkuM2YsICU5LjNmPgoAc3BoZXJlX3N3ZWVwIHsKICAgICVzCiAgICAlZCwKAGxpbmVhcl9zcGxpbmUAPCU5LjNmLCAlOS4zZiwgJTkuM2Y+LCAlLjNmCgAlcyAgICAlcwAgICAgdG9sZXJhbmNlIDAuMDEKICAgICVzICAgICVzICAgICVzICAgICVzfQoAJXMlcwAlcyB0cmFuc21pdCAlLjNmAFJlZABHcmVlbgBCbHVlAHJnYjwlOS4zZiwgJTkuM2YsICU5LjNmPiB0cmFuc21pdCAlLjNmAG9vcHMsIGludGVybmFsIGVycm9yOiB1bmhhbmRsZWQgY29sb3IgdHlwZT0lZCAlcwoAZ3ZyZW5kZXJfY29yZV9wb3YuYwBwb3ZfY29sb3JfYXNfc3RyAHBpZ21lbnQgeyBjb2xvciAlcyB9CgBwb3YgcmVuZGVyZXI6ZWwgLSAlcwoALy8qKiogYmV6aWVyCgBiX3NwbGluZQAgICAgICAgIHRvbGVyYW5jZSAwLjAxCiAgICAlcyAgICAlcyAgICAlcyAgICAlc30KAC8vKioqIHBvbHlnb24KACAgICB0b2xlcmFuY2UgMC4xCiAgICAlcyAgICAlcyAgICAlcyAgICAlc30KAHBvbHlnb24geyAlZCwKADwlOS4zZiwgJTkuM2YsICU5LjNmPgAlcwogICAgJXMACiAgICAlcyAgICAlcyAgICAlcyAgICAlc30KAC8vKioqIGVsbGlwc2UKAHRvcnVzIHsgJS4zZiwgJS4zZgogICAgJXMgICAgJXMgICAgJXMgICAgJXN9CgBzcGhlcmUgezwlOS4zZiwgJTkuM2YsICU5LjNmPiwgMS4wCiAgICAlcyAgICAlcyAgICAlcyAgICAlc30KAC8vKioqIHRleHRzcGFuOiAlcywgZm9udHNpemUgPSAlLjNmLCBmb250bmFtZSA9ICVzCgBzY2FsZSAlLjNmCgB0ZXh0IHsKICAgIHR0ZiAiJXMiLAogICAgIiVzIiwgJS4zZiwgJS4zZgogICAgJXMgICAgJXMgICAgJXMgICAgJXMgICAgJXN9CgAgICAgbm9fc2hhZG93CgAvLyoqKiBlbmRfZWRnZQoALy8qKiogYmVnaW5fZWRnZQoALy8qKiogZW5kX25vZGUKAC8vKioqIGJlZ2luX25vZGU6ICVzCgAvLyoqKiBlbmRfY2x1c3RlcgoALy8qKiogYmVnaW5fY2x1c3RlcgoALy8qKiogZW5kX3BhZ2UKAC8vKioqIGJlZ2luX3BhZ2UKAC8vKioqIGVuZF9sYXllcgoALy8qKiogYmVnaW5fbGF5ZXI6ICVzLCAlZC8lZAoALy8qKiogZW5kX2dyYXBoCgAvLyoqKiBiZWdpbl9ncmFwaCAlcwoAY2FtZXJhIHsgbG9jYXRpb24gPCUuM2YgLCAlLjNmICwgJS4zZj4KICAgICAgICAgbG9va19hdCAgPCUuM2YgLCAlLjNmICwgJS4zZj4KICAgICAgICAgcmlnaHQgeCAqIGltYWdlX3dpZHRoIC8gaW1hZ2VfaGVpZ2h0CiAgICAgICAgIGFuZ2xlICUuM2YKfQoALy9za3kKcGxhbmUgeyA8MCwgMSwgMD4sIDEgaG9sbG93CiAgICB0ZXh0dXJlIHsKICAgICAgICBwaWdtZW50IHsgYm96byB0dXJidWxlbmNlIDAuOTUKICAgICAgICAgICAgY29sb3JfbWFwIHsKICAgICAgICAgICAgICAgIFswLjAwIHJnYiA8MC4wNSwgMC4yMCwgMC41MD5dCiAgICAgICAgICAgICAgICBbMC41MCByZ2IgPDAuMDUsIDAuMjAsIDAuNTA+XQogICAgICAgICAgICAgICAgWzAuNzUgcmdiIDwxLjAwLCAxLjAwLCAxLjAwPl0KICAgICAgICAgICAgICAgIFswLjc1IHJnYiA8MC4yNSwgMC4yNSwgMC4yNT5dCiAgICAgICAgICAgICAgICBbMS4wMCByZ2IgPDAuNTAsIDAuNTAsIDAuNTA+XQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNjYWxlIDwxLjAwLCAxLjAwLCAxLjUwPiAqIDIuNTAKICAgICAgICAgICAgdHJhbnNsYXRlIDwwLjAwLCAwLjAwLCAwLjAwPgogICAgICAgIH0KICAgICAgICBmaW5pc2ggeyBhbWJpZW50IDEgZGlmZnVzZSAwIH0KICAgIH0KICAgIHNjYWxlIDEwMDAwCn0KLy9taXN0CmZvZyB7IGZvZ190eXBlIDIKICAgIGRpc3RhbmNlIDUwCiAgICBjb2xvciByZ2IgPDEuMDAsIDEuMDAsIDEuMDA+ICogMC43NQogICAgZm9nX29mZnNldCAwLjEwCiAgICBmb2dfYWx0IDEuNTAKICAgIHR1cmJ1bGVuY2UgMS43NQp9Ci8vZ25kCnBsYW5lIHsgPDAuMDAsIDEuMDAsIDAuMDA+LCAwCiAgICB0ZXh0dXJlIHsKICAgICAgICBwaWdtZW50eyBjb2xvciByZ2IgPDAuMjUsIDAuNDUsIDAuMDA+IH0KICAgICAgICBub3JtYWwgeyBidW1wcyAwLjc1IHNjYWxlIDAuMDEgfQogICAgICAgIGZpbmlzaCB7IHBob25nIDAuMTAgfQogICAgfQp9CgBsaWdodF9zb3VyY2UgeyA8MTUwMCwzMDAwLC0yNTAwPiBjb2xvciBXaGl0ZSB9CgAjdmVyc2lvbiAzLjY7CgBnbG9iYWxfc2V0dGluZ3MgeyBhc3N1bWVkX2dhbW1hIDEuMCB9CgAjZGVmYXVsdCB7IGZpbmlzaCB7IGFtYmllbnQgMC4xIGRpZmZ1c2UgMC45IH0gfQoAI2luY2x1ZGUgImNvbG9ycy5pbmMiCiNpbmNsdWRlICJ0ZXh0dXJlcy5pbmMiCiNpbmNsdWRlICJzaGFwZXMuaW5jIgoAI2RlY2xhcmUgJXMgPSAlczsKAEJsYWNrAFdoaXRlAGJha2Vyc2Nob2MAYnJhc3MAYnJpZ2h0Z29sZABicm9uemUAYnJvbnplMgBjbGVhcgBjb29sY29wcGVyAGNvcHBlcgBkYXJrYnJvd24AZGFya3B1cnBsZQBkYXJrdGFuAGRhcmt3b29kAGRrZ3JlZW5jb3BwZXIAZHVzdHlyb3NlAGZlbGRzcGFyAGZsZXNoAGdyYXkwNQBncmVlbmNvcHBlcgBodW50ZXJzZ3JlZW4AbGlnaHRfcHVycGxlAGxpZ2h0d29vZABtYW5kYXJpbm9yYW5nZQBtZWRpdW1mb3Jlc3RncmVlbgBtZWRpdW1nb2xkZW5yb2QAbWVkaXVtd29vZABtZWRfcHVycGxlAG1pY2EAbmVvbmJsdWUAbmVvbnBpbmsAbmV3bWlkbmlnaHRibHVlAG5ld3RhbgBvbGRnb2xkAHF1YXJ0egByaWNoYmx1ZQBzY2FybGV0AHNlbWlTd2VldENob2MAc2lsdmVyAHNwaWN5cGluawBzdW1tZXJza3kAdmVyeWRhcmticm93bgB2ZXJ5X2xpZ2h0X3B1cnBsZQBwb3YAcG92OnBvdgAlcyAlcwoALlwiIAAgJWQgJWQAICVzCgAgJWQAZmlsbCAAZWxsaXBzZSBhdHRycyVkICVzd2lkICUuNWYgaHQgJS41ZiBhdCAoJS41ZiwlLjVmKTsKAC5mdCAlcwoALnBzICVkKlxuKFNGdS8lLjBmdQoAIiVzIiBhdCAoJS41ZiwlLjVmKTsKACUwM28AJXMlcyBpcyBub3QgYSB0cm9mZiBmb250CgBkb3QgcGljIHBsdWdpbjogAFIAXQouUEUKAC5QUyAlLjVmICUuNWYKACVzIHRvIGNoYW5nZSBkcmF3aW5nIHNpemUsIG11bHRpcGx5IHRoZSB3aWR0aCBhbmQgaGVpZ2h0IG9uIHRoZSAuUFMgbGluZSBhYm92ZSBhbmQgdGhlIG51bWJlciBvbiB0aGUgdHdvIGxpbmVzIGJlbG93IChyb3VuZGVkIHRvIHRoZSBuZWFyZXN0IGludGVnZXIpIGJ5IGEgc2NhbGUgZmFjdG9yCgAubnIgU0YgJS4wZgpzY2FsZXRoaWNrbmVzcyA9ICUuMGYKACVzIGRvbid0IGNoYW5nZSBhbnl0aGluZyBiZWxvdyB0aGlzIGxpbmUgaW4gdGhpcyBkcmF3aW5nCgAlcyBub24tZmF0YWwgcnVuLXRpbWUgcGljIHZlcnNpb24gZGV0ZXJtaW5hdGlvbiwgdmVyc2lvbiAyCgBib3hyYWQ9Mi4wICVzIHdpbGwgYmUgcmVzZXQgdG8gMC4wIGJ5IGdwaWMgb25seQoAc2NhbGU9MS4wICVzIHJlcXVpcmVkIGZvciBjb21wYXJpc29ucwoAJXMgYm94cmFkIGlzIG5vdyAwLjAgaW4gZ3BpYywgZWxzZSBpdCByZW1haW5zIDIuMAoAJXMgZGFzaHdpZCBpcyAwLjEgaW4gMTB0aCBFZGl0aW9uLCAwLjA1IGluIERXQiAyIGFuZCBpbiBncGljCgAlcyBmaWxsdmFsIGlzIDAuMyBpbiAxMHRoIEVkaXRpb24gKGZpbGwgMCBtZWFucyBibGFjayksIDAuNSBpbiBncGljIChmaWxsIDAgbWVhbnMgd2hpdGUpLCB1bmRlZmluZWQgaW4gRFdCIDIKACVzIGZpbGwgaGFzIG5vIG1lYW5pbmcgaW4gRFdCIDIsIGdwaWMgY2FuIHVzZSBmaWxsIG9yIGZpbGxlZCwgMTB0aCBFZGl0aW9uIHVzZXMgZmlsbCBvbmx5CgAlcyBEV0IgMiBkb2Vzbid0IHVzZSBmaWxsIGFuZCBkb2Vzbid0IGRlZmluZSBmaWxsdmFsCgAlcyByZXNldCB3b3JrcyBpbiBncGljIGFuZCAxMHRoIGVkaXRpb24sIGJ1dCBpc24ndCBkZWZpbmVkIGluIERXQiAyCgAlcyBEV0IgMiBjb21wYXRpYmlsaXR5IGRlZmluaXRpb25zCgBpZiBib3hyYWQgPiAxLjAgJiYgZGFzaHdpZCA8IDAuMDc1IHRoZW4gWAoJZmlsbHZhbCA9IDE7CglkZWZpbmUgZmlsbCBZIFk7CglkZWZpbmUgc29saWQgWSBZOwoJZGVmaW5lIHJlc2V0IFkgc2NhbGU9MS4wIFk7ClgKAHJlc2V0ICVzIHNldCB0byBrbm93biBzdGF0ZQoAJXMgR05VIHBpYyB2cy4gMTB0aCBFZGl0aW9uIGRcKGUndGVudGUKAGlmIGZpbGx2YWwgPiAwLjQgdGhlbiBYCglkZWZpbmUgc2V0ZmlsbHZhbCBZIGZpbGx2YWwgPSAxIC0gWTsKCWRlZmluZSBib2xkIFkgdGhpY2tuZXNzIDIgWTsKAAklcyBpZiB5b3UgdXNlIGdwaWMgYW5kIGl0IGJhcmZzIG9uIGVuY291bnRlcmluZyAic29saWQiLAoACSVzCWluc3RhbGwgYSBtb3JlIHJlY2VudCB2ZXJzaW9uIG9mIGdwaWMgb3Igc3dpdGNoIHRvIERXQiBvciAxMHRoIEVkaXRpb24gcGljOwoACSVzCXNvcnJ5LCB0aGUgZ3JvZmYgZm9sa3MgY2hhbmdlZCBncGljOyBzZW5kIGFueSBjb21wbGFpbnQgdG8gdGhlbTsKAFggZWxzZSBaCglkZWZpbmUgc2V0ZmlsbHZhbCBZIGZpbGx2YWwgPSBZOwoJZGVmaW5lIGJvbGQgWSBZOwoJZGVmaW5lIGZpbGxlZCBZIGZpbGwgWTsKWgoAJXMgYXJyb3doZWFkIGhhcyBubyBtZWFuaW5nIGluIERXQiAyLCBhcnJvd2hlYWQgPSA3IG1ha2VzIGZpbGxlZCBhcnJvd2hlYWRzIGluIGdwaWMgYW5kIGluIDEwdGggRWRpdGlvbgoAJXMgYXJyb3doZWFkIGlzIHVuZGVmaW5lZCBpbiBEV0IgMiwgaW5pdGlhbGx5IDEgaW4gZ3BpYywgMiBpbiAxMHRoIEVkaXRpb24KAGFycm93aGVhZCA9IDcgJXMgbm90IHVzZWQgYnkgZ3JhcGh2aXoKACVzIEdOVSBwaWMgc3VwcG9ydHMgYSBib3hyYWQgdmFyaWFibGUgdG8gZHJhdyBib3hlcyB3aXRoIHJvdW5kZWQgY29ybmVyczsgRFdCIGFuZCAxMHRoIEVkLiBkbyBub3QKAGJveHJhZCA9IDAgJXMgbm8gcm91bmRlZCBjb3JuZXJzIGluIGdyYXBodml6CgAlcyBHTlUgcGljIHN1cHBvcnRzIGEgbGluZXRoaWNrIHZhcmlhYmxlIHRvIHNldCBsaW5lIHRoaWNrbmVzczsgRFdCIGFuZCAxMHRoIEVkLiBkbyBub3QKAGxpbmV0aGljayA9IDA7IG9sZGxpbmV0aGljayA9IGxpbmV0aGljawoAJXMgLlBTIHcvbyBhcmdzIGNhdXNlcyBHTlUgcGljIHRvIHNjYWxlIGRyYXdpbmcgdG8gZml0IDguNXgxMSBwYXBlcjsgRFdCIGRvZXMgbm90CgAlcyBtYXhwc2h0IGFuZCBtYXhwc3dpZCBoYXZlIG5vIG1lYW5pbmcgaW4gRFdCIDIuMCwgc2V0IHBhZ2UgYm91bmRhcmllcyBpbiBncGljIGFuZCBpbiAxMHRoIEVkaXRpb24KACVzIG1heHBzaHQgYW5kIG1heHBzd2lkIGFyZSBwcmVkZWZpbmVkIHRvIDExLjAgYW5kIDguNSBpbiBncGljCgBtYXhwc2h0ID0gJWYKbWF4cHN3aWQgPSAlZgoARG90OiBbCgBkZWZpbmUgYXR0cnMwICUlICUlOyBkZWZpbmUgdW5maWxsZWQgJSUgJSU7IGRlZmluZSByb3VuZGVkICUlICUlOyBkZWZpbmUgZGlhZ29uYWxzICUlICUlCgAlcyVzIHVuc3VwcG9ydGVkCgByb3RhdGlvbgAlcyByZXN0b3JlIHBvaW50IHNpemUgYW5kIGZvbnQKLnBzIFxuKC5TCi5mdCBcbihERgoAJXMgQ3JlYXRvcjogJXMgdmVyc2lvbiAlcyAoJXMpCgAlcyBUaXRsZTogJXMKACVzIHNhdmUgcG9pbnQgc2l6ZSBhbmQgZm9udAoubnIgLlMgXG4oLnMKLm5yIERGIFxuKC5mCgBwaWMAcGljOnBpYwBwbmc6c3ZnAGdpZjpzdmcAanBlZzpzdmcAanBlOnN2ZwBqcGc6c3ZnAHBuZzpmaWcAZ2lmOmZpZwBqcGVnOmZpZwBqcGU6ZmlnAGpwZzpmaWcAcG5nOnZybWwAZ2lmOnZybWwAanBlZzp2cm1sAGpwZTp2cm1sAGpwZzp2cm1sAGVwczpwcwBwczpwcwAobGliKTpwcwBwbmc6bWFwAGdpZjptYXAAanBlZzptYXAAanBlOm1hcABqcGc6bWFwAHBzOm1hcABlcHM6bWFwAHN2ZzptYXAAcG5nOmRvdABnaWY6ZG90AGpwZWc6ZG90AGpwZTpkb3QAanBnOmRvdABwczpkb3QAZXBzOmRvdABzdmc6ZG90AHBuZzp4ZG90AGdpZjp4ZG90AGpwZWc6eGRvdABqcGU6eGRvdABqcGc6eGRvdABwczp4ZG90AGVwczp4ZG90AHN2Zzp4ZG90AHN2ZzpzdmcAcG5nOnZtbABnaWY6dm1sAGpwZWc6dm1sAGpwZTp2bWwAanBnOnZtbABnaWY6dGsAaW1hZ2UgY3JlYXRlIHBob3RvICJwaG90b18lcyIgLWZpbGUgIiVzIgoAJGMgY3JlYXRlIGltYWdlICUuMmYgJS4yZiAtaW1hZ2UgInBob3RvXyVzIgoAPHY6aW1hZ2Ugc3JjPSIlcyIgc3R5bGU9IiBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6JS4yZjsgaGVpZ2h0OiUuMmY7IGxlZnQ6JS4yZiA7IHRvcDolLjJmIgAgLz4KAGd2bG9hZGltYWdlX2NvcmUuYwBjb3JlX2xvYWRpbWFnZV9wc2xpYgBbIAAlZyAlZyAAXSAgJWQgdHJ1ZSAlcwoAXSAgJWQgZmFsc2UgJXMKAGNvcmVfbG9hZGltYWdlX3BzAGdzYXZlICVnICVnIHRyYW5zbGF0ZSBuZXdwYXRoCgB1c2VyX3NoYXBlXyVkCgBncmVzdG9yZQoAY29yZV9sb2FkaW1hZ2VfdnJtbABTaGFwZSB7CgAgIGFwcGVhcmFuY2UgQXBwZWFyYW5jZSB7CgAgICAgbWF0ZXJpYWwgTWF0ZXJpYWwgewoAICAgICAgYW1iaWVudEludGVuc2l0eSAwLjMzCgAgICAgICAgIGRpZmZ1c2VDb2xvciAxIDEgMQoAICAgIH0KACAgICB0ZXh0dXJlIEltYWdlVGV4dHVyZSB7IHVybCAiJXMiIH0KACAgfQoAY29yZV9sb2FkaW1hZ2VfZmlnACVkICVkICVkICVkICVkICVkICVkICVkICVkICUuMWYgJWQgJWQgJWQgJWQgJWQgJWQKICVkICVzCgAgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQKAGNvcmVfbG9hZGltYWdlX3N2ZwA8aW1hZ2UgeGxpbms6aHJlZj0iACIgd2lkdGg9IiVncHgiIGhlaWdodD0iJWdweCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgeD0iJWciIHk9IiVnIgAgdHJhbnNmb3JtPSJyb3RhdGUoJWQgJWcgJWcpIgAiIHdpZHRoPSIlZ3B4IiBoZWlnaHQ9IiVncHgiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaW5ZTWluIG1lZXQiIHg9IiVnIiB5PSIlZyIALz4KAGRvdF9sYXlvdXQAcGhhc2UAZG90IGRvZXMgbm90IHN1cHBvcnQgdGhlIGFzcGVjdCBhdHRyaWJ1dGUgZm9yIGRpc2Nvbm5lY3RlZCBncmFwaHMgb3IgZ3JhcGhzIHdpdGggY2x1c3RlcnMKAGNvbXBvdW5kAHYgPT0gbgBkb3Rpbml0LmMAcmVtb3ZlX2Zyb21fcmFuawBvcmRlcgBlZGdlIGxhYmVscyB3aXRoIHNwbGluZXM9Y3VydmVkIG5vdCBzdXBwb3J0ZWQgaW4gZG90IC0gdXNlIHhsYWJlbHMKAEVEX2xhYmVsKGZlKQBkb3RzcGxpbmVzLmMAX2RvdF9zcGxpbmVzAGZsYXQgZWRnZSBiZXR3ZWVuIGFkamFjZW50IG5vZGVzIG9uZSBvZiB3aGljaCBoYXMgYSByZWNvcmQgc2hhcGUgLSByZXBsYWNlIHJlY29yZHMgd2l0aCBIVE1MLWxpa2UgbGFiZWxzCgAgIEVkZ2UgJXMgJXMgJXMKAHh4eAAxMDAwMAB7JXN9AGF1eGcAbGFiZWxfZmxvYXQAZml4ZWQAKGwgPSBFRF9sYWJlbChmZSkpAHNldEVkZ2VMYWJlbFBvcwBlICE9IE5VTEwAZmFzdGdyLmMAZGVsZXRlX2Zhc3RfZWRnZQBuICE9IE5EX25leHQobikAZmFzdF9ub2RlAHUgIT0gdgBmYXN0X25vZGVhcHAATkRfbmV4dCh2KSA9PSBOVUxMAGZpbmRfZmFzdF9ub2RlKGcsIG4pAGRlbGV0ZV9mYXN0X25vZGUAZGVsZXRlX2ZsYXRfZWRnZQBtZXJnZV9vbmV3YXkgZ2xpdGNoCgBtZXJnZV9vbmV3YXkAc2FmZV9kZWxldGVfZmFzdF9lZGdlAGxnAGNvbXAAY250ID09IHN6AG1pbmNyb3NzLmMAZml4TGFiZWxPcmRlcgByZW1pbmNyb3NzAG1pbmNyb3NzICVzOiAlZCBjcm9zc2luZ3MsICUuMmYgc2Vjcy4KAHYAbmVpZ2hib3IAKHJ2ID09IDApIHx8IChORF9vcmRlcihydiktTkRfb3JkZXIodikpKmRpciA+IDAAY29uc3RyYWluaW5nX2ZsYXRfZWRnZShnLHYsZSkgPT0gRkFMU0UAZmxhdF9yZW9yZGVyAE5EX3JhbmsodikgPT0gcgBwb3N0b3JkZXIAZmxhdGluZGV4KGFnaGVhZChlKSkgPCBNLT5ucm93cwBmbGF0X3NlYXJjaABmbGF0aW5kZXgoYWd0YWlsKGUpKSA8IE0tPm5jb2xzAG91dABvcmRlcmluZyAnJXMnIG5vdCByZWNvZ25pemVkLgoAb3JkZXJpbmcgJyVzJyBub3QgcmVjb2duaXplZCBmb3Igbm9kZSAnJXMnLgoAbWVyZ2UyOiBncmFwaCAlcywgcmFuayAlZCBoYXMgb25seSAlZCA8ICVkIG5vZGVzCgBtaW5jcm9zczogcGFzcyAlZCBpdGVyICVkIHRyeWluZyAlZCBjdXJfY3Jvc3MgJWQgYmVzdF9jcm9zcyAlZAoATkRfb3JkZXIodikgPCBORF9vcmRlcih3KQBiYWxhbmNlAHRyYW5zcG9zZV9zdGVwAHN1cnByaXNlCgBpbnN0YWxsX2luX3JhbmssIGxpbmUgJWQ6ICVzICVzIHJhbmsgJWQgaSA9ICVkIGFuID0gMAoAR0RfcmFuayhnKVtyXS5uIDw9IEdEX3JhbmsoZylbcl0uYW4AaW5zdGFsbF9pbl9yYW5rAGluc3RhbGxfaW5fcmFuaywgbGluZSAlZDogTkRfb3JkZXIoJXMpIFslZF0gPiBHRF9yYW5rKFJvb3QpWyVkXS5hbiBbJWRdCgBpbnN0YWxsX2luX3JhbmssIGxpbmUgJWQ6IHJhbmsgJWQgbm90IGluIHJhbmsgcmFuZ2UgWyVkLCVkXQoAaW5zdGFsbF9pbl9yYW5rLCBsaW5lICVkOiBHRF9yYW5rKGcpWyVkXS52ICsgTkRfb3JkZXIoJXMpIFslZF0gPiBHRF9yYW5rKGcpWyVkXS5hdiArIEdEX3JhbmsoUm9vdClbJWRdLmFuIFslZF0KAF9uZXdfcmFuawBtY2xpbWl0AHJhbmsoZywgMiwgbnNpdGVyMihnKSkgPT0gMABwb3NpdGlvbi5jAGRvdF9wb3NpdGlvbgBBUj0lMC40bGYJIEFyZWE9ICUwLjRsZgkARHVtbXk9JWQKAEdvaW5nIHRvIGFwcGx5IGFub3RoZXIgZXhwYW5zaW9uLgoAbmV4dCNpdGVyPSVkCgBocABjb25uZWN0R3JhcGgARWRnZSBsZW5ndGggJWYgbGFyZ2VyIHRoYW4gbWF4aW11bSAldSBhbGxvd2VkLgpDaGVjayBmb3Igb3ZlcndpZGUgbm9kZShzKS4KAG5zbGltaXQAY29udGFpbl9ub2RlcyBjbHVzdCAlcyByYW5rICVkIG1pc3Npbmcgbm9kZQoAbnNsaW1pdDEAbmV3cmFuawBNYXhyYW5rID0gJWQsIG1pbnJhbmsgPSAlZAoAbGVhZGVyICE9IE5VTEwAcmFuay5jAGNsdXN0ZXJfbGVhZGVyAChORF9VRl9zaXplKG4pIDw9IDEpIHx8IChuID09IGxlYWRlcikAYWdoZWFkKGUpID09IFVGX2ZpbmQoYWdoZWFkKGUpKQBtaW5tYXhfZWRnZXMAYWd0YWlsKGUpID09IFVGX2ZpbmQoYWd0YWlsKGUpKQByYW5rAHNhbWUAbWluAHNvdXJjZQBtYXgAc2luawBsZXZlbCBhc3NpZ25tZW50IGNvbnN0cmFpbnRzAGxldmVsIGdyYXBoIHJlYwB/cm9vdAB/dG9wAH9ib3QAY29tcGFjdABfd2Vha18lZAByYW5raW5nOiBmYWlsdXJlIHRvIGNyZWF0ZSBzdHJvbmcgY29uc3RyYWludCBlZGdlIGJldHdlZW4gbm9kZXMgJXMgYW5kICVzCgAlcyBoYXMgdW5yZWNvZ25pemVkIHJhbms9JXMAbGV2ZWwgZWRnZSByZWMAbGV2ZWwgbm9kZSByZWMAc2FtZWhlYWQAc2FtZXRhaWwAdG9vIG1hbnkgKD4gJWQpIHNhbWV7aGVhZCx0YWlsfSBncm91cHMgZm9yIG5vZGUgJXMKAGNvbWJpQVIgPSAlbGYKACVsZiwlZAB0aGUgYXNwZWN0IGF0dHJpYnV0ZSBoYXMgYmVlbiBkaXNhYmxlZCBkdWUgdG8gaW1wbGVtZW50YXRpb24gZmxhd3MgLSBhdHRyaWJ1dGUgaWdub3JlZC4KAEVEX3RvX3ZpcnQoZSkgPT0gTlVMTABjbGFzczIuYwBtZXJnZV9jaGFpbgBFRF90b192aXJ0KG9yaWcpID09IE5VTEwAbWFrZV9jaGFpbgBFRF90b192aXJ0KG9yaWcpICE9IE5VTEwATkRfcmFuayhmcm9tKSA8IE5EX3JhbmsodG8pAGNsdXN0ZXIuYwBtYXBfcGF0aAAlcyB3YXMgYWxyZWFkeSBpbiBhIHJhbmtzZXQsIGRlbGV0ZWQgZnJvbSBjbHVzdGVyICVzCgBsaGVhZABsdGFpbAAlcyAtPiAlczogc3BsaW5lIHNpemUgPiAxIG5vdCBzdXBwb3J0ZWQKACVzIC0+ICVzOiBoZWFkIG5vdCBpbnNpZGUgaGVhZCBjbHVzdGVyICVzCgAlcyAtPiAlczogdGFpbCBpcyBpbnNpZGUgaGVhZCBjbHVzdGVyICVzCgBiZXotPnNmbGFnAGNvbXBvdW5kLmMAbWFrZUNvbXBvdW5kRWRnZQBiZXotPmVmbGFnACVzIC0+ICVzOiB0YWlsIG5vdCBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgAlcyAtPiAlczogaGVhZCBpcyBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgBzZWdtZW50IFslcywlc10gZG9lcyBub3QgaW50ZXJzZWN0IGJveCBsbD0lcyx1cj0lcwoAYm94SW50ZXJzZWN0ZgAoJS41ZywlLjVnKQBjbHVzdGVyIG5hbWVkICVzIG5vdCBmb3VuZAoAY29uY2VudHJhdGU9dHJ1ZSBtYXkgbm90IHdvcmsgY29ycmVjdGx5LgoAcmVidWlsdGRfdmxpc3RzOiByYW5rIGxlYWQgJXMgbm90IGluIG9yZGVyICVkIG9mIHJhbmsgJWQKAGRlZ2VuZXJhdGUgY29uY2VudHJhdGVkIHJhbmsgJXMsJWQKAE5EX2luKHJpZ2h0KS5zaXplICsgTkRfb3V0KHJpZ2h0KS5zaXplID09IDAAY29uYy5jAG1lcmdldmlydHVhbABkb3Q6IE91dCBvZiBtZW1vcnkKAE5EX291dCh2KS5zaXplID09IDIAZmxhdC5jAHNldGJvdW5kcwBHRF9taW5yYW5rKGcpID09IDAAYWJvbWluYXRpb24AbmVhdG9fbGF5b3V0AG5lYXRvAGZkcAB0d29waQBjaXJjbwBwYXRjaHdvcmsAb3NhZ2UAbm9wAG5vcDEAbm9wMgAlbGYsJWxmLCVsZiVjAG5vZGUgJXMsIHBvc2l0aW9uICVzLCBleHBlY3RlZCB0d28gZG91YmxlcwoAbm90cmFuc2xhdGUAbm9kZSAlcyBpbiBncmFwaCAlcyBoYXMgbm8gcG9zaXRpb24KAHMsJWxmLCVsZiVuACBlLCVsZiwlbGYlbgBwb3MgYXR0cmlidXRlIGZvciBlZGdlICglcywlcykgZG9lc24ndCBoYXZlIDNuKzEgcG9pbnRzCgAlbGYsJWxmJW4Ac3ludGF4IGVycm9yIGluIHBvcyBhdHRyaWJ1dGUgZm9yIGVkZ2UgKCVzLCVzKQoAJWxmLCVsZiwlbGYsJWxmAHN0YXJ0AHNlbGYAcmFuZG9tAG5vZGUgcG9zaXRpb25zIGFyZSBpZ25vcmVkIHVubGVzcyBzdGFydD1yYW5kb20KAGFzIHJlcXVpcmVkIGJ5IHRoZSAtbiBmbGFnCgBfbmVhdG9fY2MAZ3JhcGggJXMgaXMgZGlzY29ubmVjdGVkLiBIZW5jZSwgdGhlIGNpcmN1aXQgbW9kZWwKAEFsdGVybmF0aXZlbHksIGNvbnNpZGVyIHJ1bm5pbmcgbmVhdG8gdXNpbmcgLUdwYWNrPXRydWUgb3IgZGVjb21wb3NpbmcKAHRoZSBncmFwaCBpbnRvIGNvbm5lY3RlZCBjb21wb25lbnRzLgoAU29sdmluZyBtb2RlbCAlZCBpdGVyYXRpb25zICVkIHRvbCAlZgoATkRfaWQobnApID09IGkAbmVhdG9pbml0LmMAbWFrZUdyYXBoRGF0YQBmIDwgZ3JhcGhbal0ubmVkZ2VzAGRmc0N5Y2xlAG1vZGVsICVkIHNtYXJ0X2luaXQgJWQgc3RyZXNzd3QgJWQgaXRlcmF0aW9ucyAlZCB0b2wgJWYKAGNvbnZlcnQgZ3JhcGg6IABtYWpvcml6YXRpb24KACVkIG5vZGVzICUuMmYgc2VjCgBsZXZlbHNnYXAAbGF5b3V0IGFib3J0ZWQKAHN0cmVzc3d0ACVzIGF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIDEgb3IgMiAtIGlnbm9yaW5nCgBtb2RlbABjaXJjdWl0AHN1YnNldABzaG9ydHBhdGgAbWRzAGVkZ2VzIGluIGdyYXBoICVzIGhhdmUgbm8gbGVuIGF0dHJpYnV0ZS4gSGVuY2UsIHRoZSBtZHMgbW9kZWwKAGlzIGluYXBwcm9wcmlhdGUuIFJldmVydGluZyB0byB0aGUgc2hvcnRlc3QgcGF0aCBtb2RlbC4KAFVua25vd24gdmFsdWUgJXMgZm9yIGF0dHJpYnV0ZSAibW9kZWwiIGluIGdyYXBoICVzIC0gaWdub3JlZAoAbW9kZQBLSwBtYWpvcgBoaWVyAElsbGVnYWwgdmFsdWUgJXMgZm9yIGF0dHJpYnV0ZSAibW9kZSIgaW4gZ3JhcGggJXMgLSBpZ25vcmVkCgBkaW1lbgBtYWtlU3BsaW5lOiBmYWlsZWQgdG8gbWFrZSBzcGxpbmUgZWRnZSAoJXMsJXMpCgBzcGxpbmUgJXMgJXMKAGIgPT0gbgBuZWF0b3NwbGluZXMuYwBtYWtlX2JhcnJpZXJzAHRoZSBib3VuZGluZyBib3hlcyBvZiBzb21lIG5vZGVzIHRvdWNoIC0gZmFsbGluZyBiYWNrIHRvIHN0cmFpZ2h0IGxpbmUgZWRnZXMKAHNvbWUgbm9kZXMgd2l0aCBtYXJnaW4gKCUuMDJmLCUuMDJmKSB0b3VjaCAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgBwb2x5bGluZXMAbGluZSBzZWdtZW50cwBvcnRob2dvbmFsIGxpbmVzAENyZWF0aW5nIGVkZ2VzIHVzaW5nICVzCgBwb2x5bGluZSAlcyAlcwoAbWRzTW9kZWw6IGRlbHRhID0gJWYKAFNldHRpbmcgdXAgc3RyZXNzIGZ1bmN0aW9uAFNvbHZpbmcgbW9kZWw6IAAKZmluYWwgZSA9ICVmICVkIGl0ZXJhdGlvbnMgJS4yZiBzZWMKAERhbXBpbmcAZGVmYXVsdGRpc3QAIGluICVzIC0gc2V0dGluZyB0byAlLjAyZgoAYmFkIGVkZ2UgbGVuICIlcyIAU2V0dGluZyBpbml0aWFsIHBvc2l0aW9ucwoAc3RhcnQ9JXMgbm90IHN1cHBvcnRlZCB3aXRoIG1vZGU9c2VsZiAtIGlnbm9yZWQKAFNldHRpbmcgdXAgc3ByaW5nIG1vZGVsOiAAJS4yZiBzZWMKAApmaW5hbCBlID0gJWYAIQAgJWQlcyBpdGVyYXRpb25zICUuMmYgc2VjCgBNYXguIGl0ZXJhdGlvbnMgKCVkKSByZWFjaGVkIG9uIGdyYXBoICVzCgAlcyAlLjNmCgAlLjNmIABORF9oZWFwaW5kZXgodikgPCAwAHN0dWZmLmMAbmVhdG9fZW5xdWV1ZQBDYWxjdWxhdGluZyBzaG9ydGVzdCBwYXRoczogAHNwZWNpZmllZCByb290IG5vZGUgIiVzIiB3YXMgbm90IGZvdW5kLgBVc2luZyBkZWZhdWx0IGNhbGN1bGF0aW9uIGZvciByb290IG5vZGUKAHJlcG9zaXRpb24gJXMKACVzIDogJWYgJWYKACVzIDogJWYgJWYgJWYgJWYKACAgAEdyYXBoICVzIGhhcyBhcnJheSBwYWNraW5nIHdpdGggdXNlciB2YWx1ZXMgYnV0IG5vICJzb3J0diIgYXR0cmlidXRlcyBhcmUgZGVmaW5lZC4AbGVuAHBpbgBXYXJuaW5nOiBub2RlICVzLCBwb3NpdGlvbiAlcywgZXhwZWN0ZWQgdHdvIGZsb2F0cwoAY29vcmRzAGRpbQBsYXlvdXQgJXMKAGVuZCAlcwoAaWR4ID09IHN6AGxheW91dC5jAGV4cGFuZENsdXN0ZXIAaSA9PSBkZWcAZ2V0RWRnZUxpc3QAX2RnXyVkAGRlcml2ZSBncmFwaCAlcyBvZiAlcwoAbm9kZSAiJXMiIGlzIGNvbnRhaW5lZCBpbiB0d28gbm9uLWNvbXBhcmFibGUgY2x1c3RlcnMgIiVzIiBhbmQgIiVzIgoAX3BvcnRfJXNfJXNfJXNfJWxkAF9wb3J0XyVzXyglZClfKCVkKV8lbGQAJWxmLCVsZiwlbGYsJWxmJWMAZ3JhcGggJXMsIGNvb3JkICVzLCBleHBlY3RlZCBmb3VyIGRvdWJsZXMKAHNwbGluZXMgYW5kIGNsdXN0ZXIgZWRnZXMgbm90IHN1cHBvcnRlZCAtIHVzaW5nIGxpbmUgc2VnbWVudHMKAG1heGl0ZXIASwBUMABmZHAgZG9lcyBub3Qgc3VwcG9ydCBzdGFydD1zZWxmIC0gaWdub3JpbmcKAHhMYXlvdXQgADk6cHJpc20AdHJpZXMgPSAlZCwgbW9kZSA9ICVzCgBkZXJpdmVkAGluZm8Abm9ybWFsaXplAG92ZXJsYXAAT3ZlcmxhcCB2YWx1ZSAiJXMiIHVuc3VwcG9ydGVkIC0gaWdub3JlZAoAVW5yZWNvZ25pemVkIG92ZXJsYXAgdmFsdWUgIiVzIiAtIHVzaW5nIGZhbHNlCgBWb3Jvbm9pAG92ZXJsYXA6ICVzIHZhbHVlICVkIHNjYWxpbmcgJS4wNGYKAG92ZXJsYXBfc2NhbGluZwB2b3Jvbm9pAHNjYWxpbmcAdnBzYwBpcHNlcABvc2NhbGUAb2xkIHNjYWxpbmcAc2NhbGV4eQB4IGFuZCB5IHNjYWxpbmcAb3J0aG8Ab3J0aG9nb25hbCBjb25zdHJhaW50cwBvcnRob195eABvcnRob3h5AHh5IG9ydGhvZ29uYWwgY29uc3RyYWludHMAb3J0aG95eAB5eCBvcnRob2dvbmFsIGNvbnN0cmFpbnRzAHBvcnRobwBwc2V1ZG8tb3J0aG9nb25hbCBjb25zdHJhaW50cwBwb3J0aG9feXgAcG9ydGhveHkAeHkgcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAcG9ydGhveXgAeXggcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAcHJpc20AQWRqdXN0aW5nICVzIHVzaW5nICVzCgBVbmhhbmRsZWQgYWRqdXN0IG9wdGlvbiAlcwoATnVtYmVyIG9mIGl0ZXJhdGlvbnMgPSAlZAoATnVtYmVyIG9mIGluY3JlYXNlcyA9ICVkCgBvdmVybGFwIFslZF0gOiAlZAoAdm9yb19tYXJnaW4Ac2VwAGVzZXAATm9kZSBzZXBhcmF0aW9uOiBhZGQ9JWQgKCVmLCVmKQoAJWYsJWYAc2NhbGUgPSAoJS4wM2YsJS4wM2YpCgBFZGdlIHNlcGFyYXRpb246IGFkZD0lZCAoJWYsJWYpCgBDYWxjdWxhdGluZyBjaXJjdWl0IG1vZGVsAGNvbmp1Z2F0ZV9ncmFkaWVudDogdW5leHBlY3RlZCBsZW5ndGggMCB2ZWN0b3IKAENhbGN1bGF0aW5nIHN1YnNldCBtb2RlbABncmFwaCBpcyBkaXNjb25uZWN0ZWQuIEhlbmNlLCB0aGUgY2lyY3VpdCBtb2RlbAoAaXMgdW5kZWZpbmVkLiBSZXZlcnRpbmcgdG8gdGhlIHNob3J0ZXN0IHBhdGggbW9kZWwuCgBDYWxjdWxhdGluZyBNRFMgbW9kZWwAQ2FsY3VsYXRpbmcgc2hvcnRlc3QgcGF0aHMAOiAlLjJmIHNlYwoAU2V0dGluZyBpbml0aWFsIHBvc2l0aW9ucwA6ICUuMmYgc2VjAGNnAGRlbHRhIDw9IDB4RkZGRgBjb25zdHJhaW50LmMAbWtOQ29uc3RyYWludEcAdmcAY29tcHJlc3MgJWcgCgBzY2FsZSBieSAlZywlZyAKAGJlc3Rjb3N0IDwgSFVHRV9WQUwAY29tcHV0ZVNjYWxlWFkAdHJ5aW5nIHRvIGRlbGV0ZSBhIG5vbi1saW5lCgAKaW50ZXJzZWN0aW9uIGF0ICUuM2YgJS4zZgoAc2VnIyVkIDogKCUuM2YsICUuM2YpICglLjNmLCAlLjNmKQoAbWFrZUFkZFBvbHk6IHVua25vd24gc2hhcGUgdHlwZSAlcwoAbWFrZVBvbHk6IHVua25vd24gc2hhcGUgdHlwZSAlcwoAeCE9TlVMTABzbWFydF9pbmlfeC5jAElNRFNfZ2l2ZW5fZGltAGlsbC1jb25kaXRpb25lZAByb290ID0gJXMgbWF4IHN0ZXBzIHRvIHJvb3QgPSAlZAoAdHdvcGk6IHVzZSBvZiB3ZWlnaHQ9MCBjcmVhdGVzIGRpc2Nvbm5lY3RlZCBjb21wb25lbnQuCgBSYW5rIHNlcGFyYXRpb24gPSAAJS4wM2xmIABhcmVhAGluc2V0ACVzIGNvb3JkICUuNWcgJS41ZyBodCAlZiB3aWR0aCAlZgoAJS4wM2YAcmVjICVmICVmICVmICVmCgAlZiAtICVmICVmICVmICVmID0gJWYgKCVmICVmICVmICVmKQoAdHJ5aW5nIHRvIGFkZCB0byByZWN0IHslZiArLy0gJWYsICVmICsvLSAlZn0KAHRvdGFsIGFkZGVkIHNvIGZhciA9ICVkCgBhZGRpbmcgJWQgaXRlbXMsIHRvdGFsIGFyZWEgPSAlZiwgdyA9ICVmLCBhcmVhL3c9JWYKAGNvbXBvdW5kRWRnZXM6IGNvdWxkIG5vdCBjb25zdHJ1Y3Qgb2JzdGFjbGVzIC0gZmFsbGluZyBiYWNrIHRvIHN0cmFpZ2h0IGxpbmUgZWRnZXMKAGNvbXBvdW5kRWRnZXM6IG5vZGVzIHRvdWNoIC0gZmFsbGluZyBiYWNrIHRvIHN0cmFpZ2h0IGxpbmUgZWRnZXMKAHBhY2sgdmFsdWUgJWQgaXMgc21hbGxlciB0aGFuIGVzZXAgKCUuMDNmLCUuMDNmKQoAc2VwIHZhbHVlICglLjAzZiwlLjAzZikgaXMgc21hbGxlciB0aGFuIGVzZXAgKCUuMDNmLCUuMDNmKQoAY2Mlc18lZABjYyVzKyVkAGNfY250ID09IDAAY29tcC5jAGZpbmRDQ29tcABncmlkKCVkLCVkKTogJXMKAG9uZWJsb2NrAG1pbmRpc3QAYXJ0aWN1bGF0aW9uX3BvcwByb290AHJvb3QgPSAlcwoAX2Jsb2NrXyVkAHMtPnN6ID4gMABibG9ja3RyZWUuYwBwb3AAYWN0dWFsAG5vZGVsaXN0LmMAaW5zZXJ0Tm9kZWxpc3QAX3NwYW5fJWQAX2Nsb25lXyVkAGlwAGRlZ2xpc3QuYwByZW1vdmVEZWdsaXN0AEVycm9yAFdhcm5pbmcAJXM6IAB1c2Vyb3V0OiBjb3VsZCBub3QgYWxsb2NhdGUgbWVtb3J5CgBfQUdfc3RyZGF0YQBfQUdfZGF0YWRpY3QAYWdkaWN0b2Y6IHVua25vd24ga2luZCAlZAoAJWMlbGQAbWVtb3J5IGFsbG9jYXRpb24gZmFpbHVyZQBhZ2RlbGV0ZSBvbiB3cm9uZyBncmFwaABfQUdfcGVuZGluZwBhZ3JlY29yZF9jYWxsYmFjayBvZiBhIGJhZCBvYmplY3QAcGVuZCBkaWN0b2YgYSBiYWQgb2JqZWN0AG1vdmUgdG8gZnJvbnQgbG9jayBpbmNvbnNpc3RlbmN5AFxcAGZhdGFsIGZsZXggc2Nhbm5lciBpbnRlcm5hbCBlcnJvci0tbm8gYWN0aW9uIGZvdW5kACVzCgBmYXRhbCBmbGV4IHNjYW5uZXIgaW50ZXJuYWwgZXJyb3ItLWVuZCBvZiBidWZmZXIgbWlzc2VkAGZhdGFsIGVycm9yIC0gc2Nhbm5lciBpbnB1dCBidWZmZXIgb3ZlcmZsb3cAb3V0IG9mIGR5bmFtaWMgbWVtb3J5IGluIGFhZ19nZXRfbmV4dF9idWZmZXIoKQBpbnB1dABzeW50YXggYW1iaWd1aXR5IC0gYmFkbHkgZGVsaW1pdGVkIG51bWJlciAnACcgaW4gbGluZSAlZCBvZiAAIHNwbGl0cyBpbnRvIHR3byB0b2tlbnMKACVzAGxpbmUAJWQgJTFbIl0lbgBvdXQgb2YgZHluYW1pYyBtZW1vcnkgaW4gYWFnX2NyZWF0ZV9idWZmZXIoKQBvdXQgb2YgZHluYW1pYyBtZW1vcnkgaW4gYWFnZW5zdXJlX2J1ZmZlcl9zdGFjaygpADogACBpbiBsaW5lICVkACBuZWFyICcAIHNjYW5uaW5nIGEgcXVvdGVkIHN0cmluZyAobWlzc2luZyBlbmRxdW90ZT8gbG9uZ2VyIHRoYW4gJWQ/KQAKU3RyaW5nIHN0YXJ0aW5nOiIAIHNjYW5uaW5nIGEgSFRNTCBzdHJpbmcgKG1pc3NpbmcgJz4nPyBiYWQgbmVzdGluZz8gbG9uZ2VyIHRoYW4gJWQ/KQAKU3RyaW5nIHN0YXJ0aW5nOjwAIHNjYW5uaW5nIGEgLyouLi4qLyBjb21tZW50IChtaXNzaW5nICcqLz8gbG9uZ2VyIHRoYW4gJWQ/KQBmbGV4IHNjYW5uZXIgcHVzaC1iYWNrIG92ZXJmbG93ACIiAHN0cmljdABsaW5lbGVuZ3RoADsKACBba2V5PQBdACBbACwKAD0AXyVsZF9TVVNQRUNUAGRpAHN0cmljdCAAewoAXTsKABLu7hQJA+7+7u7uAe7u7gHu7gr+7hMZFe4TAe7u7u4LEe7u7u7u7u7u7gHu7hYJAQEdDxfu7hoXG+7uHO7u7u4BGfvu7u4B7hDu7h7u7u7uAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhcRAgICAgICAgICAgICAhIQAhMCAhYCAgICAgICAgICAgICAgICAgICAgICAgICAhQCFQICAgICAgICAgICAgICAgICAgICAgICAgICAgICDgIPAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgECAwQFBgcICQoLDA0LAwQFDwcDDA0GDA0ODA0aFRYAAQADBw4GDwgMDRITKhARCRAvMBEyFxMNFBIuEhRBEzITLEAqQhksQkYiDA0OIw8JEBEKEBHJEBEtRUb8AQb2Dwf2JAIQES8wNk1OKCY7PCo2MTk9Py86QNhEMD4lN0M1Sys4SUwAAwkAAAABDgILDAgjJCU2Oz0ADRASGxYcEicyIhczHjwGBzUFDxEUGCkAEykAAAAAADcVKB0eACEmNB8wPhksABsAIBoqACs6Li8AMTg5LQACAgEAAwMBAAEAAQEBAAIBAQACAgMBAQAABQABAwEDBQMBAQEBAgABAAQCAAIBAQMCAQADAgEAAQEAAQEBAwAYGRkZGhscHB0dHh4fHyAgISEiIiMkJCYnJSUoKCkpKSoqKysrLCwtLS4vLzAxMTIzNDY1Nzc3ODg4OTk6Ou7u/+7u7u7u7h8g7gDv7u7uDO7u7ggN7u7u+O7u7u7u7vXu/wMIBCEFCxITJxQVFikyQRcYGRosMzRCR0gbShwdLh5PHyBrZXkAYXR0cmlidXRlIG1hY3JvcyBub3QgaW1wbGVtZW50ZWQAJXM6JXMAQ291bGQgbm90IG9wZW4gIiVzIiBmb3Igd3JpdGluZyA6ICVzCgBObyBsaWJ6IHN1cHBvcnQuCgAuJWQAbm9uYW1lLmd2AGd2d3JpdGVfbm9feiBwcm9ibGVtICVkCgBtZW1vcnkgYWxsb2NhdGlvbiBmYWlsdXJlCgBObyBsaWJ6IHN1cHBvcnQKAGd2cHJpbnRmOiAlcwoALTk5OTk5OTk5OTk5OTk5OS45OQBncmFwaHZpegAyLjQwLjEAMjAxNjEyMjUuMDMwNAByZW5kZXIAbGF5b3V0AGRldmljZQBsb2FkaW1hZ2UAZHluYW1pYyBsb2FkaW5nIG5vdCBhdmFpbGFibGUKAFVzaW5nICVzOiAlczolcwoAZ3Z1c2Vyc2hhcGUuYwBndnVzZXJzaGFwZV9maW5kAGd2dXNlcnNoYXBlX2ZpbGVfYWNjZXNzAEZpbGVuYW1lICIlcyIgaXMgdW5zYWZlCgAlcyB3aGlsZSBvcGVuaW5nICVzCgB1cy0+ZgBndnVzZXJzaGFwZV9vcGVuACIlcyIgd2FzIG5vdCBmb3VuZCBhcyBhIGZpbGUgb3IgYXMgYSBzaGFwZSBsaWJyYXJ5IG1lbWJlcgoAL01lZGlhQm94AChbYS16XVthLXpBLVpdKik9IihbXiJdKikiAGNhbm5vdCBjb21waWxlIHJlZ3VsYXIgZXhwcmVzc2lvbiAlcwAlbGYlMnMAcHQAdmlld0JveAAlbGYgJWxmICVsZiAlbGYAaW4AcHgAcGMAIgBjbQBtbQAlJUJvdW5kaW5nQm94OgAB0NHS09TV1tfY2QA8c3ZnAFdFQlAAd2VicAAobGliKQCJUE5HDQoaCgBwbmcAJSFQUy1BZG9iZS0AQk0AYm1wAEdJRjgAZ2lmAP/Y/+AAanBlZwAlUERGLQBwZGYAxdDTxgBlcHMAPD94bWwAeG1sAFJJRkYAcmlmZgAAAAEAAGljbwBMYXlvdXQgdHlwZTogIiVzIiBub3QgcmVjb2duaXplZC4gVXNlIG9uZSBvZjolcwoAJWQgJWQgJWQgJWQATGF5b3V0IHdhcyBub3QgZG9uZQoAZmFpbHVyZSBtYWxsb2MnaW5nIGZvciByZXN1bHQgc3RyaW5nAGdjOiBPdXQgb2YgbWVtb3J5CgBfY2NfAG9yaWcAb3AAY2NvbXBzLmMAbWFwQ2x1c3QAY2NncmFwaGluZm8AY2Nnbm9kZWluZm8AKCU0bGQpICU3bGQgbm9kZXMgJTdsZCBlZGdlcwoAICAgICAgICU3ZCBub2RlcyAlN2QgZWRnZXMgJTdsZCBjb21wb25lbnRzICVzCgBkZwBFcnJvcjogbm9kZSAiJXMiIGJlbG9uZ3MgdG8gdHdvIG5vbi1uZXN0ZWQgY2x1c3RlcnMgIiVzIiBhbmQgIiVzIgoAc29ydHYAcm93IG1ham9yAGNvbHVtbiBtYWpvcgBhcnJheSBwYWNraW5nOiAlcyAlZCByb3dzICVkIGNvbHVtbnMKAGJiWyVzXSAlLjVnICUuNWcgJS41ZyAlLjVnCgBzdGVwIHNpemUgPSAlZAoAcG9zWyVkXSAlZCAlZAoAY2MgKCVkIGNlbGxzKSBhdCAoJWQsJWQpICglZCwlZCkKAGNjICglZCBjZWxscykgYXQgKCVkLCVkKQoAJXMgbm8uIGNlbGxzICVkIFcgJWQgSCAlZAoAICAlZCAlZCBjZWxsCgBsaWJwYWNrOiBkaXNjID0gJWYgKCA8IDApCgBQYWNraW5nOiBjb21wdXRlIGdyaWQgc2l6ZQoAYSAlZiBiICVmIGMgJWYgZCAlZiByICVmCgByb290ICVkICglZikgJWQgKCVmKQoAIHIxICVmIHIyICVmCgBwaW5mbwBwYWNrLmMAZ2V0UGFja0luZm8AICBtYXJnaW4gJWQKAHBhY2ttb2RlAHBhcnNlUGFja01vZGVJbmZvAGFycmF5AGFzcGVjdAAlZgBwYWNrIGluZm86CgAgIG1vZGUgICAlcwoAICBhc3BlY3QgJWYKACAgc2l6ZSAgICVkCgAgIGZsYWdzICAlZAoAdW5kZWZpbmVkAHBhY2sAQXJyb3cgdHlwZSAiJXMiIHVua25vd24gLSBpZ25vcmluZwoAbm9ybWFsAGNyb3cAdGVlAGRvdABpbnYAdmVlAHBlbgBtcHR5AGN1cnZlAGljdXJ2ZQBsAGhhbGYAaW52ZW1wdHkAX2JhY2tncm91bmQAX2RyYXdfAENvdWxkIG5vdCBwYXJzZSAiX2JhY2tncm91bmQiIGF0dHJpYnV0ZSBpbiBncmFwaCAlcwoAICAiJXMiCgBubyBtZW1vcnkgZnJvbSB6bWFsbG9jKCkKAG9iagBlbWl0LmMAcG9wX29ial9zdGF0ZQBjbHVzdAAlbGQAcGFnZSVkLCVkXwBUb3RhbCBzaXplID4gMSBpbiAiJXMiIGNvbG9yIHNwZWMgAElsbGVnYWwgbGVuZ3RoIHZhbHVlIGluICIlcyIgY29sb3IgYXR0cmlidXRlIABsbnJjb2xvcnNjaGVtZQBlbWl0X2VkZ2VfbGFiZWwAJXMtJXMAZm9yd2FyZABiYWNrACAtPiAAIC0tIABpbiBlZGdlICVzJXMlcwoAbGFiZWxhbGlnbmVkAGVkZ2VocmVmAGVkZ2VVUkwAbGFiZWxocmVmAGxhYmVsVVJMAHRhaWxocmVmAHRhaWxVUkwAaGVhZGhyZWYAaGVhZFVSTABlZGdldGFyZ2V0AGxhYmVsdGFyZ2V0AHRhaWx0YXJnZXQAaGVhZHRhcmdldABlZGdldG9vbHRpcABsYWJlbHRvb2x0aXAAdGFpbHRvb2x0aXAAaGVhZHRvb2x0aXAAAW5lc3Rpbmcgbm90IGFsbG93ZWQgaW4gc3R5bGU6ICVzCgB1bm1hdGNoZWQgJyknIGluIHN0eWxlOiAlcwoAdHJ1bmNhdGluZyBzdHlsZSAnJXMnCgB1bm1hdGNoZWQgJygnIGluIHN0eWxlOiAlcwoAYWxsAGluIGNsdXN0ZXIgJXMKAE1vcmUgdGhhbiAyIGNvbG9ycyBzcGVjaWZpZWQgZm9yIGEgZ3JhZGllbnQgLSBpZ25vcmluZyByZW1haW5pbmcKAGdyYWRpZW50IHBlbiBjb2xvcnMgbm90IHlldCBzdXBwb3J0ZWQuCgBJbWFnZXMgdW5zdXBwb3J0ZWQgaW4gImJhY2tncm91bmQiIGF0dHJpYnV0ZQoAbGF5ZXJzIG5vdCBzdXBwb3J0ZWQgaW4gJXMgb3V0cHV0CgBMYXlvdXQgd2FzIG5vdCBkb25lLiAgTWlzc2luZyBsYXlvdXQgcGx1Z2lucz8gCgBndlJlbmRlckpvYnMgJXM6ICUuMmYgc2Vjcy4KAGxheW91dCB3YXMgbm90IGRvbmUKAHJlbmRlcmVyIGZvciAlcyBpcyB1bmF2YWlsYWJsZQoAcGFnZWRpcj0lcyBpZ25vcmVkCgB2aWV3cG9ydAAlbGYsJWxmLCVsZiwnJVteJ10nACVsZiwlbGYsJWxmLCVbXixdJXMAJWxmLCVsZiwlbGYsJWxmLCVsZgBvdXRwdXRvcmRlcgBvZGVzZmlyc3QAZGdlc2ZpcnN0AGxheWVycwBsYXllcnNlbGVjdABUaGUgbGF5ZXJzZWxlY3QgYXR0cmlidXRlICIlcyIgZG9lcyBub3QgbWF0Y2ggYW55IGxheWVyIHNwZWNpZmVkIGJ5IHRoZSBsYXllcnMgYXR0cmlidXRlIC0gaWdub3JlZC4KAGxheWVyc2VwADoJIABsYXllcmxpc3RzZXAALABUaGUgY2hhcmFjdGVyICclYycgYXBwZWFycyBpbiBib3RoIHRoZSBsYXllcnNlcCBhbmQgbGF5ZXJsaXN0c2VwIGF0dHJpYnV0ZXMgLSBsYXllcmxpc3RzZXAgaWdub3JlZC4KAHBhZABCTABwYWdlZGlyAHNvbGlkAABzZXRsaW5ld2lkdGgAMQAAc3BsLT5zaXplID4gMABpbml0X3NwbGluZXNfYmIAYnouc2l6ZSA+IDAAYmV6aWVyX2JiAGJ6LnNpemUgJSAzID09IDEAJWxmAGZvbnRwYXRoAERPVEZPTlRQQVRIAEdERk9OVFBBVEgAaW1hZ2VwYXRoAHF1YW50dW0AcmFua2RpcgBMUgBCVABSTABub2Rlc2VwAHJhbmtzZXAAZXF1YWxseQBzaG93Ym94ZXMAZm9udG5hbWVzAHNpemUAcGFnZQBjZW50ZXIAcm90YXRlAG9yaWVudGF0aW9uAGxhbmRzY2FwZQBjbHVzdGVycmFuawBjb25jZW50cmF0ZQBkcGkAcmVzb2x1dGlvbgBvcmRlcmluZwBmaWxsY29sb3IAZm9udHNpemUAZm9udG5hbWUAZm9udGNvbG9yAHhsYWJlbABwZW53aWR0aABwZXJpcGhlcmllcwBza2V3AGRpc3RvcnRpb24Abm9qdXN0aWZ5AGxheWVyAGdyb3VwAGNvbW1lbnQAdmVydGljZXMAegB3ZWlnaHQAbGFiZWxmbG9hdABkaXIAYXJyb3doZWFkAGFycm93dGFpbABoZWFkbGFiZWwAdGFpbGxhYmVsAGxhYmVsZm9udHNpemUAbGFiZWxmb250bmFtZQBsYWJlbGZvbnRjb2xvcgBsYWJlbGRpc3RhbmNlAGxhYmVsYW5nbGUAbWlubGVuAGRlY29yYXRlAGFycm93c2l6ZQBjb25zdHJhaW50AHRhaWxjbGlwAGhlYWRjbGlwAGxhYmVsanVzdABsb2NhbABnbG9iYWwAJWxmLCVsZiVjACVsZiVjAHJhdGlvAGF1dG8AY29tcHJlc3MAZXhwYW5kAGZpbGwAZ2QAcHMAc3ZnAGNoYXJzZXQAdXRmLTgAbGF0aW4tMQBsYXRpbjEAbDEASVNPLTg4NTktMQBJU09fODg1OS0xAElTTzg4NTktMQBJU08tSVItMTAwAGJpZy01AGJpZzUAdXRmOABVbnN1cHBvcnRlZCBjaGFyc2V0ICIlcyIgLSBhc3N1bWluZyB1dGYtOAoAVW5zdXBwb3J0ZWQgY2hhcnNldCB2YWx1ZSAlZAoAVVRGLTgAQklHLTUAaW4gbGFiZWwgb2YgZ3JhcGggJXMKAGluIGxhYmVsIG9mIG5vZGUgJXMKAGluIGxhYmVsIG9mIGVkZ2UgJXMgJXMgJXMKAGtpbmQgPT0gTFRfTk9ORQBsYWJlbHMuYwBtYWtlX2xhYmVsAFxMAFxHAFxFAFxIAFxUACYjMTM7ACYjMTA7ACZxdW90OwAmIzE2MDsAJmFtcDsAJmd0OwAmIzM5OwAmIzQ1OwAmbHQ7ACVzICVkIG5vZGVzICVkIGVkZ2VzIG1heGl0ZXI9JWQgYmFsYW5jZT0lZAoAbmV0d29yayBzaW1wbGV4OiAAJWQgACVzJWQgbm9kZXMgJWQgZWRnZXMgJWQgaXRlciAlLjJmIHNlYwoAdXBkYXRlOiBtaXNtYXRjaGVkIGxjYSBpbiB0cmVldXBkYXRlcwoAVHJlZV9lZGdlLnNpemUgPT0gTl9ub2RlcyAtIDEAbnMuYwBmZWFzaWJsZV90cmVlACFUUkVFX0VER0UoZSkAbWVyZ2VfdHJlZXMAKHIwLT5oZWFwX2luZGV4ID4gLTEpIHx8IChyMS0+aGVhcF9pbmRleCA+IC0xKQBTVHNldFVuaW9uAHItPmhlYXBfaW5kZXggPj0gMABhZGRfdHJlZV9lZGdlOiBtaXNzaW5nIHRyZWUgZWRnZQoAYWRkX3RyZWVfZWRnZTogZW1wdHkgb3V0ZWRnZSBsaXN0CgBhZGRfdHJlZV9lZGdlOiBlbXB0eSBpbmVkZ2UgbGlzdAoAdHJvdWJsZSBpbiBpbml0X3JhbmsKAAklcyAlZAoAc2VhcmNoc2l6ZQBncmFwaCAAIABub2RlIABzdG9wCgAlLjVnAHBvcwByZWN0cwB4bHAAbHAAaGVhZF9scAB0YWlsX2xwAGx3aWR0aABsaGVpZ2h0AGJiACUuNWcsJS41ZywlLjVnACwlLjVnACUuNWcsJS41ZwBzYW1wbGVwb2ludHMAJS41ZyAlLjVnAHMsJS41ZywlLjVnIABlLCUuNWcsJS41ZyAAJS41ZywlLjVnLCUuNWcsJS41ZwAlLjJmACUuNWcsJS41ZywlLjVnLCUuNWcgAC9wYXRoYm94IHsKICAgIC9YIGV4Y2ggbmVnICUuNWcgc3ViIGRlZgogICAgL1kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIC94IGV4Y2ggbmVnICUuNWcgc3ViIGRlZgogICAgL3kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIG5ld3BhdGggeCB5IG1vdmV0bwogICAgWCB5IGxpbmV0bwogICAgWCBZIGxpbmV0bwogICAgeCBZIGxpbmV0bwogICAgY2xvc2VwYXRoIHN0cm9rZQp9IGRlZgoAL3BhdGhib3ggewogICAgL1kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIC9YIGV4Y2ggJS41ZyBzdWIgZGVmCiAgICAveSBleGNoICUuNWcgc3ViIGRlZgogICAgL3ggZXhjaCAlLjVnIHN1YiBkZWYKICAgIG5ld3BhdGggeCB5IG1vdmV0bwogICAgWCB5IGxpbmV0bwogICAgWCBZIGxpbmV0bwogICAgeCBZIGxpbmV0bwogICAgY2xvc2VwYXRoIHN0cm9rZQogfSBkZWYKL2RiZ3N0YXJ0IHsgZ3NhdmUgJS41ZyAlLjVnIHRyYW5zbGF0ZSB9IGRlZgovYXJyb3dsZW5ndGggMTAgZGVmCi9hcnJvd3dpZHRoIGFycm93bGVuZ3RoIDIgZGl2IGRlZgovYXJyb3doZWFkIHsKICAgIGdzYXZlCiAgICByb3RhdGUKICAgIGN1cnJlbnRwb2ludAogICAgbmV3cGF0aAogICAgbW92ZXRvCiAgICBhcnJvd2xlbmd0aCBhcnJvd3dpZHRoIDIgZGl2IHJsaW5ldG8KICAgIDAgYXJyb3d3aWR0aCBuZWcgcmxpbmV0bwogICAgY2xvc2VwYXRoIGZpbGwKICAgIGdyZXN0b3JlCn0gYmluZCBkZWYKL21ha2VhcnJvdyB7CiAgICBjdXJyZW50cG9pbnQgZXhjaCBwb3Agc3ViIGV4Y2ggY3VycmVudHBvaW50IHBvcCBzdWIgYXRhbgogICAgYXJyb3doZWFkCn0gYmluZCBkZWYKL3BvaW50IHsgICAgbmV3cGF0aCAgICAyIDAgMzYwIGFyYyBmaWxsfSBkZWYvbWFrZXZlYyB7CiAgICAvWSBleGNoIGRlZgogICAgL1ggZXhjaCBkZWYKICAgIC95IGV4Y2ggZGVmCiAgICAveCBleGNoIGRlZgogICAgbmV3cGF0aCB4IHkgbW92ZXRvCiAgICBYIFkgbGluZXRvIHN0cm9rZQogICAgWCBZIG1vdmV0bwogICAgeCB5IG1ha2VhcnJvdwp9IGRlZgoAbG9zdCAlcyAlcyBlZGdlCgBubyBwb3NpdGlvbiBmb3IgZWRnZSB3aXRoIGxhYmVsICVzAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggdGFpbCBsYWJlbCAlcwBubyBwb3NpdGlvbiBmb3IgZWRnZSB3aXRoIGhlYWQgbGFiZWwgJXMAbm8gcG9zaXRpb24gZm9yIGVkZ2Ugd2l0aCB4bGFiZWwgJXMAZm9yY2VsYWJlbHMAJWQgb3V0IG9mICVkIGxhYmVscyBwb3NpdGlvbmVkLgoAJWQgb3V0IG9mICVkIGV4dGVyaW9yIGxhYmVscyBwb3NpdGlvbmVkLgoAJWQgb2JqcyAlZCB4bGFiZWxzIGZvcmNlPSVkIGJiPSglLjAyZiwlLjAyZikgKCUuMDJmLCUuMDJmKQoAb2JqZWN0cwoAIFslZF0gKCUuMDJmLCUuMDJmKSAoJS4wMmYsJS4wMmYpICVwICIlcyIKAHhsYWJlbHMKACBbJWRdICVwIHNldCAlZCAoJS4wMmYsJS4wMmYpICglLjAyZiwlLjAyZikgJXMKAHNoYXBlZmlsZSBub3Qgc2V0IG9yIG5vdCBmb3VuZCBmb3IgZXBzZiBub2RlICVzCgBjb3VsZG4ndCBvcGVuIGVwc2YgZmlsZSAlcwoAJSUlJUJvdW5kaW5nQm94OiAlZCAlZCAlZCAlZAByZWFkAEJvdW5kaW5nQm94IG5vdCBmb3VuZCBpbiBlcHNmIGZpbGUgJXMKAGNhbid0IGZpbmQgbGlicmFyeSBmaWxlICVzCgBjYW4ndCBvcGVuIGxpYnJhcnkgZmlsZSAlcwoARU9GAEJFR0lOAEVORABUUkFJTEVSAC91c2VyX3NoYXBlXyVkIHsKACUlQmVnaW5Eb2N1bWVudDoKACUlRW5kRG9jdW1lbnQKAH0gYmluZCBkZWYKAFVURi04IGlucHV0IHVzZXMgbm9uLUxhdGluMSBjaGFyYWN0ZXJzIHdoaWNoIGNhbm5vdCBiZSBoYW5kbGVkIGJ5IHRoaXMgUG9zdFNjcmlwdCBkcml2ZXIKAGNhbm5vdCByZS1hbGxvY2F0ZSBwcwoAcm91dGVzcGxpbmVzaW5pdDogY2Fubm90IGFsbG9jYXRlIHBzCgByb3V0ZXNwbGluZXM6ICVkIGVkZ2VzLCAlZCBib3hlcyAlLjJmIHNlYwoAaW4gcm91dGVzcGxpbmVzLCBjYW5ub3QgZmluZCBOT1JNQUwgZWRnZQoAaW4gcm91dGVzcGxpbmVzLCBpbGxlZ2FsIHZhbHVlcyBvZiBwcmV2ICVkIGFuZCBuZXh0ICVkLCBsaW5lICVkCgBpbiByb3V0ZXNwbGluZXMsIGVkZ2UgaXMgYSBsb29wIGF0ICVzCgBpbiByb3V0ZXNwbGluZXMsIFBzaG9ydGVzdHBhdGggZmFpbGVkCgBpbiByb3V0ZXNwbGluZXMsIFByb3V0ZXNwbGluZSBmYWlsZWQKAFVuYWJsZSB0byByZWNsYWltIGJveCBzcGFjZSBpbiBzcGxpbmUgcm91dGluZyBmb3IgZWRnZSAiJXMiIC0+ICIlcyIuIFNvbWV0aGluZyBpcyBwcm9iYWJseSBzZXJpb3VzbHkgd3JvbmcuCgBpbiBjaGVja3BhdGgsIGJveCAwIGhhcyBMTCBjb29yZCA+IFVSIGNvb3JkCgBpbiBjaGVja3BhdGgsIGJveCAlZCBoYXMgTEwgY29vcmQgPiBVUiBjb29yZAoAaW4gY2hlY2twYXRoLCBib3hlcyAlZCBhbmQgJWQgZG9uJ3QgdG91Y2gKAGluIGNoZWNrcGF0aCwgc3RhcnQgcG9ydCBub3QgaW4gZmlyc3QgYm94CgBpbiBjaGVja3BhdGgsIGVuZCBwb3J0IG5vdCBpbiBsYXN0IGJveAoAJWQgYm94ZXM6CgAlZCAoJS41ZywgJS41ZyksICglLjVnLCAlLjVnKQoAY29uc3RyYWluZWQAbm90IGNvbnN0cmFpbmVkAHN0YXJ0IHBvcnQ6ICglLjVnLCAlLjVnKSwgdGFuZ2VudCBhbmdsZTogJS41ZywgJXMKAGVuZCBwb3J0OiAoJS41ZywgJS41ZyksIHRhbmdlbnQgYW5nbGU6ICUuNWcsICVzCgBzaWRlcyA9PSA0AHNoYXBlcy5jAHJvdW5kX2Nvcm5lcnMAYmFkIGxhYmVsIGZvcm1hdCAlcwoAXE4AbWFyZ2luACVsZiwlbGYAcmVndWxhcgBjdXN0b20Ac2hhcGVmaWxlADxuaWw+AE5vIG9yIGltcHJvcGVyIHNoYXBlZmlsZT0iJXMiIGZvciBub2RlICIlcyIKAE5vIG9yIGltcHJvcGVyIGltYWdlPSIlcyIgZm9yIG5vZGUgIiVzIgoAbGFiZWxsb2MAbm9kZSAnJXMnLCBncmFwaCAnJXMnIHNpemUgdG9vIHNtYWxsIGZvciBsYWJlbAoAZXBzZgB1c2luZyAlcyBmb3IgdW5rbm93biBzaGFwZSAlcwoAcG9seWdvbgBvdmFsAGNpcmNsZQBwb2ludABlZ2cAdHJpYW5nbGUAcGxhaW50ZXh0AHBsYWluAGRpYW1vbmQAdHJhcGV6aXVtAHBhcmFsbGVsb2dyYW0AaG91c2UAcGVudGFnb24AaGV4YWdvbgBzZXB0YWdvbgBvY3RhZ29uAG5vdGUAdGFiAGZvbGRlcgBib3gzZABjb21wb25lbnQAY3lsaW5kZXIAcmVjdAByZWN0YW5nbGUAc3F1YXJlAGRvdWJsZWNpcmNsZQBkb3VibGVvY3RhZ29uAHRyaXBsZW9jdGFnb24AaW52dHJpYW5nbGUAaW52dHJhcGV6aXVtAGludmhvdXNlAHVuZGVybGluZQBNZGlhbW9uZABNc3F1YXJlAE1jaXJjbGUAcHJvbW90ZXIAY2RzAHRlcm1pbmF0b3IAdXRyAGluc3VsYXRvcgByaWJvc2l0ZQBybmFzdGFiAHByb3RlYXNlc2l0ZQBwcm90ZWluc3RhYgBwcmltZXJzaXRlAHJlc3RyaWN0aW9uc2l0ZQBmaXZlcG92ZXJoYW5nAHRocmVlcG92ZXJoYW5nAG5vdmVyaGFuZwBhc3NlbWJseQBzaWduYXR1cmUAcnByb21vdGVyAGxhcnJvdwByYXJyb3cAbHByb21vdGVyAHJlY29yZABNcmVjb3JkAHN0YXIAIzgwODA4MAAjZmNmY2ZjACMzMDMwMzAAI2U4ZThlOAAjZTBlMGUwACNmMGYwZjAAIzEwMTAxMAAjZjhmOGY4AGluIG5vZGUgJXMKAHJvdW5kZWQAZGlhZ29uYWxzAHJhZGlhbABzdHJpcGVkAHdlZGdlZABfAG5vZGUgJXMsIHBvcnQgJXMsIHVucmVjb2duaXplZCBjb21wYXNzIHBvaW50ICclcycgLSBpZ25vcmVkCgBub2RlICVzLCBwb3J0ICVzIHVucmVjb2duaXplZAoAJS41ZyAlLjVnIHRyYW5zbGF0ZSBuZXdwYXRoIHVzZXJfc2hhcGVfJWQKAGludmlzAABmaWxsZWQAAHMAZQB3AHNwbGluZXMuYwBiZWdpbnBhdGgAUC0+ZW5kLnRoZXRhIDwgMiAqIE1fUEkAZW5kcGF0aABtYWtlU2VsZkVkZ2UAZ2V0c3BsaW5lcG9pbnRzOiBubyBzcGxpbmUgcG9pbnRzIGF2YWlsYWJsZSBmb3IgZWRnZSAoJXMsJXMpCgBwb2x5bGluZU1pZHBvaW50AHNwYW4tPmZvbnQAdGV4dHNwYW4uYwB0ZXh0c3Bhbl9zaXplAGZvbnQtPm5hbWUAZm9udG5hbWU6ICIlcyIgcmVzb2x2ZWQgdG86ICVzCgBmb250bmFtZTogdW5hYmxlIHRvIHJlc29sdmUgIiVzIgoAY291cgBhcmlhbABoZWx2ZXRpY2EAW2ludGVybmFsIHRpbWVzXQBbaW50ZXJuYWwgY291cmllcl0AW2ludGVybmFsIGFyaWFsXQBBdmFudEdhcmRlLUJvb2sAVVJXIEdvdGhpYyBMAGJvb2sAc2Fucy1TZXJpZgBBdmFudEdhcmRlLUJvb2tPYmxpcXVlAG9ibGlxdWUAaXRhbGljAEF2YW50R2FyZGUtRGVtaQBkZW1pAEF2YW50R2FyZGUtRGVtaU9ibGlxdWUAQm9va21hbi1EZW1pAFVSVyBCb29rbWFuIEwAc2VyaWYAQm9va21hbi1EZW1pSXRhbGljAEJvb2ttYW4tTGlnaHQAbGlnaHQAQm9va21hbi1MaWdodEl0YWxpYwBDb3VyaWVyAG1vbm9zcGFjZQBDb3VyaWVyLUJvbGQAQ291cmllci1Cb2xkT2JsaXF1ZQBDb3VyaWVyLU9ibGlxdWUASGVsdmV0aWNhAEhlbHZldGljYS1Cb2xkAEhlbHZldGljYS1Cb2xkT2JsaXF1ZQBIZWx2ZXRpY2EtTmFycm93AGNvbmRlbnNlZABIZWx2ZXRpY2EtTmFycm93LUJvbGQASGVsdmV0aWNhLU5hcnJvdy1Cb2xkT2JsaXF1ZQBIZWx2ZXRpY2EtTmFycm93LU9ibGlxdWUASGVsdmV0aWNhLU9ibGlxdWUATmV3Q2VudHVyeVNjaGxiay1Cb2xkAENlbnR1cnkgU2Nob29sYm9vayBMAE5ld0NlbnR1cnlTY2hsYmstQm9sZEl0YWxpYwBOZXdDZW50dXJ5U2NobGJrLUl0YWxpYwBOZXdDZW50dXJ5U2NobGJrLVJvbWFuAHJvbWFuAFBhbGF0aW5vLUJvbGQAUGFsYXRpbm8gTGlub3R5cGUAUGFsYXRpbm8tQm9sZEl0YWxpYwBQYWxhdGluby1JdGFsaWMAUGFsYXRpbm8tUm9tYW4AU3ltYm9sAGZhbnRhc3kAVGltZXMtQm9sZABUaW1lcwBUaW1lcy1Cb2xkSXRhbGljAFRpbWVzLUl0YWxpYwBaYXBmQ2hhbmNlcnktTWVkaXVtSXRhbGljAFVSVyBDaGFuY2VyeSBMAG1lZGl1bQBaYXBmRGluZ2JhdHMARGluZ2JhdHMAaW5wdXRzY2FsZQBubwB0cnVlAHllcwB1dGlscy5jAHUgPT0gVUZfZmluZCh1KQBVRl9zZXRuYW1lAAFmaWxlIGxvYWRpbmcgaXMgZGlzYWJsZWQgYmVjYXVzZSB0aGUgZW52aXJvbm1lbnQgY29udGFpbnMgU0VSVkVSX05BTUU9IiVzIgphbmQgdGhlIEdWX0ZJTEVfUEFUSCB2YXJpYWJsZSBpcyB1bnNldCBvciBlbXB0eS4KAFBhdGggcHJvdmlkZWQgdG8gZmlsZTogIiVzIiBoYXMgYmVlbiBpZ25vcmVkIGJlY2F1c2UgZmlsZXMgYXJlIG9ubHkgcGVybWl0dGVkIHRvIGJlIGxvYWRlZCBmcm9tIHRoZSBkaXJlY3RvcmllcyBpbiAiJXMiIHdoZW4gcnVubmluZyBpbiBhbiBodHRwIHNlcnZlci4KACVzJXMlcwAvADoAZWxsaXBzZQBUaW1lcy1Sb21hbgBjbHVzdGVyAF9fY2x1c3Rlcm5vZGVzAGNsdXN0ZXIgY3ljbGUgJXMgLS0gJXMgbm90IHN1cHBvcnRlZAoAdGFpbCBjbHVzdGVyICVzIGluc2lkZSBoZWFkIGNsdXN0ZXIgJXMKAGhlYWQgY2x1c3RlciAlcyBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgB0YWlsIG5vZGUgJXMgaW5zaWRlIGhlYWQgY2x1c3RlciAlcwoAaGVhZCBub2RlICVzIGluc2lkZSB0YWlsIGNsdXN0ZXIgJXMKAF9fAGxhYmVsAHNoYXBlAGJveABUd28gY2x1c3RlcnMgbmFtZWQgJXMgLSB0aGUgc2Vjb25kIHdpbGwgYmUgaWdub3JlZAoAbWFwTgBBRWxpZwBBYWN1dGUAQWNpcmMAQWdyYXZlAEFscGhhAEFyaW5nAEF0aWxkZQBBdW1sAEJldGEAQ2NlZGlsAENoaQBEYWdnZXIARGVsdGEARVRIAEVhY3V0ZQBFY2lyYwBFZ3JhdmUARXBzaWxvbgBFdGEARXVtbABHYW1tYQBJYWN1dGUASWNpcmMASWdyYXZlAElvdGEASXVtbABLYXBwYQBMYW1iZGEATXUATnRpbGRlAE51AE9FbGlnAE9hY3V0ZQBPY2lyYwBPZ3JhdmUAT21lZ2EAT21pY3JvbgBPc2xhc2gAT3RpbGRlAE91bWwAUGhpAFBpAFByaW1lAFBzaQBSaG8AU2Nhcm9uAFNpZ21hAFRIT1JOAFRhdQBUaGV0YQBVYWN1dGUAVWNpcmMAVWdyYXZlAFVwc2lsb24AVXVtbABYaQBZYWN1dGUAWXVtbABaZXRhAGFhY3V0ZQBhY2lyYwBhY3V0ZQBhZWxpZwBhZ3JhdmUAYWxlZnN5bQBhbHBoYQBhbXAAYW5kAGFuZwBhcmluZwBhc3ltcABhdGlsZGUAYXVtbABiZHF1bwBiZXRhAGJydmJhcgBidWxsAGNhcABjY2VkaWwAY2VkaWwAY2VudABjaGkAY2lyYwBjbHVicwBjb25nAGNvcHkAY3JhcnIAY3VwAGN1cnJlbgBkQXJyAGRhZ2dlcgBkYXJyAGRlZwBkZWx0YQBkaWFtcwBkaXZpZGUAZWFjdXRlAGVjaXJjAGVncmF2ZQBlbXB0eQBlbXNwAGVuc3AAZXBzaWxvbgBlcXVpdgBldGEAZXRoAGV1bWwAZXVybwBleGlzdABmbm9mAGZvcmFsbABmcmFjMTIAZnJhYzE0AGZyYWMzNABmcmFzbABnYW1tYQBnZQBndABoQXJyAGhhcnIAaGVhcnRzAGhlbGxpcABpYWN1dGUAaWNpcmMAaWV4Y2wAaWdyYXZlAGltYWdlAGluZmluAGludABpb3RhAGlxdWVzdABpc2luAGl1bWwAa2FwcGEAbEFycgBsYW1iZGEAbGFuZwBsYXF1bwBsYXJyAGxjZWlsAGxkcXVvAGxlAGxmbG9vcgBsb3dhc3QAbG96AGxybQBsc2FxdW8AbHNxdW8AbHQAbWFjcgBtZGFzaABtaWNybwBtaWRkb3QAbXUAbmFibGEAbmJzcABuZGFzaABuZQBuaQBub3QAbm90aW4AbnN1YgBudGlsZGUAbnUAb2FjdXRlAG9jaXJjAG9lbGlnAG9ncmF2ZQBvbGluZQBvbWVnYQBvbWljcm9uAG9wbHVzAG9yAG9yZGYAb3JkbQBvc2xhc2gAb3RpbGRlAG90aW1lcwBvdW1sAHBhcmEAcGFydABwZXJtaWwAcGVycABwaGkAcGkAcGl2AHBsdXNtbgBwb3VuZABwcmltZQBwcm9kAHByb3AAcHNpAHF1b3QAckFycgByYWRpYwByYW5nAHJhcXVvAHJhcnIAcmNlaWwAcmRxdW8AcmVhbAByZWcAcmZsb29yAHJobwBybG0AcnNhcXVvAHJzcXVvAHNicXVvAHNjYXJvbgBzZG90AHNlY3QAc2h5AHNpZ21hAHNpZ21hZgBzaW0Ac3BhZGVzAHN1YgBzdWJlAHN1bQBzdXAAc3VwMQBzdXAyAHN1cDMAc3VwZQBzemxpZwB0YXUAdGhlcmU0AHRoZXRhAHRoZXRhc3ltAHRoaW5zcAB0aG9ybgB0aWxkZQB0aW1lcwB0cmFkZQB1QXJyAHVhY3V0ZQB1YXJyAHVjaXJjAHVncmF2ZQB1bWwAdXBzaWgAdXBzaWxvbgB1dW1sAHdlaWVycAB4aQB5YWN1dGUAeWVuAHl1bWwAemV0YQB6d2oAenduagBVVEY4IGNvZGVzID4gNCBieXRlcyBhcmUgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgKGdyYXBoICVzKSAtIHRyZWF0ZWQgYXMgTGF0aW4tMS4gUGVyaGFwcyAiLUdjaGFyc2V0PWxhdGluMSIgaXMgbmVlZGVkPwoASW52YWxpZCAlZC1ieXRlIFVURjggZm91bmQgaW4gaW5wdXQgb2YgZ3JhcGggJXMgLSB0cmVhdGVkIGFzIExhdGluLTEuIFBlcmhhcHMgIi1HY2hhcnNldD1sYXRpbjEiIGlzIG5lZWRlZD8KAGJ6LnNpemUAb3ZlcmxhcF9iZXppZXIAdXJ2ZWQAb21wb3VuZABhbHNlAGluZQBvbmUAbwBydGhvAG9seWxpbmUAcGxpbmUAcnVlAGVzAFVua25vd24gInNwbGluZXMiIHZhbHVlOiAiJXMiIC0gaWdub3JlZAoAc3BsaW5lcwBvZGIAT3J0aG9nb25hbCBlZGdlcyBkbyBub3QgY3VycmVudGx5IGhhbmRsZSBlZGdlIGxhYmVscy4gVHJ5IHVzaW5nIHhsYWJlbHMuCgBvcnRobyAlcyAlcwoAY2hhbmkAb3J0aG8uYwBjaGFuU2VhcmNoAGNwACUlIVBTLUFkb2JlLTIuMAolJSUlQm91bmRpbmdCb3g6IChhdGVuZCkKL3BvaW50IHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgbmV3cGF0aAogIFggWSAzIDAgMzYwIGFyYyBmaWxsCn0gZGVmCi9jZWxsIHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgL3kgZXhjaCBkZWYKICAveCBleGNoIGRlZgogIG5ld3BhdGgKICB4IHkgbW92ZXRvCiAgeCBZIGxpbmV0bwogIFggWSBsaW5ldG8KICBYIHkgbGluZXRvCiAgY2xvc2VwYXRoIHN0cm9rZQp9IGRlZgovbm9kZSB7CiAvdSBleGNoIGRlZgogL3IgZXhjaCBkZWYKIC9kIGV4Y2ggZGVmCiAvbCBleGNoIGRlZgogbmV3cGF0aCBsIGQgbW92ZXRvCiByIGQgbGluZXRvIHIgdSBsaW5ldG8gbCB1IGxpbmV0bwogY2xvc2VwYXRoIGZpbGwKfSBkZWYKCgAlZCAlZCB0cmFuc2xhdGUKADAuOCAwLjggMC44IHNldHJnYmNvbG9yCgBzaG93cGFnZQolJSUlVHJhaWxlcgolJSUlQm91bmRpbmdCb3g6ICVkICVkICVkICVkCgBuZXdwYXRoICVkICVkIG1vdmV0bwoAJWQgJWQgbGluZXRvCgAlZCAlZCBsaW5ldG8gc3Ryb2tlCgBjaGFubmVsICVkICglZiwlZikKACAtPgoAICAgICAAKCglZiwlZiksKCVmLCVmKSkgJXMgJXMAQl9SSUdIVABCX0RPV04AQl9MRUZUAEJfVVAAQl9OT0RFAHNlZwBuZXh0X3NlZwBkZWNpZGVfcG9pbnQAaW5jb21wYXJhYmxlIHNlZ21lbnRzICEhIC0tIEFib3J0aW5nCgBzMS0+Y29tbV9jb29yZD09czItPmNvbW1fY29vcmQAaXNfcGFyYWxsZWwAZ3JhcGggRyB7CgAgbm9kZVtzaGFwZT1wb2ludF0KACAgJWQgW3Bvcz0iJWQsJWQiXQoAICAlZCAtLSAlZFtsZW49IiVmIl0KAH0KAGNvbG9yICVzACVzIGlzIG5vdCBhIGtub3duIGNvbG9yLgoAZXJyb3IgaW4gY29seGxhdGUoKQoAc29saWQAaW52aXNpYmxlAGJvbGQAc2V0bGluZXdpZHRoAGZpbGxlZAB1bmZpbGxlZAB0YXBlcmVkAGd2cmVuZGVyX3NldF9zdHlsZTogdW5zdXBwb3J0ZWQgc3R5bGUgJXMgLSBpZ25vcmluZwoAZ3ZyZW5kZXIuYwBndnJlbmRlcl91c2Vyc2hhcGUAbmFtZQBuYW1lWzBdAGJvdGgAam9iAGd2bG9hZGltYWdlLmMAZ3Zsb2FkaW1hZ2UAdXMAdXMtPm5hbWUAdXMtPm5hbWVbMF0ATm8gbG9hZGltYWdlIHBsdWdpbiBmb3IgIiVzIgoAUQBMZWZ0AEtQX0xlZnQAUmlnaHQAS1BfUmlnaHQAVXAAS1BfVXAARG93bgBLUF9Eb3duAHBsdXMAS1BfQWRkAG1pbnVzAEtQX1N1YnRyYWN0AEYAZWRnZQB0YWlscG9ydABoZWFkcG9ydABrZXkAVVJMAG5vZGUAZGlncmFwaABncmFwaABzdWJncmFwaABfTFRYX2xpYnJhcnkAdGV4dGxheW91dABvYmpwLT5sYmwAeGxhYmVscy5jAHhsYWRqdXN0AHhsaW50ZXJzZWN0aW9ucwBscCAhPSBjbHAAZ2V0aW50cnN4aQBvYmpwMS0+c3oueCA9PSAwICYmIG9ianAxLT5zei55ID09IDAAbGJsZW5jbG9zaW5nAHZwAHhsaGR4dW5sb2FkAHNpemU9PWZyZWVkAHJlY3QuYm91bmRhcnlbMl0gPCBJTlRfTUFYAG9ianBscG1rcwByZWN0LmJvdW5kYXJ5WzNdIDwgSU5UX01BWABvdXQgb2YgbWVtb3J5CgAjJTJ4JTJ4JTJ4JTJ4ACVsZiVsZiVsZgAvYWNjZW50My8xAC9hY2NlbnQzLzIAL2FjY2VudDMvMwAvYWNjZW50NC8xAC9hY2NlbnQ0LzIAL2FjY2VudDQvMwAvYWNjZW50NC80AC9hY2NlbnQ1LzEAL2FjY2VudDUvMgAvYWNjZW50NS8zAC9hY2NlbnQ1LzQAL2FjY2VudDUvNQAvYWNjZW50Ni8xAC9hY2NlbnQ2LzIAL2FjY2VudDYvMwAvYWNjZW50Ni80AC9hY2NlbnQ2LzUAL2FjY2VudDYvNgAvYWNjZW50Ny8xAC9hY2NlbnQ3LzIAL2FjY2VudDcvMwAvYWNjZW50Ny80AC9hY2NlbnQ3LzUAL2FjY2VudDcvNgAvYWNjZW50Ny83AC9hY2NlbnQ4LzEAL2FjY2VudDgvMgAvYWNjZW50OC8zAC9hY2NlbnQ4LzQAL2FjY2VudDgvNQAvYWNjZW50OC82AC9hY2NlbnQ4LzcAL2FjY2VudDgvOAAvYmx1ZXMzLzEAL2JsdWVzMy8yAC9ibHVlczMvMwAvYmx1ZXM0LzEAL2JsdWVzNC8yAC9ibHVlczQvMwAvYmx1ZXM0LzQAL2JsdWVzNS8xAC9ibHVlczUvMgAvYmx1ZXM1LzMAL2JsdWVzNS80AC9ibHVlczUvNQAvYmx1ZXM2LzEAL2JsdWVzNi8yAC9ibHVlczYvMwAvYmx1ZXM2LzQAL2JsdWVzNi81AC9ibHVlczYvNgAvYmx1ZXM3LzEAL2JsdWVzNy8yAC9ibHVlczcvMwAvYmx1ZXM3LzQAL2JsdWVzNy81AC9ibHVlczcvNgAvYmx1ZXM3LzcAL2JsdWVzOC8xAC9ibHVlczgvMgAvYmx1ZXM4LzMAL2JsdWVzOC80AC9ibHVlczgvNQAvYmx1ZXM4LzYAL2JsdWVzOC83AC9ibHVlczgvOAAvYmx1ZXM5LzEAL2JsdWVzOS8yAC9ibHVlczkvMwAvYmx1ZXM5LzQAL2JsdWVzOS81AC9ibHVlczkvNgAvYmx1ZXM5LzcAL2JsdWVzOS84AC9ibHVlczkvOQAvYnJiZzEwLzEAL2JyYmcxMC8xMAAvYnJiZzEwLzIAL2JyYmcxMC8zAC9icmJnMTAvNAAvYnJiZzEwLzUAL2JyYmcxMC82AC9icmJnMTAvNwAvYnJiZzEwLzgAL2JyYmcxMC85AC9icmJnMTEvMQAvYnJiZzExLzEwAC9icmJnMTEvMTEAL2JyYmcxMS8yAC9icmJnMTEvMwAvYnJiZzExLzQAL2JyYmcxMS81AC9icmJnMTEvNgAvYnJiZzExLzcAL2JyYmcxMS84AC9icmJnMTEvOQAvYnJiZzMvMQAvYnJiZzMvMgAvYnJiZzMvMwAvYnJiZzQvMQAvYnJiZzQvMgAvYnJiZzQvMwAvYnJiZzQvNAAvYnJiZzUvMQAvYnJiZzUvMgAvYnJiZzUvMwAvYnJiZzUvNAAvYnJiZzUvNQAvYnJiZzYvMQAvYnJiZzYvMgAvYnJiZzYvMwAvYnJiZzYvNAAvYnJiZzYvNQAvYnJiZzYvNgAvYnJiZzcvMQAvYnJiZzcvMgAvYnJiZzcvMwAvYnJiZzcvNAAvYnJiZzcvNQAvYnJiZzcvNgAvYnJiZzcvNwAvYnJiZzgvMQAvYnJiZzgvMgAvYnJiZzgvMwAvYnJiZzgvNAAvYnJiZzgvNQAvYnJiZzgvNgAvYnJiZzgvNwAvYnJiZzgvOAAvYnJiZzkvMQAvYnJiZzkvMgAvYnJiZzkvMwAvYnJiZzkvNAAvYnJiZzkvNQAvYnJiZzkvNgAvYnJiZzkvNwAvYnJiZzkvOAAvYnJiZzkvOQAvYnVnbjMvMQAvYnVnbjMvMgAvYnVnbjMvMwAvYnVnbjQvMQAvYnVnbjQvMgAvYnVnbjQvMwAvYnVnbjQvNAAvYnVnbjUvMQAvYnVnbjUvMgAvYnVnbjUvMwAvYnVnbjUvNAAvYnVnbjUvNQAvYnVnbjYvMQAvYnVnbjYvMgAvYnVnbjYvMwAvYnVnbjYvNAAvYnVnbjYvNQAvYnVnbjYvNgAvYnVnbjcvMQAvYnVnbjcvMgAvYnVnbjcvMwAvYnVnbjcvNAAvYnVnbjcvNQAvYnVnbjcvNgAvYnVnbjcvNwAvYnVnbjgvMQAvYnVnbjgvMgAvYnVnbjgvMwAvYnVnbjgvNAAvYnVnbjgvNQAvYnVnbjgvNgAvYnVnbjgvNwAvYnVnbjgvOAAvYnVnbjkvMQAvYnVnbjkvMgAvYnVnbjkvMwAvYnVnbjkvNAAvYnVnbjkvNQAvYnVnbjkvNgAvYnVnbjkvNwAvYnVnbjkvOAAvYnVnbjkvOQAvYnVwdTMvMQAvYnVwdTMvMgAvYnVwdTMvMwAvYnVwdTQvMQAvYnVwdTQvMgAvYnVwdTQvMwAvYnVwdTQvNAAvYnVwdTUvMQAvYnVwdTUvMgAvYnVwdTUvMwAvYnVwdTUvNAAvYnVwdTUvNQAvYnVwdTYvMQAvYnVwdTYvMgAvYnVwdTYvMwAvYnVwdTYvNAAvYnVwdTYvNQAvYnVwdTYvNgAvYnVwdTcvMQAvYnVwdTcvMgAvYnVwdTcvMwAvYnVwdTcvNAAvYnVwdTcvNQAvYnVwdTcvNgAvYnVwdTcvNwAvYnVwdTgvMQAvYnVwdTgvMgAvYnVwdTgvMwAvYnVwdTgvNAAvYnVwdTgvNQAvYnVwdTgvNgAvYnVwdTgvNwAvYnVwdTgvOAAvYnVwdTkvMQAvYnVwdTkvMgAvYnVwdTkvMwAvYnVwdTkvNAAvYnVwdTkvNQAvYnVwdTkvNgAvYnVwdTkvNwAvYnVwdTkvOAAvYnVwdTkvOQAvZGFyazIzLzEAL2RhcmsyMy8yAC9kYXJrMjMvMwAvZGFyazI0LzEAL2RhcmsyNC8yAC9kYXJrMjQvMwAvZGFyazI0LzQAL2RhcmsyNS8xAC9kYXJrMjUvMgAvZGFyazI1LzMAL2RhcmsyNS80AC9kYXJrMjUvNQAvZGFyazI2LzEAL2RhcmsyNi8yAC9kYXJrMjYvMwAvZGFyazI2LzQAL2RhcmsyNi81AC9kYXJrMjYvNgAvZGFyazI3LzEAL2RhcmsyNy8yAC9kYXJrMjcvMwAvZGFyazI3LzQAL2RhcmsyNy81AC9kYXJrMjcvNgAvZGFyazI3LzcAL2RhcmsyOC8xAC9kYXJrMjgvMgAvZGFyazI4LzMAL2RhcmsyOC80AC9kYXJrMjgvNQAvZGFyazI4LzYAL2RhcmsyOC83AC9kYXJrMjgvOAAvZ25idTMvMQAvZ25idTMvMgAvZ25idTMvMwAvZ25idTQvMQAvZ25idTQvMgAvZ25idTQvMwAvZ25idTQvNAAvZ25idTUvMQAvZ25idTUvMgAvZ25idTUvMwAvZ25idTUvNAAvZ25idTUvNQAvZ25idTYvMQAvZ25idTYvMgAvZ25idTYvMwAvZ25idTYvNAAvZ25idTYvNQAvZ25idTYvNgAvZ25idTcvMQAvZ25idTcvMgAvZ25idTcvMwAvZ25idTcvNAAvZ25idTcvNQAvZ25idTcvNgAvZ25idTcvNwAvZ25idTgvMQAvZ25idTgvMgAvZ25idTgvMwAvZ25idTgvNAAvZ25idTgvNQAvZ25idTgvNgAvZ25idTgvNwAvZ25idTgvOAAvZ25idTkvMQAvZ25idTkvMgAvZ25idTkvMwAvZ25idTkvNAAvZ25idTkvNQAvZ25idTkvNgAvZ25idTkvNwAvZ25idTkvOAAvZ25idTkvOQAvZ3JlZW5zMy8xAC9ncmVlbnMzLzIAL2dyZWVuczMvMwAvZ3JlZW5zNC8xAC9ncmVlbnM0LzIAL2dyZWVuczQvMwAvZ3JlZW5zNC80AC9ncmVlbnM1LzEAL2dyZWVuczUvMgAvZ3JlZW5zNS8zAC9ncmVlbnM1LzQAL2dyZWVuczUvNQAvZ3JlZW5zNi8xAC9ncmVlbnM2LzIAL2dyZWVuczYvMwAvZ3JlZW5zNi80AC9ncmVlbnM2LzUAL2dyZWVuczYvNgAvZ3JlZW5zNy8xAC9ncmVlbnM3LzIAL2dyZWVuczcvMwAvZ3JlZW5zNy80AC9ncmVlbnM3LzUAL2dyZWVuczcvNgAvZ3JlZW5zNy83AC9ncmVlbnM4LzEAL2dyZWVuczgvMgAvZ3JlZW5zOC8zAC9ncmVlbnM4LzQAL2dyZWVuczgvNQAvZ3JlZW5zOC82AC9ncmVlbnM4LzcAL2dyZWVuczgvOAAvZ3JlZW5zOS8xAC9ncmVlbnM5LzIAL2dyZWVuczkvMwAvZ3JlZW5zOS80AC9ncmVlbnM5LzUAL2dyZWVuczkvNgAvZ3JlZW5zOS83AC9ncmVlbnM5LzgAL2dyZWVuczkvOQAvZ3JleXMzLzEAL2dyZXlzMy8yAC9ncmV5czMvMwAvZ3JleXM0LzEAL2dyZXlzNC8yAC9ncmV5czQvMwAvZ3JleXM0LzQAL2dyZXlzNS8xAC9ncmV5czUvMgAvZ3JleXM1LzMAL2dyZXlzNS80AC9ncmV5czUvNQAvZ3JleXM2LzEAL2dyZXlzNi8yAC9ncmV5czYvMwAvZ3JleXM2LzQAL2dyZXlzNi81AC9ncmV5czYvNgAvZ3JleXM3LzEAL2dyZXlzNy8yAC9ncmV5czcvMwAvZ3JleXM3LzQAL2dyZXlzNy81AC9ncmV5czcvNgAvZ3JleXM3LzcAL2dyZXlzOC8xAC9ncmV5czgvMgAvZ3JleXM4LzMAL2dyZXlzOC80AC9ncmV5czgvNQAvZ3JleXM4LzYAL2dyZXlzOC83AC9ncmV5czgvOAAvZ3JleXM5LzEAL2dyZXlzOS8yAC9ncmV5czkvMwAvZ3JleXM5LzQAL2dyZXlzOS81AC9ncmV5czkvNgAvZ3JleXM5LzcAL2dyZXlzOS84AC9ncmV5czkvOQAvb3JhbmdlczMvMQAvb3JhbmdlczMvMgAvb3JhbmdlczMvMwAvb3JhbmdlczQvMQAvb3JhbmdlczQvMgAvb3JhbmdlczQvMwAvb3JhbmdlczQvNAAvb3JhbmdlczUvMQAvb3JhbmdlczUvMgAvb3JhbmdlczUvMwAvb3JhbmdlczUvNAAvb3JhbmdlczUvNQAvb3JhbmdlczYvMQAvb3JhbmdlczYvMgAvb3JhbmdlczYvMwAvb3JhbmdlczYvNAAvb3JhbmdlczYvNQAvb3JhbmdlczYvNgAvb3JhbmdlczcvMQAvb3JhbmdlczcvMgAvb3JhbmdlczcvMwAvb3JhbmdlczcvNAAvb3JhbmdlczcvNQAvb3JhbmdlczcvNgAvb3JhbmdlczcvNwAvb3JhbmdlczgvMQAvb3JhbmdlczgvMgAvb3JhbmdlczgvMwAvb3JhbmdlczgvNAAvb3JhbmdlczgvNQAvb3JhbmdlczgvNgAvb3JhbmdlczgvNwAvb3JhbmdlczgvOAAvb3JhbmdlczkvMQAvb3JhbmdlczkvMgAvb3JhbmdlczkvMwAvb3JhbmdlczkvNAAvb3JhbmdlczkvNQAvb3JhbmdlczkvNgAvb3JhbmdlczkvNwAvb3JhbmdlczkvOAAvb3JhbmdlczkvOQAvb3JyZDMvMQAvb3JyZDMvMgAvb3JyZDMvMwAvb3JyZDQvMQAvb3JyZDQvMgAvb3JyZDQvMwAvb3JyZDQvNAAvb3JyZDUvMQAvb3JyZDUvMgAvb3JyZDUvMwAvb3JyZDUvNAAvb3JyZDUvNQAvb3JyZDYvMQAvb3JyZDYvMgAvb3JyZDYvMwAvb3JyZDYvNAAvb3JyZDYvNQAvb3JyZDYvNgAvb3JyZDcvMQAvb3JyZDcvMgAvb3JyZDcvMwAvb3JyZDcvNAAvb3JyZDcvNQAvb3JyZDcvNgAvb3JyZDcvNwAvb3JyZDgvMQAvb3JyZDgvMgAvb3JyZDgvMwAvb3JyZDgvNAAvb3JyZDgvNQAvb3JyZDgvNgAvb3JyZDgvNwAvb3JyZDgvOAAvb3JyZDkvMQAvb3JyZDkvMgAvb3JyZDkvMwAvb3JyZDkvNAAvb3JyZDkvNQAvb3JyZDkvNgAvb3JyZDkvNwAvb3JyZDkvOAAvb3JyZDkvOQAvcGFpcmVkMTAvMQAvcGFpcmVkMTAvMTAAL3BhaXJlZDEwLzIAL3BhaXJlZDEwLzMAL3BhaXJlZDEwLzQAL3BhaXJlZDEwLzUAL3BhaXJlZDEwLzYAL3BhaXJlZDEwLzcAL3BhaXJlZDEwLzgAL3BhaXJlZDEwLzkAL3BhaXJlZDExLzEAL3BhaXJlZDExLzEwAC9wYWlyZWQxMS8xMQAvcGFpcmVkMTEvMgAvcGFpcmVkMTEvMwAvcGFpcmVkMTEvNAAvcGFpcmVkMTEvNQAvcGFpcmVkMTEvNgAvcGFpcmVkMTEvNwAvcGFpcmVkMTEvOAAvcGFpcmVkMTEvOQAvcGFpcmVkMTIvMQAvcGFpcmVkMTIvMTAAL3BhaXJlZDEyLzExAC9wYWlyZWQxMi8xMgAvcGFpcmVkMTIvMgAvcGFpcmVkMTIvMwAvcGFpcmVkMTIvNAAvcGFpcmVkMTIvNQAvcGFpcmVkMTIvNgAvcGFpcmVkMTIvNwAvcGFpcmVkMTIvOAAvcGFpcmVkMTIvOQAvcGFpcmVkMy8xAC9wYWlyZWQzLzIAL3BhaXJlZDMvMwAvcGFpcmVkNC8xAC9wYWlyZWQ0LzIAL3BhaXJlZDQvMwAvcGFpcmVkNC80AC9wYWlyZWQ1LzEAL3BhaXJlZDUvMgAvcGFpcmVkNS8zAC9wYWlyZWQ1LzQAL3BhaXJlZDUvNQAvcGFpcmVkNi8xAC9wYWlyZWQ2LzIAL3BhaXJlZDYvMwAvcGFpcmVkNi80AC9wYWlyZWQ2LzUAL3BhaXJlZDYvNgAvcGFpcmVkNy8xAC9wYWlyZWQ3LzIAL3BhaXJlZDcvMwAvcGFpcmVkNy80AC9wYWlyZWQ3LzUAL3BhaXJlZDcvNgAvcGFpcmVkNy83AC9wYWlyZWQ4LzEAL3BhaXJlZDgvMgAvcGFpcmVkOC8zAC9wYWlyZWQ4LzQAL3BhaXJlZDgvNQAvcGFpcmVkOC82AC9wYWlyZWQ4LzcAL3BhaXJlZDgvOAAvcGFpcmVkOS8xAC9wYWlyZWQ5LzIAL3BhaXJlZDkvMwAvcGFpcmVkOS80AC9wYWlyZWQ5LzUAL3BhaXJlZDkvNgAvcGFpcmVkOS83AC9wYWlyZWQ5LzgAL3BhaXJlZDkvOQAvcGFzdGVsMTMvMQAvcGFzdGVsMTMvMgAvcGFzdGVsMTMvMwAvcGFzdGVsMTQvMQAvcGFzdGVsMTQvMgAvcGFzdGVsMTQvMwAvcGFzdGVsMTQvNAAvcGFzdGVsMTUvMQAvcGFzdGVsMTUvMgAvcGFzdGVsMTUvMwAvcGFzdGVsMTUvNAAvcGFzdGVsMTUvNQAvcGFzdGVsMTYvMQAvcGFzdGVsMTYvMgAvcGFzdGVsMTYvMwAvcGFzdGVsMTYvNAAvcGFzdGVsMTYvNQAvcGFzdGVsMTYvNgAvcGFzdGVsMTcvMQAvcGFzdGVsMTcvMgAvcGFzdGVsMTcvMwAvcGFzdGVsMTcvNAAvcGFzdGVsMTcvNQAvcGFzdGVsMTcvNgAvcGFzdGVsMTcvNwAvcGFzdGVsMTgvMQAvcGFzdGVsMTgvMgAvcGFzdGVsMTgvMwAvcGFzdGVsMTgvNAAvcGFzdGVsMTgvNQAvcGFzdGVsMTgvNgAvcGFzdGVsMTgvNwAvcGFzdGVsMTgvOAAvcGFzdGVsMTkvMQAvcGFzdGVsMTkvMgAvcGFzdGVsMTkvMwAvcGFzdGVsMTkvNAAvcGFzdGVsMTkvNQAvcGFzdGVsMTkvNgAvcGFzdGVsMTkvNwAvcGFzdGVsMTkvOAAvcGFzdGVsMTkvOQAvcGFzdGVsMjMvMQAvcGFzdGVsMjMvMgAvcGFzdGVsMjMvMwAvcGFzdGVsMjQvMQAvcGFzdGVsMjQvMgAvcGFzdGVsMjQvMwAvcGFzdGVsMjQvNAAvcGFzdGVsMjUvMQAvcGFzdGVsMjUvMgAvcGFzdGVsMjUvMwAvcGFzdGVsMjUvNAAvcGFzdGVsMjUvNQAvcGFzdGVsMjYvMQAvcGFzdGVsMjYvMgAvcGFzdGVsMjYvMwAvcGFzdGVsMjYvNAAvcGFzdGVsMjYvNQAvcGFzdGVsMjYvNgAvcGFzdGVsMjcvMQAvcGFzdGVsMjcvMgAvcGFzdGVsMjcvMwAvcGFzdGVsMjcvNAAvcGFzdGVsMjcvNQAvcGFzdGVsMjcvNgAvcGFzdGVsMjcvNwAvcGFzdGVsMjgvMQAvcGFzdGVsMjgvMgAvcGFzdGVsMjgvMwAvcGFzdGVsMjgvNAAvcGFzdGVsMjgvNQAvcGFzdGVsMjgvNgAvcGFzdGVsMjgvNwAvcGFzdGVsMjgvOAAvcGl5ZzEwLzEAL3BpeWcxMC8xMAAvcGl5ZzEwLzIAL3BpeWcxMC8zAC9waXlnMTAvNAAvcGl5ZzEwLzUAL3BpeWcxMC82AC9waXlnMTAvNwAvcGl5ZzEwLzgAL3BpeWcxMC85AC9waXlnMTEvMQAvcGl5ZzExLzEwAC9waXlnMTEvMTEAL3BpeWcxMS8yAC9waXlnMTEvMwAvcGl5ZzExLzQAL3BpeWcxMS81AC9waXlnMTEvNgAvcGl5ZzExLzcAL3BpeWcxMS84AC9waXlnMTEvOQAvcGl5ZzMvMQAvcGl5ZzMvMgAvcGl5ZzMvMwAvcGl5ZzQvMQAvcGl5ZzQvMgAvcGl5ZzQvMwAvcGl5ZzQvNAAvcGl5ZzUvMQAvcGl5ZzUvMgAvcGl5ZzUvMwAvcGl5ZzUvNAAvcGl5ZzUvNQAvcGl5ZzYvMQAvcGl5ZzYvMgAvcGl5ZzYvMwAvcGl5ZzYvNAAvcGl5ZzYvNQAvcGl5ZzYvNgAvcGl5ZzcvMQAvcGl5ZzcvMgAvcGl5ZzcvMwAvcGl5ZzcvNAAvcGl5ZzcvNQAvcGl5ZzcvNgAvcGl5ZzcvNwAvcGl5ZzgvMQAvcGl5ZzgvMgAvcGl5ZzgvMwAvcGl5ZzgvNAAvcGl5ZzgvNQAvcGl5ZzgvNgAvcGl5ZzgvNwAvcGl5ZzgvOAAvcGl5ZzkvMQAvcGl5ZzkvMgAvcGl5ZzkvMwAvcGl5ZzkvNAAvcGl5ZzkvNQAvcGl5ZzkvNgAvcGl5ZzkvNwAvcGl5ZzkvOAAvcGl5ZzkvOQAvcHJnbjEwLzEAL3ByZ24xMC8xMAAvcHJnbjEwLzIAL3ByZ24xMC8zAC9wcmduMTAvNAAvcHJnbjEwLzUAL3ByZ24xMC82AC9wcmduMTAvNwAvcHJnbjEwLzgAL3ByZ24xMC85AC9wcmduMTEvMQAvcHJnbjExLzEwAC9wcmduMTEvMTEAL3ByZ24xMS8yAC9wcmduMTEvMwAvcHJnbjExLzQAL3ByZ24xMS81AC9wcmduMTEvNgAvcHJnbjExLzcAL3ByZ24xMS84AC9wcmduMTEvOQAvcHJnbjMvMQAvcHJnbjMvMgAvcHJnbjMvMwAvcHJnbjQvMQAvcHJnbjQvMgAvcHJnbjQvMwAvcHJnbjQvNAAvcHJnbjUvMQAvcHJnbjUvMgAvcHJnbjUvMwAvcHJnbjUvNAAvcHJnbjUvNQAvcHJnbjYvMQAvcHJnbjYvMgAvcHJnbjYvMwAvcHJnbjYvNAAvcHJnbjYvNQAvcHJnbjYvNgAvcHJnbjcvMQAvcHJnbjcvMgAvcHJnbjcvMwAvcHJnbjcvNAAvcHJnbjcvNQAvcHJnbjcvNgAvcHJnbjcvNwAvcHJnbjgvMQAvcHJnbjgvMgAvcHJnbjgvMwAvcHJnbjgvNAAvcHJnbjgvNQAvcHJnbjgvNgAvcHJnbjgvNwAvcHJnbjgvOAAvcHJnbjkvMQAvcHJnbjkvMgAvcHJnbjkvMwAvcHJnbjkvNAAvcHJnbjkvNQAvcHJnbjkvNgAvcHJnbjkvNwAvcHJnbjkvOAAvcHJnbjkvOQAvcHVidTMvMQAvcHVidTMvMgAvcHVidTMvMwAvcHVidTQvMQAvcHVidTQvMgAvcHVidTQvMwAvcHVidTQvNAAvcHVidTUvMQAvcHVidTUvMgAvcHVidTUvMwAvcHVidTUvNAAvcHVidTUvNQAvcHVidTYvMQAvcHVidTYvMgAvcHVidTYvMwAvcHVidTYvNAAvcHVidTYvNQAvcHVidTYvNgAvcHVidTcvMQAvcHVidTcvMgAvcHVidTcvMwAvcHVidTcvNAAvcHVidTcvNQAvcHVidTcvNgAvcHVidTcvNwAvcHVidTgvMQAvcHVidTgvMgAvcHVidTgvMwAvcHVidTgvNAAvcHVidTgvNQAvcHVidTgvNgAvcHVidTgvNwAvcHVidTgvOAAvcHVidTkvMQAvcHVidTkvMgAvcHVidTkvMwAvcHVidTkvNAAvcHVidTkvNQAvcHVidTkvNgAvcHVidTkvNwAvcHVidTkvOAAvcHVidTkvOQAvcHVidWduMy8xAC9wdWJ1Z24zLzIAL3B1YnVnbjMvMwAvcHVidWduNC8xAC9wdWJ1Z240LzIAL3B1YnVnbjQvMwAvcHVidWduNC80AC9wdWJ1Z241LzEAL3B1YnVnbjUvMgAvcHVidWduNS8zAC9wdWJ1Z241LzQAL3B1YnVnbjUvNQAvcHVidWduNi8xAC9wdWJ1Z242LzIAL3B1YnVnbjYvMwAvcHVidWduNi80AC9wdWJ1Z242LzUAL3B1YnVnbjYvNgAvcHVidWduNy8xAC9wdWJ1Z243LzIAL3B1YnVnbjcvMwAvcHVidWduNy80AC9wdWJ1Z243LzUAL3B1YnVnbjcvNgAvcHVidWduNy83AC9wdWJ1Z244LzEAL3B1YnVnbjgvMgAvcHVidWduOC8zAC9wdWJ1Z244LzQAL3B1YnVnbjgvNQAvcHVidWduOC82AC9wdWJ1Z244LzcAL3B1YnVnbjgvOAAvcHVidWduOS8xAC9wdWJ1Z245LzIAL3B1YnVnbjkvMwAvcHVidWduOS80AC9wdWJ1Z245LzUAL3B1YnVnbjkvNgAvcHVidWduOS83AC9wdWJ1Z245LzgAL3B1YnVnbjkvOQAvcHVvcjEwLzEAL3B1b3IxMC8xMAAvcHVvcjEwLzIAL3B1b3IxMC8zAC9wdW9yMTAvNAAvcHVvcjEwLzUAL3B1b3IxMC82AC9wdW9yMTAvNwAvcHVvcjEwLzgAL3B1b3IxMC85AC9wdW9yMTEvMQAvcHVvcjExLzEwAC9wdW9yMTEvMTEAL3B1b3IxMS8yAC9wdW9yMTEvMwAvcHVvcjExLzQAL3B1b3IxMS81AC9wdW9yMTEvNgAvcHVvcjExLzcAL3B1b3IxMS84AC9wdW9yMTEvOQAvcHVvcjMvMQAvcHVvcjMvMgAvcHVvcjMvMwAvcHVvcjQvMQAvcHVvcjQvMgAvcHVvcjQvMwAvcHVvcjQvNAAvcHVvcjUvMQAvcHVvcjUvMgAvcHVvcjUvMwAvcHVvcjUvNAAvcHVvcjUvNQAvcHVvcjYvMQAvcHVvcjYvMgAvcHVvcjYvMwAvcHVvcjYvNAAvcHVvcjYvNQAvcHVvcjYvNgAvcHVvcjcvMQAvcHVvcjcvMgAvcHVvcjcvMwAvcHVvcjcvNAAvcHVvcjcvNQAvcHVvcjcvNgAvcHVvcjcvNwAvcHVvcjgvMQAvcHVvcjgvMgAvcHVvcjgvMwAvcHVvcjgvNAAvcHVvcjgvNQAvcHVvcjgvNgAvcHVvcjgvNwAvcHVvcjgvOAAvcHVvcjkvMQAvcHVvcjkvMgAvcHVvcjkvMwAvcHVvcjkvNAAvcHVvcjkvNQAvcHVvcjkvNgAvcHVvcjkvNwAvcHVvcjkvOAAvcHVvcjkvOQAvcHVyZDMvMQAvcHVyZDMvMgAvcHVyZDMvMwAvcHVyZDQvMQAvcHVyZDQvMgAvcHVyZDQvMwAvcHVyZDQvNAAvcHVyZDUvMQAvcHVyZDUvMgAvcHVyZDUvMwAvcHVyZDUvNAAvcHVyZDUvNQAvcHVyZDYvMQAvcHVyZDYvMgAvcHVyZDYvMwAvcHVyZDYvNAAvcHVyZDYvNQAvcHVyZDYvNgAvcHVyZDcvMQAvcHVyZDcvMgAvcHVyZDcvMwAvcHVyZDcvNAAvcHVyZDcvNQAvcHVyZDcvNgAvcHVyZDcvNwAvcHVyZDgvMQAvcHVyZDgvMgAvcHVyZDgvMwAvcHVyZDgvNAAvcHVyZDgvNQAvcHVyZDgvNgAvcHVyZDgvNwAvcHVyZDgvOAAvcHVyZDkvMQAvcHVyZDkvMgAvcHVyZDkvMwAvcHVyZDkvNAAvcHVyZDkvNQAvcHVyZDkvNgAvcHVyZDkvNwAvcHVyZDkvOAAvcHVyZDkvOQAvcHVycGxlczMvMQAvcHVycGxlczMvMgAvcHVycGxlczMvMwAvcHVycGxlczQvMQAvcHVycGxlczQvMgAvcHVycGxlczQvMwAvcHVycGxlczQvNAAvcHVycGxlczUvMQAvcHVycGxlczUvMgAvcHVycGxlczUvMwAvcHVycGxlczUvNAAvcHVycGxlczUvNQAvcHVycGxlczYvMQAvcHVycGxlczYvMgAvcHVycGxlczYvMwAvcHVycGxlczYvNAAvcHVycGxlczYvNQAvcHVycGxlczYvNgAvcHVycGxlczcvMQAvcHVycGxlczcvMgAvcHVycGxlczcvMwAvcHVycGxlczcvNAAvcHVycGxlczcvNQAvcHVycGxlczcvNgAvcHVycGxlczcvNwAvcHVycGxlczgvMQAvcHVycGxlczgvMgAvcHVycGxlczgvMwAvcHVycGxlczgvNAAvcHVycGxlczgvNQAvcHVycGxlczgvNgAvcHVycGxlczgvNwAvcHVycGxlczgvOAAvcHVycGxlczkvMQAvcHVycGxlczkvMgAvcHVycGxlczkvMwAvcHVycGxlczkvNAAvcHVycGxlczkvNQAvcHVycGxlczkvNgAvcHVycGxlczkvNwAvcHVycGxlczkvOAAvcHVycGxlczkvOQAvcmRidTEwLzEAL3JkYnUxMC8xMAAvcmRidTEwLzIAL3JkYnUxMC8zAC9yZGJ1MTAvNAAvcmRidTEwLzUAL3JkYnUxMC82AC9yZGJ1MTAvNwAvcmRidTEwLzgAL3JkYnUxMC85AC9yZGJ1MTEvMQAvcmRidTExLzEwAC9yZGJ1MTEvMTEAL3JkYnUxMS8yAC9yZGJ1MTEvMwAvcmRidTExLzQAL3JkYnUxMS81AC9yZGJ1MTEvNgAvcmRidTExLzcAL3JkYnUxMS84AC9yZGJ1MTEvOQAvcmRidTMvMQAvcmRidTMvMgAvcmRidTMvMwAvcmRidTQvMQAvcmRidTQvMgAvcmRidTQvMwAvcmRidTQvNAAvcmRidTUvMQAvcmRidTUvMgAvcmRidTUvMwAvcmRidTUvNAAvcmRidTUvNQAvcmRidTYvMQAvcmRidTYvMgAvcmRidTYvMwAvcmRidTYvNAAvcmRidTYvNQAvcmRidTYvNgAvcmRidTcvMQAvcmRidTcvMgAvcmRidTcvMwAvcmRidTcvNAAvcmRidTcvNQAvcmRidTcvNgAvcmRidTcvNwAvcmRidTgvMQAvcmRidTgvMgAvcmRidTgvMwAvcmRidTgvNAAvcmRidTgvNQAvcmRidTgvNgAvcmRidTgvNwAvcmRidTgvOAAvcmRidTkvMQAvcmRidTkvMgAvcmRidTkvMwAvcmRidTkvNAAvcmRidTkvNQAvcmRidTkvNgAvcmRidTkvNwAvcmRidTkvOAAvcmRidTkvOQAvcmRneTEwLzEAL3JkZ3kxMC8xMAAvcmRneTEwLzIAL3JkZ3kxMC8zAC9yZGd5MTAvNAAvcmRneTEwLzUAL3JkZ3kxMC82AC9yZGd5MTAvNwAvcmRneTEwLzgAL3JkZ3kxMC85AC9yZGd5MTEvMQAvcmRneTExLzEwAC9yZGd5MTEvMTEAL3JkZ3kxMS8yAC9yZGd5MTEvMwAvcmRneTExLzQAL3JkZ3kxMS81AC9yZGd5MTEvNgAvcmRneTExLzcAL3JkZ3kxMS84AC9yZGd5MTEvOQAvcmRneTMvMQAvcmRneTMvMgAvcmRneTMvMwAvcmRneTQvMQAvcmRneTQvMgAvcmRneTQvMwAvcmRneTQvNAAvcmRneTUvMQAvcmRneTUvMgAvcmRneTUvMwAvcmRneTUvNAAvcmRneTUvNQAvcmRneTYvMQAvcmRneTYvMgAvcmRneTYvMwAvcmRneTYvNAAvcmRneTYvNQAvcmRneTYvNgAvcmRneTcvMQAvcmRneTcvMgAvcmRneTcvMwAvcmRneTcvNAAvcmRneTcvNQAvcmRneTcvNgAvcmRneTcvNwAvcmRneTgvMQAvcmRneTgvMgAvcmRneTgvMwAvcmRneTgvNAAvcmRneTgvNQAvcmRneTgvNgAvcmRneTgvNwAvcmRneTgvOAAvcmRneTkvMQAvcmRneTkvMgAvcmRneTkvMwAvcmRneTkvNAAvcmRneTkvNQAvcmRneTkvNgAvcmRneTkvNwAvcmRneTkvOAAvcmRneTkvOQAvcmRwdTMvMQAvcmRwdTMvMgAvcmRwdTMvMwAvcmRwdTQvMQAvcmRwdTQvMgAvcmRwdTQvMwAvcmRwdTQvNAAvcmRwdTUvMQAvcmRwdTUvMgAvcmRwdTUvMwAvcmRwdTUvNAAvcmRwdTUvNQAvcmRwdTYvMQAvcmRwdTYvMgAvcmRwdTYvMwAvcmRwdTYvNAAvcmRwdTYvNQAvcmRwdTYvNgAvcmRwdTcvMQAvcmRwdTcvMgAvcmRwdTcvMwAvcmRwdTcvNAAvcmRwdTcvNQAvcmRwdTcvNgAvcmRwdTcvNwAvcmRwdTgvMQAvcmRwdTgvMgAvcmRwdTgvMwAvcmRwdTgvNAAvcmRwdTgvNQAvcmRwdTgvNgAvcmRwdTgvNwAvcmRwdTgvOAAvcmRwdTkvMQAvcmRwdTkvMgAvcmRwdTkvMwAvcmRwdTkvNAAvcmRwdTkvNQAvcmRwdTkvNgAvcmRwdTkvNwAvcmRwdTkvOAAvcmRwdTkvOQAvcmR5bGJ1MTAvMQAvcmR5bGJ1MTAvMTAAL3JkeWxidTEwLzIAL3JkeWxidTEwLzMAL3JkeWxidTEwLzQAL3JkeWxidTEwLzUAL3JkeWxidTEwLzYAL3JkeWxidTEwLzcAL3JkeWxidTEwLzgAL3JkeWxidTEwLzkAL3JkeWxidTExLzEAL3JkeWxidTExLzEwAC9yZHlsYnUxMS8xMQAvcmR5bGJ1MTEvMgAvcmR5bGJ1MTEvMwAvcmR5bGJ1MTEvNAAvcmR5bGJ1MTEvNQAvcmR5bGJ1MTEvNgAvcmR5bGJ1MTEvNwAvcmR5bGJ1MTEvOAAvcmR5bGJ1MTEvOQAvcmR5bGJ1My8xAC9yZHlsYnUzLzIAL3JkeWxidTMvMwAvcmR5bGJ1NC8xAC9yZHlsYnU0LzIAL3JkeWxidTQvMwAvcmR5bGJ1NC80AC9yZHlsYnU1LzEAL3JkeWxidTUvMgAvcmR5bGJ1NS8zAC9yZHlsYnU1LzQAL3JkeWxidTUvNQAvcmR5bGJ1Ni8xAC9yZHlsYnU2LzIAL3JkeWxidTYvMwAvcmR5bGJ1Ni80AC9yZHlsYnU2LzUAL3JkeWxidTYvNgAvcmR5bGJ1Ny8xAC9yZHlsYnU3LzIAL3JkeWxidTcvMwAvcmR5bGJ1Ny80AC9yZHlsYnU3LzUAL3JkeWxidTcvNgAvcmR5bGJ1Ny83AC9yZHlsYnU4LzEAL3JkeWxidTgvMgAvcmR5bGJ1OC8zAC9yZHlsYnU4LzQAL3JkeWxidTgvNQAvcmR5bGJ1OC82AC9yZHlsYnU4LzcAL3JkeWxidTgvOAAvcmR5bGJ1OS8xAC9yZHlsYnU5LzIAL3JkeWxidTkvMwAvcmR5bGJ1OS80AC9yZHlsYnU5LzUAL3JkeWxidTkvNgAvcmR5bGJ1OS83AC9yZHlsYnU5LzgAL3JkeWxidTkvOQAvcmR5bGduMTAvMQAvcmR5bGduMTAvMTAAL3JkeWxnbjEwLzIAL3JkeWxnbjEwLzMAL3JkeWxnbjEwLzQAL3JkeWxnbjEwLzUAL3JkeWxnbjEwLzYAL3JkeWxnbjEwLzcAL3JkeWxnbjEwLzgAL3JkeWxnbjEwLzkAL3JkeWxnbjExLzEAL3JkeWxnbjExLzEwAC9yZHlsZ24xMS8xMQAvcmR5bGduMTEvMgAvcmR5bGduMTEvMwAvcmR5bGduMTEvNAAvcmR5bGduMTEvNQAvcmR5bGduMTEvNgAvcmR5bGduMTEvNwAvcmR5bGduMTEvOAAvcmR5bGduMTEvOQAvcmR5bGduMy8xAC9yZHlsZ24zLzIAL3JkeWxnbjMvMwAvcmR5bGduNC8xAC9yZHlsZ240LzIAL3JkeWxnbjQvMwAvcmR5bGduNC80AC9yZHlsZ241LzEAL3JkeWxnbjUvMgAvcmR5bGduNS8zAC9yZHlsZ241LzQAL3JkeWxnbjUvNQAvcmR5bGduNi8xAC9yZHlsZ242LzIAL3JkeWxnbjYvMwAvcmR5bGduNi80AC9yZHlsZ242LzUAL3JkeWxnbjYvNgAvcmR5bGduNy8xAC9yZHlsZ243LzIAL3JkeWxnbjcvMwAvcmR5bGduNy80AC9yZHlsZ243LzUAL3JkeWxnbjcvNgAvcmR5bGduNy83AC9yZHlsZ244LzEAL3JkeWxnbjgvMgAvcmR5bGduOC8zAC9yZHlsZ244LzQAL3JkeWxnbjgvNQAvcmR5bGduOC82AC9yZHlsZ244LzcAL3JkeWxnbjgvOAAvcmR5bGduOS8xAC9yZHlsZ245LzIAL3JkeWxnbjkvMwAvcmR5bGduOS80AC9yZHlsZ245LzUAL3JkeWxnbjkvNgAvcmR5bGduOS83AC9yZHlsZ245LzgAL3JkeWxnbjkvOQAvcmVkczMvMQAvcmVkczMvMgAvcmVkczMvMwAvcmVkczQvMQAvcmVkczQvMgAvcmVkczQvMwAvcmVkczQvNAAvcmVkczUvMQAvcmVkczUvMgAvcmVkczUvMwAvcmVkczUvNAAvcmVkczUvNQAvcmVkczYvMQAvcmVkczYvMgAvcmVkczYvMwAvcmVkczYvNAAvcmVkczYvNQAvcmVkczYvNgAvcmVkczcvMQAvcmVkczcvMgAvcmVkczcvMwAvcmVkczcvNAAvcmVkczcvNQAvcmVkczcvNgAvcmVkczcvNwAvcmVkczgvMQAvcmVkczgvMgAvcmVkczgvMwAvcmVkczgvNAAvcmVkczgvNQAvcmVkczgvNgAvcmVkczgvNwAvcmVkczgvOAAvcmVkczkvMQAvcmVkczkvMgAvcmVkczkvMwAvcmVkczkvNAAvcmVkczkvNQAvcmVkczkvNgAvcmVkczkvNwAvcmVkczkvOAAvcmVkczkvOQAvc2V0MTMvMQAvc2V0MTMvMgAvc2V0MTMvMwAvc2V0MTQvMQAvc2V0MTQvMgAvc2V0MTQvMwAvc2V0MTQvNAAvc2V0MTUvMQAvc2V0MTUvMgAvc2V0MTUvMwAvc2V0MTUvNAAvc2V0MTUvNQAvc2V0MTYvMQAvc2V0MTYvMgAvc2V0MTYvMwAvc2V0MTYvNAAvc2V0MTYvNQAvc2V0MTYvNgAvc2V0MTcvMQAvc2V0MTcvMgAvc2V0MTcvMwAvc2V0MTcvNAAvc2V0MTcvNQAvc2V0MTcvNgAvc2V0MTcvNwAvc2V0MTgvMQAvc2V0MTgvMgAvc2V0MTgvMwAvc2V0MTgvNAAvc2V0MTgvNQAvc2V0MTgvNgAvc2V0MTgvNwAvc2V0MTgvOAAvc2V0MTkvMQAvc2V0MTkvMgAvc2V0MTkvMwAvc2V0MTkvNAAvc2V0MTkvNQAvc2V0MTkvNgAvc2V0MTkvNwAvc2V0MTkvOAAvc2V0MTkvOQAvc2V0MjMvMQAvc2V0MjMvMgAvc2V0MjMvMwAvc2V0MjQvMQAvc2V0MjQvMgAvc2V0MjQvMwAvc2V0MjQvNAAvc2V0MjUvMQAvc2V0MjUvMgAvc2V0MjUvMwAvc2V0MjUvNAAvc2V0MjUvNQAvc2V0MjYvMQAvc2V0MjYvMgAvc2V0MjYvMwAvc2V0MjYvNAAvc2V0MjYvNQAvc2V0MjYvNgAvc2V0MjcvMQAvc2V0MjcvMgAvc2V0MjcvMwAvc2V0MjcvNAAvc2V0MjcvNQAvc2V0MjcvNgAvc2V0MjcvNwAvc2V0MjgvMQAvc2V0MjgvMgAvc2V0MjgvMwAvc2V0MjgvNAAvc2V0MjgvNQAvc2V0MjgvNgAvc2V0MjgvNwAvc2V0MjgvOAAvc2V0MzEwLzEAL3NldDMxMC8xMAAvc2V0MzEwLzIAL3NldDMxMC8zAC9zZXQzMTAvNAAvc2V0MzEwLzUAL3NldDMxMC82AC9zZXQzMTAvNwAvc2V0MzEwLzgAL3NldDMxMC85AC9zZXQzMTEvMQAvc2V0MzExLzEwAC9zZXQzMTEvMTEAL3NldDMxMS8yAC9zZXQzMTEvMwAvc2V0MzExLzQAL3NldDMxMS81AC9zZXQzMTEvNgAvc2V0MzExLzcAL3NldDMxMS84AC9zZXQzMTEvOQAvc2V0MzEyLzEAL3NldDMxMi8xMAAvc2V0MzEyLzExAC9zZXQzMTIvMTIAL3NldDMxMi8yAC9zZXQzMTIvMwAvc2V0MzEyLzQAL3NldDMxMi81AC9zZXQzMTIvNgAvc2V0MzEyLzcAL3NldDMxMi84AC9zZXQzMTIvOQAvc2V0MzMvMQAvc2V0MzMvMgAvc2V0MzMvMwAvc2V0MzQvMQAvc2V0MzQvMgAvc2V0MzQvMwAvc2V0MzQvNAAvc2V0MzUvMQAvc2V0MzUvMgAvc2V0MzUvMwAvc2V0MzUvNAAvc2V0MzUvNQAvc2V0MzYvMQAvc2V0MzYvMgAvc2V0MzYvMwAvc2V0MzYvNAAvc2V0MzYvNQAvc2V0MzYvNgAvc2V0MzcvMQAvc2V0MzcvMgAvc2V0MzcvMwAvc2V0MzcvNAAvc2V0MzcvNQAvc2V0MzcvNgAvc2V0MzcvNwAvc2V0MzgvMQAvc2V0MzgvMgAvc2V0MzgvMwAvc2V0MzgvNAAvc2V0MzgvNQAvc2V0MzgvNgAvc2V0MzgvNwAvc2V0MzgvOAAvc2V0MzkvMQAvc2V0MzkvMgAvc2V0MzkvMwAvc2V0MzkvNAAvc2V0MzkvNQAvc2V0MzkvNgAvc2V0MzkvNwAvc2V0MzkvOAAvc2V0MzkvOQAvc3BlY3RyYWwxMC8xAC9zcGVjdHJhbDEwLzEwAC9zcGVjdHJhbDEwLzIAL3NwZWN0cmFsMTAvMwAvc3BlY3RyYWwxMC80AC9zcGVjdHJhbDEwLzUAL3NwZWN0cmFsMTAvNgAvc3BlY3RyYWwxMC83AC9zcGVjdHJhbDEwLzgAL3NwZWN0cmFsMTAvOQAvc3BlY3RyYWwxMS8xAC9zcGVjdHJhbDExLzEwAC9zcGVjdHJhbDExLzExAC9zcGVjdHJhbDExLzIAL3NwZWN0cmFsMTEvMwAvc3BlY3RyYWwxMS80AC9zcGVjdHJhbDExLzUAL3NwZWN0cmFsMTEvNgAvc3BlY3RyYWwxMS83AC9zcGVjdHJhbDExLzgAL3NwZWN0cmFsMTEvOQAvc3BlY3RyYWwzLzEAL3NwZWN0cmFsMy8yAC9zcGVjdHJhbDMvMwAvc3BlY3RyYWw0LzEAL3NwZWN0cmFsNC8yAC9zcGVjdHJhbDQvMwAvc3BlY3RyYWw0LzQAL3NwZWN0cmFsNS8xAC9zcGVjdHJhbDUvMgAvc3BlY3RyYWw1LzMAL3NwZWN0cmFsNS80AC9zcGVjdHJhbDUvNQAvc3BlY3RyYWw2LzEAL3NwZWN0cmFsNi8yAC9zcGVjdHJhbDYvMwAvc3BlY3RyYWw2LzQAL3NwZWN0cmFsNi81AC9zcGVjdHJhbDYvNgAvc3BlY3RyYWw3LzEAL3NwZWN0cmFsNy8yAC9zcGVjdHJhbDcvMwAvc3BlY3RyYWw3LzQAL3NwZWN0cmFsNy81AC9zcGVjdHJhbDcvNgAvc3BlY3RyYWw3LzcAL3NwZWN0cmFsOC8xAC9zcGVjdHJhbDgvMgAvc3BlY3RyYWw4LzMAL3NwZWN0cmFsOC80AC9zcGVjdHJhbDgvNQAvc3BlY3RyYWw4LzYAL3NwZWN0cmFsOC83AC9zcGVjdHJhbDgvOAAvc3BlY3RyYWw5LzEAL3NwZWN0cmFsOS8yAC9zcGVjdHJhbDkvMwAvc3BlY3RyYWw5LzQAL3NwZWN0cmFsOS81AC9zcGVjdHJhbDkvNgAvc3BlY3RyYWw5LzcAL3NwZWN0cmFsOS84AC9zcGVjdHJhbDkvOQAvc3ZnL2FsaWNlYmx1ZQAvc3ZnL2FudGlxdWV3aGl0ZQAvc3ZnL2FxdWEAL3N2Zy9hcXVhbWFyaW5lAC9zdmcvYXp1cmUAL3N2Zy9iZWlnZQAvc3ZnL2Jpc3F1ZQAvc3ZnL2JsYWNrAC9zdmcvYmxhbmNoZWRhbG1vbmQAL3N2Zy9ibHVlAC9zdmcvYmx1ZXZpb2xldAAvc3ZnL2Jyb3duAC9zdmcvYnVybHl3b29kAC9zdmcvY2FkZXRibHVlAC9zdmcvY2hhcnRyZXVzZQAvc3ZnL2Nob2NvbGF0ZQAvc3ZnL2NvcmFsAC9zdmcvY29ybmZsb3dlcmJsdWUAL3N2Zy9jb3Juc2lsawAvc3ZnL2NyaW1zb24AL3N2Zy9jeWFuAC9zdmcvZGFya2JsdWUAL3N2Zy9kYXJrY3lhbgAvc3ZnL2Rhcmtnb2xkZW5yb2QAL3N2Zy9kYXJrZ3JheQAvc3ZnL2RhcmtncmVlbgAvc3ZnL2RhcmtncmV5AC9zdmcvZGFya2toYWtpAC9zdmcvZGFya21hZ2VudGEAL3N2Zy9kYXJrb2xpdmVncmVlbgAvc3ZnL2RhcmtvcmFuZ2UAL3N2Zy9kYXJrb3JjaGlkAC9zdmcvZGFya3JlZAAvc3ZnL2RhcmtzYWxtb24AL3N2Zy9kYXJrc2VhZ3JlZW4AL3N2Zy9kYXJrc2xhdGVibHVlAC9zdmcvZGFya3NsYXRlZ3JheQAvc3ZnL2RhcmtzbGF0ZWdyZXkAL3N2Zy9kYXJrdHVycXVvaXNlAC9zdmcvZGFya3Zpb2xldAAvc3ZnL2RlZXBwaW5rAC9zdmcvZGVlcHNreWJsdWUAL3N2Zy9kaW1ncmF5AC9zdmcvZGltZ3JleQAvc3ZnL2RvZGdlcmJsdWUAL3N2Zy9maXJlYnJpY2sAL3N2Zy9mbG9yYWx3aGl0ZQAvc3ZnL2ZvcmVzdGdyZWVuAC9zdmcvZnVjaHNpYQAvc3ZnL2dhaW5zYm9ybwAvc3ZnL2dob3N0d2hpdGUAL3N2Zy9nb2xkAC9zdmcvZ29sZGVucm9kAC9zdmcvZ3JheQAvc3ZnL2dyZWVuAC9zdmcvZ3JlZW55ZWxsb3cAL3N2Zy9ncmV5AC9zdmcvaG9uZXlkZXcAL3N2Zy9ob3RwaW5rAC9zdmcvaW5kaWFucmVkAC9zdmcvaW5kaWdvAC9zdmcvaXZvcnkAL3N2Zy9raGFraQAvc3ZnL2xhdmVuZGVyAC9zdmcvbGF2ZW5kZXJibHVzaAAvc3ZnL2xhd25ncmVlbgAvc3ZnL2xlbW9uY2hpZmZvbgAvc3ZnL2xpZ2h0Ymx1ZQAvc3ZnL2xpZ2h0Y29yYWwAL3N2Zy9saWdodGN5YW4AL3N2Zy9saWdodGdvbGRlbnJvZHllbGxvdwAvc3ZnL2xpZ2h0Z3JheQAvc3ZnL2xpZ2h0Z3JlZW4AL3N2Zy9saWdodGdyZXkAL3N2Zy9saWdodHBpbmsAL3N2Zy9saWdodHNhbG1vbgAvc3ZnL2xpZ2h0c2VhZ3JlZW4AL3N2Zy9saWdodHNreWJsdWUAL3N2Zy9saWdodHNsYXRlZ3JheQAvc3ZnL2xpZ2h0c2xhdGVncmV5AC9zdmcvbGlnaHRzdGVlbGJsdWUAL3N2Zy9saWdodHllbGxvdwAvc3ZnL2xpbWUAL3N2Zy9saW1lZ3JlZW4AL3N2Zy9saW5lbgAvc3ZnL21hZ2VudGEAL3N2Zy9tYXJvb24AL3N2Zy9tZWRpdW1hcXVhbWFyaW5lAC9zdmcvbWVkaXVtYmx1ZQAvc3ZnL21lZGl1bW9yY2hpZAAvc3ZnL21lZGl1bXB1cnBsZQAvc3ZnL21lZGl1bXNlYWdyZWVuAC9zdmcvbWVkaXVtc2xhdGVibHVlAC9zdmcvbWVkaXVtc3ByaW5nZ3JlZW4AL3N2Zy9tZWRpdW10dXJxdW9pc2UAL3N2Zy9tZWRpdW12aW9sZXRyZWQAL3N2Zy9taWRuaWdodGJsdWUAL3N2Zy9taW50Y3JlYW0AL3N2Zy9taXN0eXJvc2UAL3N2Zy9tb2NjYXNpbgAvc3ZnL25hdmFqb3doaXRlAC9zdmcvbmF2eQAvc3ZnL29sZGxhY2UAL3N2Zy9vbGl2ZQAvc3ZnL29saXZlZHJhYgAvc3ZnL29yYW5nZQAvc3ZnL29yYW5nZXJlZAAvc3ZnL29yY2hpZAAvc3ZnL3BhbGVnb2xkZW5yb2QAL3N2Zy9wYWxlZ3JlZW4AL3N2Zy9wYWxldHVycXVvaXNlAC9zdmcvcGFsZXZpb2xldHJlZAAvc3ZnL3BhcGF5YXdoaXAAL3N2Zy9wZWFjaHB1ZmYAL3N2Zy9wZXJ1AC9zdmcvcGluawAvc3ZnL3BsdW0AL3N2Zy9wb3dkZXJibHVlAC9zdmcvcHVycGxlAC9zdmcvcmVkAC9zdmcvcm9zeWJyb3duAC9zdmcvcm95YWxibHVlAC9zdmcvc2FkZGxlYnJvd24AL3N2Zy9zYWxtb24AL3N2Zy9zYW5keWJyb3duAC9zdmcvc2VhZ3JlZW4AL3N2Zy9zZWFzaGVsbAAvc3ZnL3NpZW5uYQAvc3ZnL3NpbHZlcgAvc3ZnL3NreWJsdWUAL3N2Zy9zbGF0ZWJsdWUAL3N2Zy9zbGF0ZWdyYXkAL3N2Zy9zbGF0ZWdyZXkAL3N2Zy9zbm93AC9zdmcvc3ByaW5nZ3JlZW4AL3N2Zy9zdGVlbGJsdWUAL3N2Zy90YW4AL3N2Zy90ZWFsAC9zdmcvdGhpc3RsZQAvc3ZnL3RvbWF0bwAvc3ZnL3R1cnF1b2lzZQAvc3ZnL3Zpb2xldAAvc3ZnL3doZWF0AC9zdmcvd2hpdGUAL3N2Zy93aGl0ZXNtb2tlAC9zdmcveWVsbG93AC9zdmcveWVsbG93Z3JlZW4AL3lsZ24zLzEAL3lsZ24zLzIAL3lsZ24zLzMAL3lsZ240LzEAL3lsZ240LzIAL3lsZ240LzMAL3lsZ240LzQAL3lsZ241LzEAL3lsZ241LzIAL3lsZ241LzMAL3lsZ241LzQAL3lsZ241LzUAL3lsZ242LzEAL3lsZ242LzIAL3lsZ242LzMAL3lsZ242LzQAL3lsZ242LzUAL3lsZ242LzYAL3lsZ243LzEAL3lsZ243LzIAL3lsZ243LzMAL3lsZ243LzQAL3lsZ243LzUAL3lsZ243LzYAL3lsZ243LzcAL3lsZ244LzEAL3lsZ244LzIAL3lsZ244LzMAL3lsZ244LzQAL3lsZ244LzUAL3lsZ244LzYAL3lsZ244LzcAL3lsZ244LzgAL3lsZ245LzEAL3lsZ245LzIAL3lsZ245LzMAL3lsZ245LzQAL3lsZ245LzUAL3lsZ245LzYAL3lsZ245LzcAL3lsZ245LzgAL3lsZ245LzkAL3lsZ25idTMvMQAveWxnbmJ1My8yAC95bGduYnUzLzMAL3lsZ25idTQvMQAveWxnbmJ1NC8yAC95bGduYnU0LzMAL3lsZ25idTQvNAAveWxnbmJ1NS8xAC95bGduYnU1LzIAL3lsZ25idTUvMwAveWxnbmJ1NS80AC95bGduYnU1LzUAL3lsZ25idTYvMQAveWxnbmJ1Ni8yAC95bGduYnU2LzMAL3lsZ25idTYvNAAveWxnbmJ1Ni81AC95bGduYnU2LzYAL3lsZ25idTcvMQAveWxnbmJ1Ny8yAC95bGduYnU3LzMAL3lsZ25idTcvNAAveWxnbmJ1Ny81AC95bGduYnU3LzYAL3lsZ25idTcvNwAveWxnbmJ1OC8xAC95bGduYnU4LzIAL3lsZ25idTgvMwAveWxnbmJ1OC80AC95bGduYnU4LzUAL3lsZ25idTgvNgAveWxnbmJ1OC83AC95bGduYnU4LzgAL3lsZ25idTkvMQAveWxnbmJ1OS8yAC95bGduYnU5LzMAL3lsZ25idTkvNAAveWxnbmJ1OS81AC95bGduYnU5LzYAL3lsZ25idTkvNwAveWxnbmJ1OS84AC95bGduYnU5LzkAL3lsb3JicjMvMQAveWxvcmJyMy8yAC95bG9yYnIzLzMAL3lsb3JicjQvMQAveWxvcmJyNC8yAC95bG9yYnI0LzMAL3lsb3JicjQvNAAveWxvcmJyNS8xAC95bG9yYnI1LzIAL3lsb3JicjUvMwAveWxvcmJyNS80AC95bG9yYnI1LzUAL3lsb3JicjYvMQAveWxvcmJyNi8yAC95bG9yYnI2LzMAL3lsb3JicjYvNAAveWxvcmJyNi81AC95bG9yYnI2LzYAL3lsb3JicjcvMQAveWxvcmJyNy8yAC95bG9yYnI3LzMAL3lsb3JicjcvNAAveWxvcmJyNy81AC95bG9yYnI3LzYAL3lsb3JicjcvNwAveWxvcmJyOC8xAC95bG9yYnI4LzIAL3lsb3JicjgvMwAveWxvcmJyOC80AC95bG9yYnI4LzUAL3lsb3JicjgvNgAveWxvcmJyOC83AC95bG9yYnI4LzgAL3lsb3JicjkvMQAveWxvcmJyOS8yAC95bG9yYnI5LzMAL3lsb3JicjkvNAAveWxvcmJyOS81AC95bG9yYnI5LzYAL3lsb3JicjkvNwAveWxvcmJyOS84AC95bG9yYnI5LzkAL3lsb3JyZDMvMQAveWxvcnJkMy8yAC95bG9ycmQzLzMAL3lsb3JyZDQvMQAveWxvcnJkNC8yAC95bG9ycmQ0LzMAL3lsb3JyZDQvNAAveWxvcnJkNS8xAC95bG9ycmQ1LzIAL3lsb3JyZDUvMwAveWxvcnJkNS80AC95bG9ycmQ1LzUAL3lsb3JyZDYvMQAveWxvcnJkNi8yAC95bG9ycmQ2LzMAL3lsb3JyZDYvNAAveWxvcnJkNi81AC95bG9ycmQ2LzYAL3lsb3JyZDcvMQAveWxvcnJkNy8yAC95bG9ycmQ3LzMAL3lsb3JyZDcvNAAveWxvcnJkNy81AC95bG9ycmQ3LzYAL3lsb3JyZDcvNwAveWxvcnJkOC8xAC95bG9ycmQ4LzIAL3lsb3JyZDgvMwAveWxvcnJkOC80AC95bG9ycmQ4LzUAL3lsb3JyZDgvNgAveWxvcnJkOC83AC95bG9ycmQ4LzgAL3lsb3JyZDkvMQAveWxvcnJkOS8yAC95bG9ycmQ5LzMAL3lsb3JyZDkvNAAveWxvcnJkOS81AC95bG9ycmQ5LzYAL3lsb3JyZDkvNwAveWxvcnJkOS84AC95bG9ycmQ5LzkAYWxpY2VibHVlAGFudGlxdWV3aGl0ZQBhbnRpcXVld2hpdGUxAGFudGlxdWV3aGl0ZTIAYW50aXF1ZXdoaXRlMwBhbnRpcXVld2hpdGU0AGFxdWFtYXJpbmUAYXF1YW1hcmluZTEAYXF1YW1hcmluZTIAYXF1YW1hcmluZTMAYXF1YW1hcmluZTQAYXp1cmUAYXp1cmUxAGF6dXJlMgBhenVyZTMAYXp1cmU0AGJlaWdlAGJpc3F1ZQBiaXNxdWUxAGJpc3F1ZTIAYmlzcXVlMwBiaXNxdWU0AGJsYW5jaGVkYWxtb25kAGJsdWUAYmx1ZTEAYmx1ZTIAYmx1ZTMAYmx1ZTQAYmx1ZXZpb2xldABicm93bgBicm93bjEAYnJvd24yAGJyb3duMwBicm93bjQAYnVybHl3b29kAGJ1cmx5d29vZDEAYnVybHl3b29kMgBidXJseXdvb2QzAGJ1cmx5d29vZDQAY2FkZXRibHVlAGNhZGV0Ymx1ZTEAY2FkZXRibHVlMgBjYWRldGJsdWUzAGNhZGV0Ymx1ZTQAY2hhcnRyZXVzZQBjaGFydHJldXNlMQBjaGFydHJldXNlMgBjaGFydHJldXNlMwBjaGFydHJldXNlNABjaG9jb2xhdGUAY2hvY29sYXRlMQBjaG9jb2xhdGUyAGNob2NvbGF0ZTMAY2hvY29sYXRlNABjb3JhbABjb3JhbDEAY29yYWwyAGNvcmFsMwBjb3JhbDQAY29ybmZsb3dlcmJsdWUAY29ybnNpbGsAY29ybnNpbGsxAGNvcm5zaWxrMgBjb3Juc2lsazMAY29ybnNpbGs0AGNyaW1zb24AY3lhbgBjeWFuMQBjeWFuMgBjeWFuMwBjeWFuNABkYXJrZ29sZGVucm9kAGRhcmtnb2xkZW5yb2QxAGRhcmtnb2xkZW5yb2QyAGRhcmtnb2xkZW5yb2QzAGRhcmtnb2xkZW5yb2Q0AGRhcmtncmVlbgBkYXJra2hha2kAZGFya29saXZlZ3JlZW4AZGFya29saXZlZ3JlZW4xAGRhcmtvbGl2ZWdyZWVuMgBkYXJrb2xpdmVncmVlbjMAZGFya29saXZlZ3JlZW40AGRhcmtvcmFuZ2UAZGFya29yYW5nZTEAZGFya29yYW5nZTIAZGFya29yYW5nZTMAZGFya29yYW5nZTQAZGFya29yY2hpZABkYXJrb3JjaGlkMQBkYXJrb3JjaGlkMgBkYXJrb3JjaGlkMwBkYXJrb3JjaGlkNABkYXJrc2FsbW9uAGRhcmtzZWFncmVlbgBkYXJrc2VhZ3JlZW4xAGRhcmtzZWFncmVlbjIAZGFya3NlYWdyZWVuMwBkYXJrc2VhZ3JlZW40AGRhcmtzbGF0ZWJsdWUAZGFya3NsYXRlZ3JheQBkYXJrc2xhdGVncmF5MQBkYXJrc2xhdGVncmF5MgBkYXJrc2xhdGVncmF5MwBkYXJrc2xhdGVncmF5NABkYXJrc2xhdGVncmV5AGRhcmt0dXJxdW9pc2UAZGFya3Zpb2xldABkZWVwcGluawBkZWVwcGluazEAZGVlcHBpbmsyAGRlZXBwaW5rMwBkZWVwcGluazQAZGVlcHNreWJsdWUAZGVlcHNreWJsdWUxAGRlZXBza3libHVlMgBkZWVwc2t5Ymx1ZTMAZGVlcHNreWJsdWU0AGRpbWdyYXkAZGltZ3JleQBkb2RnZXJibHVlAGRvZGdlcmJsdWUxAGRvZGdlcmJsdWUyAGRvZGdlcmJsdWUzAGRvZGdlcmJsdWU0AGZpcmVicmljawBmaXJlYnJpY2sxAGZpcmVicmljazIAZmlyZWJyaWNrMwBmaXJlYnJpY2s0AGZsb3JhbHdoaXRlAGZvcmVzdGdyZWVuAGdhaW5zYm9ybwBnaG9zdHdoaXRlAGdvbGQAZ29sZDEAZ29sZDIAZ29sZDMAZ29sZDQAZ29sZGVucm9kAGdvbGRlbnJvZDEAZ29sZGVucm9kMgBnb2xkZW5yb2QzAGdvbGRlbnJvZDQAZ3JheQBncmF5MABncmF5MQBncmF5MTAAZ3JheTEwMABncmF5MTEAZ3JheTEyAGdyYXkxMwBncmF5MTQAZ3JheTE1AGdyYXkxNgBncmF5MTcAZ3JheTE4AGdyYXkxOQBncmF5MgBncmF5MjAAZ3JheTIxAGdyYXkyMgBncmF5MjMAZ3JheTI0AGdyYXkyNQBncmF5MjYAZ3JheTI3AGdyYXkyOABncmF5MjkAZ3JheTMAZ3JheTMwAGdyYXkzMQBncmF5MzIAZ3JheTMzAGdyYXkzNABncmF5MzUAZ3JheTM2AGdyYXkzNwBncmF5MzgAZ3JheTM5AGdyYXk0AGdyYXk0MABncmF5NDEAZ3JheTQyAGdyYXk0MwBncmF5NDQAZ3JheTQ1AGdyYXk0NgBncmF5NDcAZ3JheTQ4AGdyYXk0OQBncmF5NQBncmF5NTAAZ3JheTUxAGdyYXk1MgBncmF5NTMAZ3JheTU0AGdyYXk1NQBncmF5NTYAZ3JheTU3AGdyYXk1OABncmF5NTkAZ3JheTYAZ3JheTYwAGdyYXk2MQBncmF5NjIAZ3JheTYzAGdyYXk2NABncmF5NjUAZ3JheTY2AGdyYXk2NwBncmF5NjgAZ3JheTY5AGdyYXk3AGdyYXk3MABncmF5NzEAZ3JheTcyAGdyYXk3MwBncmF5NzQAZ3JheTc1AGdyYXk3NgBncmF5NzcAZ3JheTc4AGdyYXk3OQBncmF5OABncmF5ODAAZ3JheTgxAGdyYXk4MgBncmF5ODMAZ3JheTg0AGdyYXk4NQBncmF5ODYAZ3JheTg3AGdyYXk4OABncmF5ODkAZ3JheTkAZ3JheTkwAGdyYXk5MQBncmF5OTIAZ3JheTkzAGdyYXk5NABncmF5OTUAZ3JheTk2AGdyYXk5NwBncmF5OTgAZ3JheTk5AGdyZWVuAGdyZWVuMQBncmVlbjIAZ3JlZW4zAGdyZWVuNABncmVlbnllbGxvdwBncmV5AGdyZXkwAGdyZXkxAGdyZXkxMABncmV5MTAwAGdyZXkxMQBncmV5MTIAZ3JleTEzAGdyZXkxNABncmV5MTUAZ3JleTE2AGdyZXkxNwBncmV5MTgAZ3JleTE5AGdyZXkyAGdyZXkyMABncmV5MjEAZ3JleTIyAGdyZXkyMwBncmV5MjQAZ3JleTI1AGdyZXkyNgBncmV5MjcAZ3JleTI4AGdyZXkyOQBncmV5MwBncmV5MzAAZ3JleTMxAGdyZXkzMgBncmV5MzMAZ3JleTM0AGdyZXkzNQBncmV5MzYAZ3JleTM3AGdyZXkzOABncmV5MzkAZ3JleTQAZ3JleTQwAGdyZXk0MQBncmV5NDIAZ3JleTQzAGdyZXk0NABncmV5NDUAZ3JleTQ2AGdyZXk0NwBncmV5NDgAZ3JleTQ5AGdyZXk1AGdyZXk1MABncmV5NTEAZ3JleTUyAGdyZXk1MwBncmV5NTQAZ3JleTU1AGdyZXk1NgBncmV5NTcAZ3JleTU4AGdyZXk1OQBncmV5NgBncmV5NjAAZ3JleTYxAGdyZXk2MgBncmV5NjMAZ3JleTY0AGdyZXk2NQBncmV5NjYAZ3JleTY3AGdyZXk2OABncmV5NjkAZ3JleTcAZ3JleTcwAGdyZXk3MQBncmV5NzIAZ3JleTczAGdyZXk3NABncmV5NzUAZ3JleTc2AGdyZXk3NwBncmV5NzgAZ3JleTc5AGdyZXk4AGdyZXk4MABncmV5ODEAZ3JleTgyAGdyZXk4MwBncmV5ODQAZ3JleTg1AGdyZXk4NgBncmV5ODcAZ3JleTg4AGdyZXk4OQBncmV5OQBncmV5OTAAZ3JleTkxAGdyZXk5MgBncmV5OTMAZ3JleTk0AGdyZXk5NQBncmV5OTYAZ3JleTk3AGdyZXk5OABncmV5OTkAaG9uZXlkZXcAaG9uZXlkZXcxAGhvbmV5ZGV3MgBob25leWRldzMAaG9uZXlkZXc0AGhvdHBpbmsAaG90cGluazEAaG90cGluazIAaG90cGluazMAaG90cGluazQAaW5kaWFucmVkAGluZGlhbnJlZDEAaW5kaWFucmVkMgBpbmRpYW5yZWQzAGluZGlhbnJlZDQAaW5kaWdvAGludmlzAGl2b3J5AGl2b3J5MQBpdm9yeTIAaXZvcnkzAGl2b3J5NABraGFraQBraGFraTEAa2hha2kyAGtoYWtpMwBraGFraTQAbGF2ZW5kZXIAbGF2ZW5kZXJibHVzaABsYXZlbmRlcmJsdXNoMQBsYXZlbmRlcmJsdXNoMgBsYXZlbmRlcmJsdXNoMwBsYXZlbmRlcmJsdXNoNABsYXduZ3JlZW4AbGVtb25jaGlmZm9uAGxlbW9uY2hpZmZvbjEAbGVtb25jaGlmZm9uMgBsZW1vbmNoaWZmb24zAGxlbW9uY2hpZmZvbjQAbGlnaHRibHVlAGxpZ2h0Ymx1ZTEAbGlnaHRibHVlMgBsaWdodGJsdWUzAGxpZ2h0Ymx1ZTQAbGlnaHRjb3JhbABsaWdodGN5YW4AbGlnaHRjeWFuMQBsaWdodGN5YW4yAGxpZ2h0Y3lhbjMAbGlnaHRjeWFuNABsaWdodGdvbGRlbnJvZABsaWdodGdvbGRlbnJvZDEAbGlnaHRnb2xkZW5yb2QyAGxpZ2h0Z29sZGVucm9kMwBsaWdodGdvbGRlbnJvZDQAbGlnaHRnb2xkZW5yb2R5ZWxsb3cAbGlnaHRncmF5AGxpZ2h0Z3JleQBsaWdodHBpbmsAbGlnaHRwaW5rMQBsaWdodHBpbmsyAGxpZ2h0cGluazMAbGlnaHRwaW5rNABsaWdodHNhbG1vbgBsaWdodHNhbG1vbjEAbGlnaHRzYWxtb24yAGxpZ2h0c2FsbW9uMwBsaWdodHNhbG1vbjQAbGlnaHRzZWFncmVlbgBsaWdodHNreWJsdWUAbGlnaHRza3libHVlMQBsaWdodHNreWJsdWUyAGxpZ2h0c2t5Ymx1ZTMAbGlnaHRza3libHVlNABsaWdodHNsYXRlYmx1ZQBsaWdodHNsYXRlZ3JheQBsaWdodHNsYXRlZ3JleQBsaWdodHN0ZWVsYmx1ZQBsaWdodHN0ZWVsYmx1ZTEAbGlnaHRzdGVlbGJsdWUyAGxpZ2h0c3RlZWxibHVlMwBsaWdodHN0ZWVsYmx1ZTQAbGlnaHR5ZWxsb3cAbGlnaHR5ZWxsb3cxAGxpZ2h0eWVsbG93MgBsaWdodHllbGxvdzMAbGlnaHR5ZWxsb3c0AGxpbWVncmVlbgBsaW5lbgBtYWdlbnRhAG1hZ2VudGExAG1hZ2VudGEyAG1hZ2VudGEzAG1hZ2VudGE0AG1hcm9vbgBtYXJvb24xAG1hcm9vbjIAbWFyb29uMwBtYXJvb240AG1lZGl1bWFxdWFtYXJpbmUAbWVkaXVtYmx1ZQBtZWRpdW1vcmNoaWQAbWVkaXVtb3JjaGlkMQBtZWRpdW1vcmNoaWQyAG1lZGl1bW9yY2hpZDMAbWVkaXVtb3JjaGlkNABtZWRpdW1wdXJwbGUAbWVkaXVtcHVycGxlMQBtZWRpdW1wdXJwbGUyAG1lZGl1bXB1cnBsZTMAbWVkaXVtcHVycGxlNABtZWRpdW1zZWFncmVlbgBtZWRpdW1zbGF0ZWJsdWUAbWVkaXVtc3ByaW5nZ3JlZW4AbWVkaXVtdHVycXVvaXNlAG1lZGl1bXZpb2xldHJlZABtaWRuaWdodGJsdWUAbWludGNyZWFtAG1pc3R5cm9zZQBtaXN0eXJvc2UxAG1pc3R5cm9zZTIAbWlzdHlyb3NlMwBtaXN0eXJvc2U0AG1vY2Nhc2luAG5hdmFqb3doaXRlAG5hdmFqb3doaXRlMQBuYXZham93aGl0ZTIAbmF2YWpvd2hpdGUzAG5hdmFqb3doaXRlNABuYXZ5AG5hdnlibHVlAG5vbmUAb2xkbGFjZQBvbGl2ZWRyYWIAb2xpdmVkcmFiMQBvbGl2ZWRyYWIyAG9saXZlZHJhYjMAb2xpdmVkcmFiNABvcmFuZ2UAb3JhbmdlMQBvcmFuZ2UyAG9yYW5nZTMAb3JhbmdlNABvcmFuZ2VyZWQAb3JhbmdlcmVkMQBvcmFuZ2VyZWQyAG9yYW5nZXJlZDMAb3JhbmdlcmVkNABvcmNoaWQAb3JjaGlkMQBvcmNoaWQyAG9yY2hpZDMAb3JjaGlkNABwYWxlZ29sZGVucm9kAHBhbGVncmVlbgBwYWxlZ3JlZW4xAHBhbGVncmVlbjIAcGFsZWdyZWVuMwBwYWxlZ3JlZW40AHBhbGV0dXJxdW9pc2UAcGFsZXR1cnF1b2lzZTEAcGFsZXR1cnF1b2lzZTIAcGFsZXR1cnF1b2lzZTMAcGFsZXR1cnF1b2lzZTQAcGFsZXZpb2xldHJlZABwYWxldmlvbGV0cmVkMQBwYWxldmlvbGV0cmVkMgBwYWxldmlvbGV0cmVkMwBwYWxldmlvbGV0cmVkNABwYXBheWF3aGlwAHBlYWNocHVmZgBwZWFjaHB1ZmYxAHBlYWNocHVmZjIAcGVhY2hwdWZmMwBwZWFjaHB1ZmY0AHBlcnUAcGluawBwaW5rMQBwaW5rMgBwaW5rMwBwaW5rNABwbHVtAHBsdW0xAHBsdW0yAHBsdW0zAHBsdW00AHBvd2RlcmJsdWUAcHVycGxlAHB1cnBsZTEAcHVycGxlMgBwdXJwbGUzAHB1cnBsZTQAcmVkAHJlZDEAcmVkMgByZWQzAHJlZDQAcm9zeWJyb3duAHJvc3licm93bjEAcm9zeWJyb3duMgByb3N5YnJvd24zAHJvc3licm93bjQAcm95YWxibHVlAHJveWFsYmx1ZTEAcm95YWxibHVlMgByb3lhbGJsdWUzAHJveWFsYmx1ZTQAc2FkZGxlYnJvd24Ac2FsbW9uAHNhbG1vbjEAc2FsbW9uMgBzYWxtb24zAHNhbG1vbjQAc2FuZHlicm93bgBzZWFncmVlbgBzZWFncmVlbjEAc2VhZ3JlZW4yAHNlYWdyZWVuMwBzZWFncmVlbjQAc2Vhc2hlbGwAc2Vhc2hlbGwxAHNlYXNoZWxsMgBzZWFzaGVsbDMAc2Vhc2hlbGw0AHNpZW5uYQBzaWVubmExAHNpZW5uYTIAc2llbm5hMwBzaWVubmE0AHNreWJsdWUAc2t5Ymx1ZTEAc2t5Ymx1ZTIAc2t5Ymx1ZTMAc2t5Ymx1ZTQAc2xhdGVibHVlAHNsYXRlYmx1ZTEAc2xhdGVibHVlMgBzbGF0ZWJsdWUzAHNsYXRlYmx1ZTQAc2xhdGVncmF5AHNsYXRlZ3JheTEAc2xhdGVncmF5MgBzbGF0ZWdyYXkzAHNsYXRlZ3JheTQAc2xhdGVncmV5AHNub3cAc25vdzEAc25vdzIAc25vdzMAc25vdzQAc3ByaW5nZ3JlZW4Ac3ByaW5nZ3JlZW4xAHNwcmluZ2dyZWVuMgBzcHJpbmdncmVlbjMAc3ByaW5nZ3JlZW40AHN0ZWVsYmx1ZQBzdGVlbGJsdWUxAHN0ZWVsYmx1ZTIAc3RlZWxibHVlMwBzdGVlbGJsdWU0AHRhbgB0YW4xAHRhbjIAdGFuMwB0YW40AHRoaXN0bGUAdGhpc3RsZTEAdGhpc3RsZTIAdGhpc3RsZTMAdGhpc3RsZTQAdG9tYXRvAHRvbWF0bzEAdG9tYXRvMgB0b21hdG8zAHRvbWF0bzQAdHVycXVvaXNlAHR1cnF1b2lzZTEAdHVycXVvaXNlMgB0dXJxdW9pc2UzAHR1cnF1b2lzZTQAdmlvbGV0AHZpb2xldHJlZAB2aW9sZXRyZWQxAHZpb2xldHJlZDIAdmlvbGV0cmVkMwB2aW9sZXRyZWQ0AHdoZWF0AHdoZWF0MQB3aGVhdDIAd2hlYXQzAHdoZWF0NAB3aGl0ZQB3aGl0ZXNtb2tlAHllbGxvdwB5ZWxsb3cxAHllbGxvdzIAeWVsbG93MwB5ZWxsb3c0AHllbGxvd2dyZWVuAGxhY2sAaGl0ZQBpZ2h0Z3JleQBYMTEvAC8lcy8lcwBpbWFnZXNjYWxlAGZhbHNlAGJsYWNrAGRvdHRlZABkYXNoZWQAY3AtPnNyYwBodG1sdGFibGUuYwBlbWl0X2h0bWxfaW1nAGNwLT5zcmNbMF0AdHJhbnNwYXJlbnQAXyVkACVkADIAMwA0ADUANgA3ADgAOQAxMAAxMQAxMgAxMwAxNAAxNQAxNgAxNwAxOAAxOQAyMABBZ25vZGVpbmZvX3QAQWdlZGdlaW5mb190AHJvd2cAY29sZwBBZ3JhcGhpbmZvX3QAZGVseCA+PSAwAHBvc19odG1sX3RibABkZWx5ID49IDAAdGFibGUgc2l6ZSB0b28gc21hbGwgZm9yIGNvbnRlbnQKAGZpeGVkIHRhYmxlIHNpemUgd2l0aCB1bnNwZWNpZmllZCB3aWR0aCBvciBoZWlnaHQKAGNlbGwgc2l6ZSB0b28gc21hbGwgZm9yIGNvbnRlbnQKAGZpeGVkIGNlbGwgc2l6ZSB3aXRoIHVuc3BlY2lmaWVkIHdpZHRoIG9yIGhlaWdodAoATm8gb3IgaW1wcm9wZXIgaW1hZ2UgZmlsZT0iJXMiCgBwZW5jb2xvcgAtPgBmUFEuYwBQUWNoZWNrAEhlYXAgb3ZlcmZsb3cKACUhUFMtQWRvYmUtMi4wCi9ub2RlIHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgL3kgZXhjaCBkZWYKICAveCBleGNoIGRlZgogIG5ld3BhdGgKICB4IHkgbW92ZXRvCiAgeCBZIGxpbmV0bwogIFggWSBsaW5ldG8KICBYIHkgbGluZXRvCiAgY2xvc2VwYXRoIGZpbGwKfSBkZWYKL2NlbGwgewogIC9ZIGV4Y2ggZGVmCiAgL1ggZXhjaCBkZWYKICAveSBleGNoIGRlZgogIC94IGV4Y2ggZGVmCiAgbmV3cGF0aAogIHggeSBtb3ZldG8KICB4IFkgbGluZXRvCiAgWCBZIGxpbmV0bwogIFggeSBsaW5ldG8KICBjbG9zZXBhdGggc3Ryb2tlCn0gZGVmCgBzaG93cGFnZQoAZmFpbGVkIGF0IG5vZGUgJWRbMF0KAG5wLT5jZWxsc1swXQBtYXplLmMAY2hrU2dyYXBoAGZhaWxlZCBhdCBub2RlICVkWzFdCgBucC0+Y2VsbHNbMV0AZGl0ZW1zAGZpbmRTVmVydAAlJSUlUGFnZTogMSAxCiUlJSVQYWdlQm91bmRpbmdCb3g6ICVkICVkICVkICVkCgAlZiAlZiB0cmFuc2xhdGUKADAgMCAxIHNldHJnYmNvbG9yCgAlZiAlZiAlZiAlZiBub2RlCgAwIDAgMCBzZXRyZ2Jjb2xvcgoAJWYgJWYgJWYgJWYgY2VsbAoAMSAwIDAgc2V0cmdiY29sb3IKAHVuZXhwZWN0ZWQgY2FzZSBpbiBsb2NhdGVfZW5kcG9pbnQKADAAdHJhcGV6b2lkLmMAbG9jYXRlX2VuZHBvaW50AGFkZF9zZWdtZW50OiBlcnJvcgoAbmV3bm9kZTogUXVlcnktdGFibGUgb3ZlcmZsb3cKAG5ld25vZGUAbmV3dHJhcDogVHJhcGV6b2lkLXRhYmxlIG92ZXJmbG93ICVkCgBuZXd0cmFwAGluZGV4LmMAUlRyZWVTZWFyY2gAbi0+bGV2ZWwgPj0gMABSVHJlZUluc2VydABsZXZlbCA+PSAwICYmIGxldmVsIDw9ICgqbiktPmxldmVsAHItPmJvdW5kYXJ5W2ldIDw9IHItPmJvdW5kYXJ5W05VTURJTVMgKyBpXQByICYmIG4gJiYgbmV3AFJUcmVlSW5zZXJ0MgBsZXZlbCA+PSAwICYmIGxldmVsIDw9IG4tPmxldmVsAEZBTFNFAG5vZGUuYwBOb2RlQ292ZXIAciAmJiBuAFBpY2tCcmFuY2gAQWRkQnJhbmNoAGkgPCBOT0RFQ0FSRABuZXcAbiAmJiBpID49IDAgJiYgaSA8IE5PREVDQVJEAERpc2NvbkJyYW5jaAByAHJlY3RhbmdsZS5jAFJlY3RBcmVhAHIgJiYgcnIAQ29tYmluZVJlY3QAciAmJiBzAE92ZXJsYXAAbgBzcGxpdC5xLmMAU3BsaXROb2RlAGIAbi0+Y291bnQgKyAoKm5uKS0+Y291bnQgPT0gTk9ERUNBUkQgKyAxAExvYWROb2RlcwBxAHAAcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLnBhcnRpdGlvbltpXSA9PSAwIHx8IHJ0cC0+c3BsaXQuUGFydGl0aW9uc1swXS5wYXJ0aXRpb25baV0gPT0gMQBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0uY291bnRbMF0gKyBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0uY291bnRbMV0gPT0gTk9ERUNBUkQgKyAxAE1ldGhvZFplcm8AcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzBdID49IHJ0cC0+TWluRmlsbCAmJiBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0uY291bnRbMV0gPj0gcnRwLT5NaW5GaWxsACFydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0udGFrZW5baV0AQ2xhc3NpZnkAR2V0QnJhbmNoZXMAbi0+YnJhbmNoW2ldLmNoaWxkAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoAgICAgICEAxZAQAfUAgDBxITFFcWFwgLaQwfCgUMDikRKw8tEC8wIDIGNDUbHB0eCwwhIiMkJSYnKAwYGRcEChscGiAqCiEiIyQlJicoDAoOUwosWDFYWFhYWFgMGxwPLlgzISIjJCUmJygbHP9T//8hIiMkJSYnKAz//wX///8JFP//////DBsc/xAVFiEiIyQlJicoGxz/////ISIjJCUmJygM/xITFBEWF////////wwbHP///xIhIiMkJSYnKBsc/////yEiIyQlJicoDP///////xP///////8MGxz/////ISIjJCUmJygbHP////8hIiMkJSYnKBITFBUWFxgZ////////////IyQlJicbEhMUFhciNmgBHzhWISACGxsbXhsbNzlwNtLCTwQ8IkciPyJEIiJYImUiIgUGX2A5BAcICQoLDA0OBGZnXWptBQZvWDtxBwgJCgsMDQ4Ecjxbcz5hRhsSExQWFwQFBj9BYkkHCAkKCwwNDgUGAFwAAAcICQoLDA0OBAAATwAAAFNCAAAAAAAEBQYARFRVBwgJCgsMDQ4FBgAAAAAHCAkKCwwNDgQAKiwuRzEzAAAAAAAABAUGAAAASgcICQoLDA0OBQYAAAAABwgJCgsMDQ4EAAAAAAAATAAAAAAAAAQFBgAAAAAHCAkKCwwNDgUGAAAAAAcICQoLDA0OKSstLzAyNDUAAAAAAAAAAAApKy0wMgAELwAkIwASFBYaHB4gGAAFBy8vLwAvLwAACQgoAAABIgIGAAAAAAAIAAAAAAAAAAAAAAAAACUDJhMKKRULKhcOLRkRGwwrHQ0sHw8hEAAzADAAL0MAMQAvADUuJ0IyQQA6OAA8NEUANgBAAAA/AEQ3Ozk9AAIDAwEBAgEBAQMDAwMDAwMDAQEBAQEBAQEBAQEBAQEBAQIBAQIABgEDAwMDAwEAAQIDAAQBAgMABAAEAAQAAwIBAgECAVN5bnRheCBlcnJvcjogbm9uLXNwYWNlIHN0cmluZyB1c2VkIGJlZm9yZSA8VEFCTEU+AFN5bnRheCBlcnJvcjogbm9uLXNwYWNlIHN0cmluZyB1c2VkIGFmdGVyIDwvVEFCTEU+AAApKioqKywsLS0tLS0tLS0tLS4vMDEyMzQ1Njc4OTo7PD0+Pj8/QUBCQkJCQkJDQ0REREZFR0dHSUhKSEtITEhNTU5OT0//Aw8QESM6JD0lQBVDJkUnSBhLGU0aKBxOHR5QUVJZWmxrbmNkV2ltZW1vcnkgZXhoYXVzdGVkACVzIGluIGxpbmUgJWQgCgAuLi4gJXMgLi4uCgBUQUJMRQBUUgBUSABURABIVE1MAEZPTlQAQgBVAE8ASQBTVVAAU1VCAFMAQlIASFIAVlIASU1HAFVua25vd24gSFRNTCBlbGVtZW50IDwlcz4gb24gbGluZSAlZCAKADxJTUc+AElsbGVnYWwgYXR0cmlidXRlICVzIGluICVzIC0gaWdub3JlZAoAc2NhbGUAc3JjADxCUj4AYWxpZ24ASUdIVABFRlQARU5URVIASWxsZWdhbCB2YWx1ZSAlcyBmb3IgQUxJR04gLSBpZ25vcmVkCgA8Rk9OVD4AY29sb3IAZmFjZQBwb2ludC1zaXplAFBPSU5ULVNJWkUASW1wcm9wZXIgJXMgdmFsdWUgJXMgLSBpZ25vcmVkACVzIHZhbHVlICVzID4gJWQgLSB0b28gbGFyZ2UgLSBpZ25vcmVkACVzIHZhbHVlICVzIDwgJWQgLSB0b28gc21hbGwgLSBpZ25vcmVkADxURD4AYmFsaWduAGJnY29sb3IAYm9yZGVyAGNlbGxwYWRkaW5nAGNlbGxzcGFjaW5nAGNvbHNwYW4AZml4ZWRzaXplAGdyYWRpZW50YW5nbGUAaGVpZ2h0AGhyZWYAaWQAcG9ydAByb3dzcGFuAHNpZGVzAHN0eWxlAHRhcmdldAB0aXRsZQB0b29sdGlwAHZhbGlnbgB3aWR0aABXSURUSABPVFRPTQBPUABJRERMRQBJbGxlZ2FsIHZhbHVlICVzIGZvciBWQUxJR04gLSBpZ25vcmVkCgAgLABPVU5ERUQAQURJQUwASWxsZWdhbCB2YWx1ZSAlcyBmb3IgU1RZTEUgLSBpZ25vcmVkCgBTT0xJRABJTlZJU0lCTEUASU5WSVMARE9UVEVEAERBU0hFRABVbnJlY29nbml6ZWQgY2hhcmFjdGVyICclYycgKCVkKSBpbiBzaWRlcyBhdHRyaWJ1dGUKAFJPV1NQQU4AUk9XU1BBTiB2YWx1ZSBjYW5ub3QgYmUgMCAtIGlnbm9yZWQKAEhFSUdIVABHUkFESUVOVEFOR0xFAFJVRQBBTFNFAElsbGVnYWwgdmFsdWUgJXMgZm9yIEZJWEVEU0laRSAtIGlnbm9yZWQKAENPTFNQQU4AQ09MU1BBTiB2YWx1ZSBjYW5ub3QgYmUgMCAtIGlnbm9yZWQKAENFTExTUEFDSU5HAENFTExQQURESU5HAEJPUkRFUgBJbGxlZ2FsIHZhbHVlICVzIGZvciBCQUxJR04gaW4gVEQgLSBpZ25vcmVkCgBFWFQASWxsZWdhbCB2YWx1ZSAlcyBmb3IgQUxJR04gaW4gVEQgLSBpZ25vcmVkCgA8VEFCTEU+AGNlbGxib3JkZXIAY29sdW1ucwByb3dzAFVua25vd24gdmFsdWUgJXMgZm9yIFJPV1MgLSBpZ25vcmVkCgBVbmtub3duIHZhbHVlICVzIGZvciBDT0xVTU5TIC0gaWdub3JlZAoAQ0VMTFNCT1JERVIAPEhUTUw+ADwvSFRNTD4ALS0ATGFiZWwgY2xvc2VkIGJlZm9yZSBlbmQgb2YgSFRNTCBlbGVtZW50CgBVbmNsb3NlZCBjb21tZW50CgBqID09IDAAY3Z0LmMAUG9ic3BhdGgAcm91dGUuYwBsaWJwYXRoLyVzOiVkOiAlcwoAc2hvcnRlc3QuYwBzb3VyY2UgcG9pbnQgbm90IGluIGFueSB0cmlhbmdsZQBkZXN0aW5hdGlvbiBwb2ludCBub3QgaW4gYW55IHRyaWFuZ2xlAGNhbm5vdCBmaW5kIHRyaWFuZ2xlIHBhdGgAY2Fubm90IG1hbGxvYyBvcHMAY2Fubm90IHJlYWxsb2Mgb3BzAHRyaWFuZ3VsYXRpb24gZmFpbGVkAGNhbm5vdCBtYWxsb2MgdHJpcwBjYW5ub3QgcmVhbGxvYyB0cmlzAGNhbm5vdCBtYWxsb2MgZHEucG5scwBjYW5ub3QgcmVhbGxvYyBkcS5wbmxzAGNhbm5vdCBtYWxsb2MgcG5scwBjYW5ub3QgbWFsbG9jIHBubHBzAGNhbm5vdCByZWFsbG9jIHBubHMAY2Fubm90IHJlYWxsb2MgcG5scHMAQ0RBVEEASUQASURSRUYASURSRUZTAEVOVElUWQBFTlRJVElFUwBOTVRPS0VOAE5NVE9LRU5TAE5PVEFUSU9OKAAoAHwAaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlAGh0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvAHhtbD1odHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UAL2Rldi91cmFuZG9tAGZhbGxiYWNrKDQpAGdldHRpbWVvZmRheV9yZXMgPT0gMAB4bWxwYXJzZS5jAGdhdGhlcl90aW1lX2VudHJvcHkARVhQQVRfRU5UUk9QWV9ERUJVRwAxAEVudHJvcHk6ICVzIC0tPiAweCUwKmx4ICglbHUgYnl0ZXMpCgBpbnZhbGlkIGFyZ3VtZW50AHByZWZpeCBtdXN0IG5vdCBiZSBib3VuZCB0byBvbmUgb2YgdGhlIHJlc2VydmVkIG5hbWVzcGFjZSBuYW1lcwByZXNlcnZlZCBwcmVmaXggKHhtbG5zKSBtdXN0IG5vdCBiZSBkZWNsYXJlZCBvciB1bmRlY2xhcmVkAHJlc2VydmVkIHByZWZpeCAoeG1sKSBtdXN0IG5vdCBiZSB1bmRlY2xhcmVkIG9yIGJvdW5kIHRvIGFub3RoZXIgbmFtZXNwYWNlIG5hbWUAY2Fubm90IHN1c3BlbmQgaW4gZXh0ZXJuYWwgcGFyYW1ldGVyIGVudGl0eQBwYXJzaW5nIGZpbmlzaGVkAHBhcnNpbmcgYWJvcnRlZABwYXJzZXIgbm90IHN1c3BlbmRlZABwYXJzZXIgc3VzcGVuZGVkAGlsbGVnYWwgY2hhcmFjdGVyKHMpIGluIHB1YmxpYyBpZAB0ZXh0IGRlY2xhcmF0aW9uIG5vdCB3ZWxsLWZvcm1lZABYTUwgZGVjbGFyYXRpb24gbm90IHdlbGwtZm9ybWVkAGluY29tcGxldGUgbWFya3VwIGluIHBhcmFtZXRlciBlbnRpdHkAbXVzdCBub3QgdW5kZWNsYXJlIHByZWZpeAB1bmJvdW5kIHByZWZpeABjYW5ub3QgY2hhbmdlIHNldHRpbmcgb25jZSBwYXJzaW5nIGhhcyBiZWd1bgByZXF1ZXN0ZWQgZmVhdHVyZSByZXF1aXJlcyBYTUxfRFREIHN1cHBvcnQgaW4gRXhwYXQAZW50aXR5IGRlY2xhcmVkIGluIHBhcmFtZXRlciBlbnRpdHkAdW5leHBlY3RlZCBwYXJzZXIgc3RhdGUgLSBwbGVhc2Ugc2VuZCBhIGJ1ZyByZXBvcnQAZG9jdW1lbnQgaXMgbm90IHN0YW5kYWxvbmUAZXJyb3IgaW4gcHJvY2Vzc2luZyBleHRlcm5hbCBlbnRpdHkgcmVmZXJlbmNlAHVuY2xvc2VkIENEQVRBIHNlY3Rpb24AZW5jb2Rpbmcgc3BlY2lmaWVkIGluIFhNTCBkZWNsYXJhdGlvbiBpcyBpbmNvcnJlY3QAdW5rbm93biBlbmNvZGluZwBYTUwgb3IgdGV4dCBkZWNsYXJhdGlvbiBub3QgYXQgc3RhcnQgb2YgZW50aXR5AHJlZmVyZW5jZSB0byBleHRlcm5hbCBlbnRpdHkgaW4gYXR0cmlidXRlAHJlZmVyZW5jZSB0byBiaW5hcnkgZW50aXR5AHJlZmVyZW5jZSB0byBpbnZhbGlkIGNoYXJhY3RlciBudW1iZXIAYXN5bmNocm9ub3VzIGVudGl0eQByZWN1cnNpdmUgZW50aXR5IHJlZmVyZW5jZQB1bmRlZmluZWQgZW50aXR5AGlsbGVnYWwgcGFyYW1ldGVyIGVudGl0eSByZWZlcmVuY2UAanVuayBhZnRlciBkb2N1bWVudCBlbGVtZW50AGR1cGxpY2F0ZSBhdHRyaWJ1dGUAbWlzbWF0Y2hlZCB0YWcAcGFydGlhbCBjaGFyYWN0ZXIAdW5jbG9zZWQgdG9rZW4Abm90IHdlbGwtZm9ybWVkIChpbnZhbGlkIHRva2VuKQBubyBlbGVtZW50IGZvdW5kAHN5bnRheCBlcnJvcgBvdXQgb2YgbWVtb3J5AAIDBAUGBwgAAAkKCwwNDg8QEQAAAAAAAAAAAAAAABITABQAAAAAAAAAAAAAAAAAABUWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARcAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAxobHB0eAAAfICEiIyQlEBEAAAAAAAAAAAAAAAASEyYUAAAAAAAAAAAAAAAAAAAnFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEXAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ0RBVEFbVVMtQVNDSUkAVVRGLTE2AFVURi0xNkJFAFVURi0xNkxFAHZlcnNpb24AZW5jb2RpbmcAc3RhbmRhbG9uZQBET0NUWVBFAFNZU1RFTQBQVUJMSUMARU5USVRZAEFUVExJU1QARUxFTUVOVABOT1RBVElPTgBJTkNMVURFAElHTk9SRQBFTVBUWQBBTlkAUENEQVRBAElNUExJRUQAUkVRVUlSRUQARklYRUQAQ0RBVEEASUQASURSRUYASURSRUZTAEVOVElUSUVTAE5NVE9LRU4ATk1UT0tFTlMATkRBVEEAVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAASEBMUFRYXGBkaGxwdHh8gIRAQIiMQJCUmJygpKisQLC0uES8wERExERERMjM0NTY3ODkREBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDoQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDsQPD0+P0BBEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEEIQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEEMQEEQQRUZHEEgQSRAQEBBKS0xNEBBOEE9QEBAQEFEQEBAQEBAQEBAQEBAQUhAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQUxAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFRVVlcQEFhZEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFoQW1xdXl9gYWIQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////////////////////8AAAAA/v8A/AEAAPgBAAB4AAAAAP/73/sAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwA/P/gr//////////////f//////8gQLAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAA/AMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/AAAAAAAhv7///8AQEkAAAAAABgA3/8AyAAAAAAAAAABADwAAAAAAAAAAAAAAAAQ4AEeAGD/vwAAAAAAAP8HAAAAAAAAAAAAAAAAAAAAAAAAAPjPAwAAAAMAIP9/AAAATgAAAAAAAAAAAAAAAAAAAAAA/AAAAAAAAAAAABAAIB4AMAABAAAAAAAAAAAQACAAAAAA/A8AAAAAAAAAEAAgAAAAAAAAAAAAAAAAABAAIAAAAAADAAAAAAAAAAAQACAAAAAA/QAAAAAAAAAAAAAgAAAAAP8HAAAAAAAAAAAAIAAAAAAA/wAAAAAAAAAQACAAAAAAAAAAAAAAAAAAAAAgAAAAAD8CAAAAAAAAAAAABAAAAAAQAAAAAAAAgACAwN8ADAAAAAAAAAAAAAAAAAAfAAAAAAAA/v///wD8//8AAAAAAAAAAPwAAAAAAADA/9//BwAAAAAAAAAAAACABgD8AAAYPgAAgL8AzAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAYP///x8AAP8DAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAQAAGAAAAAAAAAAAADgAAAAAEAAAAHAAAAAAAAAAAAAAAAAAAAAwAAD+fy8AAP8D/38AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADjEAAAAAAAAAAAAAAAAAAAAAAADE/////wAAAMAAAAAAAAAAAAEA4J8AAAAAfz8AAAAAAAAAAAAAAAAAAAAAEAAQAAD8////HwAAAAAADAAAAAAAAEAADPAAAAAAAADA+AAAAAAAAADAAAAAAAAAAAD/AP///yEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////9/AADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgA+AA4ADgAGCA+P////z//////38f/PF//38AAP///wMAAP////8BAHsD0MGvQgAMH7z//wAAAAAAAv//////////////////////////////////////////////////////////DwD/////fwAAAP8HAAD/////////////PwAAAAAAAPz///7/////////////////////////////////////////////////////H/8DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IcD/gAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAA//////9//w8AAAAAAAAAAP////v/////////////DwD//////////////////////////////////z8AAAD/Dx7///8B/MHgAAAAAAAAAAAAAAAeAQAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAA//8AAAAA/////w8AAAD///9/////////////////////////////////////fwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////AAAAAAAAAAAAAAAAAAAAAAAA////////fwAAAAAAAMAA4AAAAAAAAAAAAAAAgA9wAAAAAAAAAAAAAAAAAAD/AP//fwADAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAARAgAAAAP/wMAAAAAAADwAAAAAAAAAAAAEMAAAP//AwcAAAAAAPgAAAAACIAAAAAAAAAAAAAACAD/PwDAAAAAAAAAAAAAAAAAAAAA8AAAgAsAAAAAAAAAgAIAAMAAAEMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAACAAAAAAAAAAAAAAAAAAAAAPz/AwAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMP///wN/AP/////3/38PAAAAAAAAAAAAAAAAAAAAAACA/v8A/AEAAPgBAAD4PwAAAAAAAAAAAAAAAAAAAH9/ADCH//////+P/wAAAAAAAOD//wf/DwAAAAAAAP//////PwAAAAAPAAAAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAID/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCPAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/wD/AQAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP4AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///9/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwD/8/z8AAAADAAAAAAAA/gMAAAAAAAAAAAAAAAAAGAAPAAAAAAAAAAAAAAAAAAAA4QEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACABwAAAAAAAAAAAAAAAAD///////////////////////////////////////8/AP////9//v///////////////////////////z8AAAAA//////////8/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////fwD//wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAgAAAAIAAAgAAAAIAAAgAAAAIAAAAACAAAAAgAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAP//////D////////////////w8A/3/+f/7//v8AAAAA/wf///9//////////w///////wcAAAAAAAAAAMD///8HAP//////B/8BAwAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8BAL///////////x///w8A/////98HAAD//wEA/////////3/9/////////////////////////////x7/////////Pw8A////AAAAAAAAAAAAAAAAAAAAAAAA+P//////////4f8AAAAAAAD//////////z8AAAAAAAAA//////////////////8PAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABIRExQVFhcYGRobHB0eHyAhESIjJBElJicoKSorLBEtLi8QEDAQEBAQEBAQMTIzEDQ1EBARERERERERERERERERERERERERERERERERNhERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERETcREREROBE5Ojs8PT4RERERERERERERERERERERERERERERERERERERERERERERERERERERERERPxAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBFAQRFCQ0RFRkdISRAQEEpLTE1OEBAQT1AQEBAQURAQEBAQEBAQEBEREVJTEBAQEBAQEBAQEBARERERVBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBERVRAQEBBWEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFcQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEFhZWlsQEBAQEBAQEBAQEBAQEBAQEBAQEBAQXBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////////////////////////wAAAAAAAAAA/v//B/7//wcAAAAAAAQgBP//f////3//////////////////////////////////w/8DAB9QAAAAAAAAAAAAACAAAAAAAN88QNf///v///////////+///////////////////////8D/P////////////////////////8A/v///38C/v////8AAAAAAP+/tgD///8HBwAAAP8H//////////7/w////////////////+8f/uH/nwAA////////AOD///////////////8DAP//////BzAE/////P8fAAD///8BAAAAAAAAAAD9HwAAAAAAAPAD/3//////////7//f4f/P//7+7p/5///9xeOfWYCwz/8DAO6H+f///W3DhxkCXsD/PwDuv/v///3t478bAQDP/wAA7p/5///97eOfGcCwz/8CAOzHPdYYx//Dxx2BAMD/AADu3/3///3v498dYAPP/wAA7N/9///97+PfHWBAz/8GAOzf/f/////n312AAM//APzs/3/8///7L3+AX/8AAAwA/v////9//wc/IP8DAAAAAJYl8P6u7P87XyD/8wAAAAABAAAA/wMAAP/+////H/7/A////v///x8AAAAAAAAAAP///////3/5/wP//+fB//9/QP8z/////78g///////3////////////PX89//////89/////z1/Pf9//////////z3//////////4cAAAAA//8AAP////////////8fAP7//////////////////////////////////////////////////////////5////7//wf////////////HAQD/3w8A//8PAP//DwD/3w0A////////z///AYAQ/wMAAAAA/wP//////////////wD//////wf//////////z8A////H/8P/wHA/////z8fAP//////D////wP/AwAAAAD///8P/////////3/+/x8A/wP/A4AAAAAAAAAAAAAAAP///////+//7w//AwAAAAD///////P///////+//wMA////////PwD/4///////PwAAAAAAAAAAAAAAAADebwD///////////////////////////////8AAAAAAAAAAP//Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAAAAAAAAAAAAAAACgAAA/x8AAAAAAAAAAAAAAACE/C8+UL3/8+BDAAD//////wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA////////AwAA//////9///////9//////////////////////x94DAD/////vyD/////////gAAA//9/AH9/f39/f39//////wAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAP4DPh/+////////////f+D+//////////////fg/////z/+/////////////38AAP///wcAAAAAAAD///////////////////////////////8/AAAAAAAAAAAA/////////////////////////////////x8AAAAAAAD//////////////////////x8AAAAAAAAAAP//////P/8f////DwAA//////9/8I////+A/////////////wAAAACA//z///////////////95DwD/BwAAAAAAAAAAAP+79////wAAAP///////w8A//////////8PAP8DAAD8CP//////B/////8HAP///x/////////3/wCA/wMAAAAA////////fwD/P/8D//9/BP////////9/BQAAOP//PAB+fn4Af38AAAAAAAAAAAAAAAAAAAAAAAD//////wf/A///////////////////////////DwD//3/4//////8P/////////////////z//////////////////AwAAAAB/APjg//1/X9v/////////////////AwAAAPj///////////////8/AAD///////////z///////8AAAAAAP8PAAAAAAAAAAAAAAAAAADf/////////////////////x8AAP8D/v//B/7//wfA/////////////3/8/PwcAAAAAP/v//9///+3/z//PwAAAAD///////////////////8HAAAAAAAAAAD///////8fAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////H////////wEAAAAAAP///38AAP///wcAAAAAAAD///8//////w//PgAAAAAA/////////////////////////z//AwAAAAAAAAAAAAA//f////+/kf//PwAAAAAAAAAAAAAAAAAAAAAAAAAAAP//PwD///8DAAAAAAAAAAD/////////wAAAAAAAAAAAb/Dv/v//DwAAAAAA////HwAAAAAAAAAAAAAAAAAAAAD///////8/AP//PwD//wcAAAAAAAAAAAAAAAAAAAAAAP///////////wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////8/AAAAwP8AAPz///////8BAAD///8B/wP////////H/wAAAAAAAAAA//////////8eAP8DAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8/AP8DAAAAAAAA/////////////////38AAAAAAAAAAAAAAAAAAAAAAAD///////////////8HAAAAAAAAAAAAAAAAAAAAAAAAAP//////fwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////x8A//////9/AAD4/wAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////////9///////////99k3v/r7/////////+/59/f////e1/8/f//////////////////////////////////////////////////////P/////3///f////3///f////3///f////3/////9/////f//98/////////v////lv73CoTqlqqW9/de//v/D+77/w8AAAAAAAAAAExDX0FMTABMQ19DVFlQRQAAAABMQ19OVU1FUklDAABMQ19USU1FAAAAAABMQ19DT0xMQVRFAABMQ19NT05FVEFSWQBMQ19NRVNTQUdFUwBMQU5HAEMuVVRGLTgAUE9TSVgATVVTTF9MT0NQQVRIABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AYWxudW0AYWxwaGEAYmxhbmsAY250cmwAZGlnaXQAZ3JhcGgAbG93ZXIAcHJpbnQAcHVuY3QAc3BhY2UAdXBwZXIAeGRpZ2l0AEMuVVRGLTgAAAAAAAAAAABDAC9wcm9jL3NlbGYvZmQvAHJ3YQBpbmZpbml0eQBuYW4ACQAKAA0ADAAHABsAW1s6YWxudW06XV9dAFteWzphbG51bTpdX10AW1s6c3BhY2U6XV0AW15bOnNwYWNlOl1dAFtbOmRpZ2l0Ol1dAFteWzpkaWdpdDpdXQAvdG1wL3RtcGZpbGVfWFhYWFhYAHcr";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(ERRNO_CODES.EINVAL);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function ___clock_gettime(){return _clock_gettime.apply(null,arguments)}function ___lock(){}function ___map_file(pathname,size){___setErrNo(ERRNO_CODES.EPERM);return-1}var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;inode.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.lengthnewSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+lengthe2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall192(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get(),prot=SYSCALLS.get(),flags=SYSCALLS.get(),fd=SYSCALLS.get(),off=SYSCALLS.get();off<<=12;var ptr;var allocated=false;if(fd===-1){ptr=_memalign(PAGE_SIZE,len);if(!ptr)return-ERRNO_CODES.ENOMEM;_memset(ptr,0,len);allocated=true}else{var info=FS.getStream(fd);if(!info)return-ERRNO_CODES.EBADF;var res=FS.mmap(info,HEAPU8,addr,len,off,prot,flags);ptr=res.ptr;allocated=res.allocated}SYSCALLS.mappings[ptr]={malloc:ptr,len:len,allocated:allocated,fd:fd,flags:flags};return ptr}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};function ___syscall20(which,varargs){SYSCALLS.varargs=varargs;try{return PROCINFO.pid}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall33(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),amode=SYSCALLS.get();return SYSCALLS.doAccess(path,amode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}var _environ=STATICTOP;STATICTOP+=16;function ___buildEnvironment(env){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=staticAlloc(TOTAL_ENV_SIZE);envPtr=staticAlloc(MAX_ENV_VALUES*4);HEAP32[envPtr>>2]=poolPtr;HEAP32[_environ>>2]=envPtr}else{envPtr=HEAP32[_environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in env){if(typeof env[key]==="string"){var line=key+"="+env[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _getenv(name){if(name===0)return 0;name=Pointer_stringify(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}var _llvm_ceil_f64=Math_ceil;var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_floor_f64=Math_floor;var _llvm_pow_f64=Math_pow;var _llvm_sqrt_f32=Math_sqrt;var _llvm_sqrt_f64=Math_sqrt;function _llvm_trap(){abort("trap!")}function _longjmp(env,value){Module["setThrew"](env,value||1);throw"longjmp"}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _setenv(envname,envval,overwrite){if(envname===0){___setErrNo(ERRNO_CODES.EINVAL);return-1}var name=Pointer_stringify(envname);var val=Pointer_stringify(envval);if(name===""||name.indexOf("=")!==-1){___setErrNo(ERRNO_CODES.EINVAL);return-1}if(ENV.hasOwnProperty(name)&&!overwrite)return 0;ENV[name]=val;___buildEnvironment(ENV);return 0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _times(buffer){if(buffer!==0){_memset(buffer,0,16)}return 0}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV);DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:(function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i>2]|0;if(!i)qa(108233,108204,54,108218);if(!(a[i>>0]|0))qa(108242,108204,55,108218);b0(h,c[d+28>>2]|0)|0;i=h+(W_(h)|0)|0;a[i>>0]=58;a[i+1>>0]=0;p1(h,g)|0;if((hP(b,h)|0)==999){c[j>>2]=h;Pw(0,108254,j)|0}g=c[b+92>>2]|0;if(g|0?(m=c[g>>2]|0,m|0):0){c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[k+16>>2]=c[e+16>>2];c[k+20>>2]=c[e+20>>2];c[k+24>>2]=c[e+24>>2];c[k+28>>2]=c[e+28>>2];xb[m&31](b,d,k,f)}l=n;return}function hP(a,b){a=a|0;b=b|0;b=wC(c[a>>2]|0,4,b)|0;if(!b)b=999;else{b=c[b+16>>2]|0;c[a+92>>2]=c[b+12>>2];c[a+96>>2]=c[b>>2];b=300}return b|0}function iP(a){a=a|0;return 1}function jP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+336|0;h[c>>3]=+h[c>>3]+10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function kP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+336|0;h[c>>3]=+h[c>>3]-10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function lP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+344|0;h[c>>3]=+h[c>>3]-10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function mP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+344|0;h[c>>3]=+h[c>>3]+10.0/+h[b+352>>3];a[b+537>>0]=1;return 0}function nP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+352|0;h[c>>3]=+h[c>>3]*1.1;a[b+537>>0]=1;return 0}function oP(b){b=b|0;var c=0;a[b+536>>0]=0;c=b+352|0;h[c>>3]=+h[c>>3]*.9090909090909091;a[b+537>>0]=1;return 0}function pP(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0;e=b+536|0;d=(a[e>>0]|0)==0;a[e>>0]=d&1;if(d){d=c[b+448>>2]|0;e=c[b+452>>2]|0;i=+(d>>>0);g=+(e>>>0);f=i/+(d|0)>3]=(f?i:g)/+((f?d:e)|0);e=b+336|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;a[b+537>>0]=1}return 0}function qP(b){b=b|0;var d=0,e=0;d=c[(c[b>>2]|0)+168>>2]|0;e=b+580|0;if(!(c[e>>2]|0)){c[e>>2]=d;e=(c[d+16>>2]|0)+112|0;a[e>>0]=a[e>>0]|2;GP(b,d)}dF(b,d);a[b+540>>0]=1;return}function rP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0;k=l;l=l+16|0;f=k;switch(d|0){case 1:{c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];zP(b,f);FP(b);a[b+538>>0]=1;a[b+541>>0]=1;j=13;break}case 2:{a[b+538>>0]=1;a[b+541>>0]=2;j=13;break}case 3:{c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];zP(b,f);a[b+538>>0]=1;a[b+541>>0]=3;j=13;break}case 4:{a[b+536>>0]=0;if(!(c[b+360>>2]|0)){f=b+352|0;i=+h[f>>3];d=b+336|0;h[d>>3]=(+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+520>>3]*i)+ +h[d>>3];g=+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5;d=b+528|0}else{f=b+352|0;i=+h[f>>3];d=b+336|0;h[d>>3]=+h[d>>3]-(+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+528>>3]*i);g=+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5;d=b+520|0}j=b+344|0;h[j>>3]=g*.10000000000000009/(+h[d>>3]*i)+ +h[j>>3];h[f>>3]=i*1.1;j=13;break}case 5:{a[b+536>>0]=0;j=b+352|0;i=+h[j>>3]*.9090909090909091;h[j>>3]=i;if(!(c[b+360>>2]|0)){f=b+336|0;h[f>>3]=+h[f>>3]-(+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+520>>3]*i);g=+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5;f=b+528|0}else{f=b+336|0;h[f>>3]=(+h[e+8>>3]-+((c[b+452>>2]|0)>>>0)*.5)*.10000000000000009/(+h[b+528>>3]*i)+ +h[f>>3];g=+h[e>>3]-+((c[b+448>>2]|0)>>>0)*.5;f=b+520|0}j=b+344|0;h[j>>3]=+h[j>>3]-g*.10000000000000009/(+h[f>>3]*i);j=13;break}default:{}}if((j|0)==13)a[b+537>>0]=1;b=b+560|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];l=k;return}function sP(b,c,d){b=b|0;c=c|0;d=d|0;a[b+538>>0]=0;a[b+541>>0]=0;return}function tP(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0;k=l;l=l+16|0;e=k;i=b+560|0;j=(+h[d>>3]-+h[i>>3])/+h[b+520>>3];g=(+h[d+8>>3]-+h[b+568>>3])/+h[b+528>>3];if(!(+B(+j)<.0001&+B(+g)<.0001)){switch(a[b+541>>0]|0){case 0:{c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];zP(b,e);break}case 2:{f=+h[b+352>>3];if(!(c[b+360>>2]|0)){e=b+336|0;h[e>>3]=+h[e>>3]-j/f;e=b+344|0;h[e>>3]=+h[e>>3]-g/f}else{e=b+336|0;h[e>>3]=+h[e>>3]-g/f;e=b+344|0;h[e>>3]=+h[e>>3]+j/f}a[b+537>>0]=1;break}default:{}}c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2]}l=k;return}function uP(a,b,c){a=a|0;b=b|0;c=c|0;return}function vP(a){a=a|0;return}function wP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=c[b>>2]|0;if(d){d=L1(d,135739)|0;if(d|0){i=TB(d,0)|0;s1(d)|0;f=5}}else{i=TB(c[15621]|0,0)|0;f=5}if((f|0)==5?i|0:0){g=j+168|0;d=c[g>>2]|0;if(d|0){f=c[j+172>>2]|0;if((f|0)!=0?(h=c[f+4>>2]|0,(h|0)!=0):0){tb[h&127](d);d=c[g>>2]|0}gH(d);$x(c[g>>2]|0)|0}Fz(i,0,134401,280,1);Fz(i,1,134365,304,1);Fz(i,2,134378,176,1);c[g>>2]=i;c[(c[i+16>>2]|0)+144>>2]=j;if((_C(j,i,e)|0)!=-1){c[b+580>>2]=0;c[b+576>>2]=0;a[b+537>>0]=1}}return}function xP(a,b){a=a|0;b=b|0;a=c[a>>2]|0;_C(a,c[a+168>>2]|0,b)|0;return}function yP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=c[a>>2]|0;f=g+160|0;e=c[f>>2]|0;if((e|0)!=0?(c[g+164>>2]|0)==0:0){i=g+192|0;h=c[i>>2]|0;c[f>>2]=0;c[i>>2]=0;f=h}else{f=0;e=0}aD(g,c[g+168>>2]|0,b,d)|0;if(e|0){i=c[a>>2]|0;c[i+160>>2]=e;c[i+192>>2]=f}return}function zP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0.0,k=0.0,m=0;f=l;l=l+80|0;e=f+48|0;g=f;m=f+32|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];AP(m,b,e);k=+h[m>>3];j=+h[m+8>>3];i=1.0/+h[b+352>>3];h[g+16>>3]=i+k;h[g+24>>3]=i+j;h[g>>3]=k-i;h[g+8>>3]=j-i;d=c[(c[b>>2]|0)+168>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];c[e+16>>2]=c[g+16>>2];c[e+20>>2]=c[g+20>>2];c[e+24>>2]=c[g+24>>2];c[e+28>>2]=c[g+28>>2];d=BP(d,e)|0;e=b+576|0;if((d|0)!=(c[e>>2]|0)){CP(b);c[e>>2]=d;DP(b);a[b+537>>0]=1}l=f;return}function AP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0;if(!(c[b+360>>2]|0)){e=+h[b+352>>3];f=+h[d+8>>3];g=e;i=b+528|0;e=+h[d>>3]/(+h[b+520>>3]*e)-+h[b+504>>3]}else{e=+h[b+352>>3];f=-+h[d>>3];g=e;i=b+520|0;e=+h[d+8>>3]/(+h[b+528>>3]*e)-+h[b+504>>3]}g=f/(+h[i>>3]*g)-+h[b+512>>3];h[a>>3]=e;h[a+8>>3]=g;return}function BP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=Sy(a)|0;a:while(1){if(!e){e=9;break}d=Ex(a,e)|0;while(1){if(!d)break;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];if((WM(d,f)|0)<<24>>24){e=6;break a}d=Gx(a,d)|0}e=Ty(a,e)|0}do if((e|0)!=6)if((e|0)==9){d=Uy(a)|0;while(1){if(!d)break;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];if((TM(d,f)|0)<<24>>24){e=12;break}d=Vy(a,d)|0}if((e|0)==12)break;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];c[f+28>>2]=c[b+28>>2];d=EP(a,f)|0;if(!d){d=a;break}else break}while(0);l=g;return d|0}function CP(b){b=b|0;var d=0;d=c[b+576>>2]|0;a:do if(d|0)switch(pz(d)|0){case 0:{d=(c[d+16>>2]|0)+112|0;a[d>>0]=a[d>>0]&-2;break a}case 1:{d=(c[d+16>>2]|0)+117|0;a[d>>0]=a[d>>0]&-2;break a}case 2:{d=(c[d+16>>2]|0)+115|0;a[d>>0]=a[d>>0]&-2;break a}default:break a}while(0);c[b+584>>2]=0;return}function DP(b){b=b|0;var d=0,e=0;e=b+584|0;d=c[e>>2]|0;if(d|0){D_(d);c[e>>2]=0}d=c[b+576>>2]|0;a:do if(d|0)switch(pz(d)|0){case 0:{b=(c[d+16>>2]|0)+112|0;a[b>>0]=a[b>>0]|1;b=nx(d,0,138019,0)|0;if(!b)break a;c[e>>2]=pH(yx(d,b)|0,d)|0;break a}case 1:{b=(c[d+16>>2]|0)+117|0;a[b>>0]=a[b>>0]|1;b=nx(ez(d)|0,1,138019,0)|0;if(!b)break a;c[e>>2]=pH(yx(d,b)|0,d)|0;break a}case 2:{b=(c[d+16>>2]|0)+115|0;a[b>>0]=a[b>>0]|1;b=nx(ez(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0,2,138019,0)|0;if(!b)break a;c[e>>2]=pH(yx(d,b)|0,d)|0;break a}default:break a}while(0);return}function EP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;e=m;g=c[a+16>>2]|0;i=c[g+180>>2]|0;j=g+184|0;d=1;while(1){if((d|0)>(i|0)){k=4;break}f=c[(c[j>>2]|0)+(d<<2)>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];f=EP(f,e)|0;if(!f)d=d+1|0;else{a=f;break}}do if((k|0)==4){o=+h[g+24>>3];n=+h[g+40>>3];if(((+h[b+16>>3]>=+h[g+16>>3]?+h[g+32>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=o:0)?n>=+h[b+8>>3]:0)break;a=0}while(0);l=m;return a|0}function FP(b){b=b|0;var d=0,e=0,f=0;f=b+580|0;d=c[f>>2]|0;a:do if(d|0)switch(pz(d)|0){case 0:{e=(c[d+16>>2]|0)+112|0;a[e>>0]=a[e>>0]&-7|4;break a}case 1:{e=(c[d+16>>2]|0)+117|0;a[e>>0]=a[e>>0]&-7|4;break a}case 2:{e=(c[d+16>>2]|0)+115|0;a[e>>0]=a[e>>0]&-7|4;break a}default:break a}while(0);d=b+588|0;e=c[d>>2]|0;if(e|0){D_(e);c[d>>2]=0}d=c[b+576>>2]|0;c[f>>2]=d;b:do if(d|0)switch(pz(d)|0){case 0:{f=(c[d+16>>2]|0)+112|0;a[f>>0]=a[f>>0]|2;GP(b,d);break b}case 1:{f=(c[d+16>>2]|0)+117|0;a[f>>0]=a[f>>0]|2;HP(b,d);break b}case 2:{f=(c[d+16>>2]|0)+115|0;a[f>>0]=a[f>>0]|2;IP(b,d);break b}default:break b}while(0);return}function GP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+592|0;do if((fz(b)|0)==(b|0))if(!(ey(b)|0)){rC(d,0,108412);break}else{rC(d,0,108404);break}else rC(d,0,108418);while(0);rC(d,1,ry(b)|0);c[a+596>>2]=2;f=a+604|0;d=0;e=2;while(1){d=sx(b,0,d)|0;if(!d)break;rC(f,e,c[d+8>>2]|0);rC(f,e+1|0,yx(b,d)|0);rC(f,e+2|0,0);e=e+3|0}c[a+608>>2]=e;d=nx(b,0,137973,0)|0;if(!d){d=nx(b,0,108395,0)|0;if(d|0)g=11}else g=11;if((g|0)==11)c[a+588>>2]=pH(yx(b,d)|0,b)|0;return}function HP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=a+592|0;rC(f,0,108399);rC(f,1,ry(b)|0);c[a+596>>2]=2;f=a+604|0;g=fz(ez(b)|0)|0;e=2;d=0;while(1){d=sx(g,1,d)|0;if(!d)break;rC(f,e,c[d+8>>2]|0);rC(f,e|1,yx(b,d)|0);e=e+2|0}c[a+608>>2]=e;d=nx(ez(b)|0,1,137973,0)|0;if(!d){d=nx(ez(b)|0,1,108395,0)|0;if(d|0)h=6}else h=6;if((h|0)==6)c[a+588>>2]=pH(yx(b,d)|0,b)|0;return}function IP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=a+592|0;rC(h,0,108368);k=b+48|0;rC(h,1,ry(c[((c[b>>2]&3|0)==3?b:k)+40>>2]|0)|0);k=(ey(ez(c[((c[b>>2]&3|0)==3?b:k)+40>>2]|0)|0)|0)!=0;rC(h,3,k?134656:138665);k=b+-48|0;rC(h,4,ry(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0);c[a+596>>2]=7;i=a+604|0;j=fz(ez(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0)|0;g=7;d=0;a:while(1){while(1){d=sx(j,2,d)|0;if(!d)break a;e=d+8|0;f=c[e>>2]|0;if(!(b$(f,108373)|0)){l=5;break}if(!(b$(f,108382)|0)){l=7;break}if(b$(f,108391)|0)break;rC(h,6,yx(b,d)|0)}if((l|0)==5){l=0;rC(h,2,yx(b,d)|0)}else if((l|0)==7){l=0;rC(h,5,yx(b,d)|0)}rC(i,g,c[e>>2]|0);rC(i,g+1|0,yx(b,d)|0);g=g+2|0}c[a+608>>2]=g;d=nx(ez(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0,2,137973,0)|0;if(!d){d=nx(ez(c[((c[b>>2]&3|0)==2?b:k)+40>>2]|0)|0,2,108395,0)|0;if(d|0)l=13}else l=13;if((l|0)==13)c[a+588>>2]=pH(yx(b,d)|0,b)|0;return}function JP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=KP(a,b,c[d>>2]|0)|0;d=c[d+4>>2]|0;while(1){f=c[d+4>>2]|0;if(!f)break;b=0;while(1){e=c[f+(b*20|0)+4>>2]|0;if(!e)break;uC(a,c[d>>2]|0,e,c[f+(b*20|0)+8>>2]|0,g,f+(b*20|0)|0)|0;b=b+1|0}d=d+8|0}return}function KP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=vH(12)|0;if(!b)b=0;else b=n1(b)|0;c[e+4>>2]=b;c[e+8>>2]=n1(d)|0;d=a+100|0;c[e>>2]=c[d>>2];c[d>>2]=e;return e|0}function LP(b,c){b=b|0;c=c|0;MP(b);a[b+44>>0]=0;NP(b)|0;AL(b)|0;return}function MP(b){b=b|0;var d=0,e=0;d=c[b+32>>2]|0;a:do if(d|0)while(1){e=c[d>>2]|0;if(!e)break a;if((a[e>>0]|0)==103?P0(e,108427)|0:0)JP(b,0,c[d+4>>2]|0);d=d+8|0}while(0);return}function NP(a){a=a|0;var b=0;b=wC(a,2,108440)|0;if(!b)a=999;else{c[a+148>>2]=c[(c[b+16>>2]|0)+12>>2];a=300}return a|0}function OP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=c[a+148>>2]|0;if((a|0)!=0?(e=c[a>>2]|0,(e|0)!=0):0)a=lb[e&127](b,d)|0;else a=0;return a|0}function PP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return (c[b>>2]|0)-(c[d>>2]|0)|0}function QP(a){a=a|0;var b=0.0,d=0.0;a=c[a+16>>2]|0;d=+h[a+16>>3];b=+h[a+24>>3];return (RP(~~(d>b?d:b)>>>0)|0)+1|0}function RP(a){a=a|0;var b=0,c=0;if(!a)a=-1;else{c=a>>>0>65535;a=c?a>>>16:a;c=c?16:0;b=a>>>0>255;a=b?a>>>8:a;c=b?c|8:c;b=a>>>0>15;a=b?a>>>4:a;c=b?c|4:c;b=a>>>0>3;a=(b?c|2:c)+((b?a>>>2:a)>>>0>1&1)|0}return a|0}function SP(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;q=r;p=TP(b,d,e,f,g)|0;e=UP(p)|0;if((e|0)>=0){n=q+16|0;o=q+24|0;m=q+8|0;k=g+32|0;e=0;g=0;while(1){if((g|0)>=(d|0))break;f=b+(g*40|0)+32|0;do if(c[f>>2]|0){VP(q,p,b+(g*40|0)|0);i=+h[n>>3];j=+h[o>>3];if(!(c[q>>2]|0)){a[(c[f>>2]|0)+36>>0]=1;break}if(+h[m>>3]==0.0){f=c[f>>2]|0;h[f+16>>3]=i;h[f+24>>3]=j;a[f+36>>0]=1;break}if((a[k>>0]|0)==1){f=c[f>>2]|0;h[f+16>>3]=i;h[f+24>>3]=j;a[f+36>>0]=1}else e=1}while(0);g=g+1|0}WP(p)}l=r;return e|0}function TP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=uH(28)|0;j=Cw(25808,c[4558]|0)|0;h=g+20|0;c[h>>2]=j;do if(j){j=CS()|0;c[g+24>>2]=j;if(!j){E1(108658,14,1,c[15686]|0)|0;i=6;break}else{c[g>>2]=a;c[g+4>>2]=b;c[g+8>>2]=d;c[g+12>>2]=e;c[g+16>>2]=f;break}}else{E1(108658,14,1,c[15686]|0)|0;i=6}while(0);if((i|0)==6){a=c[h>>2]|0;if(a|0)yw(a)|0;a=c[g+24>>2]|0;if(a|0)ES(a)|0;D_(g);g=0}return g|0}function UP(a){a=a|0;var b=0;b=dQ(a)|0;if((b|0)>=0){eQ(a);fQ(a);b=yw(c[a+20>>2]|0)|0}return b|0}function VP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0,M=0;M=l;l=l+464|0;J=M+416|0;L=M+400|0;G=M+384|0;m=M+352|0;n=M+320|0;o=M+288|0;p=M+256|0;r=M+224|0;s=M+192|0;t=M+160|0;u=M+128|0;v=M+96|0;x=M+64|0;y=M+32|0;H=M;z=c[d+32>>2]|0;e=+h[z>>3];C=d+16|0;A=(e*2.0+ +h[C>>3])*.125;D=z+8|0;I=d+24|0;i=+h[I>>3];K=(+h[D>>3]*2.0+i)*.5;if(!z)qa(108451,108461,445,108471);f=J;g=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));B=z+16|0;h[B>>3]=+h[d>>3]-e;E=d+8|0;F=z+24|0;h[F>>3]=i+ +h[E>>3];XP(m,b,d,J);j=c[m>>2]|0;f=c[m+4>>2]|0;e=+h[m+8>>3];m=m+16|0;c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[L+12>>2]=c[m+12>>2];a:do if(!j){c[a>>2]=0;c[a+4>>2]=f;h[a+8>>3]=e;a=a+16|0;c[a>>2]=c[L>>2];c[a+4>>2]=c[L+4>>2];c[a+8>>2]=c[L+8>>2];c[a+12>>2]=c[L+12>>2]}else{h[F>>3]=+h[E>>3];XP(n,b,d,J);g=c[n>>2]|0;m=c[n+4>>2]|0;i=+h[n+8>>3];n=n+16|0;c[G>>2]=c[n>>2];c[G+4>>2]=c[n+4>>2];c[G+8>>2]=c[n+8>>2];c[G+12>>2]=c[n+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=m;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];f=m;e=i}else g=j;h[F>>3]=+h[E>>3]-+h[D>>3];XP(o,b,d,J);m=c[o>>2]|0;j=c[o+4>>2]|0;i=+h[o+8>>3];o=o+16|0;c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[G+8>>2]=c[o+8>>2];c[G+12>>2]=c[o+12>>2];if(!m){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];f=j;e=i}else m=g;h[B>>3]=+h[d>>3];h[F>>3]=+h[I>>3]+ +h[E>>3];XP(p,b,d,J);g=c[p>>2]|0;j=c[p+4>>2]|0;i=+h[p+8>>3];p=p+16|0;c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[G+8>>2]=c[p+8>>2];c[G+12>>2]=c[p+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[F>>3]=+h[E>>3]-+h[D>>3];XP(r,b,d,J);g=c[r>>2]|0;j=c[r+4>>2]|0;i=+h[r+8>>3];r=r+16|0;c[G>>2]=c[r>>2];c[G+4>>2]=c[r+4>>2];c[G+8>>2]=c[r+8>>2];c[G+12>>2]=c[r+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[B>>3]=+h[C>>3]+ +h[d>>3];h[F>>3]=+h[I>>3]+ +h[E>>3];XP(s,b,d,J);g=c[s>>2]|0;j=c[s+4>>2]|0;i=+h[s+8>>3];s=s+16|0;c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[G+12>>2]=c[s+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[F>>3]=+h[E>>3];XP(t,b,d,J);g=c[t>>2]|0;j=c[t+4>>2]|0;i=+h[t+8>>3];t=t+16|0;c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[G+8>>2]=c[t+8>>2];c[G+12>>2]=c[t+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=g;f=j;e=i}h[F>>3]=+h[E>>3]-+h[D>>3];XP(u,b,d,J);g=c[u>>2]|0;j=c[u+4>>2]|0;i=+h[u+8>>3];u=u+16|0;c[G>>2]=c[u>>2];c[G+4>>2]=c[u+4>>2];c[G+8>>2]=c[u+8>>2];c[G+12>>2]=c[u+12>>2];if(!g){c[a>>2]=0;c[a+4>>2]=j;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break}if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];f=j;e=i}else g=m;j=(c[J+28>>2]|0)==0;do if(!(c[J+24>>2]|0))if(j){if(c[J+32>>2]|0){w=38;break}if(!((c[J+12>>2]|0)==0&(c[J>>2]|0)==0))w=38}else w=46;else if(j)w=38;else w=46;while(0);b:do if((w|0)==38)if(!(c[J+32>>2]|0)){h[B>>3]=+h[d>>3]-+h[z>>3];p=v+4|0;r=v+8|0;s=v+16|0;m=F;j=E;i=+h[I>>3];c:while(1){while(1){h[m>>3]=+h[j>>3]+i;if(!(+h[B>>3]<=+h[C>>3]+ +h[d>>3])){w=46;break b}XP(v,b,d,J);n=c[v>>2]|0;o=c[p>>2]|0;k=+h[r>>3];c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[G+12>>2]=c[s+12>>2];if(!n)break c;if(k>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=B;j=B;i=A;g=n;f=o;e=k}c[a>>2]=0;c[a+4>>2]=o;h[a+8>>3]=k;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}else w=46;while(0);d:do if((w|0)==46)if((c[J+12>>2]|0)==0&(c[J>>2]|0)==0){h[B>>3]=+h[d>>3]-+h[z>>3];k=+h[E>>3];n=x+4|0;o=x+8|0;p=x+16|0;i=k;k=+h[I>>3]+k;while(1){h[F>>3]=k;if(!(k>=i-+h[D>>3]))break d;XP(x,b,d,J);j=c[x>>2]|0;m=c[n>>2]|0;i=+h[o>>3];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[G+8>>2]=c[p+8>>2];c[G+12>>2]=c[p+12>>2];if(!j)break;if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];g=j;f=m;e=i}i=+h[E>>3];k=+h[F>>3]-K}c[a>>2]=0;c[a+4>>2]=m;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}while(0);i=+h[d>>3];k=+h[C>>3]+i;h[B>>3]=k;q=+h[D>>3];h[F>>3]=+h[E>>3]-q;j=c[J+4>>2]|0;do if(!(c[J+8>>2]|0)){m=c[J>>2]|0;if(!((j|0)==0&(m|0)==0)){w=59;break}if(c[J+20>>2]|0){j=0;m=0;w=59;break}if(c[J+32>>2]|0){j=0;m=0;w=59}}else{m=c[J>>2]|0;w=59}while(0);e:do if((w|0)==59){f:do if((j|0)==0&(m|0)==0){h[B>>3]=k;p=y+4|0;r=y+8|0;s=y+16|0;m=F;j=E;i=q;g:while(1){while(1){h[m>>3]=+h[j>>3]-i;i=+h[d>>3];if(!(+h[B>>3]>=i-+h[z>>3]))break f;XP(y,b,d,J);n=c[y>>2]|0;o=c[p>>2]|0;k=+h[r>>3];c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[G+12>>2]=c[s+12>>2];if(!n)break g;if(k>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];m=B;j=B;i=A;g=n;f=o;e=k}c[a>>2]=0;c[a+4>>2]=o;h[a+8>>3]=k;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}while(0);if(c[J+20>>2]|0)break;if(c[J+32>>2]|0)break;h[B>>3]=+h[C>>3]+i;i=+h[E>>3];n=H+4|0;o=H+8|0;p=H+16|0;k=i;i=i-+h[D>>3];while(1){h[F>>3]=i;if(!(i<=+h[I>>3]+k))break e;XP(H,b,d,J);j=c[H>>2]|0;m=c[n>>2]|0;i=+h[o>>3];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[G+8>>2]=c[p+8>>2];c[G+12>>2]=c[p+12>>2];if(!j)break;if(i>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];c[L+8>>2]=c[G+8>>2];c[L+12>>2]=c[G+12>>2];g=j;f=m;e=i}k=+h[E>>3];i=+h[F>>3]+K}c[a>>2]=0;c[a+4>>2]=m;h[a+8>>3]=i;a=a+16|0;c[a>>2]=c[G>>2];c[a+4>>2]=c[G+4>>2];c[a+8>>2]=c[G+8>>2];c[a+12>>2]=c[G+12>>2];break a}while(0);c[a>>2]=g;c[a+4>>2]=f;h[a+8>>3]=e;a=a+16|0;c[a>>2]=c[L>>2];c[a+4>>2]=c[L+4>>2];c[a+8>>2]=c[L+8>>2];c[a+12>>2]=c[L+12>>2]}while(0);l=M;return}function WP(a){a=a|0;ES(c[a+24>>2]|0)|0;D_(a);return}function XP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0;t=l;l=l+48|0;q=t+32|0;s=t+16|0;p=t;g=c[e+32>>2]|0;if(!g)qa(108451,108461,382,108480);o=g+16|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];o=d+4|0;m=0;g=0;while(1){if((m|0)>=(c[o>>2]|0))break;j=c[d>>2]|0;k=j+(m*40|0)|0;do if((k|0)!=(e|0)){if(+h[j+(m*40|0)+16>>3]>0.0?+h[j+(m*40|0)+24>>3]>0.0:0)break;g=g+((YP(e,k)|0)!=0&1)|0}while(0);m=m+1|0}ZP(e,q);m=c[d+24>>2]|0;m=GS(m,c[m>>2]|0,q)|0;if(!m){c[b>>2]=g;h[b+8>>3]=0.0;s=b+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2]}else{k=m;i=0.0;while(1){if(!k)break;j=c[(c[k+4>>2]|0)+16>>2]|0;if((j|0)!=(e|0)){_P(j,s);n=+$P(q,s);if(n>0.0){g=g+1|0;i=+aQ(e,j,q,n,f)+i}d=c[j+32>>2]|0;if(((d|0)!=0?(a[d+36>>0]|0)!=0:0)?(ZP(j,s),r=+$P(q,s),r>0.0):0){g=g+1|0;i=+bQ(e,j,q,r,f)+i}}k=c[k>>2]|0}BS(m);c[b>>2]=g;h[b+8>>3]=i;s=b+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2]}l=t;return}function YP(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0,g=0.0;a=c[a+32>>2]|0;if(+h[b+16>>3]==0.0?+h[b+24>>3]==0.0:0){if((((a|0)!=0?(d=+h[b>>3],e=+h[a+16>>3],d>e):0)?d<+h[a>>3]+e:0)?(f=+h[b+8>>3],g=+h[a+24>>3],f>g):0)a=f<+h[a+8>>3]+g&1;else a=0;return a|0}qa(108517,108461,219,108554);return 0}function ZP(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a+32>>2]|0;e=+h[a+16>>3];c[b>>2]=~~e;d=+h[a+24>>3];c[b+4>>2]=~~d;c[b+8>>2]=~~(+h[a>>3]+e);c[b+12>>2]=~~(+h[a+8>>3]+d);return}function _P(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;e=+h[a>>3];c[b>>2]=~~e;d=+h[a+8>>3];c[b+4>>2]=~~d;c[b+8>>2]=~~(+h[a+16>>3]+e);c[b+12>>2]=~~(+h[a+24>>3]+d);return}function $P(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=c[a+8>>2]|0;j=c[b>>2]|0;if((((i|0)>=(j|0)?(k=c[a>>2]|0,l=c[b+8>>2]|0,(k|0)<=(l|0)):0)?(e=c[a+12>>2]|0,f=c[b+4>>2]|0,(e|0)>=(f|0)):0)?(g=c[a+4>>2]|0,h=c[b+12>>2]|0,(g|0)<=(h|0)):0)d=(+(c[((e|0)<(h|0)?a:b)+12>>2]|0)-+(c[((g|0)>(f|0)?a:b)+4>>2]|0))*(+(c[((i|0)<(l|0)?a:b)+8>>2]|0)-+(c[((k|0)>(j|0)?a:b)>>2]|0));else d=0.0;return +d}function aQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0;j=l;l=l+16|0;i=j;a=cQ(a,b)|0;f=f+(((a|0)<0?5:a)<<2)|0;a=c[f>>2]|0;if(!a){c[f>>2]=b;g=e}else{_P(a,i);g=+$P(d,i);g=g>e?g:0.0;a=c[f>>2]|0;if((c[a+32>>2]|0)!=0?(ZP(a,i),h=+$P(d,i),h>e):0)g=h>g?h:g;if(!(g>0.0)){c[f>>2]=b;g=e}}l=j;return +g}function bQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0;j=l;l=l+16|0;i=j;a=cQ(a,b)|0;f=f+(((a|0)<0?5:a)<<2)|0;a=c[f>>2]|0;if(!a){c[f>>2]=b;g=e}else{_P(a,i);g=+$P(d,i);g=g>e?g:0.0;a=c[f>>2]|0;if((c[a+32>>2]|0)!=0?(ZP(a,i),h=+$P(d,i),h>e):0)g=h>g?h:g;if(!(g>0.0)){c[f>>2]=b;g=e}}l=j;return +g}function cQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0;e=c[b+32>>2]|0;f=c[d+32>>2]|0;if((e|0)==(f|0))qa(108496,108461,276,108506);do if((a[e+36>>0]|0)!=0?(a[f+36>>0]|0)!=0:0){j=+h[b>>3];if(j==0.0?+h[b+8>>3]==0.0:0){e=-1;break}k=+h[d>>3];i=+h[d+8>>3];if(!(k==0.0&i==0.0)){g=+h[b+8>>3];if(ij?2:1;break}e=kg){if(e){e=6;break}e=k>j?8:7;break}if(!e)if(k>j)e=5;else e=-1;else e=3}else e=-1}else e=-1;while(0);return e|0}function dQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+32|0;d=k+24|0;e=k+16|0;f=k;g=QP(a)|0;h=a+4|0;i=e+4|0;j=a+20|0;b=0;while(1){if((b|0)>=(c[h>>2]|0)){b=0;break}m=uH(32)|0;o=(c[a>>2]|0)+(b*40|0)|0;n=m+12|0;c[m+28>>2]=o;gQ(f,o);c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];c[n+12>>2]=c[f+12>>2];n=c[n>>2]|0;c[e>>2]=(((c[m+20>>2]|0)-n|0)/2|0)+n;n=c[m+16>>2]|0;c[i>>2]=(((c[m+24>>2]|0)-n|0)/2|0)+n;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[m+8>>2]=hQ(d,g)|0;n=c[j>>2]|0;if(!(nb[c[n>>2]&63](n,m,1)|0)){b=-1;break}else b=b+1|0}l=k;return b|0}function eQ(a){a=a|0;var b=0,d=0,e=0;d=a+20|0;e=c[d>>2]|0;b=a+24|0;a=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!a)break;e=c[b>>2]|0;HS(e,a+12|0,c[a+28>>2]|0,e,0)|0;e=c[d>>2]|0;a=nb[c[e>>2]&63](e,a,8)|0}return}function fQ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=a+20|0;f=Ew(c[e>>2]|0)|0;d=0;while(1){if(!(Ew(c[e>>2]|0)|0))break;g=c[e>>2]|0;a=c[(c[g+8>>2]|0)+4>>2]|0;if(!a){h=8;break}b=c[(c[g+4>>2]|0)+8>>2]|0;if((b|0)<0)a=c[a+8>>2]|0;else a=a+(0-b)|0;if(!a){h=8;break}nb[c[g>>2]&63](g,a,4096)|0;D_(a);d=d+1|0}if((h|0)==8)qa(108567,108461,616,108570);if((f|0)==(d|0))return;else qa(108582,108461,623,108570)}function gQ(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,l=0.0;d=c[b+32>>2]|0;if(!d){e=0.0;f=0.0}else{e=+h[d>>3];f=+h[d+8>>3]}l=+h[b>>3];k=~~+A(+(l-e));g=+h[b+8>>3];j=~~+A(+(g-f));i=~~+N(+(l+e+ +h[b+16>>3]));if((i|0)==2147483647)qa(108594,108461,264,108621);d=~~+N(+(g+f+ +h[b+24>>3]));if((d|0)==2147483647)qa(108631,108461,266,108621);else{c[a>>2]=k;c[a+4>>2]=j;c[a+8>>2]=i;c[a+12>>2]=d;return}}function hQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=0;e=c[a>>2]|0;d=c[a+4>>2]|0;while(1){a=b+-1|0;if((b|0)<=0)break;i=e>>>a&1;b=d>>>a&1;g=b+-1|0;h=g&(e^d);g=g&0-i;f=i<<1|f<<2|i^b;b=a;e=h^e^g;d=h^d^g}return f|0}function iQ(b){b=b|0;var d=0,e=0,f=0,g=0;d=W_(b)|0;if(d>>>0>=(c[46595]|0)>>>0){d=d+11|0;c[46595]=d;d=xH(c[46596]|0,d)|0;c[46596]=d;if(!d)d=0;else e=4}else{d=c[46596]|0;e=4}if((e|0)==4){g=d;while(1){e=a[b>>0]|0;if(!(e<<24>>24))break;f=e&255;if(Q$(f)|0)e=(P$(f)|0)&255;a[g>>0]=e;g=g+1|0;b=b+1|0}a[g>>0]=0}return d|0}function jQ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;F=l;l=l+144|0;s=F+96|0;p=F+80|0;v=F+124|0;t=F+72|0;w=F+64|0;x=F+56|0;C=F+48|0;D=F+40|0;E=F+32|0;y=F+24|0;z=F+16|0;A=F+8|0;B=F;i=F+120|0;m=F+116|0;n=F+112|0;o=F+108|0;c[e+32>>2]=f;r=b;while(1)if((a[r>>0]|0)==32)r=r+1|0;else break;c[o>>2]=255;b=a[r>>0]|0;a:do if(b<<24>>24==35){c[p>>2]=i;c[p+4>>2]=m;c[p+8>>2]=n;c[p+12>>2]=o;if((N1(r,108673,p)|0)<=2){b=a[r>>0]|0;q=12;break}switch(f|0){case 0:{G=+((c[i>>2]|0)>>>0)*.00392156862745098;h[C>>3]=G;g=+((c[m>>2]|0)>>>0)*.00392156862745098;h[D>>3]=g;j=+((c[n>>2]|0)>>>0)*.00392156862745098;h[E>>3]=j;k=+((c[o>>2]|0)>>>0)*.00392156862745098;kQ(G,g,j,t,w,x);h[e>>3]=+h[t>>3];h[e+8>>3]=+h[w>>3];h[e+16>>3]=+h[x>>3];h[e+24>>3]=k;b=0;break a}case 1:{a[e>>0]=c[i>>2];a[e+1>>0]=c[m>>2];a[e+2>>0]=c[n>>2];a[e+3>>0]=c[o>>2];b=0;break a}case 3:{j=+((c[i>>2]|0)>>>0)*.00392156862745098;h[C>>3]=j;k=+((c[m>>2]|0)>>>0)*.00392156862745098;h[D>>3]=k;G=+((c[n>>2]|0)>>>0)*.00392156862745098;h[E>>3]=G;lQ(j,k,G,y,z,A,B);a[e>>0]=~~+h[y>>3]*255;a[e+1>>0]=~~+h[z>>3]*255;a[e+2>>0]=~~+h[A>>3]*255;a[e+3>>0]=~~+h[B>>3]*255;b=0;break a}case 2:{c[e>>2]=(((c[i>>2]|0)*65535|0)>>>0)/255|0;c[e+4>>2]=(((c[m>>2]|0)*65535|0)>>>0)/255|0;c[e+8>>2]=(((c[n>>2]|0)*65535|0)>>>0)/255|0;c[e+12>>2]=(((c[o>>2]|0)*65535|0)>>>0)/255|0;b=0;break a}case 4:{h[e>>3]=+((c[i>>2]|0)>>>0)*.00392156862745098;h[e+8>>3]=+((c[m>>2]|0)>>>0)*.00392156862745098;h[e+16>>3]=+((c[n>>2]|0)>>>0)*.00392156862745098;h[e+24>>3]=+((c[o>>2]|0)>>>0)*.00392156862745098;b=0;break a}default:{b=0;break a}}}else q=12;while(0);b:do if((q|0)==12){if(!(b<<24>>24!=46?((b&255)+-48|0)>>>0>=10:0)){b=W_(r)|0;if(b>>>0>=(c[46597]|0)>>>0){b=b+11|0;c[46597]=b;b=xH(c[46598]|0,b)|0;c[46598]=b;if(!b){b=-1;break}}else b=c[46598]|0;m=b;i=r;c:while(1){n=i+1|0;i=a[i>>0]|0;switch(i<<24>>24){case 0:break c;case 44:{i=32;break}default:{}}a[m>>0]=i;m=m+1|0;i=n}a[m>>0]=0;c[s>>2]=t;c[s+4>>2]=w;c[s+8>>2]=x;if((N1(b,108687,s)|0)==3){k=+h[t>>3];k=k<1.0?k:1.0;k=k>0.0?k:0.0;h[t>>3]=k;j=+h[w>>3];j=j<1.0?j:1.0;j=j>0.0?j:0.0;h[w>>3]=j;g=+h[x>>3];g=g<1.0?g:1.0;g=g>0.0?g:0.0;h[x>>3]=g;switch(f|0){case 0:{h[e>>3]=k;h[e+8>>3]=j;h[e+16>>3]=g;h[e+24>>3]=1.0;b=0;break b}case 1:{mQ(k,j,g,C,D,E);a[e>>0]=~~(+h[C>>3]*255.0);a[e+1>>0]=~~(+h[D>>3]*255.0);a[e+2>>0]=~~(+h[E>>3]*255.0);a[e+3>>0]=-1;b=0;break b}case 3:{mQ(k,j,g,C,D,E);lQ(+h[C>>3],+h[D>>3],+h[E>>3],y,z,A,B);a[e>>0]=~~+h[y>>3]*255;a[e+1>>0]=~~+h[z>>3]*255;a[e+2>>0]=~~+h[A>>3]*255;a[e+3>>0]=~~+h[B>>3]*255;b=0;break b}case 2:{mQ(k,j,g,C,D,E);c[e>>2]=~~(+h[C>>3]*65535.0);c[e+4>>2]=~~(+h[D>>3]*65535.0);c[e+8>>2]=~~(+h[E>>3]*65535.0);c[e+12>>2]=65535;b=0;break b}case 4:{mQ(k,j,g,C,D,E);h[e>>3]=+h[C>>3];h[e+8>>3]=+h[D>>3];h[e+16>>3]=+h[E>>3];h[e+24>>3]=1.0;b=0;break b}default:{b=0;break b}}}}i=nQ(r)|0;c[v>>2]=i;if(!i)b=-1;else{b=c[46599]|0;if(!(((b|0)!=0?(u=c[b>>2]|0,(a[u>>0]|0)==(a[i>>0]|0)):0)?(b$(u,i)|0)==0:0)){b=e2(v,25844,2491,12,101)|0;c[46599]=b;if(!b)switch(f|0){case 0:{c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;h[e+24>>3]=1.0;b=1;break b}case 1:{a[e+2>>0]=0;a[e+1>>0]=0;a[e>>0]=0;a[e+3>>0]=-1;b=1;break b}case 3:{c[e>>2]=0;b=1;break b}case 2:{c[e+8>>2]=0;c[e+4>>2]=0;c[e>>2]=0;c[e+12>>2]=65535;b=1;break b}case 4:{c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;h[e+24>>3]=1.0;b=1;break b}default:{b=1;break b}}}switch(f|0){case 0:{h[e>>3]=+(d[b+4>>0]|0)*.00392156862745098;h[e+8>>3]=+(d[b+5>>0]|0)*.00392156862745098;h[e+16>>3]=+(d[b+6>>0]|0)*.00392156862745098;h[e+24>>3]=+(d[b+10>>0]|0)*.00392156862745098;b=0;break b}case 1:{a[e>>0]=a[b+7>>0]|0;a[e+1>>0]=a[b+8>>0]|0;a[e+2>>0]=a[b+9>>0]|0;a[e+3>>0]=a[b+10>>0]|0;b=0;break b}case 3:{j=+(d[b+7>>0]|0)*.00392156862745098;h[C>>3]=j;k=+(d[b+8>>0]|0)*.00392156862745098;h[D>>3]=k;G=+(d[b+9>>0]|0)*.00392156862745098;h[E>>3]=G;lQ(j,k,G,y,z,A,B);a[e>>0]=~~+h[y>>3]*255;a[e+1>>0]=~~+h[z>>3]*255;a[e+2>>0]=~~+h[A>>3]*255;a[e+3>>0]=~~+h[B>>3]*255;b=0;break b}case 2:{c[e>>2]=(d[b+7>>0]|0)*257;c[e+4>>2]=(d[b+8>>0]|0)*257;c[e+8>>2]=(d[b+9>>0]|0)*257;c[e+12>>2]=(d[b+10>>0]|0)*257;b=0;break b}case 4:{h[e>>3]=+(d[b+7>>0]|0)*.00392156862745098;h[e+8>>3]=+(d[b+8>>0]|0)*.00392156862745098;h[e+16>>3]=+(d[b+9>>0]|0)*.00392156862745098;h[e+24>>3]=+(d[b+10>>0]|0)*.00392156862745098;b=0;break b}default:{b=0;break b}}}}while(0);l=F;return b|0}function kQ(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;i=bc?b:c;m=ma?a:i);g=i/m;if(m>0.0)if(g>0.0){j=(m-a)/i;k=(m-b)/i;l=(m-c)/i;do if(!(m==a)){if(m==b){a=j+2.0-l;break}if(m==c)a=k+4.0-j;else a=0.0}else a=(b-c)/i;while(0);a=a*60.0;if(a<0.0)a=a+360.0}else a=0.0;else{g=0.0;a=0.0}h[d>>3]=a*.002777777777777778;h[f>>3]=m;h[e>>3]=g;return}function lQ(a,b,c,d,e,f,g){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h[d>>3]=1.0-a;h[e>>3]=1.0-b;h[f>>3]=1.0-c;b=+h[d>>3];c=+h[e>>3];c=b>3]=c;b=+h[f>>3];c=b>3]=c;h[d>>3]=+h[d>>3]-c;h[e>>3]=+h[e>>3]-+h[g>>3];h[f>>3]=+h[f>>3]-+h[g>>3];return}function mQ(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0.0,k=0,l=0;a:do if(!(b<=0.0)){i=!(a>=1.0)?a*6.0:0.0;l=~~i;i=i-+(l|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(l|0){case 0:{g=a;i=b;a=c;k=8;break a}case 1:{g=a;i=c;a=j;k=8;break a}case 2:{g=b;i=c;k=8;break a}case 3:{g=c;i=j;k=8;break a}case 4:{g=c;i=a;a=b;k=8;break a}case 5:{g=j;i=a;a=c;k=8;break a}default:break a}}else{g=c;i=c;a=c;k=8}while(0);if((k|0)==8){h[d>>3]=a;h[e>>3]=i;h[f>>3]=g}return}function nQ(b){b=b|0;var d=0,e=0;d=a[b>>0]|0;if(((d<<24>>24!=98?(e=b+1|0,!(d<<24>>24==119|(z$(e,134184,4)|0)==0)):0)?!(d<<24>>24==108|(z$(e,134189,4)|0)==0):0)?(z$(e,134194,8)|0)!=0:0){do if(d<<24>>24==47){d=A$(e,47)|0;if(!d)b=e;else{if((a[e>>0]|0)!=47){e=(V$(134203,e,4)|0)==0;b=e?d+1|0:b;break}d=c[46600]|0;if((d|0?a[d>>0]|0:0)?V$(134203,d,3)|0:0){b=pQ(d,b+2|0)|0;break}b=b+2|0}}else{d=c[46600]|0;if(((d|0)!=0?(a[d>>0]|0)!=0:0)?(V$(134203,d,3)|0)!=0:0)b=pQ(d,b)|0}while(0);b=iQ(b)|0}return b|0}function oQ(a,b){a=a|0;b=b|0;return O$(c[a>>2]|0,c[b>>2]|0)|0}function pQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=W_(a)|0;g=(W_(b)|0)+g|0;d=g+13|0;if((g+3|0)>>>0<(c[46601]|0)>>>0)d=c[46602]|0;else{c[46601]=d;d=xH(c[46602]|0,d)|0;c[46602]=d}c[e>>2]=a;c[e+4>>2]=b;Y0(d,134208,e)|0;l=f;return c[46602]|0}function qQ(a){a=a|0;c[46600]=a;return}function rQ(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,g=0;f=l;l=l+208|0;g=f;sQ(g,+h[a>>3],+h[a+8>>3],b,c,d,e);a=tQ(g)|0;l=f;return a|0}function sQ(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;var i=0,j=0;h[a>>3]=b;h[a+8>>3]=c;j=a+16|0;h[j>>3]=d;i=a+24|0;h[i>>3]=e;h[a+32>>3]=0.0;c=+K(+(+F(+f)/e),+(+E(+f)/d));h[a+56>>3]=c;e=+K(+(+F(+g)/e),+(+E(+g)/d));h[a+40>>3]=1.0;h[a+48>>3]=0.0;e=e-+A(+((e-c)*.15915494309189535))*6.283185307179586;h[a+64>>3]=g-f>3.141592653589793&e-c<3.141592653589793?e+6.283185307179586:e;zQ(a);AQ(a);BQ(a);g=+h[j>>3];g=(g-+h[i>>3])/g;h[a+168>>3]=g;h[a+176>>3]=(2.0-g)*g;g=1.0-g;h[a+184>>3]=g;h[a+192>>3]=g*g;return}function tQ(a){a=a|0;var b=0,c=0.0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0;q=uH(8)|0;f=+h[a+56>>3];e=+h[a+64>>3]-f;p=1;b=0;while(1){o=e/+(p|0);if(!(b<<24>>24==0&(p|0)<1024))break;a:do if(!(o<=1.5707963267948966))b=0;else{c=f;d=0;b=1;while(1){if(!(b<<24>>24!=0&(d|0)<(p|0)))break a;n=c+o;b=+uQ(a,c,n)<=1.0e-05&1;c=n;d=d+1|0}}while(0);p=p<<1}i=+E(+f);u=+F(+f);d=a+16|0;s=+h[d>>3];v=s*i;j=a+24|0;c=+h[j>>3];g=c*u;i=c*i;c=+h[a>>3];k=a+40|0;t=+h[k>>3];l=a+48|0;r=+h[l>>3];e=t*v+c-r*g;m=a+8|0;n=+h[m>>3];g=r*v+t*g+n;s=-(u*s);vQ(q,c,n);wQ(q,e,g);n=+G(+(o*.5));n=+F(+o)*.3333333333333333*(+C(+(n*n*3.0+4.0))+-1.0);c=f;f=g;g=r*s+t*i;i=t*s-r*i;b=0;while(1){if((b|0)>=(p|0))break;r=c+o;u=+E(+r);v=+F(+r);x=+h[d>>3];z=x*u;w=+h[j>>3];t=w*v;u=w*u;w=+h[k>>3];y=+h[l>>3];s=w*z+ +h[a>>3]-y*t;t=y*z+w*t+ +h[m>>3];x=-(v*x);v=w*x-y*u;u=y*x+w*u;xQ(q,e+i*n,f+g*n,s-v*n,t-u*n,s,t);c=r;e=s;f=t;g=u;i=v;b=b+1|0}yQ(q);return q|0}function uQ(a,b,c){a=a|0;b=+b;c=+c;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0;d=c+b;i=+h[a+16>>3];e=+h[a+24>>3]/i;g=+E(+d);f=+E(+(d*2.0));d=+E(+(d*3.0));a=e<.25?10392:10648;return +(((e*.001+4.98)*e+.207)/(e+.0067)*i*+L(+(((+h[a+32>>3]*e+ +h[a+40>>3])*e+ +h[a+48>>3])/(+h[a+56>>3]+e)*g+((+h[a>>3]*e+ +h[a+8>>3])*e+ +h[a+16>>3])/(+h[a+24>>3]+e)+((+h[a+64>>3]*e+ +h[a+72>>3])*e+ +h[a+80>>3])/(+h[a+88>>3]+e)*f+((+h[a+96>>3]*e+ +h[a+104>>3])*e+ +h[a+112>>3])/(+h[a+120>>3]+e)*d+(((+h[a+160>>3]*e+ +h[a+168>>3])*e+ +h[a+176>>3])/(+h[a+184>>3]+e)*g+((+h[a+128>>3]*e+ +h[a+136>>3])*e+ +h[a+144>>3])/(+h[a+152>>3]+e)+((+h[a+192>>3]*e+ +h[a+200>>3])*e+ +h[a+208>>3])/(+h[a+216>>3]+e)*f+((+h[a+224>>3]*e+ +h[a+232>>3])*e+ +h[a+240>>3])/(+h[a+248>>3]+e)*d)*(c-b))))}function vQ(a,b,d){a=a|0;b=+b;d=+d;var e=0;c[46603]=100;e=uH(1600)|0;c[a>>2]=e;h[e>>3]=b;h[e+8>>3]=d;c[a+4>>2]=1;return}function wQ(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;f=c[a>>2]|0;e=(c[a+4>>2]|0)+-1|0;xQ(a,+h[f+(e<<4)>>3],+h[f+(e<<4)+8>>3],b,d,b,d);return}function xQ(a,b,d,e,f,g,i){a=a|0;b=+b;d=+d;e=+e;f=+f;g=+g;i=+i;var j=0,k=0,l=0,m=0;l=a+4|0;j=c[l>>2]|0;k=c[46603]|0;if((j+3|0)<(k|0))a=c[a>>2]|0;else{c[46603]=k<<1;j=F_(c[a>>2]|0,k<<5)|0;c[a>>2]=j;a=j;j=c[l>>2]|0}h[a+(j<<4)>>3]=b;m=j+1|0;h[a+(j<<4)+8>>3]=d;h[a+(m<<4)>>3]=e;k=j+2|0;h[a+(m<<4)+8>>3]=f;h[a+(k<<4)>>3]=g;c[l>>2]=j+3;h[a+(k<<4)+8>>3]=i;return}function yQ(a){a=a|0;var b=0;b=c[a>>2]|0;wQ(a,+h[b>>3],+h[b+8>>3]);c[a>>2]=F_(c[a>>2]|0,c[a+4>>2]<<4)|0;c[46603]=0;return}function zQ(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0;d=+h[a+16>>3];b=+h[a+24>>3];b=+C(+(d*d-b*b));d=b*+h[a+40>>3];b=b*+h[a+48>>3];e=+h[a>>3];h[a+104>>3]=e-d;c=+h[a+8>>3];h[a+112>>3]=c-b;h[a+120>>3]=e+d;h[a+128>>3]=c+b;return}function AQ(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0;d=+h[a+16>>3];i=+h[a+56>>3];j=+E(+i)*d;b=+h[a+24>>3];i=+F(+i)*b;g=+h[a+64>>3];d=+E(+g)*d;b=+F(+g)*b;g=+h[a>>3];c=+h[a+40>>3];e=+h[a+48>>3];h[a+72>>3]=c*j+g-e*i;f=+h[a+8>>3];h[a+80>>3]=e*j+f+c*i;h[a+88>>3]=g+c*d-e*b;h[a+96>>3]=f+e*d+c*b;return}function BQ(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0;k=+h[a+24>>3];l=+h[a+16>>3];e=k/l;m=+h[a+48>>3];n=+B(+m)<.1;j=+h[a+40>>3];do if(n){b=m/j;c=+J(+(b*e));d=-c;if(j<0.0){b=+J(+(b/e));e=d;d=3.141592653589793-c;c=4.71238898038469-b;b=1.5707963267948966-b;break}else{b=+J(+(b/e));e=-3.141592653589793-c;c=1.5707963267948966-b;b=-1.5707963267948966-b;break}}else{b=j/m;c=+J(+(b/e));d=c+1.5707963267948966;if(m<0.0){b=+J(+(b*e));e=c+-1.5707963267948966;c=b+3.141592653589793;break}else{b=+J(+(b*e));e=d;d=c+4.71238898038469;c=b;b=b+-3.141592653589793;break}}while(0);g=+h[a+56>>3];e=e-+A(+((e-g)*.15915494309189535))*6.283185307179586;b=b-+A(+((b-g)*.15915494309189535))*6.283185307179586;f=d-+A(+((d-g)*.15915494309189535))*6.283185307179586;g=c-+A(+((c-g)*.15915494309189535))*6.283185307179586;i=+h[a+64>>3];if(!(e<=i)){e=+h[a+72>>3];c=+h[a+88>>3];c=e>3]-k*+F(+e)*m;h[a+136>>3]=c;if(!(b<=i)){e=+h[a+80>>3];d=+h[a+96>>3];d=e>3]+ +F(+b)*k*j;h[a+144>>3]=d;if(!(f<=i)){f=+h[a+72>>3];b=+h[a+88>>3];b=f>b?f:b}else b=+E(+f)*l*j+ +h[a>>3]-k*+F(+f)*m;h[a+152>>3]=b-c;if(!(g<=i)){m=+h[a+80>>3];b=+h[a+96>>3];b=m>b?m:b}else b=+E(+g)*l*m+ +h[a+8>>3]+ +F(+g)*k*j;h[a+160>>3]=b-d;return}function CQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0.0,m=0,n=0;n=l;l=l+80|0;m=n;DQ(b);k=+h[e+56>>3];g=+h[e+64>>3];switch(a[e+80>>0]|0){case 116:{g=(+h[e+48>>3]-+EQ(d))*.5+g;f=4;break}case 98:{g=g-(+h[e+48>>3]-+EQ(d))*.5;f=4;break}default:{}}if((f|0)==4)g=g+-1.0;h[m>>3]=k;h[m+8>>3]=g;c[m+20>>2]=c[e+8>>2];c[m+16>>2]=c[e+4>>2];h[m+32>>3]=+h[e+16>>3];j=b+16|0;f=xx(c[(c[j>>2]|0)+8>>2]|0,134215)|0;e=m+56|0;c[e>>2]=f;i=m+60|0;c[i>>2]=c[(c[j>>2]|0)+212>>2];j=m+64|0;a[j>>0]=0;if(!((f|0)!=0?(a[f>>0]|0)!=0:0))c[e>>2]=134226;if((a[d+4>>0]|0)==1){e=c[d>>2]|0;YO(b,c[(c[b>>2]|0)+336>>2]|0);f=c[e+24>>2]|0;if(!f)UO(b,134232);else UO(b,f);GQ(b,e,m);if(a[j>>0]|0)D_(c[i>>2]|0)}else FQ(b,c[d>>2]|0,m);HQ(b);l=n;return}function DQ(a){a=a|0;var d=0,e=0,f=0;d=NE(a)|0;e=c[d>>2]|0;a=c[e+4>>2]|0;c[d+4>>2]=a;c[d+12>>2]=c[e+12>>2];switch(a|0){case 2:{a=e+8|0;f=6;break}case 0:{a=e+8|0;f=6;break}case 1:{a=e+8|0;f=6;break}case 3:{a=e+8|0;f=6;break}default:{}}if((f|0)==6)c[d+8>>2]=c[a>>2];c[d+208>>2]=c[e+208>>2];c[d+228>>2]=c[e+228>>2];c[d+244>>2]=c[e+244>>2];f=d+260|0;b[f>>1]=b[f>>1]&-2|b[e+260>>1]&1;return}function EQ(b){b=b|0;var d=0.0,e=0,f=0;switch(a[b+4>>0]|0){case 1:{e=c[b>>2]|0;b=e+72|0;e=e+56|0;f=5;break}case 3:{e=c[b>>2]|0;b=e+24|0;e=e+8|0;f=5;break}case 2:{e=c[b>>2]|0;b=e+32|0;e=e+16|0;f=5;break}default:d=0.0}if((f|0)==5)d=+h[b>>3]-+h[e>>3];return +d}function FQ(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;n=l;l=l+96|0;j=n+64|0;i=n+32|0;g=n+16|0;k=n;m=b[e+4>>1]|0;if(m<<16>>16>=1){r=e+8|0;p=+h[e+24>>3];o=+h[r>>3];h[k>>3]=(o+p)*.5+ +h[f>>3];h[k+8>>3]=(+h[e+16>>3]+ +h[e+32>>3])*.5+ +h[f+8>>3];q=c[e>>2]|0;s=f+16|0;f=a[e+6>>0]|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[i+16>>2]=c[s+16>>2];c[i+20>>2]=c[s+20>>2];c[i+24>>2]=c[s+24>>2];c[i+28>>2]=c[s+28>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];c[j+16>>2]=c[r+16>>2];c[j+20>>2]=c[r+20>>2];c[j+24>>2]=c[r+24>>2];c[j+28>>2]=c[r+28>>2];TQ(d,m<<16>>16,q,g,(p-o)*.5,i,j,f)}l=n;return}function GQ(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+176|0;t=y+96|0;v=y+64|0;w=y+136|0;p=y;q=y+128|0;r=f+48|0;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];c[v+12>>2]=c[r+12>>2];c[v+16>>2]=c[r+16>>2];c[v+20>>2]=c[r+20>>2];c[v+24>>2]=c[r+24>>2];c[v+28>>2]=c[r+28>>2];m=+h[g>>3];n=+h[g+8>>3];r=f+84|0;i=c[r>>2]|0;if(!(c[f>>2]|0))x=(c[f+8>>2]|0)!=0;else x=1;u=f+108|0;j=c[u>>2]|0;if(j|0)IQ(g,j,183464);h[v>>3]=+h[v>>3]+m;s=v+16|0;h[s>>3]=+h[s>>3]+m;s=v+8|0;h[s>>3]=+h[s>>3]+n;s=v+24|0;h[s>>3]=+h[s>>3]+n;if(x?(c[e+152>>2]&4|0)==0:0){c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];s=JQ(e,g,f,t,w)|0}else s=0;o=f+42|0;j=b[o>>1]|0;if(!(j&32)){k=c[f+20>>2]|0;if(k){j=KQ(e,k,c[f+28>>2]|0,j&65535,q)|0;if(!(b[o>>1]&4)){c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];$O(e,t,j)}else{o=d[f+33>>0]|0;c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];EJ(e,LQ(p,t,o)|0,4,4,j)}D_(c[q>>2]|0)}while(1){j=c[i>>2]|0;if(!j)break;MQ(e,j,g);i=i+4|0}i=c[r>>2]|0;fP(e,1.0);j=f+24|0;while(1){k=i+4|0;i=c[i>>2]|0;if(!i)break;if(!(a[i+100>>0]|0)){i=k;continue}NQ(e,i,g,c[j>>2]|0,c[k>>2]|0);i=k}if(a[f+33>>0]|0){c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];c[t+16>>2]=c[v+16>>2];c[t+20>>2]=c[v+20>>2];c[t+24>>2]=c[v+24>>2];c[t+28>>2]=c[v+28>>2];OQ(e,f,t)}}if(s|0)PQ(e,w);if((x?c[e+152>>2]&4|0:0)?(c[t>>2]=c[v>>2],c[t+4>>2]=c[v+4>>2],c[t+8>>2]=c[v+8>>2],c[t+12>>2]=c[v+12>>2],c[t+16>>2]=c[v+16>>2],c[t+20>>2]=c[v+20>>2],c[t+24>>2]=c[v+24>>2],c[t+28>>2]=c[v+28>>2],JQ(e,g,f,t,w)|0):0)PQ(e,w);if(c[u>>2]|0)QQ(g,183464);l=y;return}function HQ(a){a=a|0;var b=0;b=c[a+16>>2]|0;c[b+208>>2]=0;c[b+228>>2]=0;c[b+244>>2]=0;c[b+212>>2]=0;OE(a);return}function IQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0;i=a+16|0;f=c[i>>2]|0;if(f|0){if(!(c[b>>2]|0)){f=0;g=d}else{c[d>>2]=f;f=c[b>>2]|0;g=i}c[g>>2]=f}f=c[a+20>>2]|0;if(f|0){g=b+4|0;if(!(c[g>>2]|0)){f=0;g=d}else{c[d+4>>2]=f;f=c[g>>2]|0;g=i}c[g+4>>2]=f}e=+h[a+32>>3];if(e>=0.0){f=b+16|0;if(!(+h[f>>3]>=0.0))e=-1.0;else{h[d+16>>3]=e;e=+h[f>>3];d=i}h[d+16>>3]=e}return}function JQ(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+224|0;n=u+8|0;k=u;t=u+40|0;j=u+184|0;i=u+56|0;m=c[d+16>>2]|0;o=m+208|0;c[h>>2]=c[o>>2];p=m+228|0;c[h+4>>2]=c[p>>2];q=m+244|0;c[h+8>>2]=c[q>>2];r=m+212|0;c[h+12>>2]=c[r>>2];s=m+260|0;a[h+16>>0]=(b[s>>1]<<15&65535)<<16>>16>>15;h=c[f+16>>2]|0;if((h|0)!=0?(a[h>>0]|0)!=0:0)i=0;else{Tw(t,128,i);i=e+60|0;h=c[i>>2]|0;if(!h){h=n1(QE(d,c[m+8>>2]|0,t)|0)|0;c[i>>2]=h;a[e+64>>0]=1}Ww(t,h)|0;i=c[46604]|0;c[46604]=i+1;c[k>>2]=i;Y0(j,134309,k)|0;Ww(t,j)|0;i=t+4|0;h=c[i>>2]|0;if(h>>>0>=(c[t+8>>2]|0)>>>0){Uw(t,1)|0;h=c[i>>2]|0}a[h>>0]=0;h=c[t>>2]|0;c[i>>2]=h;i=1}h=PE(d,0,c[f>>2]|0,c[f+12>>2]|0,c[f+8>>2]|0,h,c[m+8>>2]|0)|0;if(i)Xw(t);do if(h|0){if((c[o>>2]|0)==0?(b[s>>1]&1)==0:0)break;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];c[n+16>>2]=c[g+16>>2];c[n+20>>2]=c[g+20>>2];c[n+24>>2]=c[g+24>>2];c[n+28>>2]=c[g+28>>2];XE(d,n);PO(d,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)}while(0);l=u;return h|0}function KQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0;j=l;l=l+16|0;i=j;if(!((uG(b,f,i)|0)<<24>>24)){WO(a,b);b=1}else{WO(a,c[f>>2]|0);b=c[f+4>>2]|0;h=+g[i>>2];if(!b)XO(a,134232,d,h);else XO(a,b,d,h);b=e>>>1&1|2}UO(a,134297);l=j;return b|0}function LQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];e=a+32|0;b=b+16|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if((d|0)>1){j=+(d|0)*.5;i=+h[a>>3]+j;h[a>>3]=i;d=a+8|0;g=+h[d>>3]+j;h[d>>3]=g;f=+h[e>>3]-j;h[e>>3]=f;e=a+40|0;j=+h[e>>3]-j;h[e>>3]=j}else{f=+h[e>>3];g=+h[a+8>>3];i=+h[a>>3];j=+h[a+40>>3]}h[a+16>>3]=f;h[a+24>>3]=g;h[a+48>>3]=i;h[a+56>>3]=j;return a|0}function MQ(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+176|0;r=v+96|0;s=v+136|0;t=v+64|0;p=v;q=v+128|0;u=f+48|0;c[t>>2]=c[u>>2];c[t+4>>2]=c[u+4>>2];c[t+8>>2]=c[u+8>>2];c[t+12>>2]=c[u+12>>2];c[t+16>>2]=c[u+16>>2];c[t+20>>2]=c[u+20>>2];c[t+24>>2]=c[u+24>>2];c[t+28>>2]=c[u+28>>2];j=+h[g>>3];k=+h[g+8>>3];if(!(c[f>>2]|0))u=(c[f+8>>2]|0)!=0;else u=1;h[t>>3]=+h[t>>3]+j;o=t+16|0;h[o>>3]=+h[o>>3]+j;o=t+8|0;h[o>>3]=+h[o>>3]+k;o=t+24|0;h[o>>3]=+h[o>>3]+k;if(u?(c[e+152>>2]&4|0)==0:0){c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];o=JQ(e,g,f,r,s)|0}else o=0;n=f+42|0;i=b[n>>1]|0;a:do if(!(i&32)){m=c[f+20>>2]|0;if(m|0){i=KQ(e,m,c[f+28>>2]|0,i&65535,q)|0;if(!(b[n>>1]&4)){c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];$O(e,r,i)}else{n=d[f+33>>0]|0;c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];EJ(e,LQ(p,r,n)|0,4,4,i)}D_(c[q>>2]|0)}if(a[f+33>>0]|0){c[r>>2]=c[t>>2];c[r+4>>2]=c[t+4>>2];c[r+8>>2]=c[t+8>>2];c[r+12>>2]=c[t+12>>2];c[r+16>>2]=c[t+16>>2];c[r+20>>2]=c[t+20>>2];c[r+24>>2]=c[t+24>>2];c[r+28>>2]=c[t+28>>2];OQ(e,f,r)}i=f+88|0;switch(a[f+92>>0]|0){case 1:{GQ(e,c[i>>2]|0,g);break a}case 3:{SQ(e,c[i>>2]|0,g);break a}default:{FQ(e,c[i>>2]|0,g);break a}}}while(0);if(o|0)PQ(e,s);if((u?c[e+152>>2]&4|0:0)?(c[r>>2]=c[t>>2],c[r+4>>2]=c[t+4>>2],c[r+8>>2]=c[t+8>>2],c[r+12>>2]=c[t+12>>2],c[r+16>>2]=c[t+16>>2],c[r+20>>2]=c[t+20>>2],c[r+24>>2]=c[t+24>>2],c[r+28>>2]=c[t+28>>2],JQ(e,g,f,r,s)|0):0)PQ(e,s);l=v;return}function NQ(f,g,i,j,k){f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0;A=l;l=l+32|0;y=A+16|0;z=A;r=+h[i>>3];x=+h[i+8>>3];q=(j|0)==0?134232:j;WO(f,q);UO(f,q);t=+h[g+48>>3];o=+h[g+56>>3];u=+h[g+64>>3];p=+h[g+72>>3];s=t+r;r=u+r;x=o+x;q=g+100|0;i=a[q>>0]|0;if((i&1)!=0?(n=c[g+96>>2]|0,((e[g+80>>1]|0)+(e[g+84>>1]|0)|0)<(c[n+104>>2]|0)):0){i=b[g+86>>1]|0;do if(i<<16>>16)if(((e[g+82>>1]|0)+(i&65535)|0)==(c[n+100>>2]|0)){B=a[n+32>>0]|0;C=(B<<24>>24)/2|0;j=(C<<24>>24)+(d[n+33>>0]|0)|0;i=j;j=j&255;m=x-+(C<<24>>24);n=B;break}else{n=a[n+32>>0]|0;i=0;j=((n<<24>>24)/2|0)<<24>>24;m=x;break}else{C=a[n+32>>0]|0;j=((C<<24>>24)/2|0)<<24>>24;i=j+(d[n+33>>0]|0)|0;m=x;n=C}while(0);h[z+8>>3]=m-+(j|0);h[z>>3]=r+ +(((n<<24>>24)/2|0)<<24>>24);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];RQ(f,y,0.0,p-o+ +(i&255|0)+ +(n<<24>>24));i=a[q>>0]|0}if(i&2?(v=b[g+86>>1]|0,w=c[g+96>>2]|0,((e[g+82>>1]|0)+(v&65535)|0)<(c[w+100>>2]|0)):0){i=b[g+84>>1]|0;do if(!(i<<16>>16)){i=a[w+32>>0]|0;C=(i<<24>>24)/2|0;n=(C<<24>>24)+(d[w+33>>0]|0)|0;j=n&255;n=n&255;m=+(C<<24>>24);h[z>>3]=s-m-+(n|0);if((c[w+104>>2]|0)==(e[g+80>>1]|0)){j=n<<1&255;break}if((k|0)!=0?(b[k+86>>1]|0)!=v<<16>>16:0)j=~~(+(j&255)-u+ +h[w+64>>3]-m)&255}else{if(((e[g+80>>1]|0)+(i&65535)|0)==(c[w+104>>2]|0)){i=a[w+32>>0]|0;C=(i<<24>>24)/2|0;j=(C&255)+(d[w+33>>0]|0)&255;h[z>>3]=s-+(C<<24>>24);break}i=a[w+32>>0]|0;m=+(((i<<24>>24)/2|0)<<24>>24);h[z>>3]=s-m;if((k|0)!=0?(b[k+86>>1]|0)!=v<<16>>16:0)j=~~(+h[w+64>>3]-u-m)&255;else j=0}while(0);h[z+8>>3]=x-+(((i<<24>>24)/2|0)<<24>>24);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];RQ(f,y,u-t+ +(j&255)+ +(i<<24>>24),0.0)}l=A;return}function OQ(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;p=l;l=l+160|0;o=p+112|0;n=p;j=p+144|0;m=c[f+24>>2]|0;UO(e,(m|0)==0?134232:m);m=f+42|0;i=b[m>>1]|0;if(!(i&384))YO(e,c[(c[e>>2]|0)+336>>2]|0);else{c[j+4>>2]=0;c[j>>2]=0;i=i&65535;if(!(i&256)){if(i&128|0){i=134238;k=4}}else{i=134245;k=4}if((k|0)==4)c[j>>2]=i;YO(e,j)}k=f+33|0;fP(e,+(d[k>>0]|0));a:do if(!(b[m>>1]&4)){i=b[f+36>>1]&15360;if(!(i<<16>>16)){i=a[k>>0]|0;if((i&255)>1){q=+(i&255)*.5;h[g>>3]=+h[g>>3]+q;n=g+8|0;h[n>>3]=+h[n>>3]+q;n=g+16|0;h[n>>3]=+h[n>>3]-q;n=g+24|0;h[n>>3]=+h[n>>3]-q};c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];$O(e,o,0);break}j=n+16|0;m=d[k>>0]|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];LQ(j,o,m)|0;do switch(((i&65535)+-1024|0)>>>10&4194303|0){case 7:{bP(e,j,2);break a}case 3:{bP(e,n+32|0,2);break a}case 1:{bP(e,n+48|0,2);break a}case 0:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,2);break a}case 11:{bP(e,j,3);break a}case 5:{bP(e,n+32|0,3);break a}case 2:{g=n+80|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];bP(e,n+48|0,3);break a}case 8:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,3);break a}case 13:{bP(e,j,4);break a}case 6:{g=n+80|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];bP(e,n+32|0,4);break a}case 10:{g=n+80|0;c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];g=n+96|0;o=n+32|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];bP(e,n+48|0,4);break a}case 12:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,4);break a}case 9:{bP(e,j,2);bP(e,n+48|0,2);break a}case 4:{g=n+64|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];bP(e,n,2);bP(e,n+32|0,2);break a}default:break a}while(0)}else{m=d[k>>0]|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];EJ(e,LQ(n,o,m)|0,4,4,0)}while(0);l=p;return}function PQ(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=c[d+16>>2]|0;f=h+208|0;if((c[f>>2]|0)==0?(b[h+260>>1]&1)==0:0)d=0;else{QO(d);d=c[f>>2]|0}if((d|0)!=(c[e>>2]|0)){D_(d);c[f>>2]=c[e>>2]}d=h+228|0;f=c[d>>2]|0;g=e+4|0;if((f|0)!=(c[g>>2]|0)){D_(f);c[d>>2]=c[g>>2]}d=h+244|0;f=c[d>>2]|0;g=e+8|0;if((f|0)!=(c[g>>2]|0)){D_(f);c[d>>2]=c[g>>2]}d=h+212|0;f=c[d>>2]|0;g=e+12|0;if((f|0)!=(c[g>>2]|0)){D_(f);c[d>>2]=c[g>>2]}h=h+260|0;b[h>>1]=b[h>>1]&-2|a[e+16>>0]&1;return}function QQ(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=c[b>>2]|0;if(e|0)c[a+16>>2]=e;e=c[b+4>>2]|0;if(e|0)c[a+20>>2]=e;d=+h[b+16>>3];if(d>=0.0)h[a+32>>3]=d;return}function RQ(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,i=0;f=l;l=l+64|0;g=f+32|0;i=f;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];h[i+16>>3]=+h[b>>3]+d;h[i+24>>3]=+h[b+8>>3]+e;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];c[g+16>>2]=c[i+16>>2];c[g+20>>2]=c[i+20>>2];c[g+24>>2]=c[i+24>>2];c[g+28>>2]=c[i+28>>2];$O(a,g,1);l=f;return}function SQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0.0;i=l;l=l+64|0;g=i;k=+h[e>>3];n=k+ +h[d>>3];m=+h[e+8>>3];j=m+ +h[d+8>>3];k=k+ +h[d+16>>3];m=m+ +h[d+24>>3];h[g>>3]=k;h[g+8>>3]=m;h[g+32>>3]=n;h[g+40>>3]=j;h[g+16>>3]=n;h[g+24>>3]=m;h[g+48>>3]=k;h[g+56>>3]=j;f=c[d+36>>2]|0;if(!f)f=c[e+56>>2]|0;e=c[d+32>>2]|0;if(!e)qa(134252,134260,623,134272);if(!(a[e>>0]|0))qa(134286,134260,624,134272);else{dP(b,e,g,4,1,f);l=i;return}}function TQ(d,e,f,g,i,j,k,m){d=d|0;e=e|0;f=f|0;g=g|0;i=+i;j=j|0;k=k|0;m=m|0;var n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0,R=0;R=l;l=l+128|0;K=R+104|0;O=R+48|0;P=R+16|0;L=R;J=L;c[J>>2]=0;c[J+4>>2]=0;M=+h[g>>3];N=M-i;I=M+i;J=L+8|0;h[J>>3]=(+h[k+24>>3]-+h[k+8>>3])*.5+ +h[g+8>>3];RO(d,1);D=P+16|0;E=P+4|0;F=P+24|0;G=O+4|0;H=O+16|0;s=(m|0)==0;t=O+24|0;u=O+8|0;v=O+32|0;w=O+40|0;x=O+48|0;y=j+16|0;z=j+4|0;A=P+8|0;q=0;while(1){if((q|0)>=(e|0))break;switch(a[f+(q*24|0)+6>>0]|0){case 108:{i=N;break}case 114:{i=I-+h[f+(q*24|0)+8>>3];break}default:i=M-+h[f+(q*24|0)+8>>3]*.5}h[g>>3]=i;B=f+(q*24|0)+16|0;h[J>>3]=+h[J>>3]-+h[B>>3];C=f+(q*24|0)+4|0;p=c[f+(q*24|0)>>2]|0;r=0;while(1){if((r|0)>=(b[C>>1]|0))break;o=p+4|0;m=c[o>>2]|0;if(m){h[D>>3]=+h[(+h[m+16>>3]>0.0?m:j)+16>>3];c[P>>2]=c[((c[m>>2]|0)==0?j:m)>>2];k=c[((c[m+4>>2]|0)==0?j:m)+4>>2]|0;c[E>>2]=k;m=c[m+24>>2]&127;if(!m)Q=12;else m=c[F>>2]&-128|m}else{h[D>>3]=+h[y>>3];c[P>>2]=c[j>>2];k=c[z>>2]|0;c[E>>2]=k;Q=12}if((Q|0)==12){Q=0;m=c[F>>2]&-128}c[F>>2]=m;UO(d,k);c[O>>2]=c[p>>2];c[G>>2]=P;h[H>>3]=+h[p+16>>3];if(s)n=1.0;else n=+h[p+24>>3];h[t>>3]=n;c[A>>2]=c[(c[o>>2]|0)+8>>2];c[u>>2]=c[p+8>>2];o=p+32|0;h[v>>3]=+h[o>>3];h[w>>3]=+h[B>>3];a[x>>0]=108;h[L>>3]=i;c[K>>2]=c[L>>2];c[K+4>>2]=c[L+4>>2];c[K+8>>2]=c[L+8>>2];c[K+12>>2]=c[L+12>>2];TO(d,K,O);n=+h[o>>3]+i;h[g>>3]=n;p=p+56|0;r=r+1|0;i=n}q=q+1|0}SO(d);l=R;return}function UQ(a){a=a|0;D_(c[a>>2]|0);D_(c[a+4>>2]|0);D_(c[a+8>>2]|0);D_(c[a+16>>2]|0);D_(c[a+12>>2]|0);D_(c[a+20>>2]|0);D_(c[a+24>>2]|0);return}function VQ(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(a|0){j=a+4|0;e=0;g=c[a>>2]|0;while(1){if((e|0)>=(b[j>>1]|0))break;k=g+4|0;d=0;f=c[g>>2]|0;while(1){if((d|0)>=(b[k>>1]|0))break;D_(c[f>>2]|0);h=c[f+8>>2]|0;if(h|0?(i=c[f+12>>2]|0,i|0):0)tb[i&127](h);d=d+1|0;f=f+56|0}e=e+1|0;g=g+24|0}d=c[a>>2]|0;if(d|0)D_(d);D_(a)}return}function WQ(a){a=a|0;D_(c[a+32>>2]|0);D_(a);return}function XQ(b,d){b=b|0;d=d|0;switch(a[b+4>>0]|0){case 1:{YQ(c[b>>2]|0);break}case 3:{WQ(c[b>>2]|0);break}default:VQ(c[b>>2]|0)}if(d|0)D_(b);return}function YQ(a){a=a|0;var b=0,d=0,e=0;e=a+84|0;if((c[a+100>>2]|0)==-1)yw(c[e>>2]|0)|0;else{b=c[e>>2]|0;D_(c[a+92>>2]|0);D_(c[a+96>>2]|0);while(1){d=c[b>>2]|0;if(!d)break;ZQ(d);b=b+4|0}D_(c[e>>2]|0)}UQ(a);D_(a);return}function ZQ(a){a=a|0;XQ(a+88|0,0);UQ(a);D_(a);return}function _Q(b,e,f){b=b|0;e=e|0;f=f|0;var g=0;b=c[(c[(c[b+16>>2]|0)+104>>2]|0)+72>>2]|0;if((a[b+4>>0]|0)!=2?(g=$Q(c[b>>2]|0,e)|0,(g|0)!=0):0){c[f>>2]=d[g+35>>0];b=g+48|0}else b=0;return b|0}function $Q(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+4>>2]|0;if(!((d|0)!=0?(O$(d,b)|0)==0:0))e=3;a:do if((e|0)==3){d=c[a+84>>2]|0;while(1){a=c[d>>2]|0;if(!a){a=0;break a}a=aR(a,b)|0;if(!a)d=d+4|0;else break}}while(0);return a|0}function aR(b,d){b=b|0;d=d|0;var e=0;e=c[b+4>>2]|0;if(!((e|0)!=0?(O$(e,d)|0)==0:0))if((a[b+92>>0]|0)==1)b=$Q(c[b+88>>2]|0,d)|0;else b=0;return b|0}function bR(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function cR(d){d=d|0;var f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=d+92|0;c[p>>2]=uH((c[d+100>>2]<<2)+4|0)|0;n=uH((c[d+104>>2]<<2)+4|0)|0;c[d+96>>2]=n;o=d+32|0;m=c[d+84>>2]|0;while(1){l=c[m>>2]|0;if(!l)break;d=b[l+82>>1]|0;f=+h[l+72>>3];if(d<<16>>16==1)i=~~f;else{i=~~((f-+(O((a[o>>0]|0)+-1|0,(d&65535)+-1|0)|0))/+(d&65535));i=(i|0)>1?i:1}j=b[l+80>>1]|0;f=+h[l+64>>3];if(j<<16>>16==1)k=~~f;else{k=~~((f-+(O((a[o>>0]|0)+-1|0,(j&65535)+-1|0)|0))/+(j&65535));k=(k|0)>1?k:1}q=e[l+86>>1]|0;g=(d&65535)+q|0;d=q;while(1){if((d|0)>=(g|0))break;q=(c[p>>2]|0)+(d<<2)|0;r=c[q>>2]|0;c[q>>2]=(r|0)>(i|0)?r:i;d=d+1|0}d=e[l+84>>1]|0;g=(j&65535)+d|0;while(1){if((d|0)>=(g|0))break;r=n+(d<<2)|0;q=c[r>>2]|0;c[r>>2]=(q|0)>(k|0)?q:k;d=d+1|0}m=m+4|0}return}function dR(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;if(a>>>0<21)a=c[55736+(a<<2)>>2]|0;else{c[b>>2]=a;Y0(191879,134313,b)|0;a=191879}l=d;return a|0}function eR(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+104|0;l=a+100|0;j=d+16|0;f=0;g=0;while(1){if((f|0)>(c[k>>2]|0))break;i=az(d,dR(f)|0,1)|0;Az(i,134365,304,1)|0;m=i+16|0;c[(c[m>>2]|0)+176>>2]=0;o=uH((c[l>>2]<<2)+4|0)|0;n=c[m>>2]|0;c[n+172>>2]=o;c[n+184>>2]=0;n=uH((c[l>>2]<<2)+4|0)|0;c[(c[m>>2]|0)+180>>2]=n;if(!g)c[(c[j>>2]|0)+192>>2]=i;else c[(c[g+16>>2]|0)+164>>2]=i;f=f+1|0;g=i}j=b+16|0;f=0;g=0;while(1){if((f|0)>(c[l>>2]|0))break;i=az(b,dR(f)|0,1)|0;Az(i,134365,304,1)|0;o=i+16|0;c[(c[o>>2]|0)+176>>2]=0;m=uH((c[k>>2]<<2)+4|0)|0;n=c[o>>2]|0;c[n+172>>2]=m;c[n+184>>2]=0;n=uH((c[k>>2]<<2)+4|0)|0;c[(c[o>>2]|0)+180>>2]=n;if(!g)c[(c[j>>2]|0)+192>>2]=i;else c[(c[g+16>>2]|0)+164>>2]=i;f=f+1|0;g=i}f=c[a+84>>2]|0;while(1){g=c[f>>2]|0;if(!g)break;o=g+84|0;n=az(d,dR(e[o>>1]|0)|0,0)|0;o=az(d,dR((e[g+80>>1]|0)+(e[o>>1]|0)|0)|0,0)|0;fR(d,n,o,~~+h[g+64>>3]);o=g+86|0;n=az(b,dR(e[o>>1]|0)|0,0)|0;o=az(b,dR((e[g+82>>1]|0)+(e[o>>1]|0)|0)|0,0)|0;fR(b,n,o,~~+h[g+72>>3]);f=f+4|0}gR(d);gR(b);return}function fR(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;h=Rx(a,d,f,0,0)|0;if(!h){i=Rx(a,d,f,0,1)|0;Az(i,134378,176,1)|0;b[(c[i+16>>2]|0)+170>>1]=g;d=d+16|0;a=c[d>>2]|0;h=c[a+180>>2]|0;if(!h)a=vH((c[a+184>>2]<<2)+8|0)|0;else a=xH(h,(c[a+184>>2]<<2)+8|0)|0;g=c[d>>2]|0;c[g+180>>2]=a;g=g+184|0;h=c[g>>2]|0;c[g>>2]=h+1;c[a+(h<<2)>>2]=i;d=c[d>>2]|0;c[(c[d+180>>2]|0)+(c[d+184>>2]<<2)>>2]=0;d=f+16|0;a=c[d>>2]|0;h=c[a+172>>2]|0;if(!h)a=vH((c[a+176>>2]<<2)+8|0)|0;else a=xH(h,(c[a+176>>2]<<2)+8|0)|0;g=c[d>>2]|0;c[g+172>>2]=a;g=g+176|0;f=c[g>>2]|0;c[g>>2]=f+1;c[a+(f<<2)>>2]=i;i=c[d>>2]|0;c[(c[i+172>>2]|0)+(c[i+176>>2]<<2)>>2]=0}else{i=(c[h+16>>2]|0)+170|0;f=e[i>>1]|0;b[i>>1]=(f|0)>(g|0)?f:g}return}function gR(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[(c[a+16>>2]|0)+192>>2]|0;while(1){f=d+16|0;h=c[(c[f>>2]|0)+164>>2]|0;if(!h)break;if(Rx(a,d,h,0,0)|0){d=h;continue}g=Rx(a,d,h,0,1)|0;Az(g,134378,176,1)|0;b[(c[g+16>>2]|0)+170>>1]=0;d=c[f>>2]|0;e=c[d+180>>2]|0;if(!e)d=vH((c[d+184>>2]<<2)+8|0)|0;else d=xH(e,(c[d+184>>2]<<2)+8|0)|0;i=c[f>>2]|0;c[i+180>>2]=d;i=i+184|0;e=c[i>>2]|0;c[i>>2]=e+1;c[d+(e<<2)>>2]=g;f=c[f>>2]|0;c[(c[f+180>>2]|0)+(c[f+184>>2]<<2)>>2]=0;f=h+16|0;d=c[f>>2]|0;e=c[d+172>>2]|0;if(!e)d=vH((c[d+176>>2]<<2)+8|0)|0;else d=xH(e,(c[d+176>>2]<<2)+8|0)|0;e=c[f>>2]|0;c[e+172>>2]=d;e=e+176|0;i=c[e>>2]|0;c[e>>2]=i+1;c[d+(i<<2)>>2]=g;d=c[f>>2]|0;c[(c[d+172>>2]|0)+(c[d+176>>2]<<2)>>2]=0;d=h}return}function hR(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+92|0;e=0;f=0;b=c[(c[(c[b+16>>2]|0)+192>>2]|0)+16>>2]|0;while(1){b=c[b+164>>2]|0;if(!b)break;b=c[b+16>>2]|0;h=b+232|0;c[(c[g>>2]|0)+(f<<2)>>2]=(c[h>>2]|0)-e;e=c[h>>2]|0;f=f+1|0}a=a+96|0;e=0;f=0;b=c[(c[(c[d+16>>2]|0)+192>>2]|0)+16>>2]|0;while(1){b=c[b+164>>2]|0;if(!b)break;b=c[b+16>>2]|0;h=b+232|0;c[(c[a>>2]|0)+(f<<2)>>2]=(c[h>>2]|0)-e;e=c[h>>2]|0;f=f+1|0}return}function iR(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h+4|0;d=h;c[d>>2]=c[4621];e=c[b+100>>2]|0;if((e|0)!=1?(f=b+104|0,(c[f>>2]|0)!=1):0){c[b+92>>2]=uH((e<<2)+4|0)|0;c[b+96>>2]=uH((c[f>>2]<<2)+4|0)|0;a[g>>0]=a[d>>0]|0;a[g+1>>0]=a[d+1>>0]|0;a[g+2>>0]=a[d+2>>0]|0;a[g+3>>0]=a[d+3>>0]|0;f=Xx(134391,g,0)|0;a[g>>0]=a[d>>0]|0;a[g+1>>0]=a[d+1>>0]|0;a[g+2>>0]=a[d+2>>0]|0;a[g+3>>0]=a[d+3>>0]|0;g=Xx(134396,g,0)|0;Az(f,134401,280,1)|0;Az(g,134401,280,1)|0;eR(b,f,g);fI(f,2,2147483647)|0;fI(g,2,2147483647)|0;hR(b,f,g);jR(f,g)}else cR(b);l=h;return}function jR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=(c[b+16>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;f=d+16|0;d=c[f>>2]|0;e=c[d+172>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+180>>2]|0;if(e){D_(e);d=c[f>>2]|0}d=d+164|0}$x(a)|0;$x(b)|0;return}function kR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0;p=l;l=l+272|0;n=p+104|0;o=p+136|0;j=p+72|0;k=p;g=p+144|0;c[k+48>>2]=b;switch(pz(b)|0){case 0:{e=c[b+60>>2]|0;break}case 1:{e=ez(b)|0;break}case 2:{e=ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;break}default:{}}i=k+52|0;c[i>>2]=e;m=c[e+60>>2]|0;h[k+32>>3]=+h[d+16>>3];c[k+16>>2]=c[d+4>>2];c[k+20>>2]=c[d+8>>2];c[k+40>>2]=0;f=uT(c[d>>2]|0,o,k)|0;if(!f){Tw(n,128,g);a[d+82>>0]=0;e=n1(lR(b,n)|0)|0;c[d>>2]=e;if((c[d+12>>2]|0)==1)e=RM(e)|0;else e=OM(e,c[i>>2]|0)|0;D_(c[d>>2]|0);c[d>>2]=e;iH(c[(c[m+16>>2]|0)+144>>2]|0,d);Xw(n);e=c[o>>2]|0}else{e=f+4|0;if((a[e>>0]|0)==1){if((c[(c[f>>2]|0)+24>>2]|0)==0?mR(b)|0:0){i=n1(mR(b)|0)|0;c[(c[f>>2]|0)+24>>2]=i}m=nR(m,c[f>>2]|0,0,k)|0;c[o>>2]=c[o>>2]|m;m=c[f>>2]|0;r=+h[m+64>>3]*.5;q=+h[m+72>>3]*.5;oR(j,-r,-q,r,q);m=c[f>>2]|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[n+20>>2]=c[j+20>>2];c[n+24>>2]=c[j+24>>2];c[n+28>>2]=c[j+28>>2];pR(m,n,15)}else{qR(c[(c[m+16>>2]|0)+144>>2]|0,c[f>>2]|0,k);n=c[f>>2]|0;q=+h[n+24>>3]*.5;r=+h[n+32>>3]*.5;oR(j,-q,-r,q,r);n=(c[f>>2]|0)+8|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[n+20>>2]=c[j+20>>2];c[n+24>>2]=c[j+24>>2];c[n+28>>2]=c[j+28>>2]}h[d+24>>3]=+h[j+16>>3]-+h[j>>3];h[d+32>>3]=+h[j+24>>3]-+h[j+8>>3];c[d+72>>2]=f;if((a[e>>0]|0)==1){D_(c[d>>2]|0);c[d>>2]=n1(138529)|0}e=c[o>>2]|0}l=p;return e|0}function lR(b,d){b=b|0;d=d|0;var e=0;a:do switch(pz(b)|0){case 0:{Ww(d,ry(b)|0)|0;break}case 1:{Ww(d,ry(b)|0)|0;break}case 2:{Ww(d,ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0)|0;e=b+-48|0;Ww(d,ry(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0)|0;if(!(ey(ez(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0)|0)){Ww(d,138665)|0;break a}else{Ww(d,134656)|0;break a}}default:{}}while(0);e=d+4|0;b=c[e>>2]|0;if(b>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;b=c[e>>2]|0}a[b>>0]=0;d=c[d>>2]|0;c[e>>2]=d;return d|0}function mR(b){b=b|0;var c=0,d=0;c=xx(b,134647)|0;if(!((c|0)!=0?(a[c>>0]|0)!=0:0))d=3;do if((d|0)==3){c=xx(b,137741)|0;if(c|0?a[c>>0]|0:0)break;c=0}while(0);return c|0}function nR(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;u=w+8|0;t=w;v=g+108|0;k=c[v>>2]|0;if(k|0)IQ(j,k,183496);c[g+80>>2]=i;k=uR(f,g,j)|0;r=g+36|0;f=b[r>>1]|0;if(!(f&128))a[g+32>>0]=2;i=g+33|0;if(!(f&32))a[i>>0]=1;iR(g);n=c[g+104>>2]|0;p=a[g+32>>0]|0;f=O(n+1|0,p)|0;o=d[i>>0]<<1;q=c[g+100>>2]|0;p=O(q+1|0,p)|0;m=g+96|0;f=o+f|0;i=0;while(1){if((i|0)>=(n|0))break;f=(c[(c[m>>2]|0)+(i<<2)>>2]|0)+f|0;i=i+1|0}n=g+92|0;i=p+o|0;m=0;while(1){if((m|0)>=(q|0))break;i=(c[(c[n>>2]|0)+(m<<2)>>2]|0)+i|0;m=m+1|0}n=g+38|0;do if(b[r>>1]&1){r=b[n>>1]|0;m=r&65535;if(r<<16>>16?(s=b[g+40>>1]|0,s<<16>>16):0){if(!((f|0)>(m|0)|(i|0)>(s&65535|0))){i=0;f=0;break}Pw(0,134447,t)|0;k=1;i=0;f=0;break}Pw(0,134481,u)|0;k=1}while(0);u=e[n>>1]|0;h[g+64>>3]=+(((f|0)>(u|0)?f:u)|0);u=e[g+40>>1]|0;h[g+72>>3]=+(((i|0)>(u|0)?i:u)|0);if(c[v>>2]|0)QQ(j,183496);l=w;return k|0}function oR(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;h[a>>3]=b;h[a+8>>3]=c;h[a+16>>3]=d;h[a+24>>3]=e;return}function pR(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0;I=l;l=l+64|0;G=I+32|0;H=I;E=c[e+84>>2]|0;k=c[e+80>>2]|0;if((k|0?(i=c[k+24>>2]|0,i|0):0)?(j=e+24|0,(c[j>>2]|0)==0):0)c[j>>2]=n1(i)|0;F=e+48|0;i=f+16|0;n=+h[i>>3];m=+h[f>>3];k=~~(n-m-+(~~+h[e+64>>3]|0));if((k|0)<=-1)qa(134414,134260,1761,134424);o=f+24|0;y=+h[o>>3];p=f+8|0;q=+h[p>>3];r=+(~~+h[e+72>>3]|0);s=~~(y-q-r);if((s|0)<=-1)qa(134437,134260,1764,134424);t=b[e+36>>1]|0;j=t&65535;a:do if(j&1){b:do if((k|0)>0)switch(j&6){case 4:{h[i>>3]=m+r;break b}case 2:{J=+(k|0);h[i>>3]=n+J;m=m+J;h[f>>3]=m;break b}default:{J=+(k>>>1|0);m=m+J;h[f>>3]=m;h[i>>3]=n-J;break b}}while(0);if((s|0)>0)switch(t&24){case 16:{y=q+r;h[o>>3]=y;s=0;i=0;break a}case 8:{J=+(s|0);y=y+J;h[o>>3]=y;h[p>>3]=q+J;s=0;i=0;break a}default:{J=+(s>>>1|0);h[p>>3]=q+J;y=y-J;h[o>>3]=y;s=0;i=0;break a}}else{s=0;i=0}}else i=k;while(0);n=+(d[e+33>>0]|0);C=e+32|0;u=a[C>>0]|0;q=+(u<<24>>24);D=e+104|0;k=c[D>>2]|0;t=(i|0)/(k|0)|0;o=i-(O(t,k)|0)|0;o=~~(((o|0)>-1?.5:-.5)+ +(o|0));B=e+96|0;p=u<<24>>24;i=~~(m+n+q);j=0;while(1){if((j|0)>(k|0))break;A=(c[B>>2]|0)+(j<<2)|0;k=c[A>>2]|0;c[A>>2]=i;i=i+t+((j|0)<(o|0)&1)+k+p|0;j=j+1|0;k=c[D>>2]|0}A=e+100|0;k=c[A>>2]|0;t=(s|0)/(k|0)|0;p=s-(O(t,k)|0)|0;p=~~(((p|0)>-1?.5:-.5)+ +(p|0));z=e+92|0;o=u<<24>>24;i=~~(y-n-q);j=0;while(1){if((j|0)>(k|0))break;x=(c[z>>2]|0)+(j<<2)|0;k=c[x>>2]|0;c[x>>2]=i;i=i-t+(((j|0)<(p|0))<<31>>31)-k-o|0;j=j+1|0;k=c[A>>2]|0}u=(g|0)==0;v=H+16|0;w=H+24|0;x=H+8|0;i=E;while(1){o=c[i>>2]|0;if(!o)break;k=b[o+84>>1]|0;if(u){j=0;p=b[o+80>>1]|0;s=b[o+86>>1]|0;t=b[o+82>>1]|0}else{j=k<<16>>16==0?8:0;s=b[o+86>>1]|0;j=s<<16>>16==0?j|4:j;p=b[o+80>>1]|0;t=b[o+82>>1]|0;j=(((p&65535)+(k&65535)|0)==(c[D>>2]|0)?j|2:j)|((t&65535)+(s&65535)|0)==(c[A>>2]|0)}K=c[B>>2]|0;k=k&65535;h[H>>3]=+(c[K+(k<<2)>>2]|0);E=a[C>>0]|0;h[v>>3]=+((c[K+((p&65535)+k<<2)>>2]|0)-E|0);p=c[z>>2]|0;h[w>>3]=+(c[p+((s&65535)<<2)>>2]|0);h[x>>3]=+((c[p+((t&65535)+(s&65535)<<2)>>2]|0)+E|0);c[G>>2]=c[H>>2];c[G+4>>2]=c[H+4>>2];c[G+8>>2]=c[H+8>>2];c[G+12>>2]=c[H+12>>2];c[G+16>>2]=c[H+16>>2];c[G+20>>2]=c[H+20>>2];c[G+24>>2]=c[H+24>>2];c[G+28>>2]=c[H+28>>2];rR(o,G,j&g);i=i+4|0}a[e+35>>0]=g;c[F>>2]=c[f>>2];c[F+4>>2]=c[f+4>>2];c[F+8>>2]=c[f+8>>2];c[F+12>>2]=c[f+12>>2];c[F+16>>2]=c[f+16>>2];c[F+20>>2]=c[f+20>>2];c[F+24>>2]=c[f+24>>2];c[F+28>>2]=c[f+28>>2];l=I;return}function qR(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0.0;O=l;l=l+112|0;H=O+48|0;I=O+16|0;J=O;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;c[I+16>>2]=0;c[I+20>>2]=0;c[I+24>>2]=0;c[I+28>>2]=0;K=e+4|0;L=f+16|0;M=f+32|0;N=I+16|0;r=b[K>>1]|0;n=r<<16>>16;g=0;j=-1.0;m=0;while(1){if((m|0)>=(n|0)){g=1;break}i=c[e>>2]|0;if((b[i+(m*24|0)+4>>1]|0)>1){g=0;break}i=c[(c[i+(m*24|0)>>2]|0)+4>>2]|0;if(!i){k=+h[M>>3];h[N>>3]=k;i=L}else{if(c[i+24>>2]&127|0){g=0;break}k=+h[(+h[i+16>>3]>0.0?i:L)+16>>3];h[N>>3]=k;i=(c[i>>2]|0)==0?L:i}i=c[i>>2]|0;c[I>>2]=i;if(!(j==-1.0)){if(k!=j){g=0;break}}else j=k;if(g){if(b$(i,g)|0){g=0;break}}else g=i;m=m+1|0}a[e+6>>0]=g;E=f+48|0;F=f+20|0;G=I+4|0;w=f+40|0;x=I+24|0;y=d+144|0;z=H+4|0;v=J+8|0;A=H+16|0;B=H+24|0;C=H+8|0;D=H+12|0;f=(g|0)==0;j=0.0;s=0.0;t=0.0;u=0.0;n=0;g=r;while(1){if((n|0)>=(g<<16>>16|0))break;k=0.0;q=0.0;m=0;p=0.0;j=0.0;i=c[e>>2]|0;while(1){if((m|0)>=(b[i+(n*24|0)+4>>1]|0))break;c[H>>2]=pH(c[(c[i+(n*24|0)>>2]|0)+(m*56|0)>>2]|0,c[E>>2]|0)|0;i=(c[e>>2]|0)+(n*24|0)|0;g=c[(c[i>>2]|0)+(m*56|0)+4>>2]|0;if(!g){h[N>>3]=+h[M>>3];c[I>>2]=c[L>>2];c[G>>2]=c[F>>2];c[x>>2]=c[x>>2]&-128|c[w>>2]&127}else{g=c[g+24>>2]&127;if(!g)g=c[w>>2]&127;c[x>>2]=c[x>>2]&-128|g;r=c[(c[i>>2]|0)+(m*56|0)+4>>2]|0;h[N>>3]=+h[(+h[r+16>>3]>0.0?r:L)+16>>3];c[I>>2]=c[((c[r>>2]|0)==0?L:r)>>2];c[G>>2]=c[((c[r+4>>2]|0)==0?L:r)+4>>2]}i=c[y>>2]|0;c[z>>2]=nb[c[i>>2]&63](i,I,1)|0;wL(J,d,H);Q=+h[J>>3];o=+h[v>>3];D_(c[(c[(c[e>>2]|0)+(n*24|0)>>2]|0)+(m*56|0)>>2]|0);i=c[e>>2]|0;r=c[i+(n*24|0)>>2]|0;c[r+(m*56|0)>>2]=c[H>>2];h[r+(m*56|0)+32>>3]=Q;h[r+(m*56|0)+16>>3]=+h[A>>3];h[r+(m*56|0)+24>>3]=+h[B>>3];c[r+(m*56|0)+4>>2]=c[z>>2];c[r+(m*56|0)+8>>2]=c[C>>2];c[r+(m*56|0)+12>>2]=c[D>>2];P=+h[N>>3];R=+h[B>>3];k=R>k?R:k;q=Q+q;m=m+1|0;p=P>p?P:p;j=o>j?o:j}h[i+(n*24|0)+8>>3]=q;g=(n|0)==0;do if(f)if(g){o=p;k=p-k;g=i;break}else{o=p;k=t-u+p-k;g=i+(n*24|0)|0;break}else{o=j;k=g?p:j;g=i+(n*24|0)|0}while(0);h[g+16>>3]=k;s=q>s?q:s;t=o+t;u=+h[i+(n*24|0)+16>>3]+u;n=n+1|0;g=b[K>>1]|0}h[e+24>>3]=s;h[e+32>>3]=g<<16>>16==1?j:t;l=O;return}function rR(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0;y=l;l=l+64|0;v=y+32|0;x=y;j=e+24|0;if((c[j>>2]|0)==0?(i=c[(c[e+96>>2]|0)+24>>2]|0,i|0):0)c[j>>2]=n1(i)|0;t=e+36|0;w=b[t>>1]|0;i=w&65535;a:do if(i&1){k=+h[e+64>>3];q=+h[e+72>>3];j=f+16|0;m=+h[j>>3];o=+h[f>>3];n=m-o-k;b:do if(n>0.0)switch(i&6){case 4:{m=o+k;h[j>>3]=m;k=o;break b}case 2:{m=n+m;h[j>>3]=m;k=o+n;h[f>>3]=k;break b}default:{p=n*.5;k=p+o;h[f>>3]=k;m=m-p;h[j>>3]=m;break b}}else k=o;while(0);i=f+24|0;p=+h[i>>3];j=f+8|0;n=+h[j>>3];o=p-n-q;if(o>0.0)switch(w&24){case 16:{o=n+q;h[i>>3]=o;break a}case 8:{q=o+p;h[i>>3]=q;n=n+o;h[j>>3]=n;o=q;break a}default:{o=o*.5;n=o+n;h[j>>3]=n;o=p-o;h[i>>3]=o;break a}}else o=p}else{k=+h[f>>3];n=+h[f+8>>3];m=+h[f+16>>3];o=+h[f+24>>3]}while(0);s=e+48|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];c[s+16>>2]=c[f+16>>2];c[s+20>>2]=c[f+20>>2];c[s+24>>2]=c[f+24>>2];c[s+28>>2]=c[f+28>>2];a[e+35>>0]=g;A=+(d[e+33>>0]|0);z=+(d[e+34>>0]|0);p=k+A+z;h[x>>3]=p;q=n+A+z;s=x+8|0;h[s>>3]=q;n=m-A-z;f=x+16|0;h[f>>3]=n;o=o-A-z;r=x+24|0;h[r>>3]=o;j=e+88|0;switch(a[e+92>>0]|0){case 1:{w=c[j>>2]|0;c[v>>2]=c[x>>2];c[v+4>>2]=c[x+4>>2];c[v+8>>2]=c[x+8>>2];c[v+12>>2]=c[x+12>>2];c[v+16>>2]=c[x+16>>2];c[v+20>>2]=c[x+20>>2];c[v+24>>2]=c[x+24>>2];c[v+28>>2]=c[x+28>>2];pR(w,v,g);break}case 3:{i=c[j>>2]|0;k=+h[i+24>>3];m=n-p-+h[i+16>>3];c:do if(m>0.0)switch(w&6){case 4:{h[f>>3]=n-m;break c}case 2:{h[x>>3]=m+p;break c}default:break c}while(0);k=o-q-k;d:do if(k>0.0)switch(w&24){case 16:{h[r>>3]=o-k;break d}case 8:{h[s>>3]=k+q;break d}default:break d}while(0);c[v>>2]=c[x>>2];c[v+4>>2]=c[x+4>>2];c[v+8>>2]=c[x+8>>2];c[v+12>>2]=c[x+12>>2];c[v+16>>2]=c[x+16>>2];c[v+20>>2]=c[x+20>>2];c[v+24>>2]=c[x+24>>2];c[v+28>>2]=c[x+28>>2];sR(i,v);break}default:{i=c[j>>2]|0;k=+h[i+32>>3];m=n-p-+h[i+24>>3];e:do if(m>0.0?(u=w&6,u<<16>>16!=6):0)switch(u&7){case 4:{h[f>>3]=n-m;break e}case 2:{h[x>>3]=m+p;break e}default:{A=m*.5;h[x>>3]=A+p;h[f>>3]=n-A;break e}}while(0);k=o-q-k;f:do if(k>0.0)switch(w&24){case 16:{h[r>>3]=o-k;break f}case 8:{h[s>>3]=k+q;break f}default:{A=k*.5;h[s>>3]=A+q;h[r>>3]=o-A;break f}}while(0);w=i+8|0;c[w>>2]=c[x>>2];c[w+4>>2]=c[x+4>>2];c[w+8>>2]=c[x+8>>2];c[w+12>>2]=c[x+12>>2];c[w+16>>2]=c[x+16>>2];c[w+20>>2]=c[x+20>>2];c[w+24>>2]=c[x+24>>2];c[w+28>>2]=c[x+28>>2];x=b[t>>1]&768;tR(c[j>>2]|0,(x&1023)==512?108:(x&1023)==256?114:110)}}l=y;return}function sR(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function tR(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;g=b[d+4>>1]|0;f=0;while(1){if((f|0)>=(g|0))break;h=(c[d>>2]|0)+(f*24|0)+6|0;if(!(a[h>>0]|0))a[h>>0]=e;f=f+1|0}return}function uR(d,f,g){d=d|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,s=0,t=0,u=0,v=0;l=f+84|0;t=c[l>>2]|0;u=vI()|0;v=yR()|0;i=0;h=0;k=Aw(t)|0;while(1){if(!k)break;j=Aw(c[k+8>>2]|0)|0;while(1){if(!j)break;j=c[j>>2]|0;i=i+1|0}h=h+1|0;if(a[k+12>>0]|0)CR(v,h);k=c[k>>2]|0}h=uH((i<<2)+4|0)|0;c[l>>2]=h;i=0;j=0;k=0;q=0;r=Aw(t)|0;while(1){if(!r)break;s=q&65535;p=0;o=Aw(c[r+8>>2]|0)|0;while(1){if(!o)break;n=c[o+8>>2]|0;c[h>>2]=n;k=vR(d,n,f,g)|0|k;l=wR(u,q,p,n)|0;b[n+86>>1]=s;b[n+84>>1]=l;l=l+(e[n+80>>1]|0)|0;m=q+(e[n+82>>1]|0)|0;if(DR(v,m)|0){p=n+100|0;a[p>>0]=a[p>>0]|2}p=l;h=h+4|0;o=c[o>>2]|0;i=(l|0)>(i|0)?l:i;j=(m|0)>(j|0)?m:j}q=q+1|0;r=c[r>>2]|0}c[f+100>>2]=j;c[f+104>>2]=i;yw(t)|0;yw(v)|0;yI(u);return k|0}function vR(f,g,i,j){f=f|0;g=g|0;i=i|0;j=j|0;var k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;u=l;l=l+16|0;t=u+8|0;s=u;c[g+96>>2]=i;q=g+36|0;o=b[q>>1]|0;if(!(o&64)){if(!(b[i+36>>1]&64))n=2;else n=a[i+34>>0]|0;a[g+34>>0]=n}if(!(o&32)){n=a[i+88>>0]|0;if(n<<24>>24<=-1)if(!(b[i+36>>1]&32))n=1;else n=a[i+33>>0]|0;a[g+33>>0]=n}n=g+88|0;p=g+92|0;switch(a[p>>0]|0){case 1:{o=nR(f,c[n>>2]|0,g,j)|0;i=c[n>>2]|0;n=o;o=i+64|0;i=i+72|0;break}case 3:{o=xR(c[n>>2]|0,j)|0;i=c[n>>2]|0;n=o;o=i+16|0;i=i+24|0;break}default:{qR(c[(c[f+16>>2]|0)+144>>2]|0,c[n>>2]|0,j);i=c[n>>2]|0;n=0;o=i+24|0;i=i+32|0}}k=+((d[g+33>>0]|0)+(d[g+34>>0]|0)<<1|0);m=+h[o>>3]+k;k=+h[i>>3]+k;i=g+38|0;do if(b[q>>1]&1){o=b[i>>1]|0;if(o<<16>>16?(r=b[g+40>>1]|0,r<<16>>16):0){if(!(m>+(o&65535)|k>+(r&65535))){m=0.0;k=0.0;break}if((a[p>>0]|0)==3){m=0.0;k=0.0;break}Pw(0,134532,s)|0;n=1;m=0.0;k=0.0;break}Pw(0,134565,t)|0;n=1}while(0);v=+(e[i>>1]|0);h[g+64>>3]=m>v?m:v;m=+(e[g+40>>1]|0);h[g+72>>3]=k>m?k:m;l=u;return n|0}function wR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;j=d+80|0;i=(e[j>>1]|0)+-1|0;h=0;a:while(1){f=c;while(1){if(h)break a;g=i+f|0;while(1){if((g|0)<(f|0)){c=f;h=1;continue a}if(DI(a,g,b)|0)break;g=g+-1|0}f=g+1|0}}h=d+82|0;f=c;while(1){if((f|0)<(c+(e[j>>1]|0)|0))g=b;else break;while(1){if((g|0)>=((e[h>>1]|0)+b|0))break;BI(a,f,g);g=g+1|0}f=f+1|0}return c|0}function xR(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;i=m+8|0;d=d+52|0;g=b+32|0;CC(i,c[d>>2]|0,c[g>>2]|0);k=c[i>>2]|0;i=c[i+4>>2]|0;if((i&k|0)==-1){c[j>>2]=c[g>>2];Pw(1,134615,j)|0;d=1;f=0.0;e=0.0}else{a[(c[(c[d>>2]|0)+16>>2]|0)+114>>0]=1;d=0;f=+(i|0);e=+(k|0)}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;h[b+16>>3]=e;h[b+24>>3]=f;l=m;return d|0}function yR(){return Cw(55820,c[4555]|0)|0}function zR(a,b,d){a=a|0;b=b|0;d=d|0;d=uH(12)|0;c[d>>2]=c[b>>2];return d|0}function AR(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function BR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b>>2]|0;e=c[d>>2]|0;return ((b|0)>(e|0)?1:((b|0)<(e|0))<<31>>31)|0}function CR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;nb[c[a>>2]&63](a,e,1)|0;l=d;return}function DR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=(nb[c[a>>2]&63](a,e,512)|0)!=0&1;l=d;return b|0}function ER(a){a=a|0;var b=0;if(!(c[46605]|0)){b=uH((a<<2)+4|0)|0;c[46605]=b;c[b>>2]=186424;c[46616]=a}c[46617]=0;return}function FR(){D_(c[46605]|0);c[46605]=0;c[46617]=0;return}function GR(){c[46617]=0;return}function HR(){var a=0,b=0,d=0;b=c[46617]|0;d=c[46605]|0;a=1;while(1){if((a|0)>(b|0)){a=5;break}if((c[(c[d+(a<<2)>>2]|0)+4>>2]|0)==(a|0))a=a+1|0;else{a=4;break}}if((a|0)==4)qa(135312,134659,59,134665);else if((a|0)==5)return}function IR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;f=c[46605]|0;g=c[f+(a<<2)>>2]|0;h=c[g>>2]|0;while(1){b=(a|0)/2|0;d=c[f+(b<<2)>>2]|0;e=f+(a<<2)|0;if((c[d>>2]|0)>=(h|0))break;c[e>>2]=d;c[d+4>>2]=a;a=b}c[e>>2]=g;c[g+4>>2]=a;return}function JR(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=c[46617]|0;if((b|0)==(c[46616]|0)){Pw(1,134673,d)|0;a=1}else{b=b+1|0;c[46617]=b;c[(c[46605]|0)+(b<<2)>>2]=a;IR(b);HR();a=0}l=d;return a|0}function KR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=c[46605]|0;f=c[e+(a<<2)>>2]|0;g=c[f>>2]|0;h=c[46617]|0;i=(h|0)/2|0;while(1){if((a|0)>(i|0))break;d=a<<1;b=c[e+(d<<2)>>2]|0;if((d|0)<(h|0)){l=d|1;j=c[e+(l<<2)>>2]|0;k=(c[b>>2]|0)<(c[j>>2]|0);d=k?l:d;b=k?j:b}if((g|0)>=(c[b>>2]|0))break;c[e+(a<<2)>>2]=b;c[b+4>>2]=a;a=d}c[e+(a<<2)>>2]=f;c[f+4>>2]=a;return}function LR(){var a=0,b=0,d=0,e=0;b=c[46617]|0;if(!b)a=0;else{e=c[46605]|0;d=e+4|0;a=c[d>>2]|0;c[d>>2]=c[e+(b<<2)>>2];b=b+-1|0;c[46617]=b;if(b|0)KR(1);HR()}return a|0}function MR(a,b){a=a|0;b=b|0;c[a>>2]=b;IR(c[a+4>>2]|0);HR();return}function NR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=b+16|0;j=c[m>>2]|0;j=(a[j+((c[e+12>>2]|0)*40|0)+36>>0]|0)!=(a[j+((c[e+16>>2]|0)*40|0)+36>>0]|0);k=~~((+h[d+64>>3]+-3.0-+h[d+48>>3])*.5);l=~~((+h[d+56>>3]+-3.0-+h[d+40>>3])*.5);g=(k|0)<(l|0)?k:l;n=d+4|0;f=0;while(1){b=c[n>>2]|0;if((f|0)>=(b|0)){g=f;break}i=c[d+8+(f<<2)>>2]|0;o=c[m>>2]|0;if((a[o+((c[i+12>>2]|0)*40|0)+36>>0]|0)==(a[o+((c[i+16>>2]|0)*40|0)+36>>0]|0)){g=f;break}OR(i,g);f=f+1|0}while(1){if((g|0)>=(b|0))break;f=c[d+8+(g<<2)>>2]|0;if(j|(f|0)==(e|0)){OR(f,a[(c[m>>2]|0)+((c[f+12>>2]|0)*40|0)+36>>0]|0?k:l);b=c[n>>2]|0}g=g+1|0}return}function OR(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+8|0;e=c[d>>2]|0;c[d>>2]=e+1;if((e|0)>=(b|0)){c[d>>2]=0;h[a>>3]=+h[a>>3]+16384.0}return}function PR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0.0;x=l;l=l+112|0;u=x+64|0;t=x+96|0;m=x+32|0;v=x;w=uH(28)|0;b=ay(a)|0;s=w+4|0;c[s>>2]=b;b=uH(b*72|0)|0;r=w+12|0;c[r>>2]=b;e=v+8|0;h[e>>3]=1797693134862315708145274.0e284;h[v>>3]=1797693134862315708145274.0e284;f=v+24|0;h[f>>3]=-1797693134862315708145274.0e284;g=v+16|0;h[g>>3]=-1797693134862315708145274.0e284;i=m+16|0;j=m+8|0;k=m+24|0;d=Sy(a)|0;n=1797693134862315708145274.0e284;o=1797693134862315708145274.0e284;p=-1797693134862315708145274.0e284;q=-1797693134862315708145274.0e284;while(1){if(!d)break;C=d+16|0;D=c[C>>2]|0;z=(+h[D+96>>3]+ +h[D+88>>3])*.5;z=z<1.0?1.0:z;y=+h[D+80>>3]*.5;y=y<1.0?1.0:y;E=+h[D+16>>3];B=E-z;h[m>>3]=B;z=E+z;h[i>>3]=z;E=+h[D+24>>3];A=E-y;h[j>>3]=A;y=E+y;h[k>>3]=y;B=+h[(n>3];h[v>>3]=B;A=+h[(o>3];h[e>>3]=A;z=+h[(p>z?v:m)+16>>3];h[g>>3]=z;y=+h[(q>y?v:m)+24>>3];h[f>>3]=y;D=b+40|0;c[D>>2]=c[m>>2];c[D+4>>2]=c[m+4>>2];c[D+8>>2]=c[m+8>>2];c[D+12>>2]=c[m+12>>2];c[D+16>>2]=c[m+16>>2];c[D+20>>2]=c[m+20>>2];c[D+24>>2]=c[m+24>>2];c[D+28>>2]=c[m+28>>2];c[b>>2]=c[b>>2]|1;c[(c[C>>2]|0)+112>>2]=b;b=b+72|0;d=Ty(a,d)|0;n=B;o=A;p=z;q=y}h[v>>3]=n+-36.0;h[e>>3]=o+-36.0;h[g>>3]=p+36.0;h[f>>3]=q+36.0;D=c[r>>2]|0;f=c[s>>2]|0;c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[u+16>>2]=c[v+16>>2];c[u+20>>2]=c[v+20>>2];c[u+24>>2]=c[v+24>>2];c[u+28>>2]=c[v+28>>2];f=ZR(D,f,t,u)|0;if(c[46553]&1|0){r=c[r>>2]|0;C=c[s>>2]|0;D=c[t>>2]|0;c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[u+16>>2]=c[v+16>>2];c[u+20>>2]=c[v+20>>2];c[u+24>>2]=c[v+24>>2];c[u+28>>2]=c[v+28>>2];QR(r,C,u,f,D)}e=w+8|0;c[e>>2]=uH((c[t>>2]|0)*72|0)|0;c[w>>2]=c[t>>2];d=c[t>>2]|0;b=0;while(1){if((b|0)>=(d|0))break;D=(c[e>>2]|0)+(b*72|0)+40|0;C=f+(b<<5)|0;c[D>>2]=c[C>>2];c[D+4>>2]=c[C+4>>2];c[D+8>>2]=c[C+8>>2];c[D+12>>2]=c[C+12>>2];c[D+16>>2]=c[C+16>>2];c[D+20>>2]=c[C+20>>2];c[D+24>>2]=c[C+24>>2];c[D+28>>2]=c[C+28>>2];b=b+1|0}D_(f);c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];c[u+16>>2]=c[v+16>>2];c[u+20>>2]=c[v+20>>2];c[u+24>>2]=c[v+24>>2];c[u+28>>2]=c[v+28>>2];c[w+16>>2]=RR(w,u)|0;l=x;return w|0}function QR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0;q=l;l=l+128|0;p=q+96|0;o=q+64|0;j=q+32|0;r=q+16|0;s=q;m=+h[d+16>>3];n=+h[d>>3];k=+h[d+24>>3];g=+h[d+8>>3];i=c[15686]|0;D1(134688,i)|0;c[s>>2]=10;c[s+4>>2]=10;c[s+8>>2]=~~(m+10.0-n);c[s+12>>2]=~~(k+10.0-g);g1(i,135118,s)|0;h[r>>3]=10.0-n;h[r+8>>3]=10.0-g;g1(i,135166,r)|0;D1(135183,i)|0;d=0;while(1){if((d|0)>=(b|0))break;v=+h[a+(d*72|0)+48>>3];u=+h[a+(d*72|0)+56>>3];t=+h[a+(d*72|0)+64>>3];h[j>>3]=+h[a+(d*72|0)+40>>3];h[j+8>>3]=v;h[j+16>>3]=u;h[j+24>>3]=t;g1(i,135202,j)|0;d=d+1|0}D1(135220,i)|0;d=0;while(1){if((d|0)>=(f|0))break;t=+h[e+(d<<5)+8>>3];u=+h[e+(d<<5)+16>>3];v=+h[e+(d<<5)+24>>3];h[o>>3]=+h[e+(d<<5)>>3];h[o+8>>3]=t;h[o+16>>3]=u;h[o+24>>3]=v;g1(i,135239,o)|0;d=d+1|0}D1(135257,i)|0;h[p>>3]=n;h[p+8>>3]=g;h[p+16>>3]=m;h[p+24>>3]=k;g1(i,135239,p)|0;D1(135004,i)|0;l=q;return}function RR(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=l;l=l+32|0;t=A+16|0;k=A;w=c[a>>2]|0;y=nO(w<<2|2)|0;z=Cw(55856,c[4555]|0)|0;v=Cw(55892,c[4555]|0)|0;w=uH(w<<7)|0;f=uH(c[a>>2]<<4)|0;x=a+8|0;g=b+16|0;i=k+8|0;j=b+24|0;m=b+8|0;d=0;while(1){if((d|0)>=(c[a>>2]|0))break;n=c[x>>2]|0;o=n+(d*72|0)|0;c[n+(d*72|0)+32>>2]=4;p=n+(d*72|0)+36|0;c[p>>2]=f+(d<<2<<2);q=n+(d*72|0)+40|0;e=+h[n+(d*72|0)+56>>3];if(e<+h[g>>3]){h[k>>3]=e;h[i>>3]=+h[n+(d*72|0)+48>>3];c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];s=SR(y,z,t,w,1)|0;c[s+20>>2]=o;c[c[p>>2]>>2]=s}e=+h[n+(d*72|0)+64>>3];if(e<+h[j>>3]){h[k>>3]=+h[q>>3];h[i>>3]=e;c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];s=SR(y,v,t,w,0)|0;c[s+20>>2]=o;c[(c[p>>2]|0)+4>>2]=s}if(+h[q>>3]>+h[b>>3]){c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];s=SR(y,z,t,w,1)|0;c[s+24>>2]=o;c[(c[p>>2]|0)+8>>2]=s}if(+h[n+(d*72|0)+48>>3]>+h[m>>3]){c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];s=SR(y,v,t,w,0)|0;c[s+24>>2]=o;c[(c[p>>2]|0)+12>>2]=s}d=d+1|0}o=uH(c[y>>2]<<2)|0;r=a+4|0;s=a+12|0;p=t+8|0;m=0;q=0;n=0;while(1){d=c[r>>2]|0;if((n|0)>=(d|0)){b=0;break}g=c[s>>2]|0;i=g+(n*72|0)|0;j=g+(n*72|0)+36|0;c[j>>2]=o+(m<<2);b=g+(n*72|0)+40|0;c[t>>2]=c[b>>2];c[t+4>>2]=c[b+4>>2];c[t+8>>2]=c[b+8>>2];c[t+12>>2]=c[b+12>>2];b=g+(n*72|0)+56|0;k=g+(n*72|0)+32|0;d=nb[c[v>>2]&63](v,t,512)|0;while(1){if(!d)break;if(!(+h[d+8>>3]<+h[b>>3]))break;C=c[d>>2]|0;B=c[j>>2]|0;f=c[k>>2]|0;c[k>>2]=f+1;c[B+(f<<2)>>2]=C;c[(c[d>>2]|0)+24>>2]=i;d=nb[c[v>>2]&63](v,d,8)|0}f=g+(n*72|0)+64|0;d=nb[c[z>>2]&63](z,t,512)|0;while(1){if(!d){u=20;break}e=+h[f>>3];if(!(+h[d+16>>3]>2]|0;B=c[j>>2]|0;C=c[k>>2]|0;c[k>>2]=C+1;c[B+(C<<2)>>2]=b;c[(c[d>>2]|0)+24>>2]=i;d=nb[c[z>>2]&63](z,d,8)|0}if((u|0)==20){u=0;e=+h[f>>3]}h[p>>3]=e;b=g+(n*72|0)+56|0;d=nb[c[v>>2]&63](v,t,512)|0;while(1){if(!d){u=25;break}e=+h[b>>3];if(!(+h[d+8>>3]>2]|0;B=c[j>>2]|0;C=c[k>>2]|0;c[k>>2]=C+1;c[B+(C<<2)>>2]=D;c[(c[d>>2]|0)+20>>2]=i;d=nb[c[v>>2]&63](v,d,8)|0}if((u|0)==25){u=0;e=+h[b>>3]}h[t>>3]=e;h[p>>3]=+h[g+(n*72|0)+48>>3];d=nb[c[z>>2]&63](z,t,512)|0;while(1){if(!d)break;if(!(+h[d+16>>3]<+h[f>>3]))break;B=c[d>>2]|0;C=c[j>>2]|0;D=c[k>>2]|0;c[k>>2]=D+1;c[C+(D<<2)>>2]=B;c[(c[d>>2]|0)+20>>2]=i;d=nb[c[z>>2]&63](z,d,8)|0}D=c[k>>2]|0;m=D+m|0;q=(D|0)>(q|0)?D:q;n=n+1|0}while(1){if((b|0)>=(d|0))break;TR((c[s>>2]|0)+(b*72|0)|0);b=b+1|0;d=c[r>>2]|0}d=c[y>>2]|0;D=c[y+16>>2]|0;c[D+(d*40|0)+32>>2]=d;d=d+1|0;c[D+(d*40|0)+32>>2]=d;mO(y,q);d=0;while(1){if((d|0)>=(c[a>>2]|0))break;UR((c[x>>2]|0)+(d*72|0)|0,y);d=d+1|0}yw(z)|0;yw(v)|0;D_(w);VR(y);kO(y);l=A;return y|0}function SR(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=nb[c[d>>2]&63](d,e,512)|0;do if(!h){b=oO(b)|0;if(!f)qa(135101,135049,291,135108);else{h=c[b+32>>2]|0;i=f+(h<<5)|0;f=f+(h<<5)+8|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[i>>2]=b;a[b+36>>0]=g;nb[c[d>>2]&63](d,i,1)|0;break}}else i=h;while(0);return c[i>>2]|0}function TR(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;a:do if((+h[b+64>>3]+-3.0-+h[b+48>>3])*.5<2.0){i=c[b+32>>2]|0;j=b+36|0;g=0;while(1){if((g|0)>=(i|0))break a;d=c[(c[j>>2]|0)+(g<<2)>>2]|0;b:do if(a[d+36>>0]|0){f=c[d+20>>2]|0;if((f|0)==(b|0)){e=c[d+24>>2]|0;d=e;e=c[e>>2]|0;do{c[d>>2]=e|8;d=c[c[d+36>>2]>>2]|0;if(!d)break b;d=c[d+24>>2]|0;e=c[d>>2]|0}while(!(e&1|0))}else{e=f;d=c[f>>2]|0;do{c[e>>2]=d|8;d=c[(c[e+36>>2]|0)+8>>2]|0;if(!d)break b;e=c[d+20>>2]|0;d=c[e>>2]|0}while(!(d&1|0))}}while(0);g=g+1|0}}while(0);c:do if((+h[b+56>>3]+-3.0-+h[b+40>>3])*.5<2.0){i=c[b+32>>2]|0;j=b+36|0;g=0;while(1){if((g|0)>=(i|0))break c;d=c[(c[j>>2]|0)+(g<<2)>>2]|0;d:do if(!(a[d+36>>0]|0)){f=c[d+20>>2]|0;if((f|0)==(b|0)){e=c[d+24>>2]|0;d=e;e=c[e>>2]|0;do{c[d>>2]=e|16;d=c[(c[d+36>>2]|0)+4>>2]|0;if(!d)break d;d=c[d+24>>2]|0;e=c[d>>2]|0}while(!(e&1|0))}else{e=f;d=c[f>>2]|0;do{c[e>>2]=d|16;d=c[(c[e+36>>2]|0)+12>>2]|0;if(!d)break d;e=c[d+20>>2]|0;d=c[e>>2]|0}while(!(d&1|0))}}while(0);g=g+1|0}}while(0);return}function UR(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;g=+h[a+56>>3]-+h[a+40>>3];i=+h[a+64>>3]-+h[a+48>>3];f=(i+g)*.5+500.0;if((i+-3.0)*.5<2.0){l=(c[a>>2]&8|0)==0;f=l?16384.0:f;p=l?16384.0:g}else p=g;if((g+-3.0)*.5<2.0){l=(c[a>>2]&16|0)==0;i=l?16384.0:i;f=l?16384.0:f}l=a+36|0;d=c[l>>2]|0;e=c[d+8>>2]|0;if((e|0)!=0?(j=c[d+4>>2]|0,(j|0)!=0):0){j=pO(b,e,j,f)|0;e=a+4|0;d=c[e>>2]|0;c[e>>2]=d+1;c[a+8+(d<<2)>>2]=j;d=c[l>>2]|0}e=c[d+4>>2]|0;if((e|0)!=0?(k=c[d>>2]|0,(k|0)!=0):0){k=pO(b,e,k,f)|0;j=a+4|0;d=c[j>>2]|0;c[j>>2]=d+1;c[a+8+(d<<2)>>2]=k;d=c[l>>2]|0}e=c[d+8>>2]|0;if((e|0)!=0?(m=c[d+12>>2]|0,(m|0)!=0):0){m=pO(b,e,m,f)|0;k=a+4|0;d=c[k>>2]|0;c[k>>2]=d+1;c[a+8+(d<<2)>>2]=m;d=c[l>>2]|0}e=c[d+12>>2]|0;if((e|0)!=0?(n=c[d>>2]|0,(n|0)!=0):0){n=pO(b,e,n,f)|0;m=a+4|0;d=c[m>>2]|0;c[m>>2]=d+1;c[a+8+(d<<2)>>2]=n;d=c[l>>2]|0}e=c[d+4>>2]|0;if((e|0)!=0?(o=c[d+12>>2]|0,(o|0)!=0):0){o=pO(b,e,o,i)|0;n=a+4|0;d=c[n>>2]|0;c[n>>2]=d+1;c[a+8+(d<<2)>>2]=o;d=c[l>>2]|0}e=c[d+8>>2]|0;if(e|0?(q=c[d>>2]|0,q|0):0){b=pO(b,e,q,p)|0;o=a+4|0;q=c[o>>2]|0;c[o>>2]=q+1;c[a+8+(q<<2)>>2]=b}return}function VR(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;h=j;f=a+16|0;g=c[15686]|0;e=0;while(1){if((e|0)>=(c[a>>2]|0)){b=10;break}b=c[f>>2]|0;d=b+(e*40|0)+20|0;if((c[d>>2]|0)==0?(c[h>>2]=e,g1(g,135014,h)|0,(c[d>>2]|0)==0):0){b=5;break}b=b+(e*40|0)+24|0;if((c[b>>2]|0)==0?(c[i>>2]=e,g1(g,135066,i)|0,(c[b>>2]|0)==0):0){b=8;break}e=e+1|0}if((b|0)==5)qa(135036,135049,311,135056);else if((b|0)==8)qa(135088,135049,313,135056);else if((b|0)==10){l=j;return}}function WR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;e=+h[b+8>>3];f=+h[c+8>>3];if(!(e>f))if(!(e>3];e=+h[c>>3];if(f>e)a=1;else a=(f>31}else a=-1;else a=1;return a|0}function XR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;e=+h[b>>3];f=+h[c>>3];if(!(e>f))if(!(e>3];e=+h[c+8>>3];if(f>e)a=1;else a=(f>31}else a=-1;else a=1;return a|0}function YR(a){a=a|0;var b=0,d=0;d=a+8|0;D_(c[(c[d>>2]|0)+36>>2]|0);b=a+12|0;D_(c[(c[b>>2]|0)+36>>2]|0);D_(c[d>>2]|0);D_(c[b>>2]|0);rO(c[a+16>>2]|0);yw(c[a+20>>2]|0)|0;yw(c[a+24>>2]|0)|0;D_(a);return}function ZR(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;h=p;i=b<<2;f=i+4|0;i=i+5|0;o=vH(i*56|0)|0;i=uH(i<<2)|0;g=f*5|1;j=vH(g*72|0)|0;m=g<<5;k=uH(m)|0;m=uH(m)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[h+20>>2]=c[e+20>>2];c[h+24>>2]=c[e+24>>2];c[h+28>>2]=c[e+28>>2];_R(a,b,h,o,0);i2(173);$R(f,i);jS(f,o,i,g,j)|0;n=aS(f,o,j,0,k)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[h+20>>2]=c[e+20>>2];c[h+24>>2]=c[e+24>>2];c[h+28>>2]=c[e+28>>2];_R(a,b,h,o,1);$R(f,i);jS(f,o,i,g,j)|0;f=aS(f,o,j,1,m)|0;g=uH(O(n<<5,f)|0)|0;b=0;a=0;while(1){if((b|0)>=(f|0))break;h=m+(b<<5)|0;e=0;while(1){if((e|0)>=(n|0))break;q=a+((bS(g+(a<<5)|0,h,k+(e<<5)|0)|0)!=0&1)|0;e=e+1|0;a=q}b=b+1|0}q=xH(g,a<<5)|0;D_(o);D_(i);D_(j);D_(k);D_(m);c[d>>2]=a;l=p;return q|0}function _R(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+96|0;h=j+64|0;i=j;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];c[h+16>>2]=c[d+16>>2];c[h+20>>2]=c[d+20>>2];c[h+24>>2]=c[d+24>>2];c[h+28>>2]=c[d+28>>2];hS(h,f,1,i);d=iS(e,1,i)|0;g=0;while(1){if((g|0)>=(b|0))break;k=a+(g*72|0)+40|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];c[h+16>>2]=c[k+16>>2];c[h+20>>2]=c[k+20>>2];c[h+24>>2]=c[k+24>>2];c[h+28>>2]=c[k+28>>2];hS(h,f,0,i);d=iS(e,d,i)|0;g=g+1|0}l=j;return}function $R(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=0;while(1){if((d|0)>(a|0))break;c[b+(d<<2)>>2]=d;d=d+1|0}g=a+1|0;d=1;while(1){if((d|0)>(a|0))break;h=~~(+k2()*+(g-d|0)+ +(d|0));e=b+(d<<2)|0;f=b+(h<<2)|0;if((d|0)!=(h|0)){h=c[e>>2]|0;c[e>>2]=c[f>>2];c[f>>2]=h}d=d+1|0}return}function aS(a,b,d,e,f){a=a|0;b=b|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;g=a*5|0;j=g+1|0;l=uH(j<<2)|0;c[46618]=uH(j<<4)|0;c[46619]=uH((a*56|0)+56|0)|0;j=uH(a<<2)|0;c[46620]=j;k=0;while(1){if((k|0)>(g|0))break;if(cS(d+(k*72|0)|0,b)|0)break;k=k+1|0}h=c[46618]|0;i=c[46619]|0;g=1;while(1){if((g|0)>(a|0))break;c[h+(g<<4)+8>>2]=c[b+(g*56|0)+48>>2];m=b+(g*56|0)+44|0;c[h+(g<<4)+4>>2]=c[m>>2];c[h+(g<<4)>>2]=g;n=i+(g*56|0)|0;o=b+(g*56|0)|0;c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[i+(g*56|0)+16>>2]=c[m>>2];c[i+(g*56|0)+32>>2]=g;c[i+(g*56|0)+48>>2]=1;g=g+1|0}c[46621]=a;c[46622]=0;c[j>>2]=1;g=c[d+(k*72|0)+40>>2]|0;if((g|0)<=0){g=c[d+(k*72|0)+48>>2]|0;if((g|0)>0)g=dS(l,f,0,b,d,0,k,g,e,2)|0;else g=0}else g=dS(l,f,0,b,d,0,k,g,e,1)|0;D_(l);D_(c[46618]|0);D_(c[46619]|0);D_(c[46620]|0);return g|0}function bS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;g=+h[(+h[b>>3]>+h[c>>3]?b:c)>>3];f=+h[(+h[b+16>>3]<+h[c+16>>3]?b:c)+16>>3];h[a+16>>3]=f;h[a>>3]=g;e=+h[(+h[b+8>>3]>+h[c+8>>3]?b:c)+8>>3];d=+h[(+h[b+24>>3]<+h[c+24>>3]?b:c)+24>>3];h[a+24>>3]=d;h[a+8>>3]=e;return !(g>=f)&!(e>=d)&1|0}function cS(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[a+4>>2]|0;do if((c[a+68>>2]|0)!=2?!((f|0)<1|(c[a>>2]|0)<1):0){if(!((c[a+40>>2]|0)<1?(c[a+44>>2]|0)<1:0)){if((c[a+48>>2]|0)>=1){a=0;break}if((c[a+52>>2]|0)>=1){a=0;break}}d=+h[b+(f*56|0)+24>>3];e=+h[b+(f*56|0)+8>>3];if(!(d>e+1.0e-07))if(d>3]>+h[b+(f*56|0)>>3]&1;else a=1}else a=0;while(0);return a|0}function dS(a,b,d,e,f,g,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=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.0,J=0,K=0.0,L=0,M=0,N=0,O=0,P=0;D=(k|0)==0;C=i;a:while(1){y=f+(C*72|0)|0;if((C|0)<1)break;i=a+(C<<2)|0;if(c[i>>2]|0)break;c[i>>2]=1;v=f+(C*72|0)+8|0;t=f+(C*72|0)+16|0;p=+h[t>>3];w=f+(C*72|0)+24|0;x=f+(C*72|0)+32|0;o=+h[x>>3];if((p>o?(A=c[y>>2]|0,I=+h[e+(A*56|0)>>3],I==+h[e+(A*56|0)+16>>3]):0)?(A=c[f+(C*72|0)+4>>2]|0,K=+h[e+(A*56|0)>>3],K==+h[e+(A*56|0)+16>>3]):0){i=b+(d<<5)|0;if(D){h[i>>3]=I;q=p;p=K}else{h[i>>3]=o;q=-I;o=-K}h[b+(d<<5)+8>>3]=o;h[b+(d<<5)+16>>3]=p;h[b+(d<<5)+24>>3]=q;d=d+1|0}i=f+(C*72|0)+40|0;z=c[i>>2]|0;do if((z|0)<1?(L=f+(C*72|0)+44|0,(c[L>>2]|0)<1):0){i=f+(C*72|0)+48|0;n=f+(C*72|0)+52|0;if((c[i>>2]|0)>0?(M=c[n>>2]|0,(M|0)>0):0){m=c[f+(M*72|0)>>2]|0;l=c[y>>2]|0;if((M|0)==(j|0)){l=eS(g,l,m)|0;d=dS(a,b,d,e,f,g,c[n>>2]|0,C,k,1)|0;g=l;l=1;break}else{l=eS(g,m,l)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,1)|0;g=l;i=n;l=1;break}}d=dS(a,b,d,e,f,g,z,C,k,2)|0;d=dS(a,b,d,e,f,g,c[L>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,1)|0;i=n;l=1}else P=19;while(0);do if((P|0)==19){P=0;A=f+(C*72|0)+48|0;r=c[A>>2]|0;if((r|0)<1?(N=f+(C*72|0)+52|0,(c[N>>2]|0)<1):0){n=f+(C*72|0)+44|0;if((z|0)>0?(O=c[n>>2]|0,(O|0)>0):0){m=c[f+(C*72|0)+4>>2]|0;l=c[f+(z*72|0)+4>>2]|0;if((O|0)==(j|0)){l=eS(g,l,m)|0;d=dS(a,b,d,e,f,g,c[n>>2]|0,C,k,2)|0;g=l;l=2;break}else{l=eS(g,m,l)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;g=l;i=n;l=2;break}}d=dS(a,b,d,e,f,g,z,C,k,2)|0;d=dS(a,b,d,e,f,g,c[n>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;i=N;l=1;break}u=f+(C*72|0)+44|0;s=c[u>>2]|0;m=(s|0)>0;if((z|0)>0){if(m){if((r|0)>0?(E=f+(C*72|0)+52|0,F=c[E>>2]|0,(F|0)>0):0){n=c[f+(F*72|0)>>2]|0;m=c[f+(z*72|0)+4>>2]|0;if(!((l|0)==2&(F|0)==(j|0))?!((l|0)==1&(s|0)==(j|0)):0){l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[u>>2]|0,C,k,2)|0;g=l;i=E;l=1;break}l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[u>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[E>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=A;l=1;break}m=c[y>>2]|0;if(+B(+(+h[x>>3]-+h[e+(m*56|0)+24>>3]))<=1.0e-07?+B(+(+h[w>>3]-+h[e+(m*56|0)+16>>3]))<=1.0e-07:0){n=c[f+(z*72|0)+4>>2]|0;m=c[e+(m*56|0)+44>>2]|0;if((l|0)==1&(z|0)==(j|0)){l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[u>>2]|0,C,k,2)|0;g=l;i=f+(C*72|0)+52|0;l=1;break}else{l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[u>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;l=2;break}}n=c[f+(C*72|0)+4>>2]|0;m=c[f+(z*72|0)+4>>2]|0;if((l|0)==1&(s|0)==(j|0)){l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[u>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[A>>2]|0,C,k,1)|0;g=l;l=2;break}else{l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;i=u;l=2;break}}}else if(!m)break a;if((r|0)>0?(G=f+(C*72|0)+52|0,H=c[G>>2]|0,(H|0)>0):0){n=c[y>>2]|0;if(+B(+(+h[t>>3]-+h[e+(n*56|0)+8>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[e+(n*56|0)>>3]))<=1.0e-07:0){m=c[f+(H*72|0)>>2]|0;if((l|0)==2&(r|0)==(j|0)){l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;g=l;i=G;l=1;break}else{l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[G>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;g=l;i=A;l=1;break}}m=c[f+(H*72|0)>>2]|0;n=c[e+((c[f+(C*72|0)+4>>2]|0)*56|0)+44>>2]|0;if((l|0)==2&(H|0)==(j|0)){l=eS(g,n,m)|0;d=dS(a,b,d,e,f,g,c[G>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=A;l=1;break}else{l=eS(g,m,n)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;g=l;i=G;l=1;break}}o=+h[t>>3];n=c[y>>2]|0;if(((+B(+(o-+h[e+(n*56|0)+8>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[e+(n*56|0)>>3]))<=1.0e-07:0)?(J=c[f+(C*72|0)+4>>2]|0,+B(+(+h[x>>3]-+h[e+(J*56|0)+8>>3]))<=1.0e-07):0)?+B(+(+h[w>>3]-+h[e+(J*56|0)>>3]))<=1.0e-07:0)if((l|0)==1){l=eS(g,n,J)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;i=A;l=1;break}else{l=eS(g,J,n)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=f+(C*72|0)+44|0;l=2;break}j=c[f+(C*72|0)+4>>2]|0;if(((+B(+(o-+h[e+(j*56|0)+24>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[e+(j*56|0)+16>>3]))<=1.0e-07:0)?+B(+(+h[x>>3]-+h[e+(n*56|0)+24>>3]))<=1.0e-07:0)?+B(+(+h[w>>3]-+h[e+(n*56|0)+16>>3]))<=1.0e-07:0){m=c[e+(j*56|0)+44>>2]|0;j=c[e+(n*56|0)+44>>2]|0;if((l|0)==1){l=eS(g,j,m)|0;d=dS(a,b,d,e,f,g,c[i>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;d=dS(a,b,d,e,f,l,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;g=l;i=A;l=1;break}else{l=eS(g,m,j)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+52>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,l,c[i>>2]|0,C,k,2)|0;g=l;i=f+(C*72|0)+44|0;l=2;break}}d=dS(a,b,d,e,f,g,z,C,k,2)|0;d=dS(a,b,d,e,f,g,c[A>>2]|0,C,k,1)|0;d=dS(a,b,d,e,f,g,c[f+(C*72|0)+44>>2]|0,C,k,2)|0;i=f+(C*72|0)+52|0;l=1}while(0);j=C;C=c[i>>2]|0}return d|0}function eS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;f=l;l=l+16|0;r=f+4|0;i=f;e=(c[46622]|0)+1|0;c[46622]=e;m=c[46619]|0;fS(b,d,r,i);r=c[r>>2]|0;h=c[m+(b*56|0)+32+(r<<2)>>2]|0;i=c[m+(d*56|0)+32+(c[i>>2]<<2)>>2]|0;n=c[46621]|0;g=n+1|0;n=n+2|0;c[46621]=n;q=c[46618]|0;c[q+(g<<4)>>2]=b;c[q+(n<<4)>>2]=d;o=q+(h<<4)+4|0;p=q+(g<<4)+4|0;c[p>>2]=c[o>>2];c[q+(c[o>>2]<<4)+8>>2]=g;c[q+(g<<4)+8>>2]=n;c[q+(n<<4)+4>>2]=g;j=q+(i<<4)+8|0;c[q+(n<<4)+8>>2]=c[j>>2];c[q+(c[j>>2]<<4)+4>>2]=n;c[o>>2]=i;c[j>>2]=h;j=m+(b*56|0)+48|0;o=c[j>>2]|0;i=m+(d*56|0)+48|0;k=c[i>>2]|0;c[m+(b*56|0)+16+(r<<2)>>2]=d;c[m+(b*56|0)+32+(o<<2)>>2]=g;c[m+(b*56|0)+16+(o<<2)>>2]=c[q+(c[p>>2]<<4)>>2];c[m+(d*56|0)+32+(k<<2)>>2]=n;c[m+(d*56|0)+16+(k<<2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1;c[i>>2]=(c[i>>2]|0)+1;d=c[46620]|0;c[d+(a<<2)>>2]=h;c[d+(e<<2)>>2]=g;l=f;return e|0}function fS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0;l=c[46619]|0;m=l+(a*56|0)|0;n=l+(b*56|0)|0;f=0;g=-4.0;i=0;while(1){if((i|0)==4)break;h=c[l+(a*56|0)+16+(i<<2)>>2]|0;if((h|0)>=1?(j=+gS(m,l+(h*56|0)|0,n),j>g):0){f=i;g=j}i=i+1|0}c[d>>2]=f;f=0;i=0;g=-4.0;while(1){if((i|0)==4)break;h=c[l+(b*56|0)+16+(i<<2)>>2]|0;if((h|0)>=1?(k=+gS(n,l+(h*56|0)|0,m),k>g):0){f=i;g=k}i=i+1|0}c[e>>2]=f;return}function gS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0;g=+h[a>>3];i=+h[b>>3]-g;d=+h[a+8>>3];f=+h[b+8>>3]-d;g=+h[c>>3]-g;d=+h[c+8>>3]-d;e=d*f+g*i;if(!(d*i-g*f>=0.0))d=-e/(+C(+(d*d+g*g))*+C(+(f*f+i*i)))+-2.0;else d=e/(+C(+(d*d+g*g))*+C(+(f*f+i*i)));return +d}function hS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,l=0.0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];i=e+32|0;j=a+16|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];if(!d){f=a+8|0;g=j;i=a+24|0;d=a}else{f=a+24|0;g=a;i=a+8|0;d=j}k=+h[g>>3];l=+h[i>>3];h[e+16>>3]=+h[d>>3];h[e+24>>3]=l;h[e+48>>3]=k;h[e+56>>3]=+h[f>>3];a:do if(b|0){d=0;while(1){if((d|0)==4)break a;j=e+(d<<4)+8|0;l=+h[j>>3];b=e+(d<<4)|0;h[j>>3]=+h[b>>3];h[b>>3]=-l;d=d+1|0}}while(0);return}function iS(a,b,d){a=a|0;b=b|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=b+3|0;i=b+1|0;j=b+2|0;k=a+(b*56|0)+44|0;l=a+(h*56|0)+44|0;e=0;f=b;while(1){if((f|0)>(h|0))break;do if((f|0)!=(b|0))if((f|0)==(h|0)){c[l>>2]=b;g=j;break}else{c[a+(f*56|0)+44>>2]=f+1;g=f+-1|0;break}else{c[k>>2]=i;g=h}while(0);c[a+(f*56|0)+48>>2]=g;c[a+(f*56|0)+32>>2]=0;n=a+(f*56|0)|0;m=d+(e<<4)|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];G3(a+(g*56|0)+16|0,m|0,16)|0;e=e+1|0;f=f+1|0}return b+4|0}function jS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;c[46623]=e<<1;c[46624]=e;k=uH(e*80|0)|0;c[46625]=1;c[46626]=1;H3(f|0,0,e*72|0)|0;g=kS(c[d+4>>2]|0,b,f,k)|0;e=1;while(1){if((e|0)>(a|0))break;c[b+(e*56|0)+40>>2]=g;c[b+(e*56|0)+36>>2]=g;e=e+1|0}j=lS(a)|0;g=2;i=1;while(1){if((i|0)>(j|0))break;e=mS(a,i+-1|0)|0;h=mS(a,i)|0;while(1){if((e|0)>=(h|0)){e=1;break}nS(c[d+(g<<2)>>2]|0,b,f,k);e=e+1|0;g=g+1|0}while(1){if((e|0)>(a|0))break;oS(e,b,f,k);e=e+1|0}i=i+1|0}e=mS(a,j)|0;while(1){if((e|0)>=(a|0))break;nS(c[d+(g<<2)>>2]|0,b,f,k);g=g+1|0;e=e+1|0}D_(k);return c[46625]|0}function kS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=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;f=tS()|0;c[e+(f*40|0)>>2]=2;s=e+(f*40|0)+8|0;k=b+(a*56|0)|0;l=b+(a*56|0)+16|0;xS(s,k,l);n=tS()|0;c[e+(f*40|0)+36>>2]=n;c[e+(n*40|0)>>2]=3;c[e+(n*40|0)+28>>2]=f;j=tS()|0;c[e+(f*40|0)+32>>2]=j;c[e+(j*40|0)>>2]=2;r=e+(j*40|0)+8|0;yS(r,k,l);c[e+(j*40|0)+28>>2]=f;l=tS()|0;c[e+(j*40|0)+32>>2]=l;c[e+(l*40|0)>>2]=3;c[e+(l*40|0)+28>>2]=j;k=tS()|0;c[e+(j*40|0)+36>>2]=k;c[e+(k*40|0)>>2]=1;c[e+(k*40|0)+4>>2]=a;c[e+(k*40|0)+28>>2]=j;j=tS()|0;c[e+(k*40|0)+32>>2]=j;c[e+(j*40|0)>>2]=3;c[e+(j*40|0)+28>>2]=k;g=tS()|0;c[e+(k*40|0)+36>>2]=g;c[e+(g*40|0)>>2]=3;c[e+(g*40|0)+28>>2]=k;k=sS(d)|0;i=sS(d)|0;m=sS(d)|0;o=sS(d)|0;p=d+(k*72|0)+8|0;q=d+(i*72|0)+8|0;t=d+(o*72|0)+24|0;c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];G3(q|0,s|0,16)|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];p=d+(k*72|0)+24|0;q=d+(i*72|0)+24|0;s=d+(m*72|0)+8|0;c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];G3(q|0,r|0,16)|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];h[d+(o*72|0)+16>>3]=1073741824.0;h[d+(o*72|0)+8>>3]=1073741824.0;h[d+(m*72|0)+32>>3]=-1073741824.0;h[d+(m*72|0)+24>>3]=-1073741824.0;c[d+(i*72|0)>>2]=a;c[d+(k*72|0)+4>>2]=a;c[d+(i*72|0)+40>>2]=o;c[d+(k*72|0)+40>>2]=o;c[d+(i*72|0)+48>>2]=m;c[d+(k*72|0)+48>>2]=m;c[d+(m*72|0)+40>>2]=k;c[d+(o*72|0)+48>>2]=k;c[d+(m*72|0)+44>>2]=i;c[d+(o*72|0)+52>>2]=i;c[d+(k*72|0)+56>>2]=j;c[d+(i*72|0)+56>>2]=g;c[d+(m*72|0)+56>>2]=l;c[d+(o*72|0)+56>>2]=n;c[d+(i*72|0)+68>>2]=1;c[d+(k*72|0)+68>>2]=1;c[d+(o*72|0)+68>>2]=1;c[d+(m*72|0)+68>>2]=1;c[e+(n*40|0)+24>>2]=o;c[e+(l*40|0)+24>>2]=m;c[e+(j*40|0)+24>>2]=k;c[e+(g*40|0)+24>>2]=i;c[b+(a*56|0)+32>>2]=1;return f|0}function lS(a){a=a|0;var b=0.0;b=+(a|0);a=0;while(1){if(!(b>=1.0))break;b=+g$(b);a=a+1|0}return a+-1|0}function mS(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+(a|0);c=d;a=0;while(1){if((a|0)>=(b|0))break;c=+g$(c);a=a+1|0}return ~~+N(+(d/c))|0}function nS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=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,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;W=l;l=l+96|0;S=W+32|0;f=W+16|0;T=W;s=S;k=b+(a*56|0)|0;r=s+56|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));U=S+16|0;V=S+24|0;i=+h[V>>3];H=S+8|0;j=+h[H>>3];do if(!(i>j+1.0e-07)){if(!(i>3]>+h[S>>3]:0){G=4;break}G=(rS(a,b,1)|0)==0;f=c[S+36>>2]|0;if(G){n=0;G=7}else{f=pS(S,U,f,b,e)|0;G=20}}else G=4;while(0);if((G|0)==4){c[f>>2]=c[S>>2];c[f+4>>2]=c[S+4>>2];c[f+8>>2]=c[S+8>>2];c[f+12>>2]=c[S+12>>2];c[S>>2]=c[U>>2];c[S+4>>2]=c[U+4>>2];c[S+8>>2]=c[U+8>>2];c[S+12>>2]=c[U+12>>2];c[U>>2]=c[f>>2];c[U+4>>2]=c[f+4>>2];c[U+8>>2]=c[f+8>>2];c[U+12>>2]=c[f+12>>2];E=S+36|0;F=c[E>>2]|0;G=S+40|0;f=c[G>>2]|0;c[E>>2]=f;c[G>>2]=F;if(!(rS(a,b,2)|0)){n=1;G=7}else{f=pS(S,U,f,b,e)|0;G=19}}if((G|0)==7){m=pS(S,U,f,b,e)|0;f=sS(d)|0;c[d+(f*72|0)+68>>2]=1;s=d+(f*72|0)|0;k=d+(m*72|0)|0;r=s+72|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));q=+h[H>>3];h[d+(f*72|0)+16>>3]=q;h[d+(m*72|0)+32>>3]=q;q=+h[S>>3];h[d+(f*72|0)+8>>3]=q;h[d+(m*72|0)+24>>3]=q;c[d+(m*72|0)+48>>2]=f;c[d+(m*72|0)+52>>2]=0;c[d+(f*72|0)+40>>2]=m;c[d+(f*72|0)+44>>2]=0;g=c[d+(f*72|0)+48>>2]|0;if((g|0)>0){k=d+(g*72|0)+40|0;if((c[k>>2]|0)==(m|0))c[k>>2]=f;g=d+(g*72|0)+44|0;if((c[g>>2]|0)==(m|0))c[g>>2]=f}g=c[d+(f*72|0)+52>>2]|0;if((g|0)>0){k=d+(g*72|0)+40|0;if((c[k>>2]|0)==(m|0))c[k>>2]=f;g=d+(g*72|0)+44|0;if((c[g>>2]|0)==(m|0))c[g>>2]=f}E=tS()|0;G=tS()|0;F=d+(m*72|0)+56|0;D=c[F>>2]|0;c[e+(D*40|0)>>2]=2;C=e+(D*40|0)+8|0;c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[e+(D*40|0)+4>>2]=a;c[e+(D*40|0)+32>>2]=G;c[e+(D*40|0)+36>>2]=E;c[e+(E*40|0)>>2]=3;c[e+(E*40|0)+24>>2]=m;c[e+(E*40|0)+28>>2]=D;c[e+(G*40|0)>>2]=3;c[e+(G*40|0)+24>>2]=f;c[e+(G*40|0)+28>>2]=D;c[F>>2]=E;c[d+(f*72|0)+56>>2]=G;if(n)G=19;else G=20}if((G|0)==19)if(!(rS(a,b,1)|0)){g=1;G=21}else{g=1;G=32}else if((G|0)==20)if(!(rS(a,b,2)|0)){g=0;G=21}else{g=0;G=32}if((G|0)==21){o=pS(U,S,c[S+40>>2]|0,b,e)|0;n=sS(d)|0;c[d+(n*72|0)+68>>2]=1;s=d+(n*72|0)|0;k=d+(o*72|0)|0;r=s+72|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));q=+h[V>>3];h[d+(n*72|0)+16>>3]=q;h[d+(o*72|0)+32>>3]=q;q=+h[U>>3];h[d+(n*72|0)+8>>3]=q;h[d+(o*72|0)+24>>3]=q;c[d+(o*72|0)+48>>2]=n;c[d+(o*72|0)+52>>2]=0;c[d+(n*72|0)+40>>2]=o;c[d+(n*72|0)+44>>2]=0;k=c[d+(n*72|0)+48>>2]|0;if((k|0)>0){m=d+(k*72|0)+40|0;if((c[m>>2]|0)==(o|0))c[m>>2]=n;k=d+(k*72|0)+44|0;if((c[k>>2]|0)==(o|0))c[k>>2]=n}k=c[d+(n*72|0)+52>>2]|0;if((k|0)>0){m=d+(k*72|0)+40|0;if((c[m>>2]|0)==(o|0))c[m>>2]=n;k=d+(k*72|0)+44|0;if((c[k>>2]|0)==(o|0))c[k>>2]=n}D=tS()|0;F=tS()|0;E=d+(o*72|0)+56|0;C=c[E>>2]|0;c[e+(C*40|0)>>2]=2;A=e+(C*40|0)+8|0;c[A>>2]=c[U>>2];c[A+4>>2]=c[U+4>>2];c[A+8>>2]=c[U+8>>2];c[A+12>>2]=c[U+12>>2];c[e+(C*40|0)+4>>2]=a;c[e+(C*40|0)+32>>2]=F;c[e+(C*40|0)+36>>2]=D;c[e+(D*40|0)>>2]=3;c[e+(D*40|0)+24>>2]=o;c[e+(D*40|0)+28>>2]=C;c[e+(F*40|0)>>2]=3;c[e+(F*40|0)+24>>2]=n;c[e+(F*40|0)+28>>2]=C;c[E>>2]=D;c[d+(n*72|0)+56>>2]=F;F=f;f=0}else if((G|0)==32){F=f;o=pS(U,S,c[S+40>>2]|0,b,e)|0;f=1}a:do if((F|0)>0){D=d+(o*72|0)+24|0;E=d+(o*72|0)+32|0;C=(f|0)!=0;y=g?b+(a*56|0)+48|0:b+(a*56|0)+44|0;z=T+8|0;g=0;f=0;x=F;b:while(1){k=d+(x*72|0)|0;v=d+(x*72|0)+24|0;if(!(uS(v,D)|0))break a;m=d+(x*72|0)+56|0;u=c[m>>2]|0;n=tS()|0;p=tS()|0;c[e+(u*40|0)>>2]=1;c[e+(u*40|0)+4>>2]=a;c[e+(u*40|0)+32>>2]=n;c[e+(u*40|0)+36>>2]=p;c[e+(n*40|0)>>2]=3;c[e+(n*40|0)+24>>2]=x;c[e+(n*40|0)+28>>2]=u;c[e+(p*40|0)>>2]=3;w=sS(d)|0;c[e+(p*40|0)+24>>2]=w;A=d+(w*72|0)|0;c[d+(w*72|0)+68>>2]=1;c[e+(p*40|0)+28>>2]=u;g=(x|0)==(F|0)?w:g;u=d+(x*72|0)+32|0;if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0)f=w;s=A;r=s+72|0;do{c[s>>2]=c[k>>2];s=s+4|0;k=k+4|0}while((s|0)<(r|0));c[m>>2]=n;c[d+(w*72|0)+56>>2]=p;t=d+(x*72|0)+48|0;m=d+(x*72|0)+52|0;k=(c[m>>2]|0)<1;do if((c[t>>2]|0)<1){if(k)break b;s=d+(x*72|0)+40|0;k=c[s>>2]|0;do if((k|0)>0?(M=d+(x*72|0)+44|0,N=c[M>>2]|0,(N|0)>0):0){r=d+(x*72|0)+60|0;k=c[r>>2]|0;if((k|0)<=0){c[d+(w*72|0)+40>>2]=N;c[d+(w*72|0)+44>>2]=-1;c[M>>2]=-1;c[d+(N*72|0)+48>>2]=w;break}if((c[d+(x*72|0)+64>>2]|0)==1){c[d+(w*72|0)+40>>2]=N;c[M>>2]=-1;c[d+(w*72|0)+44>>2]=k;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;p=w;n=N}else{c[d+(w*72|0)+44>>2]=-1;t=d+(w*72|0)+40|0;c[t>>2]=c[M>>2];n=c[s>>2]|0;c[M>>2]=n;c[s>>2]=k;c[d+(k*72|0)+48>>2]=x;p=x;k=c[t>>2]|0}c[d+(n*72|0)+48>>2]=p;c[d+(k*72|0)+48>>2]=w;c[d+(w*72|0)+60>>2]=0;c[r>>2]=0}else G=77;while(0);do if((G|0)==77){G=0;n=d+(k*72|0)+48|0;p=c[n>>2]|0;k=d+(k*72|0)+52|0;if((p|0)>0?(c[k>>2]|0)>0:0){k=c[d+(p*72|0)+4>>2]|0;if((k|0)>0?(qS(k,b,U)|0)==0:0){c[d+(w*72|0)+44>>2]=-1;c[d+(x*72|0)+44>>2]=-1;c[s>>2]=-1;c[d+((c[d+(w*72|0)+40>>2]|0)*72|0)+52>>2]=w;break}c[d+(x*72|0)+44>>2]=-1;c[d+(w*72|0)+44>>2]=-1;c[d+(w*72|0)+40>>2]=-1;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;break}c[n>>2]=x;c[k>>2]=w}while(0);if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?C&+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0){k=c[y>>2]|0;if((k|0)>0?(qS(k,b,S)|0)!=0:0){c[d+((c[m>>2]|0)*72|0)+40>>2]=x;n=d+(w*72|0)+52|0;k=w}else{c[d+((c[d+(w*72|0)+52>>2]|0)*72|0)+44>>2]=w;n=m;k=x}c[n>>2]=-1;c[d+(k*72|0)+48>>2]=-1;k=c[m>>2]|0;break}k=c[m>>2]|0;m=d+(k*72|0)+40|0;n=c[m>>2]|0;p=d+(k*72|0)+44|0;if((n|0)>0?(O=c[p>>2]|0,P=(n|0)==(x|0),(O|0)>0):0){c[d+(k*72|0)+60>>2]=P?O:n;c[d+(k*72|0)+64>>2]=P?1:2}c[m>>2]=x;c[p>>2]=w}else{if(!k){i=+h[u>>3];j=+h[H>>3];q=i-j;if(!(+B(+q)<=1.0e-07)){h[z>>3]=i;i=+h[S>>3];h[T>>3]=(+h[U>>3]-i)*(q/(+h[V>>3]-j))+i;s=(vS(T,v)|0)!=0}else s=+h[v>>3]>+h[S>>3];r=d+(x*72|0)+40|0;k=c[r>>2]|0;do if((k|0)>0?(Q=d+(x*72|0)+44|0,R=c[Q>>2]|0,(R|0)>0):0){p=d+(x*72|0)+60|0;k=c[p>>2]|0;if((k|0)<=0){c[d+(w*72|0)+40>>2]=R;c[d+(w*72|0)+44>>2]=-1;c[Q>>2]=-1;c[d+(R*72|0)+48>>2]=w;break}if((c[d+(x*72|0)+64>>2]|0)==1){c[d+(w*72|0)+40>>2]=R;c[Q>>2]=-1;c[d+(w*72|0)+44>>2]=k;c[d+((c[r>>2]|0)*72|0)+48>>2]=x;n=w;m=R}else{c[d+(w*72|0)+44>>2]=-1;X=d+(w*72|0)+40|0;c[X>>2]=c[Q>>2];m=c[r>>2]|0;c[Q>>2]=m;c[r>>2]=k;c[d+(k*72|0)+48>>2]=x;n=x;k=c[X>>2]|0}c[d+(m*72|0)+48>>2]=n;c[d+(k*72|0)+48>>2]=w;c[d+(w*72|0)+60>>2]=0;c[p>>2]=0}else G=106;while(0);do if((G|0)==106){G=0;m=d+(k*72|0)+48|0;n=c[m>>2]|0;k=d+(k*72|0)+52|0;if((n|0)>0?(c[k>>2]|0)>0:0){k=c[d+(n*72|0)+4>>2]|0;if((k|0)>0?(qS(k,b,U)|0)==0:0){c[d+(w*72|0)+44>>2]=-1;c[d+(x*72|0)+44>>2]=-1;c[r>>2]=-1;c[d+((c[d+(w*72|0)+40>>2]|0)*72|0)+52>>2]=w;break}c[d+(x*72|0)+44>>2]=-1;c[d+(w*72|0)+44>>2]=-1;c[d+(w*72|0)+40>>2]=-1;c[d+((c[r>>2]|0)*72|0)+48>>2]=x;break}c[m>>2]=x;c[k>>2]=w}while(0);if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?C&+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0){k=c[t>>2]|0;c[d+(k*72|0)+40>>2]=x;c[d+(k*72|0)+44>>2]=-1;k=d+(x*72|0)+52|0;X=c[k>>2]|0;c[d+(X*72|0)+40>>2]=w;c[d+(X*72|0)+44>>2]=-1;c[d+(w*72|0)+48>>2]=X;c[d+(w*72|0)+52>>2]=-1;c[k>>2]=-1;k=-1}else G=116;do if((G|0)==116){G=0;k=c[t>>2]|0;c[d+(k*72|0)+40>>2]=x;m=d+(k*72|0)+44|0;if(s){c[m>>2]=w;X=d+(x*72|0)+52|0;v=c[X>>2]|0;c[d+(v*72|0)+40>>2]=w;c[d+(v*72|0)+44>>2]=-1;c[X>>2]=-1;break}else{c[m>>2]=-1;k=d+(x*72|0)+52|0;X=c[k>>2]|0;c[d+(X*72|0)+40>>2]=x;c[d+(X*72|0)+44>>2]=w;c[d+(w*72|0)+48>>2]=X;c[d+(w*72|0)+52>>2]=-1;k=c[k>>2]|0;break}}while(0);break}s=d+(x*72|0)+40|0;k=c[s>>2]|0;do if((k|0)>0?(I=d+(x*72|0)+44|0,J=c[I>>2]|0,(J|0)>0):0){r=d+(x*72|0)+60|0;k=c[r>>2]|0;if((k|0)<=0){c[d+(w*72|0)+40>>2]=J;c[d+(w*72|0)+44>>2]=-1;c[I>>2]=-1;c[d+(J*72|0)+48>>2]=w;break}if((c[d+(x*72|0)+64>>2]|0)==1){c[d+(w*72|0)+40>>2]=J;c[I>>2]=-1;c[d+(w*72|0)+44>>2]=k;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;p=w;n=J}else{c[d+(w*72|0)+44>>2]=-1;X=d+(w*72|0)+40|0;c[X>>2]=c[I>>2];n=c[s>>2]|0;c[I>>2]=n;c[s>>2]=k;c[d+(k*72|0)+48>>2]=x;p=x;k=c[X>>2]|0}c[d+(n*72|0)+48>>2]=p;c[d+(k*72|0)+48>>2]=w;c[d+(w*72|0)+60>>2]=0;c[r>>2]=0}else G=51;while(0);do if((G|0)==51){G=0;n=d+(k*72|0)+48|0;p=c[n>>2]|0;k=d+(k*72|0)+52|0;if((p|0)>0?(c[k>>2]|0)>0:0){k=c[d+(p*72|0)+4>>2]|0;if((k|0)>0?(qS(k,b,U)|0)==0:0){c[d+(w*72|0)+44>>2]=-1;c[d+(x*72|0)+44>>2]=-1;c[s>>2]=-1;c[d+((c[d+(w*72|0)+40>>2]|0)*72|0)+52>>2]=w;break}c[d+(x*72|0)+44>>2]=-1;c[d+(w*72|0)+44>>2]=-1;c[d+(w*72|0)+40>>2]=-1;c[d+((c[s>>2]|0)*72|0)+48>>2]=x;break}c[n>>2]=x;c[k>>2]=w}while(0);if(+B(+(+h[u>>3]-+h[E>>3]))<=1.0e-07?C&+B(+(+h[v>>3]-+h[D>>3]))<=1.0e-07:0){k=c[y>>2]|0;if((k|0)>0?(qS(k,b,S)|0)!=0:0){c[d+((c[t>>2]|0)*72|0)+40>>2]=x;m=d+(w*72|0)+52|0;k=w}else{c[d+((c[d+(w*72|0)+48>>2]|0)*72|0)+44>>2]=w;k=x}c[m>>2]=-1;c[d+(k*72|0)+48>>2]=-1;k=c[t>>2]|0;break}k=c[t>>2]|0;m=d+(k*72|0)+40|0;n=c[m>>2]|0;p=d+(k*72|0)+44|0;if((n|0)>0?(K=c[p>>2]|0,L=(n|0)==(x|0),(K|0)>0):0){c[d+(k*72|0)+60>>2]=L?K:n;c[d+(k*72|0)+64>>2]=L?1:2}c[m>>2]=x;c[p>>2]=w}while(0);c[A>>2]=a;c[d+(x*72|0)+4>>2]=a;if((k|0)>0)x=k;else break a}E1(135342,19,1,c[15686]|0)|0}else{g=0;f=0}while(0);wS(a,F,o,1,d,e);wS(a,g,f,2,d,e);c[b+(a*56|0)+32>>2]=1;l=W;return}function oS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(!(c[b+(a*56|0)+32>>2]|0)){f=b+(a*56|0)|0;g=b+(a*56|0)+16|0;h=b+(a*56|0)+36|0;c[h>>2]=c[d+((pS(f,g,c[h>>2]|0,b,e)|0)*72|0)+56>>2];a=b+(a*56|0)+40|0;c[a>>2]=c[d+((pS(g,f,c[a>>2]|0,b,e)|0)*72|0)+56>>2]}return}function pS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0,r=0;o=a+8|0;q=b+8|0;a:while(1){b:do switch(c[f+(d*40|0)>>2]|0){case 3:{r=3;break a}case 2:{g=+h[o>>3];i=f+(d*40|0)+8|0;j=+h[f+(d*40|0)+16>>3];k=j+1.0e-07;do if(!(g>k)){l=j+-1.0e-07;if(!(g>3]>+h[i>>3]:0)break;if(+B(+(g-j))<=1.0e-07?(m=+h[i>>3],+B(+(+h[a>>3]-m))<=1.0e-07):0){g=+h[q>>3];do if(!(g>k)){if(!(g>3]>m:0)break;d=f+(d*40|0)+32|0;break b}while(0);d=f+(d*40|0)+36|0;break b}d=f+(d*40|0)+32|0;break b}while(0);d=f+(d*40|0)+36|0;break}case 1:{g=+h[o>>3];i=c[f+(d*40|0)+4>>2]|0;if(+B(+(g-+h[e+(i*56|0)+8>>3]))<=1.0e-07?(n=+h[a>>3],+B(+(n-+h[e+(i*56|0)>>3]))<=1.0e-07):0)j=n;else r=19;do if((r|0)==19){r=0;if(+B(+(g-+h[e+(i*56|0)+24>>3]))<=1.0e-07?(p=+h[a>>3],+B(+(p-+h[e+(i*56|0)+16>>3]))<=1.0e-07):0){j=p;break}if(!(qS(i,e,a)|0)){d=f+(d*40|0)+36|0;break b}else{d=f+(d*40|0)+32|0;break b}}while(0);if(!(+B(+(g-+h[q>>3]))<=1.0e-07))if(!(qS(i,e,b)|0)){d=f+(d*40|0)+36|0;break b}else{d=f+(d*40|0)+32|0;break b}else if(+h[b>>3]>2]|0}if((r|0)==3)return c[f+(d*40|0)+24>>2]|0;else if((r|0)==31){E1(135276,35,1,c[15686]|0)|0;qa(135312,135314,349,135326)}return 0}function qS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0.0;f=b+(a*56|0)+16|0;g=+h[b+(a*56|0)+24>>3];i=b+(a*56|0)|0;e=+h[b+(a*56|0)+8>>3];do if(!(g>e+1.0e-07)){if(!(g>3]>+h[i>>3]:0){j=4;break}d=+h[c+8>>3];if(+B(+(g-d))<=1.0e-07){d=+h[c>>3]<+h[f>>3]?1.0:-1.0;break}if(!(+B(+(e-d))<=1.0e-07)){k=+h[f>>3];d=(+h[i>>3]-k)*(d-g)-(+h[c>>3]-k)*(e-g);break}else{d=+h[c>>3]<+h[i>>3]?1.0:-1.0;break}}else j=4;while(0);do if((j|0)==4){d=+h[c+8>>3];if(+B(+(g-d))<=1.0e-07){d=+h[c>>3]<+h[f>>3]?1.0:-1.0;break}if(!(+B(+(e-d))<=1.0e-07)){k=+h[i>>3];d=(+h[f>>3]-k)*(d-e)-(+h[c>>3]-k)*(g-e);break}else{d=+h[c>>3]<+h[i>>3]?1.0:-1.0;break}}while(0);return d>0.0|0}function rS(a,b,d){a=a|0;b=b|0;d=d|0;return c[b+((c[((d|0)==1?b+(a*56|0)+48|0:b+(a*56|0)+44|0)>>2]|0)*56|0)+32>>2]|0}function sS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=c[46625]|0;if((b|0)<(c[46624]|0)){c[a+(b*72|0)>>2]=-1;c[a+(b*72|0)+4>>2]=-1;c[a+(b*72|0)+68>>2]=1;c[46625]=b+1;l=e;return b|0}else{e=c[15686]|0;c[d>>2]=b;g1(e,135401,d)|0;qa(135312,135314,88,135439)}return 0}function tS(){var a=0;a=c[46626]|0;if((a|0)<(c[46623]|0)){c[46626]=a+1;return a|0}else{E1(135362,30,1,c[15686]|0)|0;qa(135312,135314,72,135393)}return 0}function uS(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(c>d+1.0e-07))if(c>3]>=+h[b>>3]&1;else a=1;return a|0}function vS(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(cd+1.0e-07)a=0;else a=+h[a>>3]<+h[b>>3]&1;else a=1;return a|0}function wS(a,b,d,e,f,g){a=a|0;b=b|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;q=f+(d*72|0)+24|0;p=(e|0)==1;a:while(1){o=f+(b*72|0)+24|0;j=f+(b*72|0)+48|0;k=f+(b*72|0)+52|0;l=f+(b*72|0)|0;m=f+(b*72|0)+4|0;n=f+(b*72|0)+56|0;if((b|0)<=0)break;while(1){if(!(uS(o,q)|0))break a;d=c[j>>2]|0;e=(d|0)>0;do if(p){if(e?(c[f+(d*72|0)+4>>2]|0)==(a|0):0)break;d=c[k>>2]|0;if((d|0)<=0){b=d;continue a}if((c[f+(d*72|0)+4>>2]|0)!=(a|0)){b=d;continue a}}else{if(e?(c[f+(d*72|0)>>2]|0)==(a|0):0)break;d=c[k>>2]|0;if((d|0)<=0){b=d;continue a}if((c[f+(d*72|0)>>2]|0)!=(a|0)){b=d;continue a}}while(0);if((c[l>>2]|0)!=(c[f+(d*72|0)>>2]|0)){b=d;continue a}if((c[m>>2]|0)!=(c[f+(d*72|0)+4>>2]|0)){b=d;continue a}r=c[f+(d*72|0)+56>>2]|0;e=c[g+(r*40|0)+28>>2]|0;h=g+(e*40|0)+32|0;i=c[n>>2]|0;if((c[h>>2]|0)==(r|0))c[h>>2]=i;else c[g+(e*40|0)+36>>2]=i;e=c[f+(d*72|0)+48>>2]|0;c[j>>2]=e;do if((e|0)>0){h=f+(e*72|0)+40|0;if((c[h>>2]|0)==(d|0)){c[h>>2]=b;break}e=f+(e*72|0)+44|0;if((c[e>>2]|0)==(d|0))c[e>>2]=b}while(0);e=c[f+(d*72|0)+52>>2]|0;c[k>>2]=e;do if((e|0)>0){h=f+(e*72|0)+40|0;if((c[h>>2]|0)==(d|0)){c[h>>2]=b;break}e=f+(e*72|0)+44|0;if((c[e>>2]|0)==(d|0))c[e>>2]=b}while(0);r=f+(d*72|0)+24|0;c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];c[f+(d*72|0)+68>>2]=2}}return}function xS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+h[b+8>>3];f=+h[d+8>>3];do if(!(e>f+1.0e-07)){if(!(+B(+(e-f))<=1.0e-07)){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}if(+h[b>>3]>+h[d>>3]+1.0e-07){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else{c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}}else{c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}while(0);return}function yS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+h[b+8>>3];f=+h[d+8>>3];do if(!(e>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}if(+h[b>>3]<+h[d>>3]){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else{c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}}else{c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}while(0);return}function zS(a){a=a|0;var b=0;b=uH(8)|0;if(b|0){c[b+4>>2]=a;c[b>>2]=0}return b|0}function AS(a,b){a=a|0;b=b|0;if(b){b=zS(b)|0;c[b>>2]=a;a=b}return a|0}function BS(a){a=a|0;var b=0;do{b=a;a=c[a>>2]|0;D_(b)}while((a|0)!=0);return}function CS(){var a=0;a=uH(1992)|0;if(a|0)c[a>>2]=DS(a)|0;return a|0}function DS(a){a=a|0;var b=0;b=JS(a)|0;c[b+4>>2]=0;a=a+1972|0;c[a>>2]=(c[a>>2]|0)+1;return b|0}function ES(a){a=a|0;FS(a,c[a>>2]|0);D_(c[a>>2]|0);D_(a);return 0}function FS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a+1980|0;h=a+1912|0;i=a+1936|0;a:do if((c[b+4>>2]|0)>0){d=0;while(1){if((d|0)==64)break a;e=b+8+(d*20|0)+16|0;f=c[e>>2]|0;if(f|0?(FS(a,f),D_(c[e>>2]|0),PS(b,d),c[g>>2]=(c[g>>2]|0)+-1,c[h>>2]|0):0)c[i>>2]=(c[i>>2]|0)+1;d=d+1|0}}else{d=0;while(1){if((d|0)==64)break a;if(c[b+8+(d*20|0)+16>>2]|0?(PS(b,d),c[g>>2]=(c[g>>2]|0)+-1,c[h>>2]|0):0)c[i>>2]=(c[i>>2]|0)+1;d=d+1|0}}while(0);return}function GS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!b)qa(135797,135447,194,135455);e=c[b+4>>2]|0;if((e|0)<=-1)qa(135467,135447,195,135455);if(!d)qa(135739,135447,196,135455);i=a+1952|0;c[i>>2]=(c[i>>2]|0)+1;a:do if((e|0)>0){i=0;e=0;while(1){if((i|0)==64)break a;f=b+8+(i*20|0)+16|0;if((c[f>>2]|0)!=0?(US(d,b+8+(i*20|0)|0)|0)!=0:0){g=GS(a,c[f>>2]|0,d)|0;if(!e)e=g;else{f=e;while(1){h=c[f>>2]|0;if(!h)break;else f=h}c[f>>2]=g}}i=i+1|0}}else{g=0;e=0;while(1){if((g|0)==64)break a;f=b+8+(g*20|0)|0;if((c[b+8+(g*20|0)+16>>2]|0)!=0?(US(d,f)|0)!=0:0)e=AS(e,f)|0;g=g+1|0}}while(0);return e|0}function HS(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+52|0;m=p+32|0;n=p+16|0;o=p;c[k>>2]=0;if(!((b|0)!=0&(e|0)!=0))qa(135653,135447,247,135481);if((f|0)>-1?(j=c[e>>2]|0,(c[j+4>>2]|0)>=(f|0)):0){g=0;while(1){if((g|0)>=2)break;if((c[b+(g<<2)>>2]|0)>(c[b+(g+2<<2)>>2]|0)){h=8;break}else g=g+1|0}if((h|0)==8)qa(135528,135447,250,135481);i=a+1912|0;g=a+1908|0;h=c[g>>2]|0;if(c[i>>2]|0){q=h|0?a+1924|0:a+1916|0;c[q>>2]=(c[q>>2]|0)+1}if(!h){q=a+1964|0;c[q>>2]=(c[q>>2]|0)+1}if(!(IS(a,b,d,j,k,f)|0))g=0;else{if(c[i>>2]|0){q=c[g>>2]|0?a+1948|0:a+1944|0;c[q>>2]=(c[q>>2]|0)+1}g=JS(a)|0;q=a+1976|0;c[q>>2]=(c[q>>2]|0)+1;q=c[e>>2]|0;c[g+4>>2]=(c[q+4>>2]|0)+1;MS(n,q);c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];q=m+16|0;c[q>>2]=c[e>>2];OS(a,m,g,0)|0;MS(o,c[k>>2]|0);c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[q>>2]=c[k>>2];OS(a,m,g,0)|0;c[e>>2]=g;g=a+1980|0;c[g>>2]=(c[g>>2]|0)+2;g=1}l=p;return g|0}qa(135493,135447,248,135481);return 0}function IS(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;m=q+52|0;n=q+48|0;o=q+32|0;p=q+16|0;k=q;c[n>>2]=0;if(!((b|0)!=0&(e|0)!=0&(f|0)!=0))qa(135571,135447,311,135585);if((g|0)>-1?(i=e+4|0,h=c[i>>2]|0,(h|0)>=(g|0)):0){if(c[a+1912>>2]|0){h=c[a+1908>>2]|0?a+1948|0:a+1944|0;c[h>>2]=(c[h>>2]|0)+1;h=c[i>>2]|0}do if((h|0)>(g|0)){i=NS(b,e)|0;h=e+8+(i*20|0)+16|0;i=e+8+(i*20|0)|0;if(!(IS(a,b,d,c[h>>2]|0,n,g)|0)){TS(o,b,i);c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];j=0;break}else{MS(p,c[h>>2]|0);c[i>>2]=c[p>>2];c[i+4>>2]=c[p+4>>2];c[i+8>>2]=c[p+8>>2];c[i+12>>2]=c[p+12>>2];j=c[n>>2]|0;c[m+16>>2]=j;MS(k,j);c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];j=a+1980|0;c[j>>2]=(c[j>>2]|0)+1;j=OS(a,m,e,f)|0;break}}else if((h|0)==(g|0)){c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];c[m+16>>2]=d;j=a+1980|0;c[j>>2]=(c[j>>2]|0)+1;j=OS(a,m,e,f)|0;break}else qa(135630,135447,341,135585);while(0);l=q;return j|0}qa(135598,135447,312,135585);return 0}function JS(a){a=a|0;a=a+1968|0;c[a>>2]=(c[a>>2]|0)+1;a=C_(1288)|0;KS(a);return a|0}function KS(a){a=a|0;var b=0;c[a>>2]=0;c[a+4>>2]=-1;b=0;while(1){if((b|0)==64)break;LS(a+8+(b*20|0)|0);b=b+1|0}return}function LS(a){a=a|0;QS(a);c[a+16>>2]=0;return}function MS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;g=i+16|0;h=i;if(!b)qa(135797,135636,99,135643);QS(g);d=1;f=0;while(1){if((f|0)==64)break;do if(c[b+8+(f*20|0)+16>>2]|0){e=b+8+(f*20|0)|0;if(!d){TS(h,g,e);c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];d=0;break}else{c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];d=0;break}}while(0);f=f+1|0}c[a>>2]=c[g>>2];c[a+4>>2]=c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];l=i;return}function NS(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;k=l;l=l+32|0;i=k+16|0;j=k;if(!((a|0)!=0&(b|0)!=0))qa(135653,135636,125,135660);d=0;e=0;f=0;g=1;h=0;while(1){if((h|0)==64)break;if(c[b+8+(h*20|0)+16>>2]|0){n=b+8+(h*20|0)|0;p=SS(n)|0;TS(j,a,n);c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];n=(SS(i)|0)-p|0;m=(g|0)!=0|(n|0)<(f|0);o=m|(p|0)<(e|0)&(n|0)==(f|0);d=o?h:d;e=o?p:e;f=o?n:f;g=m?0:g}h=h+1|0}l=k;return d|0}function OS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(!b)qa(135819,135636,167,135671);if(!d)qa(135797,135636,168,135671);do if((c[d>>2]|0)<64){a=0;while(1){if((a|0)>=64){e=10;break}if(!(c[d+8+(a*20|0)+16>>2]|0)){e=8;break}a=a+1|0}if((e|0)==8){f=d+8+(a*20|0)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];f=0;g=d;break}else if((e|0)==10)qa(135681,135636,178,135671)}else{if(c[a+1912>>2]|0){h=c[a+1908>>2]|0?a+1948|0:a+1944|0;c[h>>2]=(c[h>>2]|0)+1}if(!e)qa(135694,135636,187,135671);else{VS(a,d,b,e);f=1;g=(c[d+4>>2]|0)==0?a+1972|0:a+1976|0;break}}while(0);c[g>>2]=(c[g>>2]|0)+1;return f|0}function PS(a,b){a=a|0;b=b|0;if(!((a|0)!=0&b>>>0<64))qa(135698,135636,201,135726);if(!(c[a+8+(b*20|0)+16>>2]|0))qa(136220,135636,202,135726);else{LS(a+8+(b*20|0)|0);c[a>>2]=(c[a>>2]|0)+-1;return}}function QS(a){a=a|0;var b=0;b=0;while(1){if((b|0)==4)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function RS(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;c[d>>2]=1;c[d+8>>2]=-1;b=1;while(1){if((b|0)==2)break;c[d+(b+2<<2)>>2]=0;c[d+(b<<2)>>2]=0;b=b+1|0}c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=e;return}function SS(a){a=a|0;var b=0,d=0,e=0;if(!a)qa(135739,135741,128,135753);a:do if((c[a>>2]|0)>(c[a+8>>2]|0))b=0;else{b=1;d=0;while(1){if((d|0)==2)break a;e=O(c[a+(d+2<<2)>>2]|0,b)|0;b=e-(c[a+(d<<2)>>2]|0)|0;d=d+1|0}}while(0);return b|0}function TS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=l;l=l+16|0;f=g;if(!((b|0)!=0&(d|0)!=0))qa(135762,135741,195,135770);do if((c[b>>2]|0)>(c[b+8>>2]|0)){c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2]}else{if((c[d>>2]|0)>(c[d+8>>2]|0)){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else e=0;while(1){if((e|0)==2)break;j=c[b+(e<<2)>>2]|0;h=c[d+(e<<2)>>2]|0;c[f+(e<<2)>>2]=(j|0)<(h|0)?j:h;h=e+2|0;j=c[b+(h<<2)>>2]|0;i=c[d+(h<<2)>>2]|0;c[f+(h<<2)>>2]=(j|0)>(i|0)?j:i;e=e+1|0}c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2]}while(0);l=g;return}function US(a,b){a=a|0;b=b|0;var d=0,e=0;if((a|0)!=0&(b|0)!=0)d=0;else qa(135782,135741,216,135789);while(1){if((d|0)>=2){d=1;break}e=d+2|0;if((c[a+(d<<2)>>2]|0)>(c[b+(e<<2)>>2]|0)){d=0;break}if((c[b+(d<<2)>>2]|0)>(c[a+(e<<2)>>2]|0)){d=0;break}else d=d+1|0}return d|0}function VS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0;if(!b)qa(135797,135799,40,135809);if(!d)qa(135819,135799,41,135809);j=a+1912|0;if(c[j>>2]|0){i=c[a+1908>>2]|0?a+1932|0:a+1928|0;c[i>>2]=(c[i>>2]|0)+1}h=b+4|0;i=c[h>>2]|0;WS(a,b,d);d=a+1324|0;XS(a);f=SS(a+1852|0)|0;f=(SS(a+1868|0)|0)+f|0;if(c[j>>2]|0?(f|0)!=0&(c[a+1908>>2]|0)==0:0){j=a+1960|0;g[j>>2]=+((c[a+1320>>2]|0)>>>0)/+(f|0)+ +g[j>>2]}j=JS(a)|0;c[e>>2]=j;c[h>>2]=i;c[j+4>>2]=i;YS(a,b,j,d);if(((c[c[e>>2]>>2]|0)+(c[b>>2]|0)|0)==65)return;else qa(135821,135799,86,135809)}function WS(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;g=h;if(!b)qa(135797,135799,106,136208);if(!d)qa(135819,135799,107,136208);else e=0;while(1){if((e|0)>=64)break;if(!(c[b+8+(e*20|0)+16>>2]|0)){f=7;break}j=b+8+(e*20|0)|0;i=a+4+(e*20|0)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[i+16>>2]=c[j+16>>2];e=e+1|0}if((f|0)==7)qa(136220,135799,111,136208);e=a+4|0;j=a+1284|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[j+16>>2]=c[d+16>>2];d=a+1304|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];e=1;while(1){if((e|0)==65)break;TS(g,d,a+4+(e*20|0)|0);c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];e=e+1|0}c[a+1320>>2]=SS(d)|0;KS(b);l=h;return}function XS(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+48|0;i=u+32|0;k=u+16|0;m=u;ZS(a);_S(a);q=a+1844|0;s=a+1848|0;t=a+1892|0;n=a+1852|0;o=a+1884|0;p=a+1868|0;j=a+1888|0;f=0;e=0;while(1){d=c[q>>2]|0;b=c[s>>2]|0;if((b+d|0)>=65)break;h=65-(c[t>>2]|0)|0;if((d|0)<(h|0)&(b|0)<(h|0)){g=-1;h=0}else{r=12;break}while(1){if((h|0)==65)break;if(!(c[a+1584+(h<<2)>>2]|0)){v=a+4+(h*20|0)|0;TS(k,v,n);c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];b=SS(i)|0;d=c[o>>2]|0;TS(m,v,p);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];v=SS(i)|0;b=v-(c[j>>2]|0)+(d-b)|0;d=(b|0)>-1;b=d?b:0-b|0;d=(d^1)&1;if((b|0)<=(g|0))if((b|0)==(g|0)){v=(c[a+1844+(d<<2)>>2]|0)<(c[a+1844+(f<<2)>>2]|0);b=g;d=v?d:f;e=v?h:e}else{b=g;d=f}else e=h}else{b=g;d=f}g=b;h=h+1|0;f=d}$S(a,e,f)}if((r|0)==12){b=(d|0)>=(65-(c[t>>2]|0)|0)&1;d=0;while(1){if((d|0)==65)break;if(!(c[a+1584+(d<<2)>>2]|0))$S(a,d,b);d=d+1|0}d=c[q>>2]|0;b=c[s>>2]|0}if((b+d|0)!=65)qa(135964,135799,210,136050);v=c[t>>2]|0;if((d|0)<(v|0)|(b|0)<(v|0))qa(136061,135799,212,136050);else{l=u;return}}function YS(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if(!b)qa(135797,135799,297,135861);if(!d)qa(135871,135799,298,135861);if(!e)qa(135873,135799,299,135861);else f=0;while(1){if((f|0)>=65){e=14;break}e=c[a+1324+(f<<2)>>2]|0;if(e>>>0>=2){e=9;break}switch(e|0){case 0:{OS(a,a+4+(f*20|0)|0,b,0)|0;break}case 1:{OS(a,a+4+(f*20|0)|0,d,0)|0;break}default:{}}f=f+1|0}if((e|0)==9)qa(135875,135799,303,135861);else if((e|0)==14)return}function ZS(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;e=d;c[a+1848>>2]=0;c[a+1844>>2]=0;b=a+1852|0;f=a+1868|0;RS(e);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[a+1888>>2]=0;c[a+1884>>2]=0;b=0;while(1){if((b|0)==65)break;c[a+1584+(b<<2)>>2]=0;c[a+1324+(b<<2)>>2]=-1;b=b+1|0}l=d;return}function _S(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+304|0;k=o+32|0;m=o+16|0;n=o;b=0;while(1){if((b|0)==65)break;c[k+(b<<2)>>2]=SS(a+4+(b*20|0)|0)|0;b=b+1|0}b=0;d=0;e=0;g=0;a:while(1){if((g|0)==64)break;i=g+1|0;j=a+4+(g*20|0)|0;h=k+(g<<2)|0;f=i;while(1){if((f|0)==65){g=i;continue a}TS(n,j,a+4+(f*20|0)|0);c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];p=SS(m)|0;p=p-(c[h>>2]|0)-(c[k+(f<<2)>>2]|0)|0;q=p>>>0>e>>>0;r=q?f:b;f=f+1|0;b=r;d=q?g:d;e=q?p:e}}$S(a,d,0);$S(a,b,1);l=o;return}function $S(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;e=a+1584+(b<<2)|0;if(c[e>>2]|0)qa(136164,135799,257,136199);c[a+1324+(b<<2)>>2]=d;c[e>>2]=1;g=a+1844+(d<<2)|0;f=a+1852+(d<<4)|0;e=a+4+(b*20|0)|0;if(!(c[g>>2]|0)){c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2]}else{TS(h,e,f);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2]}c[a+1884+(d<<2)>>2]=SS(f)|0;c[g>>2]=(c[g>>2]|0)+1;l=i;return}function aT(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+1200|0;r=t+800|0;g=t;c[46627]=0;c[46628]=-2;f=r;i=200;n=g;p=0;q=0;o=r;a:while(1){b[o>>1]=p;if((f+(i<<1)+-2|0)>>>0>o>>>0)k=i;else{m=o-f>>1;e=m+1|0;if(i>>>0>9999){s=95;break}k=i<<1;k=k>>>0<1e4?k:1e4;h=C_(k*6|3)|0;if(h){F3(h|0,f|0,e<<1|0)|0;i=h+(k>>>1<<2)|0;F3(i|0,n|0,e<<2|0)|0;if((f|0)==(r|0)){e=0;f=h}else{D_(f);e=0;f=h}}else{e=4;i=n}j=(e|0)==0;h=f+(m<<1)|0;switch((j?((f+(k<<1)+-2|0)>>>0>h>>>0?0:9):e)&15){case 9:{e=1;s=96;break a}case 4:{s=95;break a}case 0:{g=j?i+(m<<2)|0:g;n=i;o=j?h:o;break}default:{e=0;break a}}}if((p|0)==31){e=0;s=96;break}e=b[65430+(p<<1)>>1]|0;j=e<<16>>16;do if(e<<16>>16!=-82){h=c[46628]|0;if((h|0)==-2){h=pU()|0;c[46628]=h}if((h|0)>=1)if(h>>>0<296)i=d[136239+h>>0]|0;else i=2;else{c[46628]=0;i=0}h=i+j|0;if(h>>>0<=271?(i|0)==(a[136535+h>>0]|0):0){p=a[136807+h>>0]|0;e=p<<24>>24;if(p<<24>>24<1){h=0-e|0;s=23;break}else{c[46628]=-2;g=g+4|0;c[g>>2]=c[46629];j=(q|0)==0?0:q+-1|0;h=o;break}}else s=22}else s=22;while(0);if((s|0)==22){s=0;p=a[137079+p>>0]|0;h=p&255;if(!(p<<24>>24)){h=c[46628]|0;b:do switch(q|0){case 0:{c[46627]=(c[46627]|0)+1;vT(140679);h=o;break}case 3:if((h|0)<1)if(!h){e=1;s=96;break a}else{h=o;break b}else{c[46628]=-2;h=o;break b}default:h=o}while(0);while(1){if(e<<16>>16==8)break;if((h|0)==(f|0)){e=1;s=96;break a}e=h+-2|0;g=g+-4|0;h=e;e=b[65430+(b[e>>1]<<1)>>1]|0}g=g+4|0;c[g>>2]=c[46629];e=1;j=3}else s=23}do if((s|0)==23){s=0;j=d[137195+h>>0]|0;e=c[g+(1-j<<2)>>2]|0;do switch(h|0){case 4:{s=26;break a}case 2:{c[46630]=bT(c[g+-4>>2]|0,2)|0;break}case 3:{c[46630]=bT(c[g+-4>>2]|0,1)|0;break}case 5:{e=dT()|0;break}case 8:{eT(c[46631]|0);break}case 9:{fT(c[g>>2]|0);break}case 18:{gT(c[g>>2]|0);break}case 19:{hT();break}case 20:{gT(c[g>>2]|0);break}case 21:{hT();break}case 22:{gT(c[g>>2]|0);break}case 23:{hT();break}case 24:{gT(c[g>>2]|0);break}case 25:{hT();break}case 26:{gT(c[g>>2]|0);break}case 27:{hT();break}case 28:{gT(c[g>>2]|0);break}case 29:{hT();break}case 30:{gT(c[g>>2]|0);break}case 31:{hT();break}case 32:{gT(c[g>>2]|0);break}case 33:{hT();break}case 34:{e=c[g+-4>>2]|0;break}case 35:{e=c[g>>2]|0;break}case 38:{e=c[46631]|0;i=c[e+4>>2]|0;if(i>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;i=c[46631]|0;e=i;i=c[i+4>>2]|0}a[i>>0]=0;p=c[e>>2]|0;c[e+4>>2]=p;if(iT(p)|0){s=51;break a}c[(c[g>>2]|0)+80>>2]=c[46632];e=Cw(55928,c[4554]|0)|0;c[(c[g>>2]|0)+84>>2]=e;c[46632]=c[g>>2];c[(c[g>>2]|0)+108>>2]=c[c[46633]>>2];e=c[g>>2]|0;break}case 39:{e=c[46631]|0;i=c[e+4>>2]|0;if(i>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;i=c[46631]|0;e=i;i=c[i+4>>2]|0}a[i>>0]=0;p=c[e>>2]|0;c[e+4>>2]=p;if(iT(p)|0){s=56;break a}e=c[46632]|0;c[46632]=c[e+80>>2];break}case 40:{e=c[g>>2]|0;break}case 41:{e=c[g+-4>>2]|0;break}case 42:{e=c[g+-4>>2]|0;break}case 43:{e=c[g+-4>>2]|0;break}case 44:{e=c[g+-4>>2]|0;break}case 45:{e=c[g+-4>>2]|0;break}case 48:{e=c[g>>2]|0;break}case 49:{e=c[g>>2]|0;break}case 50:{a[(c[g+-8>>2]|0)+12>>0]=1;e=c[g>>2]|0;break}case 51:{jT();break}case 52:{e=kT()|0;break}case 53:{e=c[g>>2]|0;break}case 54:{e=c[g>>2]|0;break}case 55:{e=(c[g+-8>>2]|0)+100|0;a[e>>0]=a[e>>0]|1;e=c[g>>2]|0;break}case 56:{lT(c[g+-4>>2]|0,c[g>>2]|0,1);break}case 57:{e=c[g+-12>>2]|0;break}case 58:{lT(c[g+-4>>2]|0,c[g>>2]|0,2);break}case 59:{e=c[g+-12>>2]|0;break}case 60:{lT(c[g+-4>>2]|0,c[g>>2]|0,3);break}case 61:{e=c[g+-12>>2]|0;break}case 62:{lT(c[g>>2]|0,dT()|0,2);break}case 63:{e=c[g+-8>>2]|0;break}case 64:{e=c[g+-4>>2]|0;break}case 65:{e=c[g>>2]|0;break}default:{}}while(0);i=0-j|0;p=g+(i<<2)|0;i=o+(i<<1)|0;g=p+4|0;c[p+4>>2]=e;e=(d[137367+h>>0]|0)+-41|0;p=b[i>>1]|0;h=p+(b[65662+(e<<1)>>1]|0)|0;if(h>>>0<272?(a[136535+h>>0]|0)==(p|0):0){e=a[136807+h>>0]|0;j=q;h=i;break}e=a[137437+e>>0]|0;j=q;h=i}while(0);i=k;p=e;q=j;o=h+2|0}if((s|0)==26){cT();e=1;s=96}else if((s|0)==51){vT(137265);cT();e=1;s=96}else if((s|0)==56){vT(137316);cT();e=1;s=96}else if((s|0)==95){vT(137476);e=2;s=96}if((s|0)==96)if((f|0)!=(r|0))D_(f);l=t;return e|0}function bT(b,d){b=b|0;d=d|0;var e=0;e=uH(8)|0;a[e+4>>0]=d;c[e>>2]=b;return e|0}function cT(){var a=0,b=0;a=c[46632]|0;b=c[46630]|0;if(b|0){XQ(b,1);c[46630]=0}c[13995]=67;while(1){if(!a)break;b=c[a+80>>2]|0;pT(a);a=b}c[13995]=56;c[14004]=68;b=c[46635]|0;nb[c[b>>2]&63](b,0,64)|0;c[14004]=56;c[14013]=69;b=c[46636]|0;nb[c[b>>2]&63](b,0,64)|0;c[14013]=56;sT();return}function dT(){var a=0,d=0,e=0,f=0,g=0,h=0;e=c[46636]|0;f=uH(40)|0;if(Ew(c[46635]|0)|0)fT(0);a=Ew(e)|0;b[f+4>>1]=a;a:do if(!a)a=e;else{c[f>>2]=uH(a*24|0)|0;a=0;d=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!d){a=e;break a}g=(c[f>>2]|0)+(a*24|0)|0;h=d+8|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[g+16>>2]=c[h+16>>2];c[g+20>>2]=c[h+20>>2];a=a+1|0;d=nb[c[e>>2]&63](e,d,8)|0}}while(0);nb[c[a>>2]&63](e,0,64)|0;return f|0}function eT(b){b=b|0;var d=0,e=0,f=0;e=uH(64)|0;f=b+4|0;d=c[f>>2]|0;if(d>>>0>=(c[b+8>>2]|0)>>>0){Uw(b,1)|0;d=c[f>>2]|0}a[d>>0]=0;b=c[b>>2]|0;c[f>>2]=b;c[e+8>>2]=n1(b)|0;c[e+12>>2]=c[c[46633]>>2];f=c[46635]|0;nb[c[f>>2]&63](f,e,1)|0;return}function fT(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=uH(32)|0;j=c[46635]|0;e=Ew(j)|0;k=i+8|0;a[i+14>>0]=d;a:do if(!e){c[k>>2]=uH(56)|0;b[i+12>>1]=1;h=n1(191979)|0;k=c[k>>2]|0;c[k>>2]=h;c[k+4>>2]=c[c[46633]>>2]}else{b[i+12>>1]=e;c[k>>2]=uH(e*56|0)|0;d=0;e=Aw(j)|0;while(1){if(!e)break a;f=(c[k>>2]|0)+(d*56|0)|0;g=e+8|0;h=f+56|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));d=d+1|0;e=c[e>>2]|0}}while(0);nb[c[j>>2]&63](j,0,64)|0;k=c[46636]|0;nb[c[k>>2]&63](k,i,1)|0;return}function gT(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+32|0;g=j;i=uH(8)|0;f=c[c[46633]>>2]|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];c[g+20>>2]=c[a+20>>2];c[g+24>>2]=c[a+24>>2];c[g+28>>2]=c[a+28>>2];if(f|0){a=g+4|0;if((c[a>>2]|0)==0?(b=c[f+4>>2]|0,b|0):0)c[a>>2]=b;a=g+16|0;if(+h[a>>3]<0.0?(d=+h[f+16>>3],d>=0.0):0)h[a>>3]=d;if((c[g>>2]|0)==0?(e=c[f>>2]|0,e|0):0)c[g>>2]=e;a=c[f+24>>2]&127;if(a|0){f=g+24|0;e=c[f>>2]|0;c[f>>2]=e&127|a|e&-128}}f=c[(c[46634]|0)+144>>2]|0;c[i>>2]=nb[c[f>>2]&63](f,g,1)|0;c[i+4>>2]=c[46633];c[46633]=i;l=j;return}function hT(){var a=0,b=0;b=c[46633]|0;a=c[b+4>>2]|0;D_(b);c[46633]=a;return}function iT(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24)){b=0;break}if(c<<24>>24==32)b=b+1|0;else{b=1;break}}return b|0}function jT(){var b=0,d=0,e=0;e=Cw(55964,c[4554]|0)|0;b=c[46632]|0;d=uH(16)|0;c[d+8>>2]=e;if(a[b+112>>0]&2)a[d+12>>0]=1;e=c[b+84>>2]|0;nb[c[e>>2]&63](e,d,1)|0;return}function kT(){var a=0;a=c[(c[46632]|0)+84>>2]|0;return nb[c[a>>2]&63](a,0,256)|0}function lT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=uH(16)|0;f=c[46632]|0;h=c[f+84>>2]|0;h=c[(nb[c[h>>2]&63](h,0,256)|0)+8>>2]|0;c[g+8>>2]=b;nb[c[h>>2]&63](h,g,1)|0;a[b+92>>0]=e;if(a[f+112>>0]&1)a[b+100>>0]=1;c[b+88>>2]=d;return}function mT(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function nT(a,b,d){a=a|0;b=b|0;d=d|0;yw(c[b+8>>2]|0)|0;D_(b);return}function oT(a,b,d){a=a|0;b=b|0;d=d|0;tT(c[b+8>>2]|0);D_(b);return}function pT(a){a=a|0;yw(c[a+84>>2]|0)|0;UQ(a);D_(a);return}function qT(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b+8>>2]|0);D_(b);return}function rT(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d+12|0;a=b[g>>1]|0;if(a<<16>>16){h=d+8|0;e=0;f=c[h>>2]|0;while(1){if((e|0)>=(a<<16>>16|0))break;D_(c[f>>2]|0);e=e+1|0;f=f+56|0;a=b[g>>1]|0}D_(c[h>>2]|0)}D_(d);return}function sT(){var a=0,b=0;a=c[46633]|0;while(1){b=c[a+4>>2]|0;if(!b)break;D_(a);a=b}return}function tT(b){b=b|0;var d=0;d=b+88|0;switch(a[b+92>>0]|0){case 1:{pT(c[d>>2]|0);break}case 2:{VQ(c[d>>2]|0);break}default:{}}UQ(b);D_(b);return}function uT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+160|0;e=f+8|0;g=f;c[g>>2]=0;c[g+4>>2]=0;c[46633]=g;c[46632]=0;c[46630]=0;c[46634]=c[(c[(c[d+52>>2]|0)+16>>2]|0)+144>>2];c[46635]=Cw(56e3,c[4554]|0)|0;c[46636]=Cw(56036,c[4554]|0)|0;Tw(e,128,f+24|0);c[46631]=e;if(!(yT(a,e,d)|0)){aT()|0;c[b>>2]=oU()|0;a=c[46630]|0}else{c[b>>2]=2;a=0}yw(c[46635]|0)|0;yw(c[46636]|0)|0;c[46635]=0;c[46636]=0;c[46633]=0;Xw(e);l=f;return a|0}function vT(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;if(!(a[186581]|0)){a[186581]=1;f=wT()|0;c[d>>2]=b;c[d+4>>2]=f;Pw(1,137493,d)|0;xT()}l=e;return}function wT(){return dX(c[46637]|0)|0}function xT(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=f;b=c[46640]|0;c[b+4>>2]=c[b>>2];d=c[46649]|0;if((d|0)>0){Vw(b,c[46647]|0,d)|0;b=c[46640]|0}Vw(b,c[46646]|0,c[46648]|0)|0;d=c[46640]|0;b=c[d+4>>2]|0;if(b>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;b=c[46640]|0;d=b;b=c[b+4>>2]|0}c[d+4>>2]=b+1;a[b>>0]=0;b=c[46640]|0;d=c[b>>2]|0;c[b+4>>2]=d;c[e>>2]=d;Pw(3,137509,e)|0;l=f;return}function yT(b,e,f){b=b|0;e=e|0;f=f|0;c[46640]=e;Tw(186564,128,0);c[46638]=b;a[186583]=0;a[186580]=0;a[186581]=0;c[46648]=0;c[46649]=0;a[186582]=1;f=f+52|0;e=DV(hH(d[(c[(c[f>>2]|0)+16>>2]|0)+115>>0]|0)|0)|0;c[46637]=e;SW(e,c[(c[(c[f>>2]|0)+16>>2]|0)+144>>2]|0);TW(c[46637]|0,70,27);UW(c[46637]|0,71);return 0}function zT(b,d,e){b=b|0;d=d|0;e=e|0;do if(!(O$(d,137521)|0)){c[46629]=DT(e)|0;a[186582]=0;c[46639]=286}else{if(O$(d,137527)|0?O$(d,137530)|0:0){if(!(O$(d,137533)|0)){a[186582]=1;c[46629]=ET(e)|0;c[46639]=287;break}if(!(O$(d,137541)|0)){c[46629]=FT(b,e,0)|0;c[46639]=288;break}if(!(O$(d,137546)|0)){c[46629]=FT(b,0,1)|0;c[46639]=290;break}if(!(O$(d,137562)|0)){c[46629]=FT(b,0,32)|0;c[46639]=295;break}if(!(O$(d,137548)|0)){c[46629]=FT(b,0,4)|0;c[46639]=291;break}if(!(O$(d,137550)|0)){c[46629]=FT(b,0,64)|0;c[46639]=292;break}if(!(O$(d,137552)|0)){c[46629]=FT(b,0,2)|0;c[46639]=289;break}if(!(O$(d,137554)|0)){c[46629]=FT(b,0,8)|0;c[46639]=293;break}if(!(O$(d,137558)|0)){c[46629]=FT(b,0,16)|0;c[46639]=294;break}if(!(O$(d,137564)|0)){GT(e);c[46639]=283;break}if(!(O$(d,137567)|0)){c[46639]=277;break}if(!(O$(d,137570)|0)){c[46639]=280;break}if(!(O$(d,137573)|0)){c[46629]=HT(e)|0;c[46639]=285;break}if(!(O$(d,137536)|0)){c[46639]=262;break}else{CT(d);break}}a[186582]=0;c[46639]=260}while(0);return}function AT(b,d){b=b|0;d=d|0;do if(!(O$(d,137521)|0)){c[46639]=264;a[186582]=1}else{if(O$(d,137527)|0?O$(d,137530)|0:0){if(!(O$(d,137533)|0)){c[46639]=265;a[186582]=0;break}if(!(O$(d,137536)|0)){c[46639]=263;break}if(!(O$(d,137541)|0)){c[46639]=266;break}if(!(O$(d,137546)|0)){c[46639]=270;break}if(!(O$(d,137548)|0)){c[46639]=271;break}if(!(O$(d,137550)|0)){c[46639]=272;break}if(!(O$(d,137552)|0)){c[46639]=269;break}if(!(O$(d,137554)|0)){c[46639]=273;break}if(!(O$(d,137558)|0)){c[46639]=274;break}if(!(O$(d,137562)|0)){c[46639]=275;break}if(!(O$(d,137564)|0)){c[46639]=(c[46639]|0)==283?282:258;break}if(!(O$(d,137567)|0)){c[46639]=(c[46639]|0)==277?276:278;break}if(!(O$(d,137570)|0)){c[46639]=(c[46639]|0)==280?279:281;break}if(!(O$(d,137573)|0)){c[46639]=(c[46639]|0)==285?284:259;break}else{CT(d);break}}c[46639]=261}while(0);return}function BT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(a[186582]|0){b=0;while(1){if(!e)break;h=d+1|0;g=a[d>>0]|0;if((g&255)>31){d=c[46640]|0;f=c[d+4>>2]|0;if(f>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;f=c[46640]|0;d=f;f=c[f+4>>2]|0}c[d+4>>2]=f+1;a[f>>0]=g;b=b+1|0}d=h;e=e+-1|0}if(b|0)c[46639]=267}return}function CT(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;c[46639]=268;a[186581]=1;f=wT()|0;c[e>>2]=b;c[e+4>>2]=f;Pw(1,137577,e)|0;l=d;return}function DT(b){b=b|0;var d=0;d=uH(120)|0;c[d+100>>2]=-1;a[d+88>>0]=-1;IT(d,56296,22,b,138529);return d|0}function ET(a){a=a|0;var c=0;c=uH(104)|0;b[c+80>>1]=1;b[c+82>>1]=1;IT(c,56120,22,a,137883);return c|0}function FT(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+32|0;e=f;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;h[e+16>>3]=-1.0;c[e+24>>2]=d&127;if(b|0)IT(e,56096,3,b,137734);d=c[a+144>>2]|0;e=nb[c[d>>2]&63](d,e,1)|0;l=f;return e|0}function GT(a){a=a|0;c[46629]=0;IT(186516,56088,1,a,137670);return}function HT(a){a=a|0;var b=0;b=uH(40)|0;IT(b,56072,2,a,137616);return b|0}function IT(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;m=o+8|0;while(1){k=c[g>>2]|0;if(!k)break;i=c[g+4>>2]|0;c[m>>2]=k;j=e2(m,e,f,8,102)|0;if(!j){c[n>>2]=k;c[n+4>>2]=h;Pw(0,137622,n)|0;i=1}else{i=lb[c[j+4>>2]&127](b,i)|0;i=(i|(d[186580]|0))&255}a[186580]=i;g=g+8|0}l=o;return}function JT(a,b){a=a|0;b=b|0;return O$(c[a>>2]|0,c[b>>2]|0)|0}function KT(a,b){a=a|0;b=b|0;c[a+36>>2]=n1(b)|0;return 0}function LT(a,b){a=a|0;b=b|0;c[a+32>>2]=n1(b)|0;return 0}function MT(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;f=(I0(a[d>>0]|0)|0)<<24>>24;switch(f|0){case 82:{e=d+1|0;if(!(O$(e,137681)|0)){c[b>>2]=114;e=0}else h=5;break}case 76:{h=6;break}default:{e=d+1|0;h=5}}do if((h|0)==5)if(!(O$(e,137686)|0))h=6;else{if((f|0)!=67?(O$(e,137690)|0)==0:0){c[g>>2]=d;Pw(0,137696,g)|0;e=1;break}c[b>>2]=110;e=0}while(0);if((h|0)==6){c[b>>2]=108;e=0}l=i;return e|0}function NT(a,b){a=a|0;b=b|0;c[a+4>>2]=b;return 0}function OT(a,b){a=a|0;b=b|0;c[a>>2]=b;return 0}function PT(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(QT(b,137763,0,255,d)|0)){h[a+16>>3]=+(c[d>>2]|0);a=0}else a=1;l=e;return a|0}function QT(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+48|0;j=k+24|0;i=k+8|0;h=k;m=k+36|0;g=i1(a,m,10)|0;do if((c[m>>2]|0)!=(a|0)){if((g|0)>(e|0)){c[i>>2]=b;c[i+4>>2]=a;c[i+8>>2]=e;Pw(0,137805,i)|0;a=1;break}if((g|0)<(d|0)){c[j>>2]=b;c[j+4>>2]=a;c[j+8>>2]=d;Pw(0,137844,j)|0;a=1;break}else{c[f>>2]=g;a=0;break}}else{c[h>>2]=b;c[h+4>>2]=a;Pw(0,137774,h)|0;a=1}while(0);l=k;return a|0}function RT(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(O$(e+1|0,137686)|0)){d=d+36|0;b[d>>1]=b[d>>1]|4;d=0}else g=9;break}case 82:{if(!(O$(e+1|0,137681)|0)){d=d+36|0;b[d>>1]=b[d>>1]|2;d=0}else g=9;break}case 84:{if(!(O$(e+1|0,138481)|0)){d=d+36|0;b[d>>1]=b[d>>1]|6;d=0}else g=9;break}case 67:{if(!(O$(e+1|0,137690)|0))d=0;else g=9;break}default:g=9}if((g|0)==9){c[f>>2]=e;Pw(0,138485,f)|0;d=1}l=h;return d|0}function ST(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(O$(e+1|0,137686)|0)){d=d+36|0;b[d>>1]=b[d>>1]|512;d=0}else g=7;break}case 82:{if(!(O$(e+1|0,137681)|0)){d=d+36|0;b[d>>1]=b[d>>1]|256;d=0}else g=7;break}case 67:{if(!(O$(e+1|0,137690)|0))d=0;else g=7;break}default:g=7}if((g|0)==7){c[f>>2]=e;Pw(0,138436,f)|0;d=1}l=h;return d|0}function TT(a,b){a=a|0;b=b|0;c[a+20>>2]=n1(b)|0;return 0}function UT(d,e){d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(!(QT(e,138429,0,255,f)|0)){a[d+33>>0]=c[f>>2];d=d+36|0;b[d>>1]=b[d>>1]|32;d=0}else d=1;l=g;return d|0}function VT(d,e){d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(!(QT(e,138417,0,255,f)|0)){a[d+34>>0]=c[f>>2];d=d+36|0;b[d>>1]=b[d>>1]|64;d=0}else d=1;l=g;return d|0}function WT(d,e){d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(!(QT(e,138405,-128,127,f)|0)){a[d+32>>0]=c[f>>2];d=d+36|0;b[d>>1]=b[d>>1]|128;d=0}else d=1;l=g;return d|0}function XT(a,b){a=a|0;b=b|0;c[a+24>>2]=n1(b)|0;return 0}function YT(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;e=g+4|0;do if(!(QT(d,138360,0,65535,e)|0)){d=c[e>>2]|0;if(!d){Pw(0,138368,f)|0;d=1;break}else{b[a+80>>1]=d;d=0;break}}else d=1;while(0);l=g;return d|0}function ZT(a,e){a=a|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(d[e>>0]|0)|0)<<24>>24|0){case 84:{if(!(O$(e+1|0,138309)|0)){a=a+36|0;b[a>>1]=b[a>>1]|1;a=0}else g=5;break}case 70:{if(!(O$(e+1|0,138313)|0))a=0;else g=5;break}default:g=5}if((g|0)==5){c[f>>2]=e;Pw(0,138318,f)|0;a=1}l=h;return a|0}function _T(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(QT(b,138295,0,360,d)|0)){c[a+28>>2]=c[d>>2]&65535;a=0}else a=1;l=e;return a|0}function $T(a,d){a=a|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(!(QT(d,138288,0,65535,e)|0)){b[a+40>>1]=c[e>>2];a=0}else a=1;l=f;return a|0}function aU(a,b){a=a|0;b=b|0;c[a>>2]=n1(b)|0;return 0}function bU(a,b){a=a|0;b=b|0;c[a+16>>2]=n1(b)|0;return 0}function cU(a,b){a=a|0;b=b|0;c[a+4>>2]=n1(b)|0;return 0}function dU(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;e=g+4|0;do if(!(QT(d,138243,0,65535,e)|0)){d=c[e>>2]|0;if(!d){Pw(0,138251,f)|0;d=1;break}else{b[a+82>>1]=d;d=0;break}}else d=1;while(0);l=g;return d|0}function eU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k;h=0;a:while(1){b:while(1){g=e+1|0;e=a[e>>0]|0;if(!(e<<24>>24))break a;e=e<<24>>24;f=(P$(e)|0)+-98|0;switch(f>>>1|f<<31|0){case 5:{j=5;break b}case 9:{f=2048;break b}case 8:{j=6;break b}case 0:{j=7;break b}default:{}}c[i>>2]=e;c[i+4>>2]=e;Pw(0,138190,i)|0;e=g}if((j|0)==5){j=0;f=1024}else if((j|0)==6){j=0;f=4096}else if((j|0)==7){j=0;f=8192}e=g;h=h|f}if(h<<16>>16!=15360){j=d+36|0;b[j>>1]=b[j>>1]|h}l=k;return 0}function fU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;h=n1(e)|0;g=d+42|0;f=0;e=h;while(1){d=k1(e,138100)|0;if(!d)break;if(((I0(a[d>>0]|0)|0)&255|0)==82){e=d+1|0;if(!(O$(e,138103)|0)){b[g>>1]=b[g>>1]|4;d=f;e=0;f=d;continue}if(!(O$(e,138110)|0)){b[g>>1]=b[g>>1]|2;d=f;e=0;f=d;continue}else{c[i>>2]=d;Pw(0,138116,i)|0;f=1;e=0;continue}}if(!(O$(d,138154)|0)){b[g>>1]=b[g>>1]&-385;d=f;e=0;f=d;continue}if(O$(d,138160)|0?O$(d,138170)|0:0){if(!(O$(d,138176)|0)){b[g>>1]=b[g>>1]|128;d=f;e=0;f=d;continue}if(!(O$(d,138183)|0)){b[g>>1]=b[g>>1]|256;d=f;e=0;f=d;continue}else{c[j>>2]=d;Pw(0,138116,j)|0;f=1;e=0;continue}}b[g>>1]=b[g>>1]|32;d=f;e=0;f=d}D_(h);l=k;return f|0}function gU(a,b){a=a|0;b=b|0;c[a+8>>2]=n1(b)|0;return 0}function hU(a,b){a=a|0;b=b|0;c[a+12>>2]=n1(b)|0;return 0}function iU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 66:{if(!(O$(e+1|0,138046)|0)){d=d+36|0;b[d>>1]=b[d>>1]|16;d=0}else g=7;break}case 84:{if(!(O$(e+1|0,138052)|0)){d=d+36|0;b[d>>1]=b[d>>1]|8;d=0}else g=7;break}case 77:{if(!(O$(e+1|0,138055)|0))d=0;else g=7;break}default:g=7}if((g|0)==7){c[f>>2]=e;Pw(0,138061,f)|0;d=1}l=h;return d|0}function jU(a,d){a=a|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(!(QT(d,138040,0,65535,e)|0)){b[a+38>>1]=c[e>>2];a=0}else a=1;l=f;return a|0}function kU(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;switch((I0(a[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(O$(e+1|0,137686)|0)){d=d+36|0;b[d>>1]=b[d>>1]|4;d=0}else g=7;break}case 82:{if(!(O$(e+1|0,137681)|0)){d=d+36|0;b[d>>1]=b[d>>1]|2;d=0}else g=7;break}case 67:{if(!(O$(e+1|0,137690)|0))d=0;else g=7;break}default:g=7}if((g|0)==7){c[f>>2]=e;Pw(0,137696,f)|0;d=1}l=h;return d|0}function lU(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(!(QT(d,138638,0,127,e)|0)){a[b+88>>0]=c[e>>2];b=0}else b=1;l=f;return b|0}function mU(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[d>>0]|0)==42){b=b+112|0;a[b>>0]=a[b>>0]|1;b=0}else{c[e>>2]=d;Pw(0,138598,e)|0;b=1}l=f;return b|0}function nU(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[d>>0]|0)==42){b=b+112|0;a[b>>0]=a[b>>0]|2;b=0}else{c[e>>2]=d;Pw(0,138561,e)|0;b=1}l=f;return b|0}function oU(){var b=0;b=(a[186581]|a[186580])<<24>>24;JV(c[46637]|0);Xw(186564);return b|0}function pU(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;c[46639]=0;d=0;a:do{b:do switch(a[186583]|0){case 2:{b=-1;break a}case 0:{a[186583]=1;h=6;b=138650;d=0;break}default:{b=c[46638]|0;if(!(a[b>>0]|0)){a[186583]=2;h=7;b=138657;break b}else{d=qU(b)|0;h=d-b|0;break b}}}while(0);c[46647]=c[46646];c[46649]=c[46648];c[46646]=b;c[46648]=h;e=c[46642]|0;f=e-(c[46641]|0)|0;g=c[46637]|0;if(!f)b=VW(g,b,h,(h|0)==0&1)|0;else{if(e>>>0<(c[46643]|0)>>>0)b=e;else{Uw(186564,1)|0;b=c[46642]|0}a[b>>0]=0;b=c[46641]|0;c[46642]=b;b=VW(g,b,f,0)|0}if(!((b|0)!=0|(a[186581]|0)!=0)){g=eX(cX(c[46637]|0)|0)|0;h=wT()|0;c[i>>2]=g;c[i+4>>2]=h;Pw(1,137493,i)|0;xT();a[186581]=1;c[46639]=268}if(d|0)c[46638]=d;b=c[46639]|0}while((b|0)==0);l=j;return b|0}function qU(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;d=b+1|0;e=a[b>>0]|0;a:do if(e<<24>>24==60){e=a[d>>0]|0;if(e<<24>>24==33)if(!(z$(b+2|0,138665,2)|0)){e=rU(b+4|0)|0;d=e;e=a[e>>0]|0;g=8}else{e=d;g=5}else g=6;b:while(1)if((g|0)==5){d=e;e=a[e>>0]|0;g=6;continue}else if((g|0)==6){switch(e<<24>>24){case 62:case 0:{g=8;continue b}default:{}}e=d+1|0;g=5;continue}else if((g|0)==8)if(e<<24>>24==62){g=10;break}else{g=9;break}if((g|0)==9){Pw(0,138668,f)|0;a[186580]=1;break}else if((g|0)==10){d=d+1|0;break}}else{d=b;b=e;while(1){switch(b<<24>>24){case 60:case 0:break a;case 38:{e=d+1|0;if((a[e>>0]|0)==35)g=15;else e=MM(e,186564)|0;break}default:g=15}if((g|0)==15){g=0;e=c[46642]|0;if(e>>>0>=(c[46643]|0)>>>0){Uw(186564,1)|0;e=c[46642]|0}c[46642]=e+1;a[e>>0]=b;e=d+1|0}d=e;b=a[e>>0]|0}}while(0);l=h;return d|0}function rU(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;f=1;c=b;a:while(1){e=(f|0)==0;d=c;b:while(1){if(e)break a;g=d+1|0;switch(a[d>>0]|0){case 0:{c=g;break a}case 60:{h=5;break b}case 62:{c=-1;break b}default:d=g}}if((h|0)==5){h=0;c=1}f=f+c|0;c=g}d=c+-1|0;do if(a[d>>0]|0){c=c+-3|0;if(c>>>0>=b>>>0?(z$(c,138665,2)|0)==0:0)break;Pw(0,138709,i)|0;a[186580]=1}while(0);l=j;return d|0}function sU(a,b){a=a|0;b=b|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;d=C_(28)|0;if(!d)d=0;else{e=0;f=0;while(1){if((e|0)>=(b|0))break;r=(c[(c[a+(e<<2)>>2]|0)+4>>2]|0)+f|0;e=e+1|0;f=r}o=d+8|0;c[o>>2]=tU(f<<4)|0;p=d+12|0;c[p>>2]=tU((b<<2)+4|0)|0;e=f<<2;q=d+16|0;c[q>>2]=tU(e)|0;e=tU(e)|0;r=d+20|0;c[r>>2]=e;c[d+4>>2]=f;c[d>>2]=b;f=0;h=0;while(1){c[(c[p>>2]|0)+(h<<2)>>2]=f;if((h|0)>=(b|0))break;j=a+(h<<2)|0;n=c[j>>2]|0;k=c[n+4>>2]|0;l=f+-1|0;g=0;i=f;m=k;while(1){if((g|0)>=(m|0))break;m=(c[o>>2]|0)+(i<<4)|0;e=(c[n>>2]|0)+(g<<4)|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];m=i+1|0;c[(c[q>>2]|0)+(i<<2)>>2]=m;e=c[r>>2]|0;c[e+(i<<2)>>2]=i+-1;s=c[j>>2]|0;g=g+1|0;i=m;m=c[s+4>>2]|0;n=s}s=l+k|0;c[(c[q>>2]|0)+(s<<2)>>2]=f;c[e+(f<<2)>>2]=s;f=i;h=h+1|0}tV(d)}return d|0}function tU(a){a=a|0;if(!a)a=0;else a=C_(a)|0;return a|0}function uU(a){a=a|0;var b=0,d=0;D_(c[a+8>>2]|0);D_(c[a+12>>2]|0);D_(c[a+16>>2]|0);D_(c[a+20>>2]|0);d=a+24|0;b=c[d>>2]|0;if(b|0){D_(c[b>>2]|0);D_(c[d>>2]|0)}D_(a);return}function vU(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;m=p+16|0;j=p;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];n=AV(a,d,m)|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];o=AV(a,f,m)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];m=jV(j,d,n,m,f,o,a)|0;d=c[a+4>>2]|0;j=d+1|0;f=1;h=d;while(1){h=c[m+(h<<2)>>2]|0;k=f+1|0;if((h|0)==(j|0))break;else f=k}i=C_(k<<4)|0;h=i+(f<<4)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];a=a+8|0;while(1){d=c[m+(d<<2)>>2]|0;f=f+-1|0;h=i+(f<<4)|0;if((d|0)==(j|0))break;e=(c[a>>2]|0)+(d<<4)|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2]}c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];if(f|0)qa(138727,138734,148,138740);if(n|0)D_(n);if(o|0)D_(o);c[g+4>>2]=k;c[g>>2]=i;D_(m);l=p;return 1}function wU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+48|0;h=j+32|0;g=j+16|0;f=j;i=c[a>>2]|0;d=c[a+4>>2]|0;e=d+-1|0;a=0;while(1){if((a|0)>=(d|0)){a=1;break}m=i+(((e+a|0)%(d|0)|0)<<4)|0;k=i+(a<<4)|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];if((pV(f,g,h)|0)==1){a=0;break}else a=a+1|0}l=j;return a|0}function xU(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;m=u+48|0;k=u+32|0;s=4;j=C_(40)|0;c[j>>2]=0;n=u+16|0;q=u;r=c[d>>2]|0;i=c[d+4>>2]|0;s=D3(186600,1,j|0,s|0)|0;j=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1)d=z;else d=0;while(1){if(d|0){d=-1;break}o=0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];ja(28,n|0,m|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;continue};c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];h=e+16|0;o=0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];ja(28,q|0,m|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;continue};c[h>>2]=c[q>>2];c[h+4>>2]=c[q+4>>2];c[h+8>>2]=c[q+8>>2];c[h+12>>2]=c[q+12>>2];c[46689]=0;o=0;ia(112,4);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,s|0,j|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;continue}g=c[46690]|0;d=c[46689]|0;c[46689]=d+1;d=g+(d<<4)|0;c[d>>2]=c[r>>2];c[d+4>>2]=c[r+4>>2];c[d+8>>2]=c[r+8>>2];c[d+12>>2]=c[r+12>>2];o=0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];d=fa(1,a|0,b|0,r|0,i|0,k|0,m|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,s|0,j|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1)d=z;else{t=8;break}}if((t|0)==8)if((d|0)==-1)d=-1;else{c[f+4>>2]=c[46689];c[f>>2]=c[46690];d=0}D_(s|0);l=u;return d|0}function yU(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0.0,i=0.0;d=+h[b>>3];e=b+8|0;f=+h[e>>3];i=f*f+d*d;g=+C(+i);if(i>1.0e-06){h[b>>3]=d/g;h[e>>3]=f/g};c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function zU(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46693]|0)<(a|0)){b=c[46690]|0;if(!b){e=C_(a<<4)|0;c[46690]=e;if(!e){e=c[15686]|0;c[d>>2]=138749;c[d+4>>2]=531;c[d+8>>2]=138884;g1(e,138757,d)|0;bb(186600,1)}}else{d=F_(b,a<<4)|0;c[46690]=d;if(!d){d=c[15686]|0;c[e>>2]=138749;c[e+4>>2]=537;c[e+8>>2]=138902;g1(d,138757,e)|0;bb(186600,1)}}c[46693]=a}l=f;return}function AU(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.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,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0.0,W=0.0;R=l;l=l+336|0;J=R+320|0;I=R+304|0;w=R+144|0;q=R+128|0;G=R+112|0;H=R+96|0;Q=R+80|0;A=R+64|0;C=R+48|0;K=R+32|0;L=R+16|0;M=R;x=R+288|0;y=R+272|0;z=R+256|0;B=R+240|0;D=R+224|0;E=R+208|0;N=R+192|0;O=R+176|0;P=R+160|0;i=c[46692]|0;do if((c[46691]|0)<(e|0)){if(!i){i=C_(e*40|0)|0;c[46692]=i;if(!i){i=-1;break}}else{i=F_(i,e*40|0)|0;c[46692]=i;if(!i){i=-1;break}}c[46691]=e;k=6}else k=6;while(0);if((k|0)==6){h[i>>3]=0.0;k=1;j=0.0;while(1){if((k|0)>=(e|0))break;n=d+(k<<4)|0;F=d+(k+-1<<4)|0;c[I>>2]=c[n>>2];c[I+4>>2]=c[n+4>>2];c[I+8>>2]=c[n+8>>2];c[I+12>>2]=c[n+12>>2];c[J>>2]=c[F>>2];c[J+4>>2]=c[F+4>>2];c[J+8>>2]=c[F+8>>2];c[J+12>>2]=c[F+12>>2];v=+BU(I,J)+j;h[i+(k*40|0)>>3]=v;k=k+1|0;j=v}F=e+-1|0;n=i+(F*40|0)|0;k=1;while(1){if((k|0)>=(e|0))break;S=i+(k*40|0)|0;h[S>>3]=+h[S>>3]/+h[n>>3];k=k+1|0}k=0;while(1){if((k|0)>=(e|0))break;S=i+(k*40|0)+8|0;n=i+(k*40|0)|0;v=+CU(+h[n>>3]);c[J>>2]=c[f>>2];c[J+4>>2]=c[f+4>>2];c[J+8>>2]=c[f+8>>2];c[J+12>>2]=c[f+12>>2];DU(x,J,v);c[S>>2]=c[x>>2];c[S+4>>2]=c[x+4>>2];c[S+8>>2]=c[x+8>>2];c[S+12>>2]=c[x+12>>2];S=i+(k*40|0)+24|0;v=+EU(+h[n>>3]);c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[J+8>>2]=c[g+8>>2];c[J+12>>2]=c[g+12>>2];DU(y,J,v);c[S>>2]=c[y>>2];c[S+4>>2]=c[y+4>>2];c[S+8>>2]=c[y+8>>2];c[S+12>>2]=c[y+12>>2];k=k+1|0}c[I>>2]=c[f>>2];c[I+4>>2]=c[f+4>>2];c[I+8>>2]=c[f+8>>2];c[I+12>>2]=c[f+12>>2];c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[J+8>>2]=c[g+8>>2];c[J+12>>2]=c[g+12>>2];FU(d,e,i,I,J,G,A,H,C);c[q>>2]=c[G>>2];c[q+4>>2]=c[G+4>>2];c[q+8>>2]=c[G+8>>2];c[q+12>>2]=c[G+12>>2];c[w>>2]=c[A>>2];c[w+4>>2]=c[A+4>>2];c[w+8>>2]=c[A+8>>2];c[w+12>>2]=c[A+12>>2];c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];c[J>>2]=c[C>>2];c[J+4>>2]=c[C+4>>2];c[J+8>>2]=c[C+8>>2];c[J+12>>2]=c[C+12>>2];if(!(GU(a,b,q,w,I,J,d,e)|0)){c[J>>2]=c[A>>2];c[J+4>>2]=c[A+4>>2];c[J+8>>2]=c[A+8>>2];c[J+12>>2]=c[A+12>>2];DU(z,J,.3333333333333333);c[I>>2]=c[G>>2];c[I+4>>2]=c[G+4>>2];c[I+8>>2]=c[G+8>>2];c[I+12>>2]=c[G+12>>2];c[J>>2]=c[z>>2];c[J+4>>2]=c[z+4>>2];c[J+8>>2]=c[z+8>>2];c[J+12>>2]=c[z+12>>2];HU(B,I,J);v=+h[B>>3];u=+h[B+8>>3];c[J>>2]=c[C>>2];c[J+4>>2]=c[C+4>>2];c[J+8>>2]=c[C+8>>2];c[J+12>>2]=c[C+12>>2];DU(D,J,.3333333333333333);c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];c[J>>2]=c[D>>2];c[J+4>>2]=c[D+4>>2];c[J+8>>2]=c[D+8>>2];c[J+12>>2]=c[D+12>>2];IU(E,I,J);t=+h[E>>3];p=+h[E+8>>3];q=c[46692]|0;r=+h[G>>3];s=+h[H>>3];o=+h[G+8>>3];m=+h[H+8>>3];n=Q+8|0;i=-1;j=-1.0;k=1;while(1){if((k|0)>=(F|0))break;T=+h[q+(k*40|0)>>3];U=+JU(T);V=+CU(T);W=+EU(T);T=+KU(T);h[Q>>3]=V*v+r*U+W*t+s*T;h[n>>3]=W*p+V*u+o*U+m*T;S=d+(k<<4)|0;c[I>>2]=c[Q>>2];c[I+4>>2]=c[Q+4>>2];c[I+8>>2]=c[Q+8>>2];c[I+12>>2]=c[Q+12>>2];c[J>>2]=c[S>>2];c[J+4>>2]=c[S+4>>2];c[J+8>>2]=c[S+8>>2];c[J+12>>2]=c[S+12>>2];T=+BU(I,J);S=T>j;i=S?k:i;j=S?T:j;k=k+1|0}S=d+(i<<4)|0;Q=d+(i+-1<<4)|0;c[I>>2]=c[S>>2];c[I+4>>2]=c[S+4>>2];c[I+8>>2]=c[S+8>>2];c[I+12>>2]=c[S+12>>2];c[J>>2]=c[Q>>2];c[J+4>>2]=c[Q+4>>2];c[J+8>>2]=c[Q+8>>2];c[J+12>>2]=c[Q+12>>2];IU(N,I,J);c[J>>2]=c[N>>2];c[J+4>>2]=c[N+4>>2];c[J+8>>2]=c[N+8>>2];c[J+12>>2]=c[N+12>>2];yU(L,J);Q=i+1|0;N=d+(Q<<4)|0;c[I>>2]=c[N>>2];c[I+4>>2]=c[N+4>>2];c[I+8>>2]=c[N+8>>2];c[I+12>>2]=c[N+12>>2];c[J>>2]=c[S>>2];c[J+4>>2]=c[S+4>>2];c[J+8>>2]=c[S+8>>2];c[J+12>>2]=c[S+12>>2];IU(O,I,J);c[J>>2]=c[O>>2];c[J+4>>2]=c[O+4>>2];c[J+8>>2]=c[O+8>>2];c[J+12>>2]=c[O+12>>2];yU(M,J);c[I>>2]=c[L>>2];c[I+4>>2]=c[L+4>>2];c[I+8>>2]=c[L+8>>2];c[I+12>>2]=c[L+12>>2];c[J>>2]=c[M>>2];c[J+4>>2]=c[M+4>>2];c[J+8>>2]=c[M+8>>2];c[J+12>>2]=c[M+12>>2];HU(P,I,J);c[J>>2]=c[P>>2];c[J+4>>2]=c[P+4>>2];c[J+8>>2]=c[P+8>>2];c[J+12>>2]=c[P+12>>2];yU(K,J);c[I>>2]=c[f>>2];c[I+4>>2]=c[f+4>>2];c[I+8>>2]=c[f+8>>2];c[I+12>>2]=c[f+12>>2];c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];AU(a,b,d,Q,I,J)|0;c[I>>2]=c[K>>2];c[I+4>>2]=c[K+4>>2];c[I+8>>2]=c[K+8>>2];c[I+12>>2]=c[K+12>>2];c[J>>2]=c[g>>2];c[J+4>>2]=c[g+4>>2];c[J+8>>2]=c[g+8>>2];c[J+12>>2]=c[g+12>>2];AU(a,b,S,e-i|0,I,J)|0;i=0}else i=0}l=R;return i|0}function BU(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[b>>3]-+h[a>>3];d=+h[b+8>>3]-+h[a+8>>3];return +(+C(+(d*d+c*c)))}function CU(a){a=+a;var b=0.0;b=1.0-a;return +(b*b*(a*3.0))}function DU(a,b,d){a=a|0;b=b|0;d=+d;var e=0;h[b>>3]=+h[b>>3]*d;e=b+8|0;h[e>>3]=+h[e>>3]*d;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function EU(a){a=+a;return +(a*a*3.0*(1.0-a))}function FU(a,b,d,e,f,g,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0,K=0,L=0,M=0;G=l;l=l+128|0;B=G+112|0;v=G+80|0;u=G;r=G+96|0;s=G+64|0;t=G+48|0;C=G+32|0;D=G+16|0;E=a+(b+-1<<4)|0;q=0;w=0.0;x=0.0;y=0.0;z=0.0;A=0.0;while(1){if((q|0)>=(b|0))break;K=d+(q*40|0)+8|0;c[v>>2]=c[K>>2];c[v+4>>2]=c[K+4>>2];c[v+8>>2]=c[K+8>>2];c[v+12>>2]=c[K+12>>2];c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];H=+QU(v,B)+x;J=d+(q*40|0)+24|0;c[v>>2]=c[K>>2];c[v+4>>2]=c[K+4>>2];c[v+8>>2]=c[K+8>>2];c[v+12>>2]=c[K+12>>2];c[B>>2]=c[J>>2];c[B+4>>2]=c[J+4>>2];c[B+8>>2]=c[J+8>>2];c[B+12>>2]=c[J+12>>2];p=+QU(v,B)+A;c[v>>2]=c[J>>2];c[v+4>>2]=c[J+4>>2];c[v+8>>2]=c[J+8>>2];c[v+12>>2]=c[J+12>>2];c[B>>2]=c[J>>2];c[B+4>>2]=c[J+4>>2];c[B+8>>2]=c[J+8>>2];c[B+12>>2]=c[J+12>>2];o=+QU(v,B)+y;L=a+(q<<4)|0;M=d+(q*40|0)|0;I=+RU(+h[M>>3]);c[B>>2]=c[a>>2];c[B+4>>2]=c[a+4>>2];c[B+8>>2]=c[a+8>>2];c[B+12>>2]=c[a+12>>2];DU(s,B,I);I=+SU(+h[M>>3]);c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];DU(t,B,I);c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];c[v+8>>2]=c[s+8>>2];c[v+12>>2]=c[s+12>>2];c[B>>2]=c[t>>2];c[B+4>>2]=c[t+4>>2];c[B+8>>2]=c[t+8>>2];c[B+12>>2]=c[t+12>>2];HU(r,v,B);c[v>>2]=c[L>>2];c[v+4>>2]=c[L+4>>2];c[v+8>>2]=c[L+8>>2];c[v+12>>2]=c[L+12>>2];c[B>>2]=c[r>>2];c[B+4>>2]=c[r+4>>2];c[B+8>>2]=c[r+8>>2];c[B+12>>2]=c[r+12>>2];IU(u,v,B);c[v>>2]=c[K>>2];c[v+4>>2]=c[K+4>>2];c[v+8>>2]=c[K+8>>2];c[v+12>>2]=c[K+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];I=+QU(v,B)+w;c[v>>2]=c[J>>2];c[v+4>>2]=c[J+4>>2];c[v+8>>2]=c[J+8>>2];c[v+12>>2]=c[J+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];q=q+1|0;w=I;x=H;y=o;z=+QU(v,B)+z;A=p}o=y*x-A*A;p=o>=0.0?o:-o;if(!(p>=1.0e-06?(m=(y*w-A*z)/o,n=(x*z-A*w)/o,!(p<1.0e-06|m<=0.0|n<=0.0)):0))F=6;if((F|0)==6){c[v>>2]=c[a>>2];c[v+4>>2]=c[a+4>>2];c[v+8>>2]=c[a+8>>2];c[v+12>>2]=c[a+12>>2];c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];m=+BU(v,B)*.3333333333333333;n=m};c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[B>>2]=c[e>>2];c[B+4>>2]=c[e+4>>2];c[B+8>>2]=c[e+8>>2];c[B+12>>2]=c[e+12>>2];DU(C,B,m);c[i>>2]=c[C>>2];c[i+4>>2]=c[C+4>>2];c[i+8>>2]=c[C+8>>2];c[i+12>>2]=c[C+12>>2];c[j>>2]=c[E>>2];c[j+4>>2]=c[E+4>>2];c[j+8>>2]=c[E+8>>2];c[j+12>>2]=c[E+12>>2];c[B>>2]=c[f>>2];c[B+4>>2]=c[f+4>>2];c[B+8>>2]=c[f+8>>2];c[B+12>>2]=c[f+12>>2];DU(D,B,n);c[k>>2]=c[D>>2];c[k+4>>2]=c[D+4>>2];c[k+8>>2]=c[D+8>>2];c[k+12>>2]=c[D+12>>2];l=G;return}function GU(a,b,d,e,f,g,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0,u=0.0,v=0,w=0.0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0.0,E=0;C=l;l=l+64|0;B=C;z=(j|0)==2;y=+h[d>>3];u=+h[d+8>>3];v=B+8|0;w=+h[e>>3];x=B+16|0;p=+h[e+8>>3];q=B+24|0;r=+h[f>>3];s=+h[g>>3];t=B+32|0;o=+h[f+8>>3];n=+h[g+8>>3];e=B+40|0;f=B+48|0;g=B+56|0;d=1;k=4.0;m=4.0;while(1){h[B>>3]=y;h[v>>3]=u;D=m*.3333333333333333;h[x>>3]=D*w+y;h[q>>3]=D*p+u;D=k*.3333333333333333;h[t>>3]=r-D*s;h[e>>3]=o-D*n;h[f>>3]=r;h[g>>3]=o;if(d?(D=+LU(B,4),D<+LU(i,j)+-.001):0){d=0;break}if(MU(a,b,B)|0){A=5;break}if(m==0.0&k==0.0){A=9;break}E=m>.01;d=0;k=E?k*.5:0.0;m=E?m*.5:0.0}a:do if((A|0)==5){zU((c[46689]|0)+4|0);e=c[46690]|0;d=1;while(1){if((d|0)==4){d=1;break a}E=c[46689]|0;h[e+(E<<4)>>3]=+h[B+(d<<4)>>3];D=+h[B+(d<<4)+8>>3];c[46689]=E+1;h[e+(E<<4)+8>>3]=D;d=d+1|0}}else if((A|0)==9)if(z){zU((c[46689]|0)+4|0);e=c[46690]|0;d=1;while(1){if((d|0)==4){d=1;break a}E=c[46689]|0;h[e+(E<<4)>>3]=+h[B+(d<<4)>>3];D=+h[B+(d<<4)+8>>3];c[46689]=E+1;h[e+(E<<4)+8>>3]=D;d=d+1|0}}else d=0;while(0);l=C;return d|0}function HU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]+ +h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]+ +h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function IU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]-+h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]-+h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function JU(a){a=+a;a=1.0-a;return +(a*a*a)}function KU(a){a=+a;return +(a*a*a)}function LU(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,f=0.0,g=0;c=0.0;d=1;while(1){if((d|0)>=(b|0))break;g=d+-1|0;e=+h[a+(d<<4)>>3]-+h[a+(g<<4)>>3];f=+h[a+(d<<4)+8>>3]-+h[a+(g<<4)+8>>3];c=+C(+(f*f+e*e))+c;d=d+1|0}return +c}function MU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0;C=l;l=l+64|0;t=C+32|0;u=C;w=u+16|0;y=d+16|0;z=d+32|0;A=d+48|0;B=d+8|0;g=d+24|0;i=d+40|0;j=d+56|0;k=u+8|0;m=u+24|0;f=0;a:while(1){if((f|0)>=(b|0)){e=1;break}n=a+(f<<5)|0;c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[u+8>>2]=c[n+8>>2];c[u+12>>2]=c[n+12>>2];n=a+(f<<5)+16|0;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];n=NU(d,u,t)|0;b:do if((n|0)!=4){o=+h[u>>3];p=+h[k>>3];q=+h[w>>3];r=+h[m>>3];e=0;while(1){if((e|0)>=(n|0))break b;s=+h[t+(e<<3)>>3];if((!(s<1.0e-06|s>.999999)?(x=s*s*s,E=s*3.0,D=1.0-s,s=E*s*D,v=D*D,E=v*E,D=v*D,v=+h[y>>3]*E+ +h[d>>3]*D+ +h[z>>3]*s+ +h[A>>3]*x,x=+h[g>>3]*E+ +h[B>>3]*D+ +h[i>>3]*s+ +h[j>>3]*x,s=v-o,D=x-p,!(D*D+s*s<.001)):0)?(E=v-q,D=x-r,!(D*D+E*E<.001)):0){e=0;break a}e=e+1|0}}while(0);f=f+1|0}l=C;return e|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+96|0;s=v+48|0;t=v+24|0;k=v;u=v+80|0;p=+h[b>>3];g=+h[b+16>>3]-p;q=+h[b+8>>3];j=+h[b+24>>3]-q;c[u>>2]=0;a:do if(!(g==0.0)){j=j/g;m=a+16|0;n=a+32|0;o=a+48|0;OU(+h[a+8>>3]-+h[a>>3]*j,+h[a+24>>3]-+h[m>>3]*j,+h[a+40>>3]-+h[n>>3]*j,+h[a+56>>3]-+h[o>>3]*j,s);h[s>>3]=j*p-q+ +h[s>>3];e=kV(s,t)|0;if((e|0)==4)b=4;else{f=s+8|0;i=s+16|0;k=s+24|0;g=1.0/g;b=0;while(1){if((b|0)>=(e|0))break;j=+h[t+(b<<3)>>3];if(j>=0.0&j<=1.0?(OU(+h[a>>3],+h[m>>3],+h[n>>3],+h[o>>3],s),q=(+h[s>>3]-p+((+h[k>>3]*j+ +h[i>>3])*j+ +h[f>>3])*j)*g,q>=0.0&q<=1.0):0)PU(j,d,u);b=b+1|0}b=c[u>>2]|0}}else{OU(+h[a>>3],+h[a+16>>3],+h[a+32>>3],+h[a+48>>3],s);h[s>>3]=+h[s>>3]-p;r=kV(s,t)|0;if(!(j==0.0)){if((r|0)==4){b=4;break}m=a+8|0;n=a+24|0;o=a+40|0;e=a+56|0;f=s+8|0;i=s+16|0;k=s+24|0;g=1.0/j;b=0;while(1){if((b|0)>=(r|0))break;j=+h[t+(b<<3)>>3];if(j>=0.0&j<=1.0?(OU(+h[m>>3],+h[n>>3],+h[o>>3],+h[e>>3],s),p=(+h[s>>3]-q+((+h[k>>3]*j+ +h[i>>3])*j+ +h[f>>3])*j)*g,p>=0.0&p<=1.0):0)PU(j,d,u);b=b+1|0}b=c[u>>2]|0;break}OU(+h[a+8>>3],+h[a+24>>3],+h[a+40>>3],+h[a+56>>3],s);h[s>>3]=+h[s>>3]-q;i=kV(s,k)|0;b=(i|0)==4;b:do if((r|0)==4){if(b){b=4;break a}else b=0;while(1){if((b|0)>=(i|0))break b;PU(+h[k+(b<<3)>>3],d,u);b=b+1|0}}else{if(b){b=0;while(1){if((b|0)>=(r|0))break b;PU(+h[t+(b<<3)>>3],d,u);b=b+1|0}}else e=0;while(1){if((e|0)>=(r|0))break b;f=t+(e<<3)|0;b=0;while(1){if((b|0)>=(i|0))break;g=+h[f>>3];if(g==+h[k+(b<<3)>>3])PU(g,d,u);b=b+1|0}e=e+1|0}}while(0);b=c[u>>2]|0}while(0);l=v;return b|0}function OU(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=e|0;h[e+24>>3]=d-a+(b-c)*3.0;h[e+16>>3]=(c+a)*3.0-b*6.0;h[e+8>>3]=(b-a)*3.0;h[e>>3]=a;return}function PU(a,b,d){a=+a;b=b|0;d=d|0;var e=0;if(a>=0.0&a<=1.0){e=c[d>>2]|0;h[b+(e<<3)>>3]=a;c[d>>2]=e+1}return}function QU(a,b){a=a|0;b=b|0;return +(+h[b+8>>3]*+h[a+8>>3]+ +h[b>>3]*+h[a>>3])}function RU(a){a=+a;var b=0.0;b=1.0-a;return +(b*b*(b+a*3.0))}function SU(a){a=+a;return +(a*a*((1.0-a)*3.0+a))}function TU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0;H=l;l=l+112|0;E=H+80|0;D=H+64|0;C=H+48|0;G=4;F=C_(40)|0;c[F>>2]=0;w=H+32|0;x=H+16|0;y=H;A=H+96|0;G=D3(186776,1,F|0,G|0)|0;F=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1)e=z;else e=0;a:while(1){if(e|0){e=-2;break}g=a+4|0;o=0;ia(113,c[g>>2]|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}c[46733]=0;c[46734]=0;o=0;ia(114,c[g>>2]<<1|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}m=(c[46736]|0)/2|0;c[46737]=m;c[46738]=m+-1;m=c[g>>2]|0;g=c[a>>2]|0;e=0;f=-1;i=t;while(1){if((e|0)>=(m|0))break;I=+h[g+(e<<4)>>3];v=i>I;u=v?e:f;e=e+1|0;f=u;i=v?I:i}v=g+(f<<4)|0;c[x>>2]=c[v>>2];c[x+4>>2]=c[v+4>>2];c[x+8>>2]=c[v+8>>2];c[x+12>>2]=c[v+12>>2];v=g+(((f|0)==0?m:f)+-1<<4)|0;c[w>>2]=c[v>>2];c[w+4>>2]=c[v+4>>2];c[w+8>>2]=c[v+8>>2];c[w+12>>2]=c[v+12>>2];v=g+(((f|0)==(m+-1|0)?0:f+1|0)<<4)|0;c[y>>2]=c[v>>2];c[y+4>>2]=c[v+4>>2];c[y+8>>2]=c[v+8>>2];c[y+12>>2]=c[v+12>>2];I=+h[x>>3];if((+h[w>>3]==I?I==+h[y>>3]:0)?+h[y+8>>3]>+h[x+8>>3]:0)v=15;else v=12;b:do if((v|0)==12){v=0;o=0;e=ca(33,w|0,x|0,y|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,G|0,F|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}if((e|0)==1){g=c[46740]|0;e=c[46741]|0;f=0;while(1){if((f|0)>=(m|0))break b;j=c[a>>2]|0;if(!(((f|0)>0?(B=f+-1|0,+h[j+(f<<4)>>3]==+h[j+(B<<4)>>3]):0)?+h[j+(f<<4)+8>>3]==+h[j+(B<<4)+8>>3]:0)){u=c[46733]|0;c[g+(u<<3)>>2]=j+(f<<4);c[g+(u<<3)+4>>2]=g+(((u|0)%(m|0)|0)<<3);c[e+(u<<2)>>2]=g+(u<<3);c[46733]=u+1}f=f+1|0}}else v=15}while(0);c:do if((v|0)==15){v=0;j=c[46740]|0;e=c[46741]|0;g=m;while(1){f=g+-1|0;if((g|0)<=0)break c;k=c[a>>2]|0;if(((g|0)<(m|0)?+h[k+(f<<4)>>3]==+h[k+(g<<4)>>3]:0)?+h[k+(f<<4)+8>>3]==+h[k+(g<<4)+8>>3]:0){g=f;continue}g=c[46733]|0;c[j+(g<<3)>>2]=k+(f<<4);c[j+(g<<3)+4>>2]=j+(((g|0)%(m|0)|0)<<3);c[e+(g<<2)>>2]=j+(g<<3);c[46733]=g+1;g=f}}while(0);o=0;ja(29,e|0,c[46733]|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}j=0;e=c[46734]|0;d:while(1){if((j|0)>=(e|0)){s=0;break}k=j+1|0;g=k;while(1){if((g|0)>=(e|0)){j=k;continue d}o=0;ja(30,j|0,g|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue a}g=g+1|0;e=c[46734]|0}}while(1){if((s|0)>=(e|0))break;o=0;f=aa(103,s|0,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}if(f|0)break;s=s+1|0}if((s|0)==(e|0)){e=c[15686]|0;o=0;c[C>>2]=138776;c[C+4>>2]=192;c[C+8>>2]=138787;ca(29,e|0,138757,C|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=41;break}}u=b+16|0;k=0;while(1){if((k|0)>=(e|0))break;o=0;f=aa(103,k|0,u|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}if(f|0)break;k=k+1|0}if((k|0)==(e|0)){e=c[15686]|0;o=0;c[D>>2]=138776;c[D+4>>2]=200;c[D+8>>2]=138820;ca(29,e|0,138757,D|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=48;break}}o=0;e=aa(104,s|0,k|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,G|0,F|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue}if(!e){e=c[15686]|0;o=0;c[E>>2]=138776;c[E+4>>2]=207;c[E+8>>2]=138858;ca(29,e|0,138757,E|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}o=0;ia(115,2);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=53;break}}if((s|0)==(k|0)){o=0;ia(115,2);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,G|0,F|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;continue}else{v=56;break}}c[A>>2]=b;c[A+4>>2]=0;f=A+8|0;c[f>>2]=u;c[A+12>>2]=0;o=0;ja(31,1,A|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue}c[46739]=c[46737];q=s;e:while(1){if((q|0)==-1){g=f;e=0;break}r=c[46743]|0;c[r+(q*52|0)>>2]=2;e=0;while(1){if((e|0)>=3){v=65;break}v=c[r+(q*52|0)+4+(e<<4)+12>>2]|0;if(v|0?(c[v>>2]|0)==1:0){v=68;break}e=e+1|0}if((v|0)==65){v=0;if((e|0)==3){e=c[46735]|0;k=c[e+(c[46738]<<2)>>2]|0;o=0;e=ca(33,u|0,c[c[e+(c[46737]<<2)>>2]>>2]|0,c[k>>2]|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}j=(e|0)==1;n=j?f:k;j=j?k:f}else v=68}if((v|0)==68){v=0;k=c[r+(q*52|0)+4+(e<<4)>>2]|0;m=c[r+(q*52|0)+4+(e<<4)+4>>2]|0;o=0;e=ca(33,c[k>>2]|0,c[c[r+(q*52|0)+4+(((e+1|0)%3|0)<<4)+4>>2]>>2]|0,c[m>>2]|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1){e=z;continue a}j=(e|0)==1;n=j?k:m;j=j?m:k}do if((q|0)==(s|0)){o=0;ja(31,2,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(31,1,n|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}e=0}else{m=c[46735]|0;if((c[m+(c[46737]<<2)>>2]|0)!=(n|0)?(c[m+(c[46738]<<2)>>2]|0)!=(n|0):0){o=0;j=$(34,n|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(32,2,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(31,1,n|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}if((j|0)<=(c[46739]|0)){e=0;break}c[46739]=j;e=0;break}o=0;k=$(34,j|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(32,1,k|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}o=0;ja(31,2,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){g=E3(c[e>>2]|0,G|0,F|0)|0;if(!g)bb(e|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;continue a}if((k|0)>=(c[46739]|0)){e=0;break}c[46739]=k;e=0}while(0);while(1){if((e|0)>=3){q=-1;continue e}g=c[r+(q*52|0)+4+(e<<4)+12>>2]|0;if(g|0?(c[g>>2]|0)==1:0)break;e=e+1|0}q=(g-(c[46743]|0)|0)/52|0}while(1){if(!g)break;g=c[g+4>>2]|0;e=e+1|0}o=0;ia(115,e|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){j=E3(c[g>>2]|0,G|0,F|0)|0;if(!j)bb(g|0,p|0);z=p}else j=-1;if((j|0)==1)e=z;else{v=94;break}}if((v|0)==41)e=-1;else if((v|0)==48)e=-1;else if((v|0)==53){c[d+4>>2]=2;e=c[46742]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];F=e+16|0;c[F>>2]=c[u>>2];c[F+4>>2]=c[u+4>>2];c[F+8>>2]=c[u+8>>2];c[F+12>>2]=c[u+12>>2];c[d>>2]=e;e=0}else if((v|0)==56){c[d+4>>2]=2;e=c[46742]|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];F=e+16|0;c[F>>2]=c[u>>2];c[F+4>>2]=c[u+4>>2];c[F+8>>2]=c[u+8>>2];c[F+12>>2]=c[u+12>>2];c[d>>2]=e;e=0}else if((v|0)==94){c[d+4>>2]=e;g=c[46742]|0;while(1){e=e+-1|0;if(!f)break;F=g+(e<<4)|0;E=c[f>>2]|0;c[F>>2]=c[E>>2];c[F+4>>2]=c[E+4>>2];c[F+8>>2]=c[E+8>>2];c[F+12>>2]=c[E+12>>2];f=c[f+4>>2]|0}c[d>>2]=g;e=0}D_(G|0);l=H;return e|0}function UU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+64|0;e=h+48|0;g=h+32|0;f=h+16|0;d=h;if((c[46746]|0)<(a|0)){b=c[46740]|0;if(!b){g=C_(a<<3)|0;c[46740]=g;if(!g){g=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=523;c[d+8>>2]=139026;g1(g,138757,d)|0;bb(186776,1)}g=C_(a<<2)|0;c[46741]=g;if(!g){g=c[15686]|0;c[f>>2]=138776;c[f+4>>2]=527;c[f+8>>2]=139045;g1(g,138757,f)|0;bb(186776,1)}}else{f=F_(b,a<<3)|0;c[46740]=f;if(!f){f=c[15686]|0;c[g>>2]=138776;c[g+4>>2]=533;c[g+8>>2]=139065;g1(f,138757,g)|0;bb(186776,1)}g=F_(c[46741]|0,a<<2)|0;c[46741]=g;if(!g){g=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=539;c[e+8>>2]=139085;g1(g,138757,e)|0;bb(186776,1)}}c[46746]=a}l=h;return}function VU(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46736]|0)<(a|0)){b=c[46735]|0;if(!b){e=C_(a<<2)|0;c[46735]=e;if(!e){e=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=573;c[d+8>>2]=138981;g1(e,138757,d)|0;bb(186776,1)}}else{d=F_(b,a<<2)|0;c[46735]=d;if(!d){d=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=580;c[e+8>>2]=139003;g1(d,138757,e)|0;bb(186776,1)}}c[46736]=a}l=f;return}function WU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];d=(+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d);return (d>0.0?1:d<0.0?2:3)|0}function XU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;a:while(1){if((b|0)>3)e=0;else{b=9;break}while(1){if((e|0)>=(b|0)){b=8;break a}f=e+1|0;d=(f|0)%(b|0)|0;g=(e+2|0)%(b|0)|0;if(!(dV(e,g,a,b)|0))e=f;else break}eV(c[a+(e<<2)>>2]|0,c[a+(d<<2)>>2]|0,c[a+(g<<2)>>2]|0);b=b+-1|0;while(1){if((d|0)>=(b|0))continue a;g=d+1|0;c[a+(d<<2)>>2]=c[a+(g<<2)>>2];d=g}}if((b|0)==8){a=c[15686]|0;c[h>>2]=138776;c[h+4>>2]=324;c[h+8>>2]=138921;g1(a,138757,h)|0}else if((b|0)==9)eV(c[a>>2]|0,c[a+4>>2]|0,c[a+8>>2]|0);l=i;return}function YU(a,b){a=a|0;b=b|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;i=c[46743]|0;j=i+(a*52|0)|0;k=i+(b*52|0)|0;g=0;while(1){if((g|0)==3)break;l=i+(a*52|0)+4+(g<<4)|0;m=i+(a*52|0)+4+(g<<4)+4|0;n=i+(a*52|0)+4+(g<<4)+12|0;f=0;while(1){if((f|0)==3)break;o=c[c[l>>2]>>2]|0;h=c[c[i+(b*52|0)+4+(f<<4)>>2]>>2]|0;if((o|0)==(h|0)){d=c[c[i+(b*52|0)+4+(f<<4)+4>>2]>>2]|0;if((c[c[m>>2]>>2]|0)==(d|0))e=10;else e=8}else{d=c[c[i+(b*52|0)+4+(f<<4)+4>>2]>>2]|0;e=8}if(((e|0)==8?(e=0,(o|0)==(d|0)):0)?(c[c[m>>2]>>2]|0)==(h|0):0)e=10;if((e|0)==10){c[n>>2]=k;c[i+(b*52|0)+4+(f<<4)+12>>2]=j}f=f+1|0}g=g+1|0}return}function ZU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[46743]|0;d=0;e=0;while(1){if((e|0)==3)break;d=d+((WU(c[c[f+(a*52|0)+4+(e<<4)>>2]>>2]|0,c[c[f+(a*52|0)+4+(e<<4)+4>>2]>>2]|0,b)|0)!=2&1)|0;e=e+1|0}return ((d|0)==3|(d|0)==0)&1|0}function _U(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[46743]|0;e=d+(a*52|0)|0;a:do if(!(c[e>>2]|0)){c[e>>2]=1;if((a|0)==(b|0))d=1;else{f=0;while(1){if((f|0)>=3)break;e=c[d+(a*52|0)+4+(f<<4)+12>>2]|0;if(e){if(_U((e-d|0)/52|0,b)|0){d=1;break a}d=c[46743]|0}f=f+1|0}c[d+(a*52|0)>>2]=0;d=0}}else d=0;while(0);return d|0}function $U(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46744]|0)<(a|0)){b=c[46742]|0;if(!b){e=C_(a<<4)|0;c[46742]=e;if(!e){e=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=593;c[d+8>>2]=138884;g1(e,138757,d)|0;bb(186776,1)}}else{d=F_(b,a<<4)|0;c[46742]=d;if(!d){d=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=599;c[e+8>>2]=138902;g1(d,138757,e)|0;bb(186776,1)}}c[46744]=a}l=f;return}function aV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[46738]|0;e=c[46737]|0;f=(d|0)>=(e|0);if((a|0)==1)if(f){c[b+4>>2]=c[(c[46735]|0)+(e<<2)>>2];a=186948;d=-1}else{a=186948;d=-1}else if(f){c[b+4>>2]=c[(c[46735]|0)+(d<<2)>>2];a=186952;d=1}else{a=186952;d=1}f=(c[a>>2]|0)+d|0;c[a>>2]=f;c[(c[46735]|0)+(f<<2)>>2]=b;return}function bV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[46739]|0;g=c[46735]|0;b=c[46737]|0;while(1){if((b|0)>=(f|0)){e=4;break}d=b+1|0;if((WU(c[c[g+(d<<2)>>2]>>2]|0,c[c[g+(b<<2)>>2]>>2]|0,c[a>>2]|0)|0)==1)break;else b=d}a:do if((e|0)==4){b=c[46738]|0;while(1){if((b|0)<=(f|0)){b=f;break a}d=b+-1|0;if((WU(c[c[g+(d<<2)>>2]>>2]|0,c[c[g+(b<<2)>>2]>>2]|0,c[a>>2]|0)|0)==2)break;else b=d}}while(0);return b|0}function cV(a,b){a=a|0;b=b|0;c[((a|0)==1?186952:186948)>>2]=b;return}function dV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=c[c[d+(((a+-1+e|0)%(e|0)|0)<<2)>>2]>>2]|0;i=c[c[d+(a<<2)>>2]>>2]|0;g=c[c[d+(((a+1|0)%(e|0)|0)<<2)>>2]>>2]|0;k=(WU(f,i,g)|0)==1;j=c[c[d+(b<<2)>>2]>>2]|0;if(k)if((WU(i,j,f)|0)==1){f=WU(j,i,g)|0;g=1;h=5}else f=0;else{f=WU(i,j,g)|0;g=2;h=5}a:do if((h|0)==5)if((f|0)==(g|0)){f=0;while(1){if((f|0)>=(e|0)){f=1;break a}g=f;f=f+1|0;h=(f|0)%(e|0)|0;if((h|0)==(b|0)|((g|0)==(b|0)|((g|0)==(a|0)|(h|0)==(a|0))))continue;if(gV(i,j,c[c[d+(g<<2)>>2]>>2]|0,c[c[d+(h<<2)>>2]>>2]|0)|0){f=0;break}}}else f=0;while(0);return f|0}function eV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[46734]|0;f=c[46745]|0;if((e|0)<(f|0))h=e;else{fV(f+20|0);h=c[46734]|0}g=c[46743]|0;c[46734]=h+1;f=g+(h*52|0)|0;c[f>>2]=0;c[g+(h*52|0)+4>>2]=a;c[g+(h*52|0)+8>>2]=b;c[g+(h*52|0)+16>>2]=0;c[g+(h*52|0)+20>>2]=b;c[g+(h*52|0)+24>>2]=d;c[g+(h*52|0)+32>>2]=0;c[g+(h*52|0)+36>>2]=d;c[g+(h*52|0)+40>>2]=a;c[g+(h*52|0)+48>>2]=0;e=0;while(1){if((e|0)==3)break;c[g+(h*52|0)+4+(e<<4)+8>>2]=f;e=e+1|0}return}function fV(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f+16|0;d=f;if((c[46745]|0)<(a|0)){b=c[46743]|0;if(!b){e=C_(a*52|0)|0;c[46743]=e;if(!e){e=c[15686]|0;c[d>>2]=138776;c[d+4>>2]=552;c[d+8>>2]=138942;g1(e,138757,d)|0;bb(186776,1)}}else{d=F_(b,a*52|0)|0;c[46743]=d;if(!d){d=c[15686]|0;c[e>>2]=138776;c[e+4>>2]=558;c[e+8>>2]=138961;g1(d,138757,e)|0;bb(186776,1)}}c[46745]=a}l=f;return}function gV(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=WU(a,b,c)|0;if((((f|0)!=3?(g=WU(a,b,d)|0,(g|0)!=3):0)?(h=WU(c,d,a)|0,(h|0)!=3):0)?(e=WU(c,d,b)|0,(e|0)!=3):0)return ((f|0)==1^(g|0)==1)&((h|0)==1^(e|0)==1)&1|0;if(((hV(a,b,c)|0)==0?(hV(a,b,d)|0)==0:0)?(hV(c,d,a)|0)==0:0)return (hV(c,d,b)|0)!=0|0;return 1}function hV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;e=+h[a>>3];g=+h[b>>3]-e;f=+h[a+8>>3];d=+h[b+8>>3]-f;e=+h[c>>3]-e;f=+h[c+8>>3]-f;if((WU(a,b,c)|0)==3?f*d+e*g>=0.0:0)a=f*f+e*e<=d*d+g*g&1;else a=0;return a|0}function iV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;m=C_(d<<2)|0;n=C_((d<<3)+8|0)|0;o=n+8|0;f=0;while(1){if((f|0)>=(d|0))break;c[m+(f<<2)>>2]=-1;h[o+(f<<3)>>3]=-2147483647.0;f=f+1|0}h[n>>3]=-2147483648.0;a:while(1){if((a|0)==(b|0))break;l=o+(a<<3)|0;j=+h[l>>3];h[l>>3]=j==-2147483647.0?0.0:-j;k=0;f=-1;while(1){if((k|0)>=(d|0)){a=f;continue a}i=o+(k<<3)|0;g=+h[i>>3];if(g<0.0){q=(a|0)<(k|0);p=+h[(c[e+((q?k:a)<<2)>>2]|0)+((q?a:k)<<3)>>3];j=-(p+ +h[l>>3]);if(p!=0.0&g>3]=j;c[m+(k<<2)>>2]=a;g=j}f=g>+h[o+(f<<3)>>3]?k:f}k=k+1|0}}D_(n);return m|0}function jV(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;j=l;l=l+32|0;k=j+16|0;m=j;i=c[h+4>>2]|0;c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];if(!(CV(m,b,k,f,h)|0)){a=c[h+24>>2]|0;c[a+(i<<2)>>2]=g;m=i+1|0;c[a+(m<<2)>>2]=d;a=iV(m,i,i+2|0,a)|0}else{a=C_((i<<2)+8|0)|0;m=i+1|0;c[a+(i<<2)>>2]=m;c[a+(m<<2)>>2]=-1}l=j;return a|0}function kV(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0;d=+h[a+24>>3];a:do if(d<1.0e-07&d>-1.0e-07)a=lV(a,b)|0;else{g=+h[a+16>>3]/(d*3.0);f=+h[a+8>>3]/d;e=g*g;d=g*2.0*e-g*f+ +h[a>>3]/d;e=f*.3333333333333333-e;e=e*e*4.0*e;f=d*d+e;if(!(f<0.0)){i=(+C(+f)-d)*.5;e=+n$(i);d=+n$(-d-i)+e;h[b>>3]=d;if(f>0.0)a=1;else{d=d*-.5;h[b+16>>3]=d;a=1;c=7}}else{i=+K(+(+C(+-f)),+-d);d=+n$(+C(+-e)*.5)*2.0;h[b>>3]=d*+E(+(i*.3333333333333333));h[b+8>>3]=+E(+((i+6.283185307179586)*.3333333333333333))*d;d=+E(+((i+-6.283185307179586)*.3333333333333333))*d;a=2;c=7}if((c|0)==7){h[b+(a<<3)>>3]=d;a=3}c=0;while(1){if((c|0)>=(a|0))break a;j=b+(c<<3)|0;h[j>>3]=+h[j>>3]-g;c=c+1|0}}while(0);return a|0}function lV(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+16>>3];do if(!(c<1.0e-07&c>-1.0e-07)){d=+h[a+8>>3]/(c*2.0);c=d*d-+h[a>>3]/c;if(!(c<0.0))if(c==0.0){h[b>>3]=-d;a=1;break}else{c=+C(+c)-d;h[b>>3]=c;h[b+8>>3]=d*-2.0-c;a=2;break}else a=0}else a=mV(a,b)|0;while(0);return a|0}function mV(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[a+8>>3];c=+h[a>>3];if(d<1.0e-07&d>-1.0e-07)a=c<1.0e-07&c>-1.0e-07?4:0;else{h[b>>3]=-c/d;a=1}return a|0}function nV(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function oV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=c[a+4>>2]|0;i=(e*3|0)+-2|0;d=c[46748]|0;if((i|0)>(c[46747]|0)){if(!d)d=C_(i<<4)|0;else d=F_(d,i<<4)|0;c[46748]=d;c[46747]=i;h=d;g=d}else{h=d;g=d}f=c[a>>2]|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];G3(h+16|0,f|0,16)|0;e=e+-1|0;d=1;a=2;while(1){if((d|0)>=(e|0))break;j=h+(a+2<<4)|0;k=h+(a+1<<4)|0;m=h+(a<<4)|0;l=f+(d<<4)|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];G3(k|0,l|0,16)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];d=d+1|0;a=a+3|0}l=h+(a<<4)|0;m=f+(d<<4)|0;c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];c[l+12>>2]=c[m+12>>2];G3(h+(a+1<<4)|0,m|0,16)|0;c[b+4>>2]=i;c[b>>2]=g;return}function pV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];d=(+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d);return (d>.0001?1:(d<-.0001)<<31>>31)|0}function qV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;e=+h[a>>3];f=+h[b>>3];if(e!=f){d=+h[c>>3];if(!(e>3];e=+h[c+8>>3];d=+h[b+8>>3];if(!(f>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];j=pV(g,h,i)|0;if((j|0)==0?(c[g>>2]=c[a>>2],c[g+4>>2]=c[a+4>>2],c[g+8>>2]=c[a+8>>2],c[g+12>>2]=c[a+12>>2],c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],(qV(g,h,i)|0)!=0):0)f=1;else k=3;do if((k|0)==3){c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];f=pV(g,h,i)|0;if((f|0)==0?(c[g>>2]=c[a>>2],c[g+4>>2]=c[a+4>>2],c[g+8>>2]=c[a+8>>2],c[g+12>>2]=c[a+12>>2],c[h>>2]=c[b>>2],c[h+4>>2]=c[b+4>>2],c[h+8>>2]=c[b+8>>2],c[h+12>>2]=c[b+12>>2],c[i>>2]=c[e>>2],c[i+4>>2]=c[e+4>>2],c[i+8>>2]=c[e+8>>2],c[i+12>>2]=c[e+12>>2],qV(g,h,i)|0):0){f=1;break};c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];a=pV(g,h,i)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];k=(O(f,j)|0)<0;f=(O(pV(g,h,i)|0,a)|0)>>>31;f=k?f:0}while(0);l=m;return f|0}function sV(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(d*d+c*c)}function tV(a){a=a|0;c[a+24>>2]=uV(c[a+4>>2]|0)|0;vV(a);return}function uV(a){a=a|0;var b=0,d=0,e=0,f=0;e=a+2|0;f=C_(e<<2)|0;b=E_(O(a,a)|0,8)|0;d=0;while(1){if((d|0)>=(a|0))break;c[f+(d<<2)>>2]=b;b=b+(a<<3)|0;d=d+1|0}while(1){if((a|0)>=(e|0))break;c[f+(a<<2)>>2]=0;a=a+1|0}return f|0}function vV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;p=l;l=l+32|0;i=p+16|0;g=p;j=c[a+4>>2]|0;m=c[a+8>>2]|0;n=c[a+16>>2]|0;o=c[a+20>>2]|0;d=c[a+24>>2]|0;b=0;while(1){if((b|0)>=(j|0))break;q=c[o+(b<<2)>>2]|0;e=m+(b<<4)|0;f=m+(q<<4)|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];r=+wV(g,i);f=c[d+(b<<2)>>2]|0;h[f+(q<<3)>>3]=r;h[(c[d+(q<<2)>>2]|0)+(b<<3)>>3]=r;a=b+-1|0;a=(q|0)==(a|0)?b+-2|0:a;while(1){if((a|0)<=-1)break;if((xV(b,a,m,n,o)|0?xV(a,b,m,n,o)|0:0)?(k=m+(a<<4)|0,c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],c[i>>2]=c[k>>2],c[i+4>>2]=c[k+4>>2],c[i+8>>2]=c[k+8>>2],c[i+12>>2]=c[k+12>>2],yV(g,i,j,j,j,m,n)|0):0){c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];r=+wV(g,i);h[f+(a<<3)>>3]=r;h[(c[d+(a<<2)>>2]|0)+(b<<3)>>3]=r}a=a+-1|0}b=b+1|0}l=p;return}function wV(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0;e=l;l=l+32|0;f=e+16|0;g=e;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];d=+C(+(+sV(g,f)));l=e;return +d}function xV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;h=g+48|0;i=g+32|0;j=g+16|0;k=g;n=d+(c[f+(a<<2)>>2]<<4)|0;m=d+(a<<4)|0;e=d+(c[e+(a<<2)>>2]<<4)|0;f=d+(b<<4)|0;c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];f=zV(k,j,i,h)|0;l=g;return f|0}function yV(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+64|0;n=p+48|0;m=p+32|0;k=p+16|0;j=p;i=0;while(1){if((i|0)>=(d|0)){o=4;break}r=g+(i<<4)|0;q=g+(c[h+(i<<2)>>2]<<4)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];if(!(rV(j,k,m,n)|0))i=i+1|0;else{e=0;break}}a:do if((o|0)==4)while(1){if((e|0)>=(f|0)){e=1;break a}q=g+(e<<4)|0;r=g+(c[h+(e<<2)>>2]<<4)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];c[m+12>>2]=c[q+12>>2];c[n>>2]=c[r>>2];c[n+4>>2]=c[r+4>>2];c[n+8>>2]=c[r+8>>2];c[n+12>>2]=c[r+12>>2];if(!(rV(j,k,m,n)|0)){e=e+1|0;o=4}else{e=0;break}}while(0);l=p;return e|0}function zV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=l;l=l+48|0;h=g+32|0;i=g+16|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];f=pV(j,i,h)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];e=pV(j,i,h)|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];d=(pV(j,i,h)|0)>0;l=g;return (d?e|f:e&f)>>>31^1|0}function AV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+80|0;j=s+64|0;i=s+48|0;g=s+32|0;k=s+16|0;o=s;p=c[a+4>>2]|0;q=c[a+8>>2]|0;r=c[a+16>>2]|0;m=c[a+20>>2]|0;n=C_((p<<3)+16|0)|0;if((b|0)==-2222){c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];b=BV(a,j)|0}if((b|0)>-1){a=c[a+12>>2]|0;f=c[a+(b+1<<2)>>2]|0;a=c[a+(b<<2)>>2]|0}else{f=p;a=p}b=0;while(1){if((b|0)>=(a|0)){b=a;break}u=q+(b<<4)|0;c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];c[o+8>>2]=c[u+8>>2];c[o+12>>2]=c[u+12>>2];u=q+(c[m+(b<<2)>>2]<<4)|0;t=q+(c[r+(b<<2)>>2]<<4)|0;c[k>>2]=c[u>>2];c[k+4>>2]=c[u+4>>2];c[k+8>>2]=c[u+8>>2];c[k+12>>2]=c[u+12>>2];c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];if((zV(k,g,i,j)|0)!=0?(c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[j>>2]=c[o>>2],c[j+4>>2]=c[o+4>>2],c[j+8>>2]=c[o+8>>2],c[j+12>>2]=c[o+12>>2],(yV(i,j,a,f,p,q,r)|0)!=0):0){c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];e=+wV(i,j)}else e=0.0;h[n+(b<<3)>>3]=e;b=b+1|0}while(1){if((b|0)>=(f|0)){b=f;break}h[n+(b<<3)>>3]=0.0;b=b+1|0}while(1){if((b|0)>=(p|0))break;t=q+(b<<4)|0;c[o>>2]=c[t>>2];c[o+4>>2]=c[t+4>>2];c[o+8>>2]=c[t+8>>2];c[o+12>>2]=c[t+12>>2];t=q+(c[m+(b<<2)>>2]<<4)|0;u=q+(c[r+(b<<2)>>2]<<4)|0;c[k>>2]=c[t>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[k+12>>2]=c[t+12>>2];c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];if((zV(k,g,i,j)|0)!=0?(c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[j>>2]=c[o>>2],c[j+4>>2]=c[o+4>>2],c[j+8>>2]=c[o+8>>2],c[j+12>>2]=c[o+12>>2],(yV(i,j,a,f,p,q,r)|0)!=0):0){c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];e=+wV(i,j)}else e=0.0;h[n+(b<<3)>>3]=e;b=b+1|0}h[n+(p<<3)>>3]=0.0;h[n+(p+1<<3)>>3]=0.0;l=s;return n|0}function BV(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;f=m+8|0;e=m;h=m+24|0;i=a+8|0;j=a+12|0;k=h+4|0;d=0;while(1){if((d|0)>=(c[a>>2]|0)){d=-1111;break}o=c[j>>2]|0;n=c[o+(d<<2)>>2]|0;c[h>>2]=(c[i>>2]|0)+(n<<4);g=d+1|0;c[k>>2]=(c[o+(g<<2)>>2]|0)-n;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(!(wU(e,f)|0))d=g;else break}l=m;return d|0}function CV(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;n=t+48|0;m=t+32|0;p=t+16|0;o=t;r=c[f+4>>2]|0;s=c[f+8>>2]|0;q=c[f+16>>2]|0;g=(e|0)<0;do if((b|0)<0)if(g){g=0;i=0;f=0;h=0}else{b=c[f+12>>2]|0;f=0;h=0;i=e;j=b;b=b+(e<<2)|0;k=9}else{if(g){k=c[f+12>>2]|0;f=0;h=0;i=b;j=k;b=k+(b<<2)|0;k=9;break}g=c[f+12>>2]|0;if((b|0)>(e|0)){f=c[g+(e+1<<2)>>2]|0;h=c[g+(e<<2)>>2]|0;i=b;j=g;b=g+(b<<2)|0;k=9;break}else{f=c[g+(b+1<<2)>>2]|0;h=c[g+(b<<2)>>2]|0;i=e;j=g;b=g+(e<<2)|0;k=9;break}}while(0);if((k|0)==9){g=c[j+(i+1<<2)>>2]|0;i=c[b>>2]|0}b=0;while(1){if((b|0)>=(h|0)){k=13;break}j=s+(b<<4)|0;e=s+(c[q+(b<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[m>>2]=c[j>>2];c[m+4>>2]=c[j+4>>2];c[m+8>>2]=c[j+8>>2];c[m+12>>2]=c[j+12>>2];c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];if(!(rV(o,p,m,n)|0))b=b+1|0;else{g=0;break}}a:do if((k|0)==13){while(1){if((f|0)>=(i|0))break;e=s+(f<<4)|0;k=s+(c[q+(f<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];if(!(rV(o,p,m,n)|0)){f=f+1|0;k=13}else{g=0;break a}}while(1){if((g|0)>=(r|0)){g=1;break a}e=s+(g<<4)|0;k=s+(c[q+(g<<2)>>2]<<4)|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];if(!(rV(o,p,m,n)|0))g=g+1|0;else{g=0;break}}}while(0);l=t;return g|0}function DV(a){a=a|0;return EV(a,0,0)|0}function EV(a,b,c){a=a|0;b=b|0;c=c|0;return FV(a,b,c,0)|0}function FV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!d){g=C_(496)|0;if(!g)g=0;else{c[g+12>>2]=35;c[g+16>>2]=105;c[g+20>>2]=103;d=35;h=6}}else{g=kb[c[d>>2]&63](496)|0;if(!g)g=0;else{h=c[d>>2]|0;c[g+12>>2]=h;c[g+16>>2]=c[d+4>>2];c[g+20>>2]=c[d+8>>2];d=h;h=6}}do if((h|0)==6){c[g+8>>2]=0;c[g+32>>2]=0;c[g+376>>2]=16;j=g+12|0;i=kb[d&63](256)|0;d=g+388|0;c[d>>2]=i;if(!i){tb[c[g+20>>2]&127](g);g=0;break}h=kb[c[j>>2]&63](1024)|0;i=g+44|0;c[i>>2]=h;if(!h){e=g+20|0;tb[c[e>>2]&127](c[d>>2]|0);tb[c[e>>2]&127](g);g=0;break}c[g+48>>2]=h+1024;if(!f){f=GV(j)|0;c[g+352>>2]=f;if(!f){e=g+20|0;tb[c[e>>2]&127](c[i>>2]|0);tb[c[e>>2]&127](c[d>>2]|0);tb[c[e>>2]&127](g);g=0;break}}else c[g+352>>2]=f;c[g+372>>2]=0;c[g+364>>2]=0;c[g+300>>2]=0;c[g+464>>2]=0;c[g+460>>2]=0;c[g+124>>2]=0;c[g+244>>2]=0;d=g+468|0;a[d>>0]=33;h=g+232|0;a[h>>0]=0;a[g+233>>0]=0;c[g+392>>2]=0;c[g+396>>2]=0;a[g+400>>0]=0;f=g+228|0;c[f>>2]=0;HV(g+412|0,j);HV(g+436|0,j);IV(g,b);if(b|0?(c[f>>2]|0)==0:0){JV(g);g=0;break}if(!e){c[g+224>>2]=TX()|0;break}else{a[h>>0]=1;c[g+224>>2]=xZ()|0;a[d>>0]=a[e>>0]|0;break}}while(0);return g|0}function GV(b){b=b|0;var d=0;d=kb[c[b>>2]&63](188)|0;if(d|0){HV(d+80|0,b);HV(d+104|0,b);QW(d,b);QW(d+20|0,b);QW(d+40|0,b);QW(d+60|0,b);a[d+131>>0]=0;QW(d+132|0,b);c[d+152>>2]=0;c[d+156>>2]=0;a[d+160>>0]=0;b=d+164|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;a[d+128>>0]=1;a[d+129>>0]=0;a[d+130>>0]=0}return d|0}function HV(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=b;return}function IV(d,e){d=d|0;e=e|0;var f=0,g=0,h=0;c[d+276>>2]=56;EZ(d+252|0);if(e|0)c[d+228>>2]=RV(e,d+12|0)|0;c[d+356>>2]=0;HY(d+148|0,d+144|0,0)|0;c[d>>2]=0;c[d+4>>2]=0;e=d+116|0;g=d+52|0;h=g+64|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=d;c[d+120>>2]=0;e=d+128|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=c[d+8>>2]|0;c[d+24>>2]=e;c[d+28>>2]=e;c[d+36>>2]=0;c[d+40>>2]=0;e=d+312|0;g=d+404|0;c[g>>2]=0;c[g+4>>2]=0;g=d+280|0;f=d+304|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=e;h=g+36|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));b[e+36>>1]=0;a[f>>0]=1;c[d+308>>2]=0;c[d+360>>2]=0;c[d+368>>2]=0;c[d+380>>2]=0;c[d+236>>2]=0;c[d+248>>2]=0;c[d+240>>2]=0;c[d+472>>2]=0;c[d+476>>2]=0;a[d+484>>0]=0;a[d+485>>0]=0;c[d+488>>2]=0;c[d+492>>2]=0;return}function JV(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;if(b|0){e=b+364|0;g=b+20|0;d=c[b+360>>2]|0;while(1){if(!d){d=c[e>>2]|0;if(!d)break;c[e>>2]=0}h=c[d>>2]|0;tb[c[g>>2]&127](c[d+36>>2]|0);KV(c[d+44>>2]|0,b);tb[c[g>>2]&127](d);d=h}e=b+300|0;d=c[b+296>>2]|0;while(1){if(!d){d=c[e>>2]|0;if(!d)break;c[e>>2]=0}h=c[d+8>>2]|0;tb[c[g>>2]&127](d);d=h}KV(c[b+372>>2]|0,b);KV(c[b+368>>2]|0,b);LV(b+412|0);LV(b+436|0);d=b+12|0;tb[c[g>>2]&127](c[b+228>>2]|0);if((a[b+484>>0]|0)==0?(f=c[b+352>>2]|0,f|0):0)MV(f,(c[b+472>>2]|0)==0&1,d);tb[c[g>>2]&127](c[b+388>>2]|0);tb[c[g>>2]&127](c[b+460>>2]|0);tb[c[g>>2]&127](c[b+8>>2]|0);tb[c[g>>2]&127](c[b+44>>2]|0);tb[c[g>>2]&127](c[b+392>>2]|0);tb[c[g>>2]&127](c[b+236>>2]|0);d=c[b+248>>2]|0;if(d|0)tb[d&127](c[b+240>>2]|0);tb[c[g>>2]&127](b)}return}function KV(a,b){a=a|0;b=b|0;var d=0;b=b+20|0;while(1){if(!a)break;d=c[a+4>>2]|0;tb[c[b>>2]&127](c[a+16>>2]|0);tb[c[b>>2]&127](a);a=d}return}function LV(a){a=a|0;var b=0,d=0,e=0;d=a+20|0;b=c[a>>2]|0;while(1){if(!b)break;e=c[b>>2]|0;tb[c[(c[d>>2]|0)+8>>2]&127](b);b=e}b=c[a+4>>2]|0;while(1){if(!b)break;e=c[b>>2]|0;tb[c[(c[d>>2]|0)+8>>2]&127](b);b=e}return}function MV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=a+20|0;NV(f,g);d=d+8|0;while(1){e=OV(f)|0;if(!e)break;if(!(c[e+16>>2]|0))continue;tb[c[d>>2]&127](c[e+20>>2]|0)}PV(a);PV(a+132|0);PV(g);PV(a+40|0);PV(a+60|0);LV(a+80|0);LV(a+104|0);if(b<<24>>24){tb[c[d>>2]&127](c[a+184>>2]|0);tb[c[d>>2]&127](c[a+164>>2]|0)}tb[c[d>>2]&127](a);l=h;return}function NV(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;c[a>>2]=d;c[a+4>>2]=d+(c[b+8>>2]<<2);return}function OV(a){a=a|0;var b=0,d=0,e=0;d=c[a+4>>2]|0;e=c[a>>2]|0;do{if((e|0)==(d|0)){b=0;break}b=e;e=e+4|0;c[a>>2]=e;b=c[b>>2]|0}while(!(b|0));return b|0}function PV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=a+8|0;e=a+16|0;b=0;while(1){f=c[(c[e>>2]|0)+8>>2]|0;g=c[a>>2]|0;if(b>>>0>=(c[d>>2]|0)>>>0)break;tb[f&127](c[g+(b<<2)>>2]|0);b=b+1|0}tb[f&127](g);return}function QV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=SV(a)|0;if(!f){c[a+276>>2]=57;f=TV(a,b,d,e)|0}return f|0}function RV(b,d){b=b|0;d=d|0;var e=0,f=0;e=0;do{f=e;e=e+1|0}while((a[b+f>>0]|0)!=0);d=kb[c[d>>2]&63](e)|0;if(!d)d=0;else F3(d|0,b|0,e|0)|0;return d|0}function SV(b){b=b|0;var d=0;d=b+228|0;if(!(nb[(a[b+232>>0]<<24>>24?35:34)&63](b+148|0,b+144|0,c[d>>2]|0)|0))b=PW(b,c[d>>2]|0)|0;else b=0;return b|0}function TV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+16|0;h=g;c[h>>2]=d;j=b+144|0;i=c[j>>2]|0;i=ob[c[i>>2]&127](i,d,e,h)|0;f=UV(b,c[j>>2]|0,d,e,i,c[h>>2]|0,f,(a[b+480>>0]|0)==0&1)|0;l=g;return f|0}function UV(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0;Ga=l;l=l+16|0;Da=Ga;c[Da>>2]=i;r=c[b+352>>2]|0;s=b+144|0;if((c[s>>2]|0)==(e|0)){p=b+284|0;q=b+288|0;na=b+296|0}else{na=b+296|0;q=c[na>>2]|0;p=q;q=q+4|0}t=k<<24>>24!=0;pa=b+252|0;u=b+80|0;v=b+476|0;w=b+84|0;x=b+320|0;y=b+412|0;z=b+316|0;A=b+424|0;B=b+428|0;C=b+324|0;ra=b+4|0;D=b+485|0;E=r+132|0;F=b+312|0;ta=r+129|0;G=r+128|0;H=r+80|0;I=r+92|0;J=r+96|0;K=b+136|0;L=b+88|0;M=b+488|0;va=b+112|0;wa=r+131|0;xa=b+116|0;ya=r+130|0;za=b+108|0;Aa=b+356|0;N=b+340|0;O=b+132|0;P=b+344|0;Q=b+348|0;R=b+328|0;S=b+349|0;T=b+420|0;U=r+120|0;V=r+116|0;W=b+92|0;X=b+472|0;Y=b+336|0;Z=b+332|0;_=b+96|0;$=b+256|0;aa=b+464|0;ba=b+460|0;ca=r+160|0;da=r+184|0;ea=r+180|0;fa=r+164|0;ga=b+128|0;ha=b+12|0;ia=b+16|0;ja=b+268|0;ka=b+120|0;la=r+176|0;ma=r+168|0;o=e;n=f;e=h;a:while(1){c[p>>2]=n;f=c[Da>>2]|0;c[q>>2]=f;i=f;b:do if((e|0)<1){if(t&(e|0)!=0){m=7;break a}switch(e|0){case -1:{i=5;m=280;break a}case 0:{m=9;break a}case -2:{i=6;break a}case -4:{m=10;break a}case -15:{e=15;break b}default:{}}c[Da>>2]=g;e=0-e|0;i=g}while(0);h=pb[c[pa>>2]&127](pa,e,n,i,o)|0;c:do switch(h|0){case 2:{m=58;break a}case -1:{m=184;break a}case 1:{i=VV(b,0,n,c[Da>>2]|0)|0;if(i|0){m=280;break a}i=c[s>>2]|0;break}case 4:{if(!(c[w>>2]|0))i=1;else{m=WV(y,o,n,c[Da>>2]|0)|0;c[z>>2]=m;if(!m){i=1;m=280;break a}c[B>>2]=c[A>>2];c[C>>2]=0;i=0}c[x>>2]=0;m=274;break}case 7:{i=c[w>>2]|0;if(!i)m=275;else{yb[i&15](c[ra>>2]|0,c[z>>2]|0,c[x>>2]|0,c[C>>2]|0,1);c[z>>2]=0;XV(y);i=o}break}case 57:{i=VV(b,1,n,c[Da>>2]|0)|0;if(i|0){m=280;break a}i=c[s>>2]|0;break}case 6:{a[D>>0]=0;m=YV(b,E,75291,36)|0;c[F>>2]=m;if(!m){i=1;m=280;break a}a[ta>>0]=1;if(!(c[w>>2]|0))m=33;else{if(!(ob[c[o+52>>2]&127](o,n,c[Da>>2]|0,p)|0)){i=32;m=280;break a}i=c[o+64>>2]|0;i=WV(y,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;if(!i){i=1;m=280;break a}ZV(i);c[B>>2]=c[A>>2];c[C>>2]=i;i=0;m=34}break}case 14:{m=33;break}case 8:{i=c[z>>2]|0;if(!i)i=1;else{yb[c[w>>2]&15](c[ra>>2]|0,i,c[x>>2]|0,c[C>>2]|0,0);XV(y);i=0}if(!((c[x>>2]|0)==0?!(a[D>>0]|0):0)){f=a[ta>>0]|0;a[ta>>0]=1;do if(c[M>>2]|0?c[va>>2]|0:0){h=YV(b,E,75291,36)|0;if(!h){i=1;m=280;break a}if(!(a[D>>0]|0))e=h+20|0;else{e=h+20|0;c[e>>2]=c[Aa>>2]}a[wa>>0]=0;if(!(pb[c[va>>2]&127](c[xa>>2]|0,0,c[e>>2]|0,c[h+16>>2]|0,c[h+24>>2]|0)|0)){i=21;m=280;break a}if(!(a[wa>>0]|0)){if(c[x>>2]|0)break;a[ta>>0]=f;break}if(((a[ya>>0]|0)==0?(oa=c[za>>2]|0,oa|0):0)?(kb[oa&63](c[ra>>2]|0)|0)==0:0){i=22;m=280;break a}}while(0);a[D>>0]=0}e=c[L>>2]|0;if(!e)m=274;else{tb[e&127](c[ra>>2]|0);i=o}break}case 34:{m=$V(b,o,n,c[Da>>2]|0)|0;c[N>>2]=m;if(!m){i=1;m=280;break a}else m=80;break}case 22:{m=aW(b,o,n,c[Da>>2]|0)|0;c[P>>2]=m;if(!m){i=1;m=280;break a}a[Q>>0]=0;c[R>>2]=0;a[S>>0]=0;m=80;break}case 23:{a[Q>>0]=1;c[R>>2]=139106;m=80;break}case 24:{a[S>>0]=1;c[R>>2]=139112;m=80;break}case 25:{c[R>>2]=139115;m=80;break}case 26:{c[R>>2]=139121;m=80;break}case 27:{c[R>>2]=139128;m=80;break}case 28:{c[R>>2]=139135;m=80;break}case 29:{c[R>>2]=139144;m=80;break}case 30:{c[R>>2]=139152;m=80;break}case 32:case 31:{if((a[G>>0]|0)!=0?(c[O>>2]|0)!=0:0){if(!(bW(y,(c[R>>2]|0)==0?((h|0)==32?139161:139171):139173)|0)){i=1;m=280;break a}if(!(cW(y,o,n,c[Da>>2]|0)|0)){i=1;m=280;break a}c[R>>2]=c[B>>2];i=o}else m=275;break}case 36:case 35:{if(a[G>>0]|0){if(!(dW(c[N>>2]|0,c[P>>2]|0,a[Q>>0]|0,a[S>>0]|0,0,b)|0)){i=1;m=280;break a}if((c[O>>2]|0)!=0?(qa=c[R>>2]|0,(qa|0)!=0):0){switch(a[qa>>0]|0){case 40:{m=93;break}case 78:{if((a[qa+1>>0]|0)==79)m=93;break}default:{}}if((m|0)==93){m=0;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=41;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=0;c[R>>2]=c[B>>2];c[B>>2]=c[A>>2]}c[q>>2]=n;zb[c[O>>2]&15](c[ra>>2]|0,c[c[N>>2]>>2]|0,c[c[P>>2]>>2]|0,c[R>>2]|0,0,(h|0)==36&1);XV(y);i=o}else m=275}else m=275;break}case 38:case 37:{if(a[G>>0]|0){i=c[o+64>>2]|0;i=fW(b,o,a[Q>>0]|0,n+i|0,(c[Da>>2]|0)+(0-i)|0,H)|0;if(i|0){m=280;break a}e=c[J>>2]|0;c[J>>2]=c[I>>2];if(!(dW(c[N>>2]|0,c[P>>2]|0,a[Q>>0]|0,0,e,b)|0)){i=1;m=280;break a}if((c[O>>2]|0)!=0?(sa=c[R>>2]|0,(sa|0)!=0):0){switch(a[sa>>0]|0){case 40:{m=108;break}case 78:{if((a[sa+1>>0]|0)==79)m=108;break}default:{}}if((m|0)==108){m=0;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=41;i=c[A>>2]|0;if((i|0)==(c[T>>2]|0)){if(!((eW(y)|0)<<24>>24)){i=1;m=280;break a}i=c[A>>2]|0}c[A>>2]=i+1;a[i>>0]=0;c[R>>2]=c[B>>2];c[B>>2]=c[A>>2]}c[q>>2]=n;zb[c[O>>2]&15](c[ra>>2]|0,c[c[N>>2]>>2]|0,c[c[P>>2]>>2]|0,c[R>>2]|0,e,(h|0)==38&1);XV(y);i=o}else m=275}else m=275;break}case 12:{if(a[G>>0]|0){i=c[o+64>>2]|0;i=gW(b,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;e=c[F>>2]|0;f=c[U>>2]|0;if(e){c[e+4>>2]=f;c[(c[F>>2]|0)+8>>2]=(c[V>>2]|0)-(c[U>>2]|0);c[U>>2]=c[V>>2];if(!(c[K>>2]|0))e=1;else{c[q>>2]=n;e=c[F>>2]|0;Ab[c[K>>2]&0](c[ra>>2]|0,c[e>>2]|0,d[e+33>>0]|0,c[e+4>>2]|0,c[e+8>>2]|0,c[Aa>>2]|0,0,0,0);e=0}}else{c[V>>2]=f;e=1}if(!i){i=e;m=274}else{m=280;break a}}else m=275;break}case 5:{a[D>>0]=0;a[ta>>0]=1;if(!(c[w>>2]|0)){c[x>>2]=75291;i=1}else{m=c[o+64>>2]|0;m=WV(y,o,n+m|0,(c[Da>>2]|0)+(0-m)|0)|0;c[x>>2]=m;if(!m){i=1;m=280;break a}c[B>>2]=c[A>>2];i=0}if((((a[ya>>0]|0)==0?(c[M>>2]|0)==0:0)?(ua=c[za>>2]|0,ua|0):0)?(kb[ua&63](c[ra>>2]|0)|0)==0:0){i=22;m=280;break a}if(!(c[F>>2]|0)){e=YV(b,E,75291,36)|0;c[F>>2]=e;if(!e){i=1;m=280;break a}c[e+24>>2]=0;m=133}else m=133;break}case 13:{i=1;m=133;break}case 15:{if(((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0)?(c[K>>2]|0)!=0:0){c[q>>2]=n;i=c[F>>2]|0;Ab[c[K>>2]&0](c[ra>>2]|0,c[i>>2]|0,d[i+33>>0]|0,0,0,c[i+20>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0,0);i=o}else m=275;break}case 16:{if((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0){h=WV(H,o,n,c[Da>>2]|0)|0;c[(c[F>>2]|0)+28>>2]=h;if(!(c[(c[F>>2]|0)+28>>2]|0)){i=1;m=280;break a}c[J>>2]=c[I>>2];if(c[W>>2]|0){c[q>>2]=n;i=c[F>>2]|0;zb[c[W>>2]&15](c[ra>>2]|0,c[i>>2]|0,c[i+20>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0,c[i+28>>2]|0);i=o;break c}if(c[K>>2]|0){c[q>>2]=n;i=c[F>>2]|0;Ab[c[K>>2]&0](c[ra>>2]|0,c[i>>2]|0,0,0,0,c[i+20>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0,c[i+28>>2]|0);i=o}else m=275}else m=275;break}case 9:{if(nb[c[o+44>>2]&63](o,n,c[Da>>2]|0)|0){c[F>>2]=0;m=275;break c}if(!(a[G>>0]|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}i=WV(H,o,n,c[Da>>2]|0)|0;if(!i){i=1;m=280;break a}e=YV(b,r,i,36)|0;c[F>>2]=e;if(!e){i=1;m=280;break a}if((c[e>>2]|0)!=(i|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}c[J>>2]=c[I>>2];c[(c[F>>2]|0)+24>>2]=0;a[(c[F>>2]|0)+33>>0]=0;if(!(c[X>>2]|0))i=(c[na>>2]|0)!=0;else i=1;a[(c[F>>2]|0)+34>>0]=(i^1)&1;if(!(c[K>>2]|0))m=275;else i=o;break}case 10:{if(!(a[G>>0]|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}i=WV(H,o,n,c[Da>>2]|0)|0;if(!i){i=1;m=280;break a}e=YV(b,E,i,36)|0;c[F>>2]=e;if(!e){i=1;m=280;break a}if((c[e>>2]|0)!=(i|0)){c[I>>2]=c[J>>2];c[F>>2]=0;m=275;break c}c[J>>2]=c[I>>2];c[(c[F>>2]|0)+24>>2]=0;a[(c[F>>2]|0)+33>>0]=1;if(!(c[X>>2]|0))i=(c[na>>2]|0)!=0;else i=1;a[(c[F>>2]|0)+34>>0]=(i^1)&1;if(!(c[K>>2]|0))m=275;else i=o;break}case 18:{c[Y>>2]=0;c[Z>>2]=0;if(!(c[_>>2]|0))m=275;else{n=WV(y,o,n,c[Da>>2]|0)|0;c[Z>>2]=n;if(!n){i=1;m=280;break a}c[B>>2]=c[A>>2];i=o}break}case 21:{if(!(ob[c[o+52>>2]&127](o,n,c[Da>>2]|0,p)|0)){i=32;m=280;break a}if(!(c[Z>>2]|0))m=275;else{i=c[o+64>>2]|0;i=WV(y,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;if(!i){i=1;m=280;break a}ZV(i);c[Y>>2]=i;c[B>>2]=c[A>>2];i=o}break}case 19:{if((c[Z>>2]|0)!=0?(c[_>>2]|0)!=0:0){i=c[o+64>>2]|0;i=WV(y,o,n+i|0,(c[Da>>2]|0)+(0-i)|0)|0;if(!i){i=1;m=280;break a}c[q>>2]=n;yb[c[_>>2]&15](c[ra>>2]|0,c[Z>>2]|0,c[Aa>>2]|0,i,c[Y>>2]|0);i=0}else i=1;XV(y);m=274;break}case 20:{if((c[Y>>2]|0)!=0?(c[_>>2]|0)!=0:0){c[q>>2]=n;yb[c[_>>2]&15](c[ra>>2]|0,c[Z>>2]|0,c[Aa>>2]|0,0,c[Y>>2]|0);i=0}else i=1;XV(y);m=274;break}case 58:{if(c[u>>2]|0)hW(b,o,n,c[Da>>2]|0);i=iW(b,o,Da,g,j,k)|0;if(i|0){m=280;break a}if(!(c[Da>>2]|0)){m=189;break a}else i=o;break}case 44:{i=c[aa>>2]|0;do if((c[$>>2]|0)>>>0>=i>>>0){if(!i){h=c[ha>>2]|0;c[aa>>2]=32;h=kb[h&63](32)|0;c[ba>>2]=h;if(!h){m=198;break a}else break}f=c[ia>>2]|0;h=c[ba>>2]|0;i=i<<1;c[aa>>2]=i;i=lb[f&127](h,i)|0;if(!i){m=193;break a}c[ba>>2]=i;i=c[da>>2]|0;if(i|0){i=lb[c[ia>>2]&127](i,c[aa>>2]<<2)|0;if(!i){i=1;m=280;break a}c[da>>2]=i}}while(0);a[(c[ba>>2]|0)+(c[$>>2]|0)>>0]=0;if(a[ca>>0]|0){i=kW(b)|0;if((i|0)<0){i=1;m=280;break a}c[(c[da>>2]|0)+(c[ea>>2]<<2)>>2]=i;c[ea>>2]=(c[ea>>2]|0)+1;c[(c[fa>>2]|0)+(i*28|0)>>2]=6;if(c[ga>>2]|0)i=o;else m=275}else m=275;break}case 50:{i=(c[ba>>2]|0)+(c[$>>2]|0)|0;if((a[i>>0]|0)==124){i=2;m=280;break a}a[i>>0]=44;if((a[ca>>0]|0)!=0?(c[ga>>2]|0)!=0:0)i=o;else m=275;break}case 49:{f=c[ba>>2]|0;e=c[$>>2]|0;i=a[f+e>>0]|0;if(i<<24>>24==44){i=2;m=280;break a}if(i<<24>>24==0&(a[ca>>0]|0)!=0?(Ba=(c[fa>>2]|0)+((c[(c[da>>2]|0)+((c[ea>>2]|0)+-1<<2)>>2]|0)*28|0)|0,(c[Ba>>2]|0)!=3):0){c[Ba>>2]=5;i=(c[ga>>2]|0)==0&1;f=c[ba>>2]|0;e=c[$>>2]|0}else i=1;a[f+e>>0]=124;m=274;break}case 59:case 60:{a[ta>>0]=1;if(c[M>>2]|0){e=c[o+64>>2]|0;e=WV(H,o,n+e|0,(c[Da>>2]|0)+(0-e)|0)|0;if(!e){i=1;m=280;break a}f=YV(b,E,e,0)|0;c[I>>2]=c[J>>2];do if(c[ja>>2]|0){if(!(a[ya>>0]|0)){if(a[ta>>0]|0){m=219;break}}else if(c[na>>2]|0){m=219;break}if(!f){i=11;m=280;break a}if(!(a[f+34>>0]|0)){i=24;m=280;break a}}else m=219;while(0);if((m|0)==219?(m=0,(f|0)==0):0){a[G>>0]=a[ya>>0]|0;if((h|0)!=60){m=275;break c}i=c[ka>>2]|0;if(!i){m=275;break c}vb[i&127](c[ra>>2]|0,e,1);i=o;break c}i=f+32|0;if(a[i>>0]|0){i=12;m=280;break a}if(c[f+4>>2]|0){i=lW(b,f,(h|0)==60&1)|0;e=(i|0)==0;if(e){i=(e^1)&1;m=274;break c}else{m=280;break a}}if(!(c[va>>2]|0)){a[G>>0]=a[ya>>0]|0;m=275;break c}a[wa>>0]=0;a[i>>0]=1;h=(pb[c[va>>2]&127](c[xa>>2]|0,0,c[f+20>>2]|0,c[f+16>>2]|0,c[f+24>>2]|0)|0)==0;a[i>>0]=0;if(h){i=21;m=280;break a}e=a[ya>>0]|0;if(!(a[wa>>0]|0)){a[G>>0]=e;i=o;break c}else i=0}else{e=a[ya>>0]|0;a[G>>0]=e;i=1}if((e<<24>>24==0?(Ca=c[za>>2]|0,(Ca|0)!=0):0)?(kb[Ca&63](c[ra>>2]|0)|0)==0:0){i=22;m=280;break a}else m=274;break}case 40:{if(!(c[ga>>2]|0))m=275;else{n=$V(b,o,n,c[Da>>2]|0)|0;c[N>>2]=n;if(!n){i=1;m=280;break a}c[ea>>2]=0;c[la>>2]=0;a[ca>>0]=1;i=o}break}case 42:case 41:{if(!(a[ca>>0]|0))m=275;else{if(!(c[ga>>2]|0))i=1;else{i=kb[c[ha>>2]&63](20)|0;if(!i){i=1;m=280;break a}m=i+4|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[i>>2]=(h|0)==41?2:1;c[q>>2]=n;vb[c[ga>>2]&127](c[ra>>2]|0,c[c[N>>2]>>2]|0,i);i=0}a[ca>>0]=0;m=274}break}case 43:{if((a[ca>>0]|0)!=0?(c[(c[fa>>2]|0)+((c[(c[da>>2]|0)+((c[ea>>2]|0)+-1<<2)>>2]|0)*28|0)>>2]=3,(c[ga>>2]|0)!=0):0)i=o;else m=275;break}case 51:{e=0;m=247;break}case 53:{e=1;m=247;break}case 52:{e=2;m=247;break}case 54:{e=3;m=247;break}case 45:{f=0;m=258;break}case 47:{f=1;m=258;break}case 46:{f=2;m=258;break}case 48:{f=3;m=258;break}case 55:{if(!(nW(b,o,n,c[Da>>2]|0)|0)){i=1;m=280;break a}else i=o;break}case 56:{if(!(oW(b,o,n,c[Da>>2]|0)|0)){i=1;m=280;break a}else i=o;break}case 0:{if((e|0)==14)i=o;else m=275;break}case 3:{if(!(c[w>>2]|0))m=275;else i=o;break}case 11:{if((a[G>>0]|0)!=0?(c[K>>2]|0)!=0:0)i=o;else m=275;break}case 17:{if(!(c[_>>2]|0))m=275;else i=o;break}case 33:{if((a[G>>0]|0)!=0?(c[O>>2]|0)!=0:0)i=o;else m=275;break}case 39:{if(!(c[ga>>2]|0))m=275;else i=o;break}default:m=275}while(0);if((m|0)==33)if(!(ob[c[o+52>>2]&127](o,n,c[Da>>2]|0,p)|0)){i=32;m=280;break}else{i=1;m=34}else if((m|0)==80){m=0;if((a[G>>0]|0)!=0?(c[O>>2]|0)!=0:0)i=o;else m=275}else if((m|0)==133){m=0;if((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0){e=c[o+64>>2]|0;e=WV(H,o,n+e|0,(c[Da>>2]|0)+(0-e)|0)|0;c[(c[F>>2]|0)+16>>2]=e;e=c[F>>2]|0;if(!(c[e+16>>2]|0)){i=1;m=280;break}c[e+20>>2]=c[Aa>>2];c[J>>2]=c[I>>2];if((h|0)==13&(c[K>>2]|0)!=0)i=o;else m=274}else m=274}else if((m|0)==247){m=0;if(a[ca>>0]|0){i=c[Da>>2]|0;if(e)i=i+(0-(c[o+64>>2]|0))|0;f=kW(b)|0;if((f|0)<0){i=1;m=280;break}c[(c[fa>>2]|0)+(f*28|0)>>2]=4;c[(c[fa>>2]|0)+(f*28|0)+4>>2]=e;i=$V(b,o,n,i)|0;if(!i){i=1;m=280;break}e=c[i>>2]|0;c[(c[fa>>2]|0)+(f*28|0)+8>>2]=e;i=0;do{h=i;i=i+1|0}while((a[e+h>>0]|0)!=0);c[ma>>2]=(c[ma>>2]|0)+i;if(c[ga>>2]|0)i=o;else m=275}else m=275}else if((m|0)==258)if(a[ca>>0]|0){e=(c[ga>>2]|0)==0;i=e&1;m=(c[ea>>2]|0)+-1|0;c[ea>>2]=m;c[(c[fa>>2]|0)+((c[(c[da>>2]|0)+(m<<2)>>2]|0)*28|0)+4>>2]=f;if(!(c[ea>>2]|0)){if(!e){e=mW(b)|0;if(!e){i=1;m=280;break}c[q>>2]=n;vb[c[ga>>2]&127](c[ra>>2]|0,c[c[N>>2]>>2]|0,e)}a[ca>>0]=0;c[ma>>2]=0;m=274}else m=274}else m=275;if((m|0)==34){m=0;if((a[G>>0]|0)!=0?(c[F>>2]|0)!=0:0){e=c[o+64>>2]|0;e=WV(H,o,n+e|0,(c[Da>>2]|0)+(0-e)|0)|0;if(!e){i=1;m=280;break}ZV(e);c[(c[F>>2]|0)+24>>2]=e;c[J>>2]=c[I>>2];if((h|0)==14&(c[K>>2]|0)!=0)i=o;else m=274}else m=274}if((m|0)==274){m=0;if(!(i<<24>>24))i=o;else m=275}if((m|0)==275){m=0;if(!(c[u>>2]|0))i=o;else{hW(b,o,n,c[Da>>2]|0);i=o}}switch(c[v>>2]|0){case 3:{m=278;break a}case 2:{i=35;m=280;break a}default:{}}e=c[Da>>2]|0;o=i;n=e;e=ob[c[i>>2]&127](i,e,g,Da)|0}d:switch(m|0){case 7:{c[j>>2]=n;i=0;break}case 9:{c[p>>2]=f;i=4;break}case 10:{i=(o|0)==(c[s>>2]|0);if(!i?(a[(c[na>>2]|0)+20>>0]|0)==0:0){c[j>>2]=n;i=0;break}if((a[b+484>>0]|0)!=0|i^1)if((pb[c[pa>>2]&127](pa,-4,g,g,o)|0)==-1)i=29;else{c[j>>2]=n;i=0}else i=3;break}case 58:{do if((a[D>>0]|0?(Ea=a[ta>>0]|0,a[ta>>0]=1,c[M>>2]|0):0)?c[va>>2]|0:0){i=YV(b,E,75291,36)|0;if(!i){i=1;break d}Da=i+20|0;c[Da>>2]=c[Aa>>2];a[wa>>0]=0;if(!(pb[c[va>>2]&127](c[xa>>2]|0,0,c[Da>>2]|0,c[i+16>>2]|0,c[i+24>>2]|0)|0)){i=21;break d}if(!(a[wa>>0]|0)){a[ta>>0]=Ea;break}if(((a[ya>>0]|0)==0?(Fa=c[za>>2]|0,Fa|0):0)?(kb[Fa&63](c[ra>>2]|0)|0)==0:0){i=22;break d}}while(0);c[b+276>>2]=58;i=_V(b,n,g,j)|0;break}case 184:{i=(e|0)==28?10:(e|0)==12?17:2;break}case 189:{c[b+276>>2]=59;i=0;break}case 193:{c[aa>>2]=(c[aa>>2]|0)>>>1;i=1;break}case 198:{c[aa>>2]=0;i=1;break}case 278:{c[j>>2]=c[Da>>2];i=0;break}case 280:break}l=Ga;return i|0}function VV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;p=q+16|0;m=q+12|0;i=q+8|0;j=q+4|0;k=q;c[p>>2]=0;c[m>>2]=0;c[i>>2]=0;c[k>>2]=-1;n=b+144|0;o=b+284|0;g=(d|0)!=0;a:do if(rb[(a[b+232>>0]<<24>>24?2:1)&3](d,c[n>>2]|0,e,f,o,i,j,p,m,k)|0){if((c[k>>2]|0)==1&(g^1)?(a[(c[b+352>>2]|0)+130>>0]=1,h=b+488|0,(c[h>>2]|0)==1):0)c[h>>2]=0;h=b+140|0;if(!(c[h>>2]|0))if(!(c[b+80>>2]|0)){e=0;d=0}else{hW(b,c[n>>2]|0,e,f);e=0;d=0}else{d=c[p>>2]|0;if(!d)d=0;else{f=c[n>>2]|0;d=WV(b+436|0,f,d,d+(lb[c[f+28>>2]&127](f,d)|0)|0)|0;if(!d){d=1;break}c[b+452>>2]=c[b+448>>2]}g=c[i>>2]|0;if(g){i=c[n>>2]|0;g=WV(b+436|0,i,g,(c[j>>2]|0)+(0-(c[i+64>>2]|0))|0)|0;if(!g){d=1;break}}else g=0;xb[c[h>>2]&31](c[b+4>>2]|0,g,d,c[k>>2]|0);e=g}do if(!(c[b+228>>2]|0)){g=c[m>>2]|0;h=g;if(g|0){k=c[g+64>>2]|0;m=c[n>>2]|0;if((k|0)==(c[m+64>>2]|0)?(k|0)!=2|(g|0)==(m|0):0){c[n>>2]=h;break}c[o>>2]=c[p>>2];d=19;break a}g=c[p>>2]|0;if(g|0){h=b+436|0;if(!d){d=c[n>>2]|0;d=WV(h,d,g,g+(lb[c[d+28>>2]&127](d,g)|0)|0)|0;if(!d){d=1;break a}}d=PW(b,d)|0;XV(h);if((d|0)!=18)break a;c[o>>2]=c[p>>2];d=18;break a}}while(0);if((d|0)!=0|(e|0)!=0){XV(b+436|0);d=0}else d=0}else d=g?31:30;while(0);l=q;return d|0}function WV(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;do if(!(cW(b,d,e,f)|0))d=0;else{e=b+12|0;d=c[e>>2]|0;if((d|0)==(c[b+8>>2]|0)){if(!((eW(b)|0)<<24>>24)){d=0;break}d=c[e>>2]|0}c[e>>2]=d+1;a[d>>0]=0;d=c[b+16>>2]|0}while(0);return d|0}function XV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+4|0;b=c[e>>2]|0;a:do if(!b){c[e>>2]=c[a>>2];b=a}else{d=c[a>>2]|0;while(1){if(!d){b=a;break a}g=c[d>>2]|0;c[d>>2]=b;c[e>>2]=d;f=d;d=g;b=f}}while(0);c[b>>2]=0;c[a+16>>2]=0;c[a+12>>2]=0;c[a+8>>2]=0;return}function YV(b,e,f,g){b=b|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,s=0,t=0,u=0,v=0,w=0,x=0;w=e+8|0;a:do if(!(c[w>>2]|0))if(g){a[e+4>>0]=6;c[w>>2]=64;h=e+16|0;i=kb[c[c[h>>2]>>2]&63](256)|0;c[e>>2]=i;if(!i){c[w>>2]=0;h=0;break}else{H3(i|0,0,256)|0;j=NW(b,f)|0;j=(c[w>>2]|0)+-1&j;i=e;o=27;break}}else h=0;else{v=NW(b,f)|0;k=c[w>>2]|0;j=k+-1|0;l=c[e>>2]|0;m=v&0-k;u=e+4|0;n=j>>>2;i=0;j=j&v;while(1){h=c[l+(j<<2)>>2]|0;if(!h)break;if((OW(f,c[h>>2]|0)|0)<<24>>24)break a;if(!(i<<24>>24))h=(m>>>((d[u>>0]|0)+-1|0)&n|1)&255;else h=i;t=h&255;i=h;j=j-t+(j>>>0>>0?k:0)|0}if(g){i=a[u>>0]|0;h=i&255;if(!((c[e+12>>2]|0)>>>(h+-1|0))){h=e+16|0;i=e;o=27;break}q=h+1&255;j=i+1&255;s=1<>2]>>2]&63](i)|0;if(t){H3(t|0,0,i|0)|0;p=0-s|0;n=j+-1|0;o=r>>>2;m=0;while(1){if(m>>>0>=(c[w>>2]|0)>>>0)break;i=c[(c[e>>2]|0)+(m<<2)>>2]|0;if(i|0){i=NW(b,c[i>>2]|0)|0;k=((i&p)>>>n&o|1)&255;i=i&r;j=0;while(1){l=t+(i<<2)|0;if(!(c[l>>2]|0))break;l=j<<24>>24==0?k:j;x=l&255;i=i+(i>>>0>>0?s:0)-x|0;j=l}c[l>>2]=c[(c[e>>2]|0)+(m<<2)>>2]}m=m+1|0}tb[c[(c[h>>2]|0)+8>>2]&127](c[e>>2]|0);c[e>>2]=t;a[u>>0]=q;c[w>>2]=s;k=((v&p)>>>n&o|1)&255;i=r&v;j=0;while(1){if(!(c[t+(i<<2)>>2]|0)){j=i;i=e;o=27;break a}x=j<<24>>24==0?k:j;w=x&255;i=i+(i>>>0>>0?s:0)-w|0;j=x}}else h=0}else h=0}while(0);if((o|0)==27){h=kb[c[c[h>>2]>>2]&63](g)|0;c[(c[i>>2]|0)+(j<<2)>>2]=h;h=c[(c[i>>2]|0)+(j<<2)>>2]|0;if(!h)h=0;else{H3(h|0,0,g|0)|0;c[c[(c[i>>2]|0)+(j<<2)>>2]>>2]=f;h=e+12|0;c[h>>2]=(c[h>>2]|0)+1;h=c[(c[i>>2]|0)+(j<<2)>>2]|0}}return h|0}function ZV(b){b=b|0;var c=0,d=0,e=0;e=b;c=b;while(1){d=a[e>>0]|0;if(!(d<<24>>24))break;switch(d<<24>>24|0){case 10:case 13:case 32:{if((c|0)!=(b|0)){if((a[c+-1>>0]|0)!=32){a[c>>0]=32;c=c+1|0}}else c=b;break}default:{a[c>>0]=d;c=c+1|0}}e=e+1|0}if((c|0)!=(b|0)){b=c+-1|0;b=(a[b>>0]|0)==32?b:c}a[b>>0]=0;return}function _V(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;d=rW(b,0,c[b+144>>2]|0,d,e,f,(a[b+480>>0]|0)==0&1)|0;if((d|0)==0?(AW(b)|0)<<24>>24==0:0)d=1;return d|0}function $V(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+352>>2]|0;b=WV(g+80|0,b,d,e)|0;do if((b|0)!=0?(f=YV(a,g+20|0,b,24)|0,(f|0)!=0):0)if((c[f>>2]|0)==(b|0)){c[g+96>>2]=c[g+92>>2];if(!(CW(a,f)|0)){f=0;break}}else c[g+92>>2]=c[g+96>>2];else f=0;while(0);return f|0}function aW(b,d,e,f){b=b|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;m=c[b+352>>2]|0;k=m+80|0;n=m+92|0;h=c[n>>2]|0;l=m+88|0;if((h|0)==(c[l>>2]|0))if(!((eW(k)|0)<<24>>24))g=0;else{h=c[n>>2]|0;i=4}else i=4;a:do if((i|0)==4){c[n>>2]=h+1;a[h>>0]=0;d=WV(k,d,e,f)|0;if((d|0)!=0?(j=d+1|0,g=YV(b,m+40|0,j,12)|0,(g|0)!=0):0){if((c[g>>2]|0)!=(j|0)){c[n>>2]=c[m+96>>2];break}h=c[n>>2]|0;i=m+96|0;c[i>>2]=h;if(a[b+232>>0]|0){e=a[j>>0]|0;b:do if(e<<24>>24==120)if((((a[d+2>>0]|0)==109?(a[d+3>>0]|0)==108:0)?(a[d+4>>0]|0)==110:0)?(a[d+5>>0]|0)==115:0){switch(a[d+6>>0]|0){case 0:{h=m+152|0;break}case 58:{h=YV(b,m+60|0,d+7|0,8)|0;break}default:{f=0;d=120;break b}}c[g+4>>2]=h;a[g+9>>0]=1;break a}else{f=0;d=120}else{f=0;d=e}while(0);c:while(1){switch(d<<24>>24){case 0:break a;case 58:{e=0;break c}default:{}}d=f+1|0;f=d;d=a[j+d>>0]|0}while(1){d=(h|0)==(c[l>>2]|0);if((e|0)>=(f|0))break;if(d){if(!((eW(k)|0)<<24>>24)){g=0;break a}h=c[n>>2]|0}d=a[j+e>>0]|0;c[n>>2]=h+1;a[h>>0]=d;e=e+1|0;h=c[n>>2]|0}if(d){if(!((eW(k)|0)<<24>>24)){g=0;break}h=c[n>>2]|0}c[n>>2]=h+1;a[h>>0]=0;h=YV(b,m+60|0,c[i>>2]|0,8)|0;c[g+4>>2]=h;if(h){d=c[i>>2]|0;if((c[h>>2]|0)==(d|0)){c[i>>2]=c[n>>2];break}else{c[n>>2]=d;break}}else g=0}}else g=0}while(0);return g|0}function bW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=b+12|0;h=b+8|0;while(1){e=a[d>>0]|0;if(!(e<<24>>24)){i=7;break}f=c[g>>2]|0;if((f|0)==(c[h>>2]|0)){if(!((eW(b)|0)<<24>>24)){d=0;break}f=c[g>>2]|0;e=a[d>>0]|0}c[g>>2]=f+1;a[f>>0]=e;d=d+1|0}if((i|0)==7)d=c[b+16>>2]|0;return d|0}function cW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;c[h>>2]=d;g=a+12|0;if((c[g>>2]|0)==0?(eW(a)|0)<<24>>24==0:0)d=0;else f=3;a:do if((f|0)==3){d=b+56|0;f=a+8|0;while(1){if((pb[c[d>>2]&127](b,h,e,g,c[f>>2]|0)|0)>>>0<2)break;if(!((eW(a)|0)<<24>>24)){d=0;break a}}d=c[a+16>>2]|0}while(0);l=i;return d|0}function dW(b,d,e,f,g,h){b=b|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;i=f<<24>>24==0;n=b+12|0;m=c[n>>2]|0;a:do if(!(i&(g|0)==0)){j=b+20|0;f=0;while(1){if((f|0)>=(m|0))break;if((c[(c[j>>2]|0)+(f*12|0)>>2]|0)==(d|0)){f=1;break a}else f=f+1|0}if((!i?(k=b+8|0,(c[k>>2]|0)==0):0)?(a[d+9>>0]|0)==0:0){c[k>>2]=d;l=9}else l=9}else l=9;while(0);b:do if((l|0)==9){j=b+16|0;do if((m|0)==(c[j>>2]|0))if(!m){c[j>>2]=8;f=kb[c[h+12>>2]&63](96)|0;c[b+20>>2]=f;if(f|0)break;c[j>>2]=0;f=0;break b}else{i=b+20|0;f=lb[c[h+16>>2]&127](c[i>>2]|0,m*24|0)|0;if(!f){f=0;break b}c[j>>2]=m<<1;c[i>>2]=f;break}else f=c[b+20>>2]|0;while(0);h=c[n>>2]|0;c[f+(h*12|0)>>2]=d;c[f+(h*12|0)+8>>2]=g;a[f+(h*12|0)+4>>0]=e;if(!(e<<24>>24))a[d+8>>0]=1;c[n>>2]=(c[n>>2]|0)+1;f=1}while(0);return f|0}function eW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=a+4|0;e=c[b>>2]|0;do if(e){f=a+16|0;g=c[f>>2]|0;if(!g){c[a>>2]=e;c[b>>2]=c[e>>2];c[e>>2]=0;l=c[a>>2]|0;b=l+8|0;c[f>>2]=b;c[a+8>>2]=(c[l+4>>2]|0)+(l+8);c[a+12>>2]=b;b=1;break}d=a+8|0;if(((c[d>>2]|0)-g|0)<(c[e+4>>2]|0)){k=c[e>>2]|0;c[e>>2]=c[a>>2];l=c[b>>2]|0;c[a>>2]=l;c[b>>2]=k;b=c[f>>2]|0;F3(l+8|0,b|0,(c[d>>2]|0)-b|0)|0;b=c[a>>2]|0;l=a+12|0;c[l>>2]=(c[l>>2]|0)-(c[f>>2]|0)+(b+8);c[f>>2]=b+8;c[d>>2]=(c[b+4>>2]|0)+(b+8);b=1}else h=6}else h=6;while(0);a:do if((h|0)==6){e=c[a>>2]|0;k=a+16|0;do if(!e){i=k;b=c[k>>2]|0}else{j=c[k>>2]|0;b=j;if((j|0)!=(e+8|0)){i=k;break}f=a+8|0;g=(c[f>>2]|0)-b<<1;h=a+12|0;d=(c[h>>2]|0)-b|0;if((g|0)<0){b=0;break a}b=MW(g)|0;if(!b){b=0;break a}b=lb[c[(c[a+20>>2]|0)+4>>2]&127](e,b)|0;if(!b){b=0;break a}c[a>>2]=b;c[b+4>>2]=g;b=c[a>>2]|0;c[h>>2]=b+8+d;c[k>>2]=b+8;c[f>>2]=b+8+g;b=1;break a}while(0);j=a+8|0;b=(c[j>>2]|0)-b|0;if((b|0)>=0){if((b|0)>=1024){b=b<<1;if((b|0)<0){b=0;break}}else b=1024;d=MW(b)|0;if((d|0)!=0?(l=kb[c[c[a+20>>2]>>2]&63](d)|0,(l|0)!=0):0){c[l+4>>2]=b;c[l>>2]=c[a>>2];c[a>>2]=l;h=a+12|0;a=c[h>>2]|0;e=c[k>>2]|0;d=a;f=e;if((a|0)==(e|0)){g=l+8|0;e=f}else{g=l+8|0;F3(g|0,e|0,d-f|0)|0;e=c[i>>2]|0;d=c[h>>2]|0}c[h>>2]=l+8+(d-e);c[k>>2]=g;c[j>>2]=l+8+b;b=1}else b=0}else b=0}while(0);return b|0}function fW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;b=LW(b,d,e,f,g,h)|0;do if(!b){d=h+12|0;b=c[d>>2]|0;if((e<<24>>24==0?(c[h+16>>2]|0)!=(b|0):0)?(i=b+-1|0,(a[i>>0]|0)==32):0){c[d>>2]=i;b=i}if((b|0)==(c[h+8>>2]|0)){if(!((eW(h)|0)<<24>>24)){b=1;break}b=c[d>>2]|0}c[d>>2]=b+1;a[b>>0]=0;b=0}while(0);return b|0}function gW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+16|0;B=H;C=H+4|0;g=c[b+352>>2]|0;D=g+104|0;F=b+272|0;E=c[F>>2]|0;c[F>>2]=1;if((c[D>>2]|0)==0?(eW(D)|0)<<24>>24==0:0)g=1;else{n=d+20|0;o=b+484|0;p=b+144|0;q=b+412|0;r=d+64|0;s=g+132|0;t=b+428|0;u=b+424|0;v=b+224|0;w=b+112|0;m=g+130|0;x=g+128|0;y=g+131|0;z=b+116|0;A=g+112|0;j=g+116|0;k=d+40|0;a:while(1){b:do switch(ob[c[n>>2]&127](d,e,f,B)|0){case -4:{g=0;break a}case -1:{G=37;break a}case 0:{G=39;break a}case 28:{if((a[o>>0]|0)==0?(c[p>>2]|0)==(d|0):0){G=19;break a}g=c[r>>2]|0;g=WV(q,d,e+g|0,(c[B>>2]|0)+(0-g)|0)|0;if(!g){g=1;break a}h=YV(b,s,g,0)|0;c[u>>2]=c[t>>2];if(!h){G=9;break a}i=h+32|0;if(a[i>>0]|0){G=11;break a}g=h+16|0;if(!(c[g>>2]|0)){a[i>>0]=1;g=c[h+4>>2]|0;g=gW(b,c[v>>2]|0,g,g+(c[h+8>>2]|0)|0)|0;a[i>>0]=0;if(!g)break b;else break a}if(c[w>>2]|0){a[y>>0]=0;a[i>>0]=1;h=(pb[c[w>>2]&127](c[z>>2]|0,0,c[h+20>>2]|0,c[g>>2]|0,c[h+24>>2]|0)|0)==0;a[i>>0]=0;if(h){g=21;break a}if(a[y>>0]|0)break b}a[x>>0]=a[m>>0]|0;break}case 6:case 9:{if(!(cW(D,d,e,c[B>>2]|0)|0)){g=1;break a}break}case -3:{c[B>>2]=e+(c[r>>2]|0);G=22;break}case 7:{G=22;break}case 10:{g=lb[c[k>>2]&127](d,e)|0;if((g|0)<0){G=27;break a}h=gX(g,C)|0;e=0;while(1){if((e|0)>=(h|0))break;g=c[j>>2]|0;if((c[A>>2]|0)==(g|0)){if(!((eW(D)|0)<<24>>24)){g=1;G=35;break a}g=c[j>>2]|0}i=a[C+e>>0]|0;c[j>>2]=g+1;a[g>>0]=i;e=e+1|0}break}default:{G=41;break a}}while(0);if((G|0)==22){G=0;g=c[j>>2]|0;if((c[A>>2]|0)==(g|0)){if(!((eW(D)|0)<<24>>24)){g=1;break}g=c[j>>2]|0}c[j>>2]=g+1;a[g>>0]=10}e=c[B>>2]|0}if((G|0)==9){a[x>>0]=a[m>>0]|0;g=0}else if((G|0)==11)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=12}else g=12;else if((G|0)==19){c[b+284>>2]=e;g=10}else if((G|0)==27)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=14;G=35}else{g=14;G=35}else if((G|0)==37)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=4}else g=4;else if((G|0)==39)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=c[B>>2];g=4}else g=4;else if((G|0)==41)if((c[p>>2]|0)==(d|0)){c[b+284>>2]=e;g=23}else g=23;c[F>>2]=E}l=H;return g|0}function hW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;n=p;o=p+4|0;c[n>>2]=e;if(!(a[d+68>>0]|0)){if((c[b+144>>2]|0)==(d|0)){g=b+288|0;h=b+284|0}else{h=c[b+296>>2]|0;g=h+4|0}i=b+44|0;j=d+56|0;k=b+48|0;m=b+80|0;e=b+4|0;do{c[o>>2]=c[i>>2];b=pb[c[j>>2]&127](d,n,f,o,c[k>>2]|0)|0;c[g>>2]=c[n>>2];q=c[i>>2]|0;vb[c[m>>2]&127](c[e>>2]|0,q,(c[o>>2]|0)-q|0);c[h>>2]=c[n>>2]}while(b>>>0>1)}else vb[c[b+80>>2]&127](c[b+4>>2]|0,e,f-e|0);l=p;return}function iW(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=c[d>>2]|0;if((c[a+144>>2]|0)==(b|0)){i=a+284|0;c[i>>2]=k;h=a+288|0}else{i=c[a+296>>2]|0;h=i+4|0}c[i>>2]=k;c[d>>2]=0;n=ob[c[b+12>>2]&127](b,k,e,j)|0;e=c[j>>2]|0;c[h>>2]=e;switch(n|0){case 42:{if(c[a+80>>2]|0){hW(a,b,k,e);e=c[j>>2]|0}c[d>>2]=e;c[f>>2]=e;e=(c[a+476>>2]|0)==2?35:0;break}case 0:{c[i>>2]=e;e=4;break}case -2:{if(!(g<<24>>24))e=6;else{c[f>>2]=k;e=0}break}case -4:case -1:{if(!(g<<24>>24))e=2;else{c[f>>2]=k;e=0}break}default:{c[i>>2]=e;e=23}}l=m;return e|0}function jW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;d=iW(b,c[b+144>>2]|0,g,e,f,(a[b+480>>0]|0)==0&1)|0;g=c[g>>2]|0;if(!((d|0)!=0|(g|0)==0)){c[b+276>>2]=57;d=TV(b,g,e,f)|0}l=h;return d|0}function kW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=c[a+352>>2]|0;j=i+184|0;if(!(c[j>>2]|0)){b=kb[c[a+12>>2]&63](c[a+464>>2]<<2)|0;c[j>>2]=b;if(!b)b=-1;else{c[b>>2]=0;d=4}}else d=4;do if((d|0)==4){h=i+176|0;b=c[h>>2]|0;g=i+172|0;d=c[g>>2]|0;f=i+164|0;e=c[f>>2]|0;if(b>>>0>>0)g=e;else{if(!e){b=kb[c[a+12>>2]&63](896)|0;if(!b){b=-1;break}else{d=b;b=32}}else{b=lb[c[a+16>>2]&127](e,d*56|0)|0;if(!b){b=-1;break}d=b;b=c[g>>2]<<1}c[g>>2]=b;c[f>>2]=d;b=c[h>>2]|0;g=d}c[h>>2]=b+1;d=c[i+180>>2]|0;if(d|0){a=c[(c[j>>2]|0)+(d+-1<<2)>>2]|0;f=g+(a*28|0)+16|0;d=c[f>>2]|0;if(d|0)c[g+(d*28|0)+24>>2]=b;d=g+(a*28|0)+20|0;e=c[d>>2]|0;if(!e)c[g+(a*28|0)+12>>2]=b;c[f>>2]=b;c[d>>2]=e+1}j=g+(b*28|0)+12|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0}while(0);return b|0}function lW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;o=b+300|0;f=c[o>>2]|0;if(!f){f=kb[c[b+12>>2]&63](24)|0;if(!f)f=1;else{m=f;g=4}}else{c[o>>2]=c[f+8>>2];m=f;g=4}do if((g|0)==4){h=d+32|0;a[h>>0]=1;i=d+12|0;c[i>>2]=0;j=b+296|0;k=m+8|0;c[k>>2]=c[j>>2];c[j>>2]=m;c[m+12>>2]=d;f=b+308|0;c[m+16>>2]=c[f>>2];a[m+20>>0]=e;c[m>>2]=0;c[m+4>>2]=0;g=c[d+4>>2]|0;e=g+(c[d+8>>2]|0)|0;c[n>>2]=g;if(!(a[d+33>>0]|0))f=rW(b,c[f>>2]|0,c[b+224>>2]|0,g,e,n,0)|0;else{d=b+224|0;f=c[d>>2]|0;f=ob[c[f>>2]&127](f,g,e,n)|0;f=UV(b,c[d>>2]|0,g,e,f,c[n>>2]|0,n,0)|0}if(!f){f=c[n>>2]|0;if((e|0)!=(f|0)?(c[b+476>>2]|0)==3:0){c[i>>2]=f-g;c[b+276>>2]=60;f=0;break}a[h>>0]=0;c[j>>2]=c[k>>2];c[k>>2]=c[o>>2];c[o>>2]=m;f=0}}while(0);l=p;return f|0}function mW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;d=g+4|0;e=g;b=c[a+352>>2]|0;f=b+176|0;b=kb[c[a+12>>2]&63](((c[f>>2]|0)*20|0)+(c[b+168>>2]|0)|0)|0;if(!b)b=0;else{c[e>>2]=b+((c[f>>2]|0)*20|0);c[d>>2]=b+20;qW(a,0,b,d,e)}l=g;return b|0}function nW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=a+64|0;if(!(c[j>>2]|0))if(!(c[a+80>>2]|0))d=1;else{hW(a,b,d,e);d=1}else{h=b+64|0;g=d+(c[h>>2]<<1)|0;d=g+(lb[c[b+28>>2]&127](b,g)|0)|0;f=a+412|0;g=WV(f,b,g,d)|0;if((g|0)!=0?(c[a+428>>2]=c[a+424>>2],i=lb[c[b+32>>2]&127](b,d)|0,i=WV(f,b,i,e+(0-(c[h>>2]<<1))|0)|0,(i|0)!=0):0){pW(i);vb[c[j>>2]&127](c[a+4>>2]|0,g,i);XV(f);d=1}else d=0}return d|0}function oW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a+68|0;if(!(c[g>>2]|0))if(!(c[a+80>>2]|0))b=1;else{hW(a,b,d,e);b=1}else{f=a+412|0;h=c[b+64>>2]|0;b=WV(f,b,d+(h<<2)|0,e+(O(h,-3)|0)|0)|0;if(!b)b=0;else{pW(b);ub[c[g>>2]&63](c[a+4>>2]|0,b);XV(f);b=1}}return b|0}function pW(b){b=b|0;var c=0,d=0,e=0;a:while(1){switch(a[b>>0]|0){case 0:break a;case 13:{d=b;c=13;e=4;break a}default:{}}b=b+1|0}if((e|0)==4){while(1){if(c<<24>>24==13){a[d>>0]=10;e=b+1|0;b=(a[e>>0]|0)==10?b+2|0:e}else{a[d>>0]=c;b=b+1|0}d=d+1|0;c=a[b>>0]|0;if(!(c<<24>>24))break;else e=4}a[d>>0]=0}return}function qW(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=(c[b+352>>2]|0)+164|0;j=c[(c[k>>2]|0)+(d*28|0)>>2]|0;c[e>>2]=j;c[e+4>>2]=c[(c[k>>2]|0)+(d*28|0)+4>>2];if((j|0)==4){c[e+8>>2]=c[g>>2];d=c[(c[k>>2]|0)+(d*28|0)+8>>2]|0;while(1){j=a[d>>0]|0;k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=j;if(!(a[d>>0]|0))break;else d=d+1|0}c[e+12>>2]=0;c[e+16>>2]=0}else{h=c[(c[k>>2]|0)+(d*28|0)+20>>2]|0;i=e+12|0;c[i>>2]=h;j=e+16|0;c[j>>2]=c[f>>2];c[f>>2]=(c[f>>2]|0)+(h*20|0);d=(c[k>>2]|0)+(d*28|0)+12|0;h=0;while(1){d=c[d>>2]|0;if(h>>>0>=(c[i>>2]|0)>>>0)break;qW(b,d,(c[j>>2]|0)+(h*20|0)|0,f,g);d=(c[k>>2]|0)+(d*28|0)+24|0;h=h+1|0}c[e+8>>2]=0}return}function rW(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,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,_=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;ma=l;l=l+48|0;ja=ma+28|0;ea=ma+32|0;ka=ma+24|0;Z=ma;c[ja>>2]=f;_=c[b+352>>2]|0;if((c[b+144>>2]|0)==(e|0)){fa=b+284|0;Y=b+288|0}else{Y=c[b+296>>2]|0;fa=Y;Y=Y+4|0}c[fa>>2]=f;t=e+4|0;ga=b+80|0;u=b+476|0;v=e+44|0;w=e+64|0;x=_+80|0;y=_+96|0;z=_+92|0;A=_+129|0;B=b+112|0;C=b+116|0;D=b+428|0;E=b+424|0;F=b+304|0;G=b+120|0;ha=b+4|0;H=_+130|0;$=b+60|0;I=b+364|0;J=b+12|0;K=b+360|0;L=e+28|0;ia=b+308|0;aa=e+56|0;M=b+16|0;N=b+52|0;O=b+412|0;P=b+388|0;Q=b+56|0;R=b+232|0;S=b+233|0;T=b+468|0;U=b+104|0;V=b+372|0;W=e+40|0;X=b+72|0;ba=e+68|0;ca=b+44|0;da=b+48|0;a:while(1){s=c[ja>>2]|0;c[ea>>2]=s;s=ob[c[t>>2]&127](e,s,g,ea)|0;f=c[ea>>2]|0;c[Y>>2]=f;k=f;b:do switch(s|0){case -3:{la=6;break a}case -4:{la=15;break a}case 0:{la=20;break a}case -1:{la=21;break a}case -2:{la=23;break a}case 12:{f=17;break a}case -5:{la=134;break a}case 9:{s=c[w>>2]|0;s=(nb[c[v>>2]&63](e,(c[ja>>2]|0)+s|0,k+(0-s)|0)|0)&255;a[ka>>0]=s;do if(s<<24>>24){f=c[$>>2]|0;if(f|0){vb[f&127](c[ha>>2]|0,ka,1);break}if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else{j=c[w>>2]|0;j=WV(x,e,(c[ja>>2]|0)+j|0,(c[ea>>2]|0)+(0-j)|0)|0;if(!j){f=1;la=56;break a}k=YV(b,_,j,0)|0;c[z>>2]=c[y>>2];if((a[A>>0]|0)!=0?(a[H>>0]|0)==0:0){if(!k){f=c[G>>2]|0;if(f|0){vb[f&127](c[ha>>2]|0,j,0);break}if(!(c[ga>>2]|0))break;hW(b,e,c[ja>>2]|0,c[ea>>2]|0);break}}else{if(!k){f=11;la=56;break a}if(!(a[k+34>>0]|0)){f=24;la=56;break a}}f=k+32|0;if(a[f>>0]|0){f=12;la=56;break a}if(c[k+28>>2]|0){f=15;la=56;break a}if(!(c[k+4>>2]|0)){if(!(c[B>>2]|0)){if(!(c[ga>>2]|0))break;hW(b,e,c[ja>>2]|0,c[ea>>2]|0);break}a[f>>0]=1;j=tW(b)|0;a[f>>0]=0;if(!j){f=1;la=56;break a}if(!(pb[c[B>>2]&127](c[C>>2]|0,j,c[k+20>>2]|0,c[k+16>>2]|0,c[k+24>>2]|0)|0)){f=21;la=56;break a}c[E>>2]=c[D>>2];break}if(a[F>>0]|0){f=lW(b,k,0)|0;if(!f)break;else{la=58;break a}}f=c[G>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else vb[f&127](c[ha>>2]|0,c[k>>2]|0,0);break b}while(0);break}case 1:case 2:{f=c[I>>2]|0;if(!f){f=kb[c[J>>2]&63](48)|0;if(!f){f=1;la=75;break a}j=kb[c[J>>2]&63](32)|0;c[f+36>>2]=j;if(!j){la=63;break a}c[f+40>>2]=j+32}else c[I>>2]=c[f>>2];o=f+44|0;c[o>>2]=0;c[f>>2]=c[K>>2];c[K>>2]=f;s=f+12|0;c[f+16>>2]=0;c[f+20>>2]=0;r=(c[ja>>2]|0)+(c[w>>2]|0)|0;q=f+4|0;c[q>>2]=r;p=f+8|0;c[p>>2]=lb[c[L>>2]&127](e,r)|0;c[ia>>2]=(c[ia>>2]|0)+1;q=c[q>>2]|0;p=q+(c[p>>2]|0)|0;c[Z>>2]=q;q=f+36|0;c[ka>>2]=c[q>>2];r=f+40|0;j=c[r>>2]|0;while(1){na=pb[c[aa>>2]&127](e,Z,p,ka,j+-1|0)|0;j=c[ka>>2]|0;m=c[q>>2]|0;k=m;n=j-k|0;if((na|0)==1?1:(c[Z>>2]|0)>>>0>=p>>>0)break;k=(c[r>>2]|0)-k<<1;j=lb[c[M>>2]&127](m,k)|0;if(!j){la=69;break a}c[q>>2]=j;na=j+k|0;c[r>>2]=na;c[ka>>2]=j+n;j=na}c[f+24>>2]=n;c[s>>2]=k;a[j>>0]=0;f=uW(b,e,c[ja>>2]|0,s,o)|0;if(f|0){la=75;break a}f=c[N>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else vb[f&127](c[ha>>2]|0,c[s>>2]|0,c[P>>2]|0);XV(O);break}case 3:case 4:{na=(c[ja>>2]|0)+(c[w>>2]|0)|0;c[ka>>2]=0;na=WV(O,e,na,na+(lb[c[L>>2]&127](e,na)|0)|0)|0;c[Z>>2]=na;if(!na){f=1;la=89;break a}c[D>>2]=c[E>>2];f=uW(b,e,c[ja>>2]|0,Z,ka)|0;if(f|0){la=79;break a}c[D>>2]=c[E>>2];f=c[N>>2]|0;if(!f)j=1;else{vb[f&127](c[ha>>2]|0,c[Z>>2]|0,c[P>>2]|0);j=0}f=c[Q>>2]|0;if(!f){if(j|0?c[ga>>2]|0:0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else{if(c[N>>2]|0){c[fa>>2]=c[Y>>2];f=c[Q>>2]|0}ub[f&63](c[ha>>2]|0,c[Z>>2]|0)}XV(O);vW(b,c[ka>>2]|0);if((c[ia>>2]|0)==0?(c[u>>2]&-2|0)!=2:0){la=92;break a}break}case 5:{if((c[ia>>2]|0)==(d|0)){f=13;break a}n=c[K>>2]|0;c[K>>2]=c[n>>2];c[n>>2]=c[I>>2];c[I>>2]=n;f=(c[ja>>2]|0)+(c[w>>2]<<1)|0;j=lb[c[L>>2]&127](e,f)|0;if((j|0)!=(c[n+8>>2]|0)){la=96;break a}if(L0(c[n+4>>2]|0,f,j)|0){la=96;break a}c[ia>>2]=(c[ia>>2]|0)+-1;f=c[Q>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0)}else{j=c[n+16>>2]|0;m=n+12|0;if((j|0)!=0&(a[R>>0]|0)!=0){f=(c[m>>2]|0)+(c[n+28>>2]|0)|0;while(1){k=a[j>>0]|0;if(!(k<<24>>24))break;a[f>>0]=k;f=f+1|0;j=j+1|0}j=c[n+20>>2]|0;c:do if((j|0)!=0&(a[S>>0]|0)!=0){a[f>>0]=a[T>>0]|0;while(1){f=f+1|0;k=a[j>>0]|0;if(!(k<<24>>24))break c;a[f>>0]=k;j=j+1|0}}while(0);a[f>>0]=0;f=c[Q>>2]|0}ub[f&63](c[ha>>2]|0,c[m>>2]|0)}k=n+44|0;while(1){m=c[k>>2]|0;if(!m)break;f=c[U>>2]|0;if(!f){f=m;j=m}else{ub[f&63](c[ha>>2]|0,c[c[m>>2]>>2]|0);f=m;j=c[k>>2]|0}c[k>>2]=c[j+4>>2];c[m+4>>2]=c[V>>2];c[V>>2]=m;c[(c[f>>2]|0)+4>>2]=c[m+8>>2]}if(!(c[ia>>2]|0)){la=117;break a}break}case 10:{f=lb[c[W>>2]&127](e,c[ja>>2]|0)|0;if((f|0)<0){f=14;break a}j=c[$>>2]|0;if(j|0){s=c[ha>>2]|0;na=gX(f,ka)|0;vb[j&127](s,ka,na);break b}if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,c[ea>>2]|0);break}case 7:{f=c[$>>2]|0;if(f|0){a[ka>>0]=10;vb[f&127](c[ha>>2]|0,ka,1);break b}if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,k);break}case 8:{f=c[X>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,k)}else tb[f&127](c[ha>>2]|0);f=xW(b,e,ea,g,h,i)|0;if(f|0)break a;if(!(c[ea>>2]|0)){la=133;break a}break}case 6:{j=c[$>>2]|0;if(!j){if(!(c[ga>>2]|0))break b;hW(b,e,c[ja>>2]|0,k);break b}if(!(a[ba>>0]|0))f=k;else{na=c[ja>>2]|0;vb[j&127](c[ha>>2]|0,na,f-na|0);break b}while(1){c[ka>>2]=c[ca>>2];na=pb[c[aa>>2]&127](e,ja,f,ka,c[da>>2]|0)|0;c[Y>>2]=c[ja>>2];s=c[ca>>2]|0;vb[j&127](c[ha>>2]|0,s,(c[ka>>2]|0)-s|0);if(na>>>0<2)break;c[fa>>2]=c[ja>>2];f=c[ea>>2]|0}break}case 11:{if(!(nW(b,e,c[ja>>2]|0,k)|0)){f=1;break a}break}case 13:{if(!(oW(b,e,c[ja>>2]|0,k)|0)){f=1;break a}break}default:if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,k)}while(0);na=c[ea>>2]|0;c[ja>>2]=na;c[fa>>2]=na;switch(c[u>>2]|0){case 2:{f=35;break a}case 3:{la=160;break a}default:{}}}switch(la|0){case 6:{if(i<<24>>24){c[h>>2]=c[ja>>2];f=0;break}c[Y>>2]=g;f=c[$>>2]|0;if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,g)}else{a[ka>>0]=10;vb[f&127](c[ha>>2]|0,ka,1)}if(d)if((c[ia>>2]|0)==(d|0)){c[h>>2]=g;f=0}else f=13;else f=3;break}case 15:{if(i<<24>>24){c[h>>2]=c[ja>>2];f=0;break}if((d|0)>0)if((c[ia>>2]|0)==(d|0)){c[h>>2]=c[ja>>2];f=0}else f=13;else f=3;break}case 20:{c[fa>>2]=f;f=4;break}case 21:{if(!(i<<24>>24))f=5;else{c[h>>2]=c[ja>>2];f=0}break}case 23:{if(!(i<<24>>24))f=6;else{c[h>>2]=c[ja>>2];f=0}break}case 56:break;case 58:break;case 63:{tb[c[b+20>>2]&127](f);f=1;la=75;break}case 69:{f=1;la=75;break}case 79:{vW(b,c[ka>>2]|0);la=89;break}case 92:{f=wW(b,c[ea>>2]|0,g,h)|0;break}case 96:{c[fa>>2]=f;f=7;break}case 117:{f=wW(b,c[ea>>2]|0,g,h)|0;break}case 133:{c[b+276>>2]=61;f=0;break}case 134:{if(i<<24>>24){c[h>>2]=c[ja>>2];f=0;break}f=c[$>>2]|0;do if(!f){if(c[ga>>2]|0)hW(b,e,c[ja>>2]|0,g)}else if(!(a[ba>>0]|0)){c[ka>>2]=c[ca>>2];pb[c[aa>>2]&127](e,ja,g,ka,c[da>>2]|0)|0;na=c[ca>>2]|0;vb[c[$>>2]&127](c[ha>>2]|0,na,(c[ka>>2]|0)-na|0);break}else{na=c[ja>>2]|0;vb[f&127](c[ha>>2]|0,na,g-na|0);break}while(0);if(!d){c[fa>>2]=g;f=3;break}if((c[ia>>2]|0)==(d|0)){c[h>>2]=g;f=0;break}else{c[fa>>2]=g;f=13;break}}case 160:{c[h>>2]=c[ea>>2];f=0;break}}l=ma;return f|0}function sW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;p=q;k=b+296|0;m=c[k>>2]|0;do if(m){n=c[m+12>>2]|0;h=n+4|0;j=c[h>>2]|0;i=n+12|0;g=j+(c[i>>2]|0)|0;j=j+(c[n+8>>2]|0)|0;c[p>>2]=g;o=n+33|0;if(!(a[o>>0]|0))g=rW(b,c[m+16>>2]|0,c[b+224>>2]|0,g,j,p,0)|0;else{s=b+224|0;r=c[s>>2]|0;r=ob[c[r>>2]&127](r,g,j,p)|0;g=UV(b,c[s>>2]|0,g,j,r,c[p>>2]|0,p,0)|0}if(!g){g=c[p>>2]|0;if((j|0)!=(g|0)?(c[b+476>>2]|0)==3:0){c[i>>2]=g-(c[h>>2]|0);g=0;break}a[n+32>>0]=0;s=m+8|0;c[k>>2]=c[s>>2];g=b+300|0;c[s>>2]=c[g>>2];c[g>>2]=m;g=b+276|0;if(!(a[o>>0]|0)){c[g>>2]=58;g=rW(b,(c[b+472>>2]|0)!=0&1,c[b+144>>2]|0,d,e,f,(a[b+480>>0]|0)==0&1)|0;break}else{c[g>>2]=57;s=b+144|0;g=c[s>>2]|0;g=ob[c[g>>2]&127](g,d,e,p)|0;g=UV(b,c[s>>2]|0,d,e,g,c[p>>2]|0,f,(a[b+480>>0]|0)==0&1)|0;break}}}else g=23;while(0);l=q;return g|0}function tW(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;n=q;m=c[b+352>>2]|0;h=m+156|0;o=b+412|0;p=b+424|0;a:do if(!(c[h>>2]|0)){d=0;i=b+420|0;k=b+468|0;j=12}else{d=c[p>>2]|0;i=b+420|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=61;g=b+468|0;e=(c[(c[h>>2]|0)+20>>2]|0)+(((a[g>>0]|0)!=0)<<31>>31)|0;f=0;while(1){if((f|0)>=(e|0)){d=1;k=g;j=12;break a}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break a}d=c[p>>2]|0}k=a[(c[(c[h>>2]|0)+16>>2]|0)+f>>0]|0;c[p>>2]=d+1;a[d>>0]=k;f=f+1|0}}while(0);b:do if((j|0)==12){NV(n,m+60|0);c:while(1){do{e=OV(n)|0;if(!e)break c;h=e+4|0}while(!(c[h>>2]|0));if(d<<24>>24){d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=12}g=c[e>>2]|0;while(1){e=a[g>>0]|0;d=c[p>>2]|0;f=(d|0)==(c[i>>2]|0);if(!(e<<24>>24))break;if(f){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0;e=a[g>>0]|0}c[p>>2]=d+1;a[d>>0]=e;g=g+1|0}if(f){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=61;f=(c[(c[h>>2]|0)+20>>2]|0)+(((a[k>>0]|0)!=0)<<31>>31)|0;e=0;while(1){if((e|0)>=(f|0)){d=1;continue c}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}j=a[(c[(c[h>>2]|0)+16>>2]|0)+e>>0]|0;c[p>>2]=d+1;a[d>>0]=j;e=e+1|0}}NV(n,m);d:while(1){do{e=OV(n)|0;if(!e)break d}while(!(a[e+32>>0]|0));if(d<<24>>24){d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=12}f=c[e>>2]|0;while(1){e=a[f>>0]|0;if(!(e<<24>>24)){d=1;continue d}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break b}d=c[p>>2]|0;e=a[f>>0]|0}c[p>>2]=d+1;a[d>>0]=e;f=f+1|0}}d=c[p>>2]|0;if((d|0)==(c[i>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[p>>2]|0}c[p>>2]=d+1;a[d>>0]=0;d=c[b+428>>2]|0}while(0);l=q;return d|0}function uW(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;O=l;l=l+80|0;K=O+16|0;L=O;M=c[b+352>>2]|0;k=M+20|0;i=YV(b,k,c[g>>2]|0,0)|0;if(!i){i=BW(M+80|0,c[g>>2]|0)|0;if((i|0)!=0?(j=YV(b,k,i,24)|0,(j|0)!=0):0)if((a[b+232>>0]|0)!=0?(CW(b,j)|0)==0:0)i=1;else A=6;else i=1}else{j=i;A=6}a:do if((A|0)==6){x=c[j+12>>2]|0;k=e+36|0;m=b+376|0;t=b+388|0;u=ob[c[k>>2]&127](e,f,c[m>>2]|0,c[t>>2]|0)|0;i=u+x|0;n=c[m>>2]|0;if((i|0)>(n|0)){i=i+16|0;c[m>>2]=i;i=lb[c[b+16>>2]&127](c[t>>2]|0,i<<4)|0;if(!i){c[m>>2]=n;i=1;break}c[t>>2]=i;if((u|0)>(n|0))ob[c[k>>2]&127](e,f,u,i)|0}J=c[t>>2]|0;r=e+28|0;H=b+412|0;I=b+428|0;w=j+20|0;q=b+424|0;s=0;p=0;k=0;while(1){if((p|0)>=(u|0))break;o=c[(c[t>>2]|0)+(p<<4)>>2]|0;o=aW(b,e,o,o+(lb[c[r>>2]&127](e,o)|0)|0)|0;if(!o){i=1;break a}i=(c[o>>2]|0)+-1|0;if(a[i>>0]|0){A=15;break}a[i>>0]=1;f=s+1|0;c[J+(s<<2)>>2]=c[o>>2];n=c[t>>2]|0;if(a[n+(p<<4)+12>>0]|0){G=WV(H,e,c[n+(p<<4)+4>>2]|0,c[n+(p<<4)+8>>2]|0)|0;c[J+(f<<2)>>2]=G;if(!G){i=1;break a}}else{b:do if(!(a[o+8>>0]|0))i=1;else{i=0;while(1){if((i|0)>=(x|0)){i=1;break b}m=c[w>>2]|0;if((o|0)==(c[m+(i*12|0)>>2]|0))break;i=i+1|0}i=a[m+(i*12|0)+4>>0]|0}while(0);i=fW(b,e,i,c[n+(p<<4)+4>>2]|0,c[n+(p<<4)+8>>2]|0,H)|0;if(i|0)break a;c[J+(f<<2)>>2]=c[I>>2]}c[I>>2]=c[q>>2];i=c[o+4>>2]|0;do if(i)if(a[o+9>>0]|0){i=DW(b,i,o,c[J+(f<<2)>>2]|0,h)|0;if(!i){i=s;break}else break a}else{a[(c[o>>2]|0)+-1>>0]=2;k=k+1|0;i=s+2|0;break}else i=s+2|0;while(0);s=i;p=p+1|0}if((A|0)==15){if((c[b+144>>2]|0)!=(e|0)){i=8;break}c[b+284>>2]=c[(c[t>>2]|0)+(p<<4)>>2];i=8;break}c[b+380>>2]=s;i=c[j+8>>2]|0;c:do if((i|0)!=0?(v=c[i>>2]|0,(a[v+-1>>0]|0)!=0):0){i=0;while(1){if((i|0)>=(s|0)){f=0;p=k;G=s;break c}if((c[J+(i<<2)>>2]|0)==(v|0)){A=37;break c}i=i+2|0}}else{i=-1;A=37}while(0);if((A|0)==37){c[b+384>>2]=i;f=0;p=k;G=s}while(1){if((f|0)>=(x|0))break;i=c[w>>2]|0;n=i+(f*12|0)|0;k=c[n>>2]|0;m=(c[k>>2]|0)+-1|0;d:do if((a[m>>0]|0)==0?(y=i+(f*12|0)+8|0,z=c[y>>2]|0,(z|0)!=0):0){i=c[k+4>>2]|0;do if(i)if(a[k+9>>0]|0){i=DW(b,i,k,z,h)|0;if(!i){i=p;k=G;break d}else break a}else{a[m>>0]=2;i=p+1|0;break}else{a[m>>0]=1;i=p}while(0);c[J+(G<<2)>>2]=c[c[n>>2]>>2];c[J+(G+1<<2)>>2]=c[y>>2];k=G+2|0}else{i=p;k=G}while(0);f=f+1|0;p=i;G=k}c[J+(G<<2)>>2]=0;e:do if(!p)i=0;else{o=b+396|0;n=c[o>>2]|0;F=b+400|0;f=a[F>>0]|0;i=f&255;do if(!(p<<1>>i)){i=1<>24}while((p>>(E&255)|0)!=0);i=(i&255)>3?i:3;a[F>>0]=i;i=i&255;m=b+392|0;k=lb[c[b+16>>2]&127](c[m>>2]|0,12<>0]=f;i=1;break a}else{c[m>>2]=k;k=1<>2]|0)+(E*12|0)>>2]=-1;i=E}}while(0);E=i+-1|0;c[o>>2]=E;w=M+40|0;x=b+424|0;y=b+420|0;z=k+-1|0;A=0-k|0;B=z>>>2;C=b+233|0;D=b+468|0;i=0;v=p;g:while(1){while(1){if((i|0)>=(G|0))break e;e=J+(i<<2)|0;n=c[e>>2]|0;f=n+-1|0;if((a[f>>0]|0)==2)break;a[f>>0]=0;i=i+2|0}EW(b,L);FW(K,L);a[f>>0]=0;f=YV(b,w,n,0)|0;if(!f){i=1;break}f=c[f+4>>2]|0;if(!f){i=1;break}u=c[f+4>>2]|0;if(!u){i=27;break}q=u+20|0;r=u+16|0;p=0;while(1){f=c[q>>2]|0;o=c[r>>2]|0;if((p|0)>=(f|0))break;o=a[o+p>>0]|0;f=c[x>>2]|0;if((f|0)==(c[y>>2]|0)){if(!((eW(H)|0)<<24>>24)){i=1;break g}f=c[x>>2]|0}c[x>>2]=f+1;a[f>>0]=o;p=p+1|0}GW(K,o,f);do{t=n;n=n+1|0}while((a[t>>0]|0)!=58);GW(K,n,HW(n)|0);while(1){f=c[x>>2]|0;if((f|0)==(c[y>>2]|0)){if(!((eW(H)|0)<<24>>24)){i=1;break g}f=c[x>>2]|0}t=a[n>>0]|0;c[x>>2]=f+1;a[f>>0]=t;if(!(a[n>>0]|0))break;else n=n+1|0}t=IW(K)|0;q=c[m>>2]|0;r=t&A;n=0;s=z&t;while(1){if((c[q+(s*12|0)>>2]|0)!=(E|0))break;if((c[q+(s*12|0)+4>>2]|0)==(t|0)){f=c[q+(s*12|0)+8>>2]|0;o=c[I>>2]|0;while(1){P=a[o>>0]|0;p=P<<24>>24==0;if(p|P<<24>>24!=(a[f>>0]|0))break;f=f+1|0;o=o+1|0}if(p){i=8;break g}}if(!(n<<24>>24))n=(r>>>((d[F>>0]|0)+-1|0)&B|1)&255;P=n&255;s=s+((s|0)<(P|0)?k:0)-P|0}if(a[C>>0]|0){a[(c[x>>2]|0)+-1>>0]=a[D>>0]|0;f=c[c[u>>2]>>2]|0;while(1){n=c[x>>2]|0;if((n|0)==(c[y>>2]|0)){if(!((eW(H)|0)<<24>>24)){i=1;break g}n=c[x>>2]|0}P=a[f>>0]|0;c[x>>2]=n+1;a[n>>0]=P;if(!(a[f>>0]|0))break;else f=f+1|0}}P=c[I>>2]|0;c[I>>2]=c[x>>2];c[e>>2]=P;c[(c[m>>2]|0)+(s*12|0)>>2]=E;c[(c[m>>2]|0)+(s*12|0)+4>>2]=t;c[(c[m>>2]|0)+(s*12|0)+8>>2]=P;v=v+-1|0;i=i+2|0;if(!v)break e}break a}while(0);while(1){if((i|0)>=(G|0)){i=h;break}a[(c[J+(i<<2)>>2]|0)+-1>>0]=0;i=i+2|0}while(1){i=c[i>>2]|0;if(!i)break;a[(c[c[i+12>>2]>>2]|0)+-1>>0]=0;i=i+4|0}if(!(a[b+232>>0]|0))i=0;else{i=c[j+4>>2]|0;if(!i){i=c[M+156>>2]|0;if(!i){i=0;break}k=c[g>>2]|0}else{i=c[i+4>>2]|0;if(!i){i=27;break}j=c[g>>2]|0;while(1){k=j+1|0;if((a[j>>0]|0)==58)break;else j=k}}if((a[b+233>>0]|0)!=0?(N=c[c[i>>2]>>2]|0,(N|0)!=0):0){j=0;while(1){m=j+1|0;if(!(a[N+j>>0]|0))break;else j=m}}else m=0;c[g+4>>2]=k;p=i+20|0;c[g+16>>2]=c[p>>2];c[g+8>>2]=c[c[i>>2]>>2];c[g+20>>2]=m;q=0;while(1){r=q+1|0;if(!(a[k+q>>0]|0))break;else q=r}j=c[p>>2]|0;n=r+m+j|0;f=i+24|0;if((n|0)>(c[f>>2]|0)){j=n+24|0;o=kb[c[b+12>>2]&63](j)|0;if(!o){i=1;break}c[f>>2]=j;f=i+16|0;F3(o|0,c[f>>2]|0,c[p>>2]|0)|0;j=b+360|0;while(1){j=c[j>>2]|0;if(!j)break;n=j+12|0;if((c[n>>2]|0)==(c[f>>2]|0))c[n>>2]=o}tb[c[b+20>>2]&127](c[f>>2]|0);c[f>>2]=o;n=o;j=c[p>>2]|0}else{n=i+16|0;f=n;n=c[n>>2]|0}j=n+j|0;F3(j|0,k|0,r|0)|0;if(m|0){P=j+q|0;a[P>>0]=a[b+468>>0]|0;F3(P+1|0,c[c[i>>2]>>2]|0,m|0)|0}c[g>>2]=c[f>>2];i=0}}while(0);l=O;return i|0}function vW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=a+104|0;f=a+372|0;d=a+4|0;while(1){if(!b)break;a=c[e>>2]|0;if(!a)a=b;else{ub[a&63](c[d>>2]|0,c[c[b>>2]>>2]|0);a=b}h=b+4|0;g=c[h>>2]|0;c[h>>2]=c[f>>2];c[f>>2]=b;c[(c[a>>2]|0)+4>>2]=c[b+8>>2];b=g}return}function wW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;j=q;c[b+276>>2]=62;k=b+284|0;c[k>>2]=d;m=b+144|0;n=b+288|0;o=b+80|0;i=b+476|0;g=d;a:while(1){c[j>>2]=0;r=c[m>>2]|0;r=ob[c[r>>2]&127](r,g,e,j)|0;d=c[j>>2]|0;c[n>>2]=d;h=d;switch(r|0){case -15:{p=3;break a}case -4:{p=7;break a}case 0:{p=12;break a}case -1:{p=13;break a}case -2:{p=15;break a}case 15:{if(c[o>>2]|0)hW(b,c[m>>2]|0,g,h);break}case 11:{if(!(nW(b,c[m>>2]|0,g,h)|0)){d=1;break a}break}case 13:{if(!(oW(b,c[m>>2]|0,g,h)|0)){d=1;break a}break}default:{d=9;break a}}d=c[j>>2]|0;c[k>>2]=d;switch(c[i>>2]|0){case 2:{d=35;break a}case 3:{p=18;break a}default:{}}g=d}do if((p|0)==3){if(c[o>>2]|0){hW(b,c[m>>2]|0,g,h);if((c[i>>2]|0)==2){d=35;break}d=c[j>>2]|0}c[f>>2]=d;d=0}else if((p|0)==7){c[f>>2]=g;d=0}else if((p|0)==12){c[k>>2]=d;d=4}else if((p|0)==13)if(!(a[b+480>>0]|0)){c[f>>2]=g;d=0}else d=5;else if((p|0)==15)if(!(a[b+480>>0]|0)){c[f>>2]=g;d=0}else d=6;else if((p|0)==18){c[f>>2]=d;d=0}while(0);l=q;return d|0}function xW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+16|0;y=B+8|0;z=B+4|0;x=B;i=c[e>>2]|0;c[y>>2]=i;if((c[b+144>>2]|0)==(d|0)){s=b+284|0;c[s>>2]=i;t=b+288|0}else{t=c[b+296>>2]|0;s=t;t=t+4|0}c[s>>2]=i;c[e>>2]=0;k=d+8|0;m=b+60|0;u=b+80|0;v=b+4|0;w=b+476|0;n=d+68|0;o=b+44|0;p=d+56|0;q=b+48|0;a:while(1){j=ob[c[k>>2]&127](d,c[y>>2]|0,f,z)|0;i=c[z>>2]|0;c[t>>2]=i;r=i;b:do switch(j|0){case 40:{A=6;break a}case 0:{A=23;break a}case -2:{A=24;break a}case -4:case -1:{A=26;break a}case 7:{i=c[m>>2]|0;if(i|0){a[x>>0]=10;vb[i&127](c[v>>2]|0,x,1);break b}if(c[u>>2]|0)hW(b,d,c[y>>2]|0,r);break}case 6:{j=c[m>>2]|0;if(!j){if(!(c[u>>2]|0))break b;hW(b,d,c[y>>2]|0,r);break b}if(!(a[n>>0]|0))i=r;else{r=c[y>>2]|0;vb[j&127](c[v>>2]|0,r,i-r|0);break b}while(1){c[x>>2]=c[o>>2];r=pb[c[p>>2]&127](d,y,i,x,c[q>>2]|0)|0;c[t>>2]=c[z>>2];i=c[o>>2]|0;vb[j&127](c[v>>2]|0,i,(c[x>>2]|0)-i|0);if(r>>>0<2)break;c[s>>2]=c[y>>2];i=c[z>>2]|0}break}default:{A=28;break a}}while(0);r=c[z>>2]|0;c[y>>2]=r;c[s>>2]=r;switch(c[w>>2]|0){case 3:{A=30;break a}case 2:{i=35;break a}default:{}}}if((A|0)==6){i=c[b+76>>2]|0;if(!i){if(c[u>>2]|0)hW(b,d,c[y>>2]|0,r)}else tb[i&127](c[v>>2]|0);i=c[z>>2]|0;c[e>>2]=i;c[g>>2]=i;i=(c[w>>2]|0)==2?35:0}else if((A|0)==23){c[s>>2]=i;i=4}else if((A|0)==24)if(!(h<<24>>24))i=6;else{c[g>>2]=c[y>>2];i=0}else if((A|0)==26)if(!(h<<24>>24))i=20;else{c[g>>2]=c[y>>2];i=0}else if((A|0)==28){c[s>>2]=i;i=23}else if((A|0)==30){c[g>>2]=c[z>>2];i=0}l=B;return i|0}function yW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;d=xW(b,c[b+144>>2]|0,g,e,f,(a[b+480>>0]|0)==0&1)|0;g=c[g>>2]|0;do if(!((d|0)!=0|(g|0)==0)){d=b+276|0;if(!(c[b+472>>2]|0)){c[d>>2]=58;d=_V(b,g,e,f)|0;break}else{c[d>>2]=63;d=zW(b,g,e,f)|0;break}}while(0);l=h;return d|0}function zW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;d=rW(b,1,c[b+144>>2]|0,d,e,f,(a[b+480>>0]|0)==0&1)|0;if((d|0)==0?(AW(b)|0)<<24>>24==0:0)d=1;return d|0}function AW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+16|0;a=a+360|0;while(1){a=c[a>>2]|0;if(!a){a=1;break}i=(c[a+24>>2]|0)+1|0;j=a+36|0;f=c[j>>2]|0;e=f+i|0;l=a+4|0;d=c[l>>2]|0;if((d|0)==(e|0)){a=1;break}k=a+8|0;b=c[k>>2]|0;g=b+i|0;h=a+40|0;if((g|0)>((c[h>>2]|0)-f|0)){e=lb[c[m>>2]&127](f,g)|0;if(!e){a=0;break}b=a+12|0;f=c[j>>2]|0;if((c[b>>2]|0)==(f|0))c[b>>2]=e;b=a+16|0;d=c[b>>2]|0;if(d|0)c[b>>2]=e+(d-f);c[j>>2]=e;c[h>>2]=e+g;e=e+i|0;d=c[l>>2]|0;b=c[k>>2]|0}F3(e|0,d|0,b|0)|0;c[l>>2]=e}return a|0}function BW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=b+12|0;g=b+8|0;while(1){e=c[f>>2]|0;if((e|0)==(c[g>>2]|0)){if(!((eW(b)|0)<<24>>24)){d=0;break}e=c[f>>2]|0}i=a[d>>0]|0;c[f>>2]=e+1;a[e>>0]=i;if(!(a[d>>0]|0)){h=6;break}else d=d+1|0}if((h|0)==6){i=b+16|0;d=c[i>>2]|0;c[i>>2]=c[f>>2]}return d|0}function CW(b,d){b=b|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;n=c[b+352>>2]|0;j=n+80|0;k=n+92|0;l=n+88|0;m=n+60|0;n=n+96|0;i=d+4|0;h=c[d>>2]|0;a:while(1){switch(a[h>>0]|0){case 0:{e=1;break a}case 58:{g=c[d>>2]|0;while(1){e=c[k>>2]|0;f=(e|0)==(c[l>>2]|0);if((g|0)==(h|0))break;if(f){if(!((eW(j)|0)<<24>>24)){e=0;break a}e=c[k>>2]|0}f=a[g>>0]|0;c[k>>2]=e+1;a[e>>0]=f;g=g+1|0}if(f){if(!((eW(j)|0)<<24>>24)){e=0;break a}e=c[k>>2]|0}c[k>>2]=e+1;a[e>>0]=0;e=YV(b,m,c[n>>2]|0,8)|0;if(!e){e=0;break a}f=c[n>>2]|0;if((c[e>>2]|0)==(f|0))c[n>>2]=c[k>>2];else c[k>>2]=f;c[i>>2]=e;break}default:{}}h=h+1|0}return e|0}function DW(b,d,e,f,g){b=b|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;k=a[f>>0]|0;i=c[d>>2]|0;h=(i|0)==0;do if(!(k<<24>>24))if(h){m=0;j=11}else h=28;else if(((!h?(a[i>>0]|0)==120:0)?(a[i+1>>0]|0)==109:0)?(a[i+2>>0]|0)==108:0){h=a[i+3>>0]|0;if((h<<24>>24==110?(a[i+4>>0]|0)==115:0)?(a[i+5>>0]|0)==0:0){h=39;break}m=h<<24>>24==0&1;j=11}else{m=0;j=11}while(0);a:do if((j|0)==11){l=m<<24>>24!=0;h=1;i=1;n=0;while(1){j=i<<24>>24!=0;if(!(k<<24>>24))break;do if(j){if((n|0)<=36?k<<24>>24==(a[139175+n>>0]|0):0)break;i=0}else i=0;while(0);do if(!(l|h<<24>>24==0)){if((n|0)<=29?k<<24>>24==(a[139212+n>>0]|0):0)break;h=0}while(0);k=n+1|0;n=k;k=a[f+k>>0]|0}if((m&255|0)!=(j&(n|0)==36&1|0)){h=l?38:40;break}if(!(h<<24>>24!=0&(n|0)==29)){o=b+468|0;n=n+((a[o>>0]|0)!=0&1)|0;h=b+372|0;j=c[h>>2]|0;do if(!j){h=b+12|0;i=kb[c[h>>2]&63](28)|0;if(!i){h=1;break a}j=n+24|0;m=kb[c[h>>2]&63](j)|0;c[i+16>>2]=m;if(!m){tb[c[b+20>>2]&127](i);h=1;break a}else{c[i+24>>2]=j;j=i;break}}else{i=j+24|0;if((n|0)>(c[i>>2]|0)){k=j+16|0;l=n+24|0;m=lb[c[b+16>>2]&127](c[k>>2]|0,l)|0;if(!m){h=1;break a}c[k>>2]=m;c[i>>2]=l}c[h>>2]=c[j+4>>2]}while(0);c[j+20>>2]=n;i=j+16|0;F3(c[i>>2]|0,f|0,n|0)|0;h=a[o>>0]|0;if(h<<24>>24)a[(c[i>>2]|0)+(n+-1)>>0]=h;c[j>>2]=d;c[j+12>>2]=e;i=d+4|0;c[j+8>>2]=c[i>>2];if((a[f>>0]|0)==0?((c[b+352>>2]|0)+152|0)==(d|0):0)h=0;else h=j;c[i>>2]=h;c[j+4>>2]=c[g>>2];c[g>>2]=j;if((e|0)!=0?(p=c[b+100>>2]|0,(p|0)!=0):0){vb[p&127](c[b+4>>2]|0,c[d>>2]|0,c[i>>2]|0?f:0);h=0}else h=0}else h=40}while(0);return h|0}function EW(a,b){a=a|0;b=b|0;var d=0;d=b;c[d>>2]=0;c[d+4>>2]=0;b=b+8|0;c[b>>2]=KW(a)|0;c[b+4>>2]=0;return}function FW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=b;g=c[d+4>>2]^1936682341;e=a;c[e>>2]=c[d>>2]^1886610805;c[e+4>>2]=g;e=b+8|0;g=e;d=c[g+4>>2]^1685025377;f=a+8|0;c[f>>2]=c[g>>2]^1852075885;c[f+4>>2]=d;f=b;b=c[f+4>>2]^1819895653;d=a+16|0;c[d>>2]=c[f>>2]^1852142177;c[d+4>>2]=b;d=c[e+4>>2]^1952801890;b=a+24|0;c[b>>2]=c[e>>2]^2037671283;c[b+4>>2]=d;c[a+40>>2]=a+32;b=a+48|0;c[b>>2]=0;c[b+4>>2]=0;return}function GW(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0;n=e+f|0;o=b+40|0;p=b+40|0;q=b+32|0;r=b+33|0;s=b+34|0;t=b+35|0;h=b+36|0;i=b+37|0;j=b+38|0;k=b+39|0;l=b+24|0;m=b+48|0;f=e;do{while(1){g=c[o>>2]|0;if(f>>>0>=n>>>0){e=0;break}if(g>>>0>=p>>>0){e=1;break}e=a[f>>0]|0;c[o>>2]=g+1;a[g>>0]=e;f=f+1|0}if(g>>>0

>>0)break;A=d[q>>0]|0;B=A3(d[r>>0]|0|0,0,8)|0;g=z;y=A3(d[s>>0]|0|0,0,16)|0;g=g|z;w=A3(d[t>>0]|0|0,0,24)|0;g=g|z|(d[h>>0]|0);u=A3(d[i>>0]|0|0,0,40)|0;g=g|z;x=A3(d[j>>0]|0|0,0,48)|0;g=g|z;v=A3(d[k>>0]|0|0,0,56)|0;v=B|A|y|w|u|x|v;g=g|z;x=l;u=g^c[x+4>>2];w=l;c[w>>2]=v^c[x>>2];c[w+4>>2]=u;JW(b,2);w=b;g=c[w+4>>2]^g;u=b;c[u>>2]=c[w>>2]^v;c[u+4>>2]=g;c[o>>2]=q;u=m;u=s3(c[u>>2]|0,c[u+4>>2]|0,8,0)|0;g=m;c[g>>2]=u;c[g+4>>2]=z}while(e);return}function HW(b){b=b|0;var c=0;c=0;while(1){if(!(a[b>>0]|0))break;c=c+1|0;b=b+1|0}return c|0}function IW(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0;f=a+32|0;h=(c[a+40>>2]|0)-f|0;e=a+48|0;e=s3(c[e>>2]|0,c[e+4>>2]|0,h|0,0)|0;e=A3(e|0,z|0,56)|0;b=z;switch(h<<24>>24|0){case 7:{e=A3(d[a+38>>0]|0|0,0,48)|0|e;b=z|b;g=3;break}case 6:{g=3;break}case 5:{g=4;break}case 4:{g=5;break}case 3:{g=6;break}case 2:{g=7;break}case 1:{g=8;break}default:{}}if((g|0)==3){h=A3(d[a+37>>0]|0|0,0,40)|0;e=h|e;b=z|b;g=4}if((g|0)==4){b=d[a+36>>0]|0|b;g=5}if((g|0)==5){h=A3(d[a+35>>0]|0|0,0,24)|0;e=h|e;b=z|b;g=6}if((g|0)==6){h=A3(d[a+34>>0]|0|0,0,16)|0;e=h|e;b=z|b;g=7}if((g|0)==7){h=A3(d[a+33>>0]|0|0,0,8)|0;b=z|b;e=h|e;g=8}if((g|0)==8)e=e|(d[f>>0]|0);h=a+24|0;i=h;g=c[i+4>>2]^b;f=h;c[f>>2]=c[i>>2]^e;c[f+4>>2]=g;JW(a,2);f=a;b=c[f+4>>2]^b;g=a;c[g>>2]=c[f>>2]^e;c[g+4>>2]=b;g=a+16|0;b=g;e=c[b+4>>2]|0;f=g;c[f>>2]=c[b>>2]^255;c[f+4>>2]=e;JW(a,4);f=a;a=a+8|0;z=c[a+4>>2]^c[f+4>>2]^c[g+4>>2]^c[h+4>>2];return c[a>>2]^c[f>>2]^c[g>>2]^c[h>>2]|0}function JW(a,b){a=a|0;b=b|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;e=a+8|0;f=a+24|0;g=a+16|0;d=0;while(1){if((d|0)>=(b|0))break;h=e;n=c[h>>2]|0;h=c[h+4>>2]|0;o=a;o=s3(c[o>>2]|0,c[o+4>>2]|0,n|0,h|0)|0;k=z;m=A3(n|0,h|0,13)|0;l=z;h=z3(n|0,h|0,51)|0;h=(m|h)^o;l=(l|z)^k;m=f;n=c[m>>2]|0;m=c[m+4>>2]|0;j=g;j=s3(c[j>>2]|0,c[j+4>>2]|0,n|0,m|0)|0;i=z;q=A3(n|0,m|0,16)|0;p=z;m=z3(n|0,m|0,48)|0;m=(q|m)^j;p=(p|z)^i;o=s3(k|0,o|0,m|0,p|0)|0;k=z;q=a;c[q>>2]=o;c[q+4>>2]=k;q=A3(m|0,p|0,21)|0;n=z;p=z3(m|0,p|0,43)|0;m=f;c[m>>2]=(q|p)^o;c[m+4>>2]=(n|z)^k;i=s3(j|0,i|0,h|0,l|0)|0;j=z;m=A3(h|0,l|0,17)|0;k=z;l=z3(h|0,l|0,47)|0;h=e;c[h>>2]=(m|l)^i;c[h+4>>2]=(k|z)^j;h=g;c[h>>2]=j;c[h+4>>2]=i;d=d+1|0}return}function KW(a){a=a|0;var b=0;while(1){b=c[a+472>>2]|0;if(!b)break;else a=b}return c[a+492>>2]|0}function LW(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=l;l=l+16|0;I=L;J=L+4|0;K=c[b+352>>2]|0;o=d+16|0;p=d+40|0;q=b+144|0;r=b+284|0;s=e<<24>>24==0;t=h+12|0;v=h+16|0;w=h+8|0;x=d+44|0;y=d+64|0;z=b+436|0;A=b+452|0;B=b+448|0;C=(K+80|0)==(h|0);D=b+268|0;E=K+130|0;F=K+129|0;G=b+296|0;H=b+224|0;i=0;a:while(1){b:while(1){switch(ob[c[o>>2]&127](d,f,g,I)|0){case -4:{i=0;n=61;break a}case 0:{n=4;break a}case -1:{n=6;break a}case 6:{n=21;break b}case -3:{n=22;break b}case 7:case 39:{n=23;break b}case 10:{j=lb[c[p>>2]&127](d,f)|0;c:do if((j|0)<0)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;j=1;i=14}else{j=1;i=14}else{if(s&(j|0)==32){k=c[t>>2]|0;if((c[v>>2]|0)==(k|0)){j=4;break}if((a[k+-1>>0]|0)==32){j=4;break}}m=gX(j,J)|0;k=0;while(1){if((k|0)>=(m|0)){j=0;break c}j=c[t>>2]|0;if((j|0)==(c[w>>2]|0)){if(!((eW(h)|0)<<24>>24)){j=1;i=1;break c}j=c[t>>2]|0}M=a[J+k>>0]|0;c[t>>2]=j+1;a[j>>0]=M;k=k+1|0}}while(0);switch(j&7){case 4:case 0:break b;default:{}}break}case 9:{j=c[y>>2]|0;j=(nb[c[x>>2]&63](d,f+j|0,(c[I>>2]|0)+(0-j)|0)|0)&255;if(j<<24>>24){n=31;break b}j=c[y>>2]|0;j=WV(z,d,f+j|0,(c[I>>2]|0)+(0-j)|0)|0;if(!j){i=1;n=61;break a}m=YV(b,K,j,0)|0;c[B>>2]=c[A>>2];do if(C){if(!(c[D>>2]|0))if(!m)break b;else break;if(!(a[E>>0]|0)){j=(m|0)!=0;if(!(a[F>>0]|0)){n=45;break}else{u=j;n=47;break}}else{j=(m|0)!=0;if(!(c[G>>2]|0)){n=45;break}else{u=j;n=47;break}}}else if(!(a[F>>0]|0))if(!m){i=11;n=61;break a}else{n=46;break}else{j=(m|0)!=0;if(!(a[E>>0]|0)){u=j;n=47;break}else{n=45;break}}while(0);if((n|0)==45)if(j)n=46;else{i=11;n=61;break a}else if((n|0)==47?(n=0,!u):0)break b;if((n|0)==46?(n=0,(a[m+34>>0]|0)==0):0){i=24;n=61;break a}k=m+32|0;if(a[k>>0]|0){n=49;break a}if(c[m+28>>2]|0){n=52;break a}j=c[m+4>>2]|0;if(!j){n=55;break a}m=j+(c[m+8>>2]|0)|0;a[k>>0]=1;m=LW(b,c[H>>2]|0,e,j,m,h)|0;a[k>>0]=0;j=(m|0)==0;if(j)break b;else{j=(j^1)&1;i=m}break}default:{n=58;break a}}if(j)break a}if((n|0)==21){n=0;if(!(cW(h,d,f,c[I>>2]|0)|0)){i=1;n=61;break}}else if((n|0)==22){c[I>>2]=f+(c[y>>2]|0);n=23}else if((n|0)==31){n=0;f=c[t>>2]|0;if((f|0)==(c[w>>2]|0)){if(!((eW(h)|0)<<24>>24)){i=1;n=61;break}f=c[t>>2]|0}c[t>>2]=f+1;a[f>>0]=j}do if((n|0)==23){n=0;f=c[t>>2]|0;if(s){if((c[v>>2]|0)==(f|0))break;if((a[f+-1>>0]|0)==32)break}if((f|0)==(c[w>>2]|0)){if(!((eW(h)|0)<<24>>24)){i=1;n=61;break a}f=c[t>>2]|0}c[t>>2]=f+1;a[f>>0]=32}while(0);f=c[I>>2]|0}if((n|0)==4)if((c[q>>2]|0)==(d|0)){c[r>>2]=c[I>>2];i=4;n=61}else{i=4;n=61}else if((n|0)==6)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=4;n=61}else{i=4;n=61}else if((n|0)==49)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=12;n=61}else{i=12;n=61}else if((n|0)==52)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=15;n=61}else{i=15;n=61}else if((n|0)==55)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=16;n=61}else{i=16;n=61}else if((n|0)==58)if((c[q>>2]|0)==(d|0)){c[r>>2]=f;i=23;n=61}else{i=23;n=61}l=L;return i|0}function MW(a){a=a|0;var b=0;b=a+8|0;return ((a|0)<1?0:(b|0)>0?b:0)|0}function NW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+80|0;d=c+16|0;e=c;EW(a,e);FW(d,e);GW(d,b,HW(b)|0);b=IW(d)|0;l=c;return b|0}function OW(b,c){b=b|0;c=c|0;var d=0;while(1){d=a[b>>0]|0;if(d<<24>>24!=(a[c>>0]|0)){c=0;break}if(!(d<<24>>24)){c=1;break}c=c+1|0;b=b+1|0}return c|0}function PW(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+1040|0;i=k;f=c[b+124>>2]|0;a:do if(!f)e=18;else{e=0;while(1){if((e|0)==256)break;c[i+(e<<2)>>2]=-1;e=e+1|0}g=i+1028|0;c[g>>2]=0;j=i+1024|0;c[j>>2]=0;h=i+1032|0;c[h>>2]=0;do if(nb[f&63](c[b+244>>2]|0,d,i)|0){f=c[b+12>>2]|0;e=hX()|0;e=kb[f&63](e)|0;c[b+236>>2]=e;if(!e){e=c[h>>2]|0;if(!e)e=1;else{tb[e&127](c[j>>2]|0);e=1}}else{e=ob[(a[b+232>>0]<<24>>24?65:64)&127](e,i,c[g>>2]|0,c[j>>2]|0)|0;if(!e)break;c[b+240>>2]=c[j>>2];c[b+248>>2]=c[h>>2];c[b+144>>2]=e;e=0}break a}while(0);e=c[h>>2]|0;if(e|0)tb[e&127](c[j>>2]|0);e=18}while(0);l=k;return e|0}function QW(b,d){b=b|0;d=d|0;a[b+4>>0]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b>>2]=0;c[b+16>>2]=d;return}function RW(b,d){b=b|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;l=c[b+352>>2]|0;m=b+424|0;n=b+420|0;o=b+412|0;p=b+428|0;q=l+152|0;r=b+368|0;j=l+60|0;k=l+80|0;a:while(1){h=d;b:while(1){if(!(a[d>>0]|0)){d=1;break a}f=a[h>>0]|0;switch(f<<24>>24){case 0:case 12:{s=5;break b}case 61:break b;default:{}}e=c[m>>2]|0;if((e|0)==(c[n>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break a}e=c[m>>2]|0;f=a[h>>0]|0}c[m>>2]=e+1;a[e>>0]=f;h=h+1|0}if((s|0)==5){s=0;d=c[m>>2]|0;if((d|0)==(c[n>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[m>>2]|0}c[m>>2]=d+1;a[d>>0]=0;d=YV(b,l,c[p>>2]|0,0)|0;if(d|0)a[d+32>>0]=1;d=(a[h>>0]|0)==0?h:h+1|0;c[m>>2]=c[p>>2];continue}d=c[m>>2]|0;if((c[p>>2]|0)==(d|0))f=q;else{if((d|0)==(c[n>>2]|0)){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[m>>2]|0}c[m>>2]=d+1;a[d>>0]=0;f=YV(b,j,c[p>>2]|0,8)|0;if(!f){d=0;break}e=c[f>>2]|0;i=c[p>>2]|0;d=i;if((e|0)==(i|0)){i=BW(k,e)|0;c[f>>2]=i;if(!i){d=0;break}d=c[p>>2]|0}c[m>>2]=d}c:while(1){i=h+1|0;e=a[i>>0]|0;g=(d|0)==(c[n>>2]|0);switch(e<<24>>24){case 0:case 12:break c;default:{}}if(g){if(!((eW(o)|0)<<24>>24)){d=0;break a}d=c[m>>2]|0;e=a[i>>0]|0}c[m>>2]=d+1;a[d>>0]=e;h=i;d=c[m>>2]|0}if(g){if(!((eW(o)|0)<<24>>24)){d=0;break}d=c[m>>2]|0}c[m>>2]=d+1;a[d>>0]=0;if(DW(b,f,0,c[p>>2]|0,r)|0){d=0;break}c[m>>2]=c[p>>2];d=(a[i>>0]|0)==0?i:h+2|0}return d|0}function SW(a,b){a=a|0;b=b|0;var d=0,e=0;if(a|0?(d=a+4|0,e=(c[d>>2]|0)==(c[a>>2]|0),c[a>>2]=b,e):0)c[d>>2]=b;return}function TW(a,b,d){a=a|0;b=b|0;d=d|0;if(a|0){c[a+52>>2]=b;c[a+56>>2]=d}return}function UW(a,b){a=a|0;b=b|0;if(a|0)c[a+60>>2]=b;return}function VW(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=(b|0)==0;a:do if(!(g|(e|0)<0)?!((d|0)==0&(e|0)!=0):0){h=b+476|0;switch(c[h>>2]|0){case 3:{c[b+280>>2]=33;g=0;break a}case 2:{c[b+280>>2]=36;g=0;break a}case 0:{if((c[b+472>>2]|0)==0?(WW(b)|0)<<24>>24==0:0){c[b+280>>2]=1;g=0;break a}break}default:{}}c[h>>2]=1;if(e|0){g=YW(b,e)|0;if(!g){g=0;break}F3(g|0,d|0,e|0)|0;g=ZW(b,e,f)|0;break}a[b+480>>0]=f;if(!f)g=1;else{g=b+24|0;j=c[g>>2]|0;d=b+292|0;c[d>>2]=j;f=c[b+28>>2]|0;c[b+40>>2]=f;e=b+276|0;f=ob[c[e>>2]&127](b,j,f,g)|0;c[b+280>>2]=f;if(f|0){c[b+288>>2]=c[b+284>>2];c[e>>2]=66;g=0;break}switch(c[h>>2]|0){case 3:{j=c[b+144>>2]|0;xb[c[j+48>>2]&31](j,c[d>>2]|0,c[g>>2]|0,b+404|0);c[d>>2]=c[g>>2];g=2;break a}case 1:case 0:{c[h>>2]=2;g=1;break a}default:{g=1;break a}}}}else i=3;while(0);if((i|0)==3)if(g)g=0;else{c[b+280>>2]=41;g=0}return g|0}function WW(b){b=b|0;var d=0;d=b+492|0;if(!(c[d>>2]|0))c[d>>2]=_W()|0;if(!(a[b+232>>0]|0))b=1;else b=RW(b,139242)|0;return b|0}function XW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return c[a+280>>2]|0}function YW(a,b){a=a|0;b=b|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;a:do if(!a)d=0;else{if((b|0)<0){c[a+280>>2]=1;d=0;break}switch(c[a+476>>2]|0){case 3:{c[a+280>>2]=33;d=0;break a}case 2:{c[a+280>>2]=36;d=0;break a}default:{m=a+32|0;j=c[m>>2]|0;n=a+28|0;e=c[n>>2]|0;d=e;if((j-e|0)>=(b|0))break a;p=a+24|0;k=c[p>>2]|0;i=e-k|0;e=i+b|0;if((e|0)<0){c[a+280>>2]=1;d=0;break a}l=a+8|0;f=c[l>>2]|0;q=f;g=k-q|0;h=(g|0)>1024;b=h?1024:g;e=b+e|0;do if((e|0)>(j-q|0)){d=j-k|0;d=(d|0)==0?1024:d;do d=d<<1;while((d|0)<(e|0)&(d|0)>0);if((d|0)<1){c[a+280>>2]=1;d=0;break a}e=kb[c[a+12>>2]&63](d)|0;if(!e){c[a+280>>2]=1;d=0;break a}c[m>>2]=e+d;d=c[p>>2]|0;if(!d){d=e+(c[n>>2]|0)|0;c[n>>2]=d;c[l>>2]=e;o=22;break}else{q=d;o=q-(c[l>>2]|0)|0;o=(o|0)<1024?o:1024;F3(e|0,d+(0-o)|0,(c[n>>2]|0)-q+o|0)|0;tb[c[a+20>>2]&127](c[l>>2]|0);c[l>>2]=e;d=e+((c[n>>2]|0)-(c[p>>2]|0))+o|0;c[n>>2]=d;e=e+o|0;o=22;break}}else if(h){e=g-b|0;G3(f|0,f+e|0,b+i|0)|0;e=0-e|0;d=(c[n>>2]|0)+e|0;c[n>>2]=d;e=(c[p>>2]|0)+e|0;o=22}while(0);if((o|0)==22)c[p>>2]=e;c[a+288>>2]=0;c[a+284>>2]=0;c[a+292>>2]=0;break a}}}while(0);return d|0}function ZW(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;a:do if(!b)d=0;else{f=b+476|0;switch(c[f>>2]|0){case 3:{c[b+280>>2]=33;d=0;break a}case 2:{c[b+280>>2]=36;d=0;break a}case 0:{if((c[b+472>>2]|0)==0?(WW(b)|0)<<24>>24==0:0){c[b+280>>2]=1;d=0;break a}break}default:{}}c[f>>2]=1;g=b+24|0;j=c[g>>2]|0;h=b+292|0;c[h>>2]=j;k=b+28|0;i=(c[k>>2]|0)+d|0;c[k>>2]=i;c[b+40>>2]=i;k=b+36|0;c[k>>2]=(c[k>>2]|0)+d;a[b+480>>0]=e;d=b+276|0;i=ob[c[d>>2]&127](b,j,i,g)|0;c[b+280>>2]=i;if(i|0){c[b+288>>2]=c[b+284>>2];c[d>>2]=66;d=0;break}switch(c[f>>2]|0){case 3:{d=2;break}case 1:case 0:{if(!e)d=1;else{c[f>>2]=2;d=1;break a}break}default:d=1}k=c[b+144>>2]|0;xb[c[k+48>>2]&31](k,c[h>>2]|0,c[g>>2]|0,b+404|0);c[h>>2]=c[g>>2]}while(0);return d|0}function _W(){var a=0,b=0,d=0;b=l;l=l+16|0;a=b;if(!($W(a)|0)){d=bX()|0;d=(H1()|0)^d;c[a>>2]=d;a=aX(139296,O(d,2147483647)|0)|0}else a=aX(139283,c[a>>2]|0)|0;l=b;return a|0}function $W(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=X_(139283,0,f)|0;if((e|0)<0)b=0;else{b=0;while(1){g=G1(e,a+b|0,4-b|0)|0;d=g+b|0;if((g|0)>0)if(d>>>0<4)b=d;else{b=1;break}if((c[(O_()|0)>>2]|0)!=4){b=0;break}}X0(e)|0}l=f;return b|0}function aX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=Ta(139361)|0;if(d|0?(b$(d,139381)|0)==0:0){d=c[15686]|0;c[e>>2]=a;c[e+4>>2]=8;c[e+8>>2]=b;c[e+12>>2]=4;g1(d,139383,e)|0}l=f;return b|0}function bX(){var a=0,b=0;b=l;l=l+16|0;a=b;if(!(Ua(a|0,0)|0)){l=b;return c[a+4>>2]|0}else qa(139308,139330,819,139341);return 0}function cX(a){a=a|0;if(!a)a=41;else a=c[a+280>>2]|0;return a|0}function dX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a)a=0;else{b=a+284|0;d=c[b>>2]|0;if(d|0?(e=a+292|0,f=c[e>>2]|0,d>>>0>=f>>>0):0){g=c[a+144>>2]|0;xb[c[g+48>>2]&31](g,f,d,a+404|0);c[e>>2]=c[b>>2]}a=(c[a+404>>2]|0)+1|0}return a|0}function eX(a){a=a|0;do switch(a|0){case 41:{a=139420;break}case 1:{a=140692;break}case 2:{a=140679;break}case 3:{a=140662;break}case 4:{a=140630;break}case 5:{a=140615;break}case 6:{a=140597;break}case 7:{a=140582;break}case 8:{a=140562;break}case 9:{a=140534;break}case 10:{a=140499;break}case 11:{a=140482;break}case 12:{a=140455;break}case 13:{a=140435;break}case 14:{a=140397;break}case 15:{a=140370;break}case 16:{a=140328;break}case 17:{a=140281;break}case 18:{a=140264;break}case 19:{a=140213;break}case 20:{a=140190;break}case 21:{a=140144;break}case 22:{a=140117;break}case 23:{a=140066;break}case 24:{a=140030;break}case 25:{a=139978;break}case 26:{a=139933;break}case 27:{a=139918;break}case 28:{a=139892;break}case 29:{a=139854;break}case 30:{a=139822;break}case 31:{a=139789;break}case 32:{a=139755;break}case 33:{a=139738;break}case 34:{a=139717;break}case 35:{a=139701;break}case 36:{a=139684;break}case 37:{a=139640;break}case 38:{a=139560;break}case 39:{a=139501;break}case 40:{a=139437;break}default:a=0}while(0);return a|0}function fX(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;e=c[b>>2]|0;f=0;a:while(1){if(e>>>0<=a>>>0)break;h=e+-1|0;g=d[h>>0]|0;do if((g&248|0)==240)if((f+1|0)>>>0>3){i=5;break a}else f=0;else{if((g&240|0)==224)if((f+1|0)>>>0>2){i=8;break a}else{f=0;break}if((g&224|0)==192)if((f+1|0)>>>0>1){i=11;break a}else{f=0;break}else if(!(g&128))break a;else break}while(0);e=h;f=f+1|0}if((i|0)==5)e=e+3|0;else if((i|0)==8)e=e+2|0;else if((i|0)==11)e=e+1|0;c[b>>2]=e;return}function gX(b,c){b=b|0;c=c|0;do if((b|0)>=0){if((b|0)<128){a[c>>0]=b;b=1;break}if((b|0)<2048){a[c>>0]=b>>>6|192;a[c+1>>0]=b&63|128;b=2;break}if((b|0)<65536){a[c>>0]=b>>>12|224;a[c+1>>0]=b>>>6&63|128;a[c+2>>0]=b&63|128;b=3;break}if((b|0)<1114112){a[c>>0]=b>>>18|240;a[c+1>>0]=b>>>12&63|128;a[c+2>>0]=b>>>6&63|128;a[c+3>>0]=b&63|128;b=4}else b=0}else b=0;while(0);return b|0}function hX(){return 1908}function iX(e,f,g,h){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=0,q=0;i=0;while(1){if((i|0)==364){i=0;break}a[e+i>>0]=a[56472+i>>0]|0;i=i+1|0}a:while(1){if((i|0)>=128){j=5;break}switch(a[56544+i>>0]|0){case 0:case 28:break;default:if((c[f+(i<<2)>>2]|0)!=(i|0)){e=0;break a}}i=i+1|0}b:do if((j|0)==5){q=e+72|0;m=e+372|0;n=e+884|0;o=(g|0)==0;l=0;while(1){if((l|0)>=256)break;p=c[f+(l<<2)>>2]|0;do if((p|0)==-1){a[q+l>>0]=1;b[m+(l<<1)>>1]=-1;a[n+(l<<2)>>0]=1;a[n+(l<<2)+1>>0]=0}else{if((p|0)<0){if(o|(p|0)<-4){e=0;break b}a[q+l>>0]=3-p;a[n+(l<<2)>>0]=0;b[m+(l<<1)>>1]=0;break}if((p|0)<128){i=a[56544+p>>0]|0;switch(i<<24>>24){case 0:case 28:break;default:if((p|0)!=(l|0)){e=0;break b}}a[q+l>>0]=i;a[n+(l<<2)>>0]=1;a[n+(l<<2)+1>>0]=p;b[m+(l<<1)>>1]=(p|0)==0?-1:p&65535;break}if((jX(p)|0)<0){a[q+l>>0]=0;b[m+(l<<1)>>1]=-1;a[n+(l<<2)>>0]=1;a[n+(l<<2)+1>>0]=0;break}if((p|0)>65535){e=0;break b}i=p>>>8;j=p>>>5&7;k=1<<(p&31);if(!(c[56836+((d[140706+i>>0]<<3|j)<<2)>>2]&k))a[q+l>>0]=c[56836+((d[140962+i>>0]<<3|j)<<2)>>2]&k|0?26:28;else a[q+l>>0]=22;a[n+(l<<2)>>0]=gX(p,n+(l<<2)+1|0)|0;b[m+(l<<1)>>1]=p}while(0);l=l+1|0}c[e+368>>2]=h;c[e+364>>2]=g;if(!o){c[e+328>>2]=106;c[e+332>>2]=106;c[e+336>>2]=106;c[e+340>>2]=107;c[e+344>>2]=107;c[e+348>>2]=107;c[e+352>>2]=108;c[e+356>>2]=108;c[e+360>>2]=108}c[e+56>>2]=13;c[e+60>>2]=14}while(0);return e|0}function jX(b){b=b|0;var c=0;switch(b>>8|0){case 223:case 222:case 221:case 220:case 219:case 218:case 217:case 216:{b=-1;break}case 0:{if(!(a[56544+b>>0]|0))b=-1;else c=4;break}case 255:{if((b|1|0)==65535)b=-1;else c=4;break}default:c=4}return b|0}function kX(a,b){a=a|0;b=b|0;a=lb[c[a+364>>2]&127](c[a+368>>2]|0,b)|0;if(a>>>0>65535)a=0;else a=c[56836+(((d[140962+(a>>>8)>>0]|0)<<3|a>>>5&7)<<2)>>2]&1<<(a&31);return a|0}function lX(a,b){a=a|0;b=b|0;a=lb[c[a+364>>2]&127](c[a+368>>2]|0,b)|0;if(a>>>0>65535)a=0;else a=c[56836+(((d[140706+(a>>>8)>>0]|0)<<3|a>>>5&7)<<2)>>2]&1<<(a&31);return a|0}function mX(a,b){a=a|0;b=b|0;a=lb[c[a+364>>2]&127](c[a+368>>2]|0,b)|0;if(a>>>0>65535)a=1;else a=(jX(a)|0)>>>31;return a|0}function nX(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;m=q;n=b+364|0;o=b+884|0;p=b+368|0;k=b+72|0;while(1){i=c[e>>2]|0;if((i|0)==(f|0)){h=0;break}r=d[i>>0]|0;j=o+(r<<2)+1|0;r=a[o+(r<<2)>>0]|0;b=r<<24>>24;if(!(r<<24>>24)){b=gX(lb[c[n>>2]&127](c[p>>2]|0,i)|0,m)|0;if((b|0)>(h-(c[g>>2]|0)|0)){h=2;break}i=c[e>>2]|0;j=m;i=i+((d[k+(d[i>>0]|0)>>0]|0)+-3)|0}else{if((h-(c[g>>2]|0)|0)<(b|0)){h=2;break}i=i+1|0}c[e>>2]=i;F3(c[g>>2]|0,j|0,b|0)|0;c[g>>2]=(c[g>>2]|0)+b}l=q;return h|0}function oX(a,e,f,g,h){a=a|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;m=a+372|0;n=a+364|0;o=a+368|0;l=a+72|0;while(1){k=c[e>>2]|0;a=k>>>0>>0;i=c[g>>2]|0;if(!(a&i>>>0>>0))break;a=b[m+((d[k>>0]|0)<<1)>>1]|0;if(!(a<<16>>16)){a=(lb[c[n>>2]&127](c[o>>2]|0,k)|0)&65535;i=c[e>>2]|0;j=(d[l+(d[i>>0]|0)>>0]|0)+-3|0}else{j=1;i=k}c[e>>2]=i+j;k=c[g>>2]|0;c[g>>2]=k+2;b[k>>1]=a}return ((i|0)!=(h|0)|a^1?0:2)|0}function pX(b,e,f,g){b=b|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;a:do if(e>>>0>>0){n=b+72|0;do switch(a[n+(d[e>>0]|0)>>0]|0){case 12:{h=QX(12,b,e+1|0,f,g)|0;break a}case 13:{h=QX(13,b,e+1|0,f,g)|0;break a}case 2:{h=e+1|0;if((f-h|0)<=0){h=-1;break a}switch(a[n+(d[h>>0]|0)>>0]|0){case 16:{h=RX(b,e+2|0,f,g)|0;break a}case 15:{h=MX(b,e+2|0,f,g)|0;break a}case 7:case 6:case 5:case 29:case 24:case 22:{c[g>>2]=e;h=29;break a}default:{c[g>>2]=h;h=0;break a}}}case 9:{if((e+1|0)==(f|0)){c[g>>2]=f;h=-15;break a}else k=3;break}case 10:case 21:{k=3;break}case 30:{h=GX(b,e+1|0,f,g)|0;break a}case 35:{c[g>>2]=e+1;h=38;break a}case 20:{c[g>>2]=e+1;h=25;break a}case 4:{i=e+1|0;h=f-i|0;if((h|0)<=0){h=-26;break a}if((a[i>>0]|0)==93){if((h|0)<=1){h=-1;break a}if((a[e+2>>0]|0)==62){c[g>>2]=e+3;h=34;break a}}c[g>>2]=i;h=26;break a}case 31:{c[g>>2]=e+1;h=23;break a}case 32:{h=e+1|0;if((f-h|0)<=0){h=-24;break a}switch(a[n+(d[h>>0]|0)>>0]|0){case 33:{c[g>>2]=e+2;h=36;break a}case 15:{c[g>>2]=e+2;h=35;break a}case 34:{c[g>>2]=e+2;h=37;break a}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[g>>2]=h;h=24;break a}default:{c[g>>2]=h;h=0;break a}}}case 36:{c[g>>2]=e+1;h=21;break a}case 11:{c[g>>2]=e+1;h=17;break a}case 19:{h=SX(b,e+1|0,f,g)|0;break a}case 5:{if((f-e|0)<2){h=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0))if(!(lb[c[b+328>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else{h=19;i=2}else{h=18;i=2}break}case 6:{if((f-e|0)<3){h=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0))if(!(lb[c[b+332>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else{h=19;i=3}else{h=18;i=3}break}case 7:{if((f-e|0)<4){h=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0))if(!(lb[c[b+336>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else{h=19;i=4}else{h=18;i=4}break}case 24:case 22:{h=18;i=1;break}case 23:case 27:case 26:case 25:{h=19;i=1;break}default:{c[g>>2]=e;h=0;break a}}while(0);if((k|0)==3){j=f;i=e;b:while(1){h=i;i=i+1|0;if((j-i|0)<=0){k=18;break}switch(a[n+(d[i>>0]|0)>>0]|0){case 10:case 21:continue b;case 9:break;default:{k=17;break b}}if((h+2|0)==(f|0)){k=17;break}}if((k|0)==17){c[g>>2]=i;h=15;break}else if((k|0)==18){c[g>>2]=i;h=15;break}}k=b+328|0;l=b+332|0;m=b+336|0;j=e+i|0;c:while(1){i=f-j|0;if((i|0)<=0){k=99;break}switch(a[n+(d[j>>0]|0)>>0]|0){case 29:{k=56;break c}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{k=70;break c}case 34:{k=89;break c}case 33:{k=92;break c}case 15:{k=95;break c}case 27:case 26:case 25:case 24:case 22:{e=h;j=j+1|0;h=e;continue c}case 5:{if((i|0)<2){h=-2;break a}if(!(lb[c[k>>2]&127](b,j)|0)){k=60;break c}e=h;j=j+2|0;h=e;continue c}case 6:{if((i|0)<3){h=-2;break a}if(!(lb[c[l>>2]&127](b,j)|0)){k=64;break c}e=h;j=j+3|0;h=e;continue c}case 7:{if((i|0)<4){h=-2;break a}if(!(lb[c[m>>2]&127](b,j)|0)){k=68;break c}e=h;j=j+4|0;h=e;continue c}case 23:{i=j+1|0;switch(h&63){case 18:break;case 41:{h=19;j=i;continue c}default:{e=h;j=i;h=e;continue c}}h=f-i|0;if((h|0)<=0){h=-1;break a}switch(a[n+(d[i>>0]|0)>>0]|0){case 29:{k=74;break c}case 27:case 26:case 25:case 24:case 22:{h=41;j=j+2|0;continue c}case 5:{if((h|0)<2){h=-2;break a}if(!(lb[c[k>>2]&127](b,i)|0)){k=78;break c}h=41;j=j+3|0;continue c}case 6:{if((h|0)<3){h=-2;break a}if(!(lb[c[l>>2]&127](b,i)|0)){k=82;break c}h=41;j=j+4|0;continue c}case 7:{if((h|0)<4){h=-2;break a}if(!(lb[c[m>>2]&127](b,i)|0)){k=86;break c}h=41;j=j+5|0;continue c}default:{h=19;j=i;continue c}}}default:{k=98;break c}}}switch(k|0){case 56:{c[g>>2]=j;h=0;break a}case 60:{c[g>>2]=j;h=0;break a}case 64:{c[g>>2]=j;h=0;break a}case 68:{c[g>>2]=j;h=0;break a}case 70:{c[g>>2]=j;break a}case 74:{c[g>>2]=i;h=0;break a}case 78:{c[g>>2]=i;h=0;break a}case 82:{c[g>>2]=i;h=0;break a}case 86:{c[g>>2]=i;h=0;break a}case 89:if((h|0)==19){c[g>>2]=j;h=0;break a}else{c[g>>2]=j+1;h=32;break a}case 92:if((h|0)==19){c[g>>2]=j;h=0;break a}else{c[g>>2]=j+1;h=31;break a}case 95:if((h|0)==19){c[g>>2]=j;h=0;break a}else{c[g>>2]=j+1;h=30;break a}case 98:{c[g>>2]=j;h=0;break a}case 99:{h=0-h|0;break a}}}else h=-4;while(0);return h|0}function qX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if(e>>>0>>0){m=b+72|0;b:do switch(a[m+(d[e>>0]|0)>>0]|0){case 2:{h=JX(b,e+1|0,f,g)|0;break a}case 3:{h=FX(b,e+1|0,f,g)|0;break a}case 9:{h=e+1|0;if((f-h|0)<=0){h=-3;break a}c[g>>2]=(a[m+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break a}case 10:{c[g>>2]=e+1;h=7;break a}case 4:{i=e+1|0;if((f-i|0)<=0){h=-5;break a}if((a[i>>0]|0)==93){h=e+2|0;if((f-h|0)<=0){h=-5;break a}if((a[h>>0]|0)==62){c[g>>2]=h;h=0;break a}else h=f}else h=f;break}case 5:{h=f;if((h-e|0)<2){h=-2;break a}if(!(lb[c[b+352>>2]&127](b,e)|0)){i=e+2|0;break b}else{c[g>>2]=e;h=0;break a}}case 6:{h=f;if((h-e|0)<3){h=-2;break a}if(!(lb[c[b+356>>2]&127](b,e)|0)){i=e+3|0;break b}else{c[g>>2]=e;h=0;break a}}case 7:{h=f;if((h-e|0)<4){h=-2;break a}if(!(lb[c[b+360>>2]&127](b,e)|0)){i=e+4|0;break b}else{c[g>>2]=e;h=0;break a}}case 8:case 1:case 0:{c[g>>2]=e;h=0;break a}default:{i=e+1|0;h=f}}while(0);j=b+352|0;k=b+356|0;l=b+360|0;c:while(1){f=h-i|0;if((f|0)<=0){f=49;break}switch(a[m+(d[i>>0]|0)>>0]|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{f=47;break c}case 5:{if((f|0)<2){f=32;break c}if(lb[c[j>>2]&127](b,i)|0){f=32;break c}i=i+2|0;continue c}case 6:{if((f|0)<3){f=36;break c}if(lb[c[k>>2]&127](b,i)|0){f=36;break c}i=i+3|0;continue c}case 7:{if((f|0)<4){f=40;break c}if(lb[c[l>>2]&127](b,i)|0){f=40;break c}i=i+4|0;continue c}case 4:{if((f|0)<=1){f=47;break c}e=i+1|0;if((a[e>>0]|0)!=93){i=e;continue c}if((f|0)<=2){f=47;break c}i=i+2|0;if((a[i>>0]|0)==62){f=46;break c}else{i=e;continue c}}default:{i=i+1|0;continue c}}}if((f|0)==32){c[g>>2]=i;h=6;break}else if((f|0)==36){c[g>>2]=i;h=6;break}else if((f|0)==40){c[g>>2]=i;h=6;break}else if((f|0)==46){c[g>>2]=i;h=0;break}else if((f|0)==47){c[g>>2]=i;h=6;break}else if((f|0)==49){c[g>>2]=i;h=6;break}}else h=-4;while(0);return h|0}function rX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;a:do if(e>>>0>>0){l=b+72|0;b:do switch(a[l+(d[e>>0]|0)>>0]|0){case 4:{i=e+1|0;h=f;if((h-i|0)<=0){h=-1;break a}if((a[i>>0]|0)==93){f=e+2|0;if((h-f|0)<=0){h=-1;break a}if((a[f>>0]|0)==62){c[g>>2]=e+3;h=40;break a}}break}case 9:{h=e+1|0;if((f-h|0)<=0){h=-1;break a}c[g>>2]=(a[l+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break a}case 10:{c[g>>2]=e+1;h=7;break a}case 5:{h=f;if((h-e|0)<2){h=-2;break a}if(!(lb[c[b+352>>2]&127](b,e)|0)){i=e+2|0;break b}else{c[g>>2]=e;h=0;break a}}case 6:{h=f;if((h-e|0)<3){h=-2;break a}if(!(lb[c[b+356>>2]&127](b,e)|0)){i=e+3|0;break b}else{c[g>>2]=e;h=0;break a}}case 7:{h=f;if((h-e|0)<4){h=-2;break a}if(!(lb[c[b+360>>2]&127](b,e)|0)){i=e+4|0;break b}else{c[g>>2]=e;h=0;break a}}case 8:case 1:case 0:{c[g>>2]=e;h=0;break a}default:{i=e+1|0;h=f}}while(0);e=b+352|0;j=b+356|0;k=b+360|0;c:while(1){f=h-i|0;if((f|0)<=0){f=39;break}switch(a[l+(d[i>>0]|0)>>0]|0){case 4:case 10:case 9:case 8:case 1:case 0:{f=37;break c}case 5:{if((f|0)<2){f=30;break c}if(!(lb[c[e>>2]&127](b,i)|0))f=2;else{f=30;break c}break}case 6:{if((f|0)<3){f=33;break c}if(!(lb[c[j>>2]&127](b,i)|0))f=3;else{f=33;break c}break}case 7:{if((f|0)<4){f=36;break c}if(!(lb[c[k>>2]&127](b,i)|0))f=4;else{f=36;break c}break}default:f=1}i=i+f|0}if((f|0)==30){c[g>>2]=i;h=6;break}else if((f|0)==33){c[g>>2]=i;h=6;break}else if((f|0)==36){c[g>>2]=i;h=6;break}else if((f|0)==37){c[g>>2]=i;h=6;break}else if((f|0)==39){c[g>>2]=i;h=6;break}}else h=-4;while(0);return h|0}function sX(b,e,f,g){b=b|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;j=b+72|0;k=b+352|0;l=b+356|0;m=b+360|0;i=0;a:while(1){h=f-e|0;if((h|0)<=0){f=-1;break}switch(a[j+(d[e>>0]|0)>>0]|0){case 8:case 1:case 0:{n=16;break a}case 5:{if((h|0)<2){f=-2;break a}if(lb[c[k>>2]&127](b,e)|0){n=6;break a}h=i;e=e+2|0;i=h;continue a}case 6:{if((h|0)<3){f=-2;break a}if(lb[c[l>>2]&127](b,e)|0){n=10;break a}h=i;e=e+3|0;i=h;continue a}case 7:{if((h|0)<4){f=-2;break a}if(lb[c[m>>2]&127](b,e)|0){n=14;break a}h=i;e=e+4|0;i=h;continue a}case 2:{h=e+1|0;if((f-h|0)<=0){f=-1;break a}if((a[h>>0]|0)!=33){o=i;e=h;i=o;continue a}h=e+2|0;if((f-h|0)<=0){f=-1;break a}o=(a[h>>0]|0)==91;i=i+(o&1)|0;e=o?e+3|0:h;continue a}case 4:{h=e+1|0;if((f-h|0)<=0){f=-1;break a}if((a[h>>0]|0)!=93){o=i;e=h;i=o;continue a}h=e+2|0;if((f-h|0)<=0){f=-1;break a}if((a[h>>0]|0)!=62){o=i;e=h;i=o;continue a}e=e+3|0;if(!i){n=26;break a}i=i+-1|0;continue a}default:{o=i;e=e+1|0;i=o;continue a}}}if((n|0)==6){c[g>>2]=e;f=0}else if((n|0)==10){c[g>>2]=e;f=0}else if((n|0)==14){c[g>>2]=e;f=0}else if((n|0)==16){c[g>>2]=e;f=0}else if((n|0)==26){c[g>>2]=e;f=42}return f|0}function tX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0>>0){k=f;if((k-e|0)>0){l=b+72|0;i=e;a:while(1){if((k-i|0)<=0){j=24;break}switch(a[l+(d[i>>0]|0)>>0]|0){case 3:{j=8;break a}case 2:{j=11;break a}case 10:{j=12;break a}case 9:{j=15;break a}case 21:{j=19;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=1}i=i+h|0}if((j|0)==8)if((i|0)==(e|0)){h=FX(b,e+1|0,f,g)|0;break}else{c[g>>2]=i;h=6;break}else if((j|0)==11){c[g>>2]=i;h=0;break}else if((j|0)==12)if((i|0)==(e|0)){c[g>>2]=e+1;h=7;break}else{c[g>>2]=i;h=6;break}else if((j|0)==15){if((i|0)!=(e|0)){c[g>>2]=i;h=6;break}h=e+1|0;if((k-h|0)<=0){h=-3;break}c[g>>2]=(a[l+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break}else if((j|0)==19)if((i|0)==(e|0)){c[g>>2]=e+1;h=39;break}else{c[g>>2]=i;h=6;break}else if((j|0)==24){c[g>>2]=i;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function uX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0>>0){k=f;if((k-e|0)>0){l=b+72|0;i=e;a:while(1){if((k-i|0)<=0){j=23;break}switch(a[l+(d[i>>0]|0)>>0]|0){case 3:{j=8;break a}case 30:{j=11;break a}case 10:{j=14;break a}case 9:{j=17;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=1}i=i+h|0}if((j|0)==8)if((i|0)==(e|0)){h=FX(b,e+1|0,f,g)|0;break}else{c[g>>2]=i;h=6;break}else if((j|0)==11)if((i|0)==(e|0)){h=GX(b,e+1|0,f,g)|0;h=(h|0)==22?0:h;break}else{c[g>>2]=i;h=6;break}else if((j|0)==14)if((i|0)==(e|0)){c[g>>2]=e+1;h=7;break}else{c[g>>2]=i;h=6;break}else if((j|0)==17){if((i|0)!=(e|0)){c[g>>2]=i;h=6;break}h=e+1|0;if((k-h|0)<=0){h=-3;break}c[g>>2]=(a[l+(d[h>>0]|0)>>0]|0)==10?e+2|0:h;h=7;break}else if((j|0)==23){c[g>>2]=i;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function vX(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=d;b=c;while(1){c=a[e>>0]|0;if(!(c<<24>>24)){g=6;break}if((f-b|0)<1){b=0;break}if((a[b>>0]|0)!=c<<24>>24){b=0;break}e=e+1|0;b=b+1|0}if((g|0)==6)b=(b|0)==(d|0)&1;return b|0}function wX(b,c){b=b|0;c=c|0;var e=0,f=0;f=b+72|0;b=c;a:while(1){switch(a[f+(d[b>>0]|0)>>0]|0){case 5:{e=2;break}case 6:{e=3;break}case 7:{e=4;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{e=1;break}default:break a}b=b+e|0}return b-c|0}function xX(b,c){b=b|0;c=c|0;b=b+72|0;a:while(1){switch(a[b+(d[c>>0]|0)>>0]|0){case 21:case 9:case 10:break;default:break a}c=c+1|0}return c|0}function yX(b,e,f,g){b=b|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;l=b+72|0;j=0;k=0;b=1;a:while(1){h=e+1|0;i=a[h>>0]|0;do switch(a[l+(i&255)>>0]|0){case 5:{if(!b)if((k|0)<(f|0)){c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;b=1}else b=1;h=k;i=j;e=e+2|0;k=h;j=i;continue a}case 6:{if(!b)if((k|0)<(f|0)){c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;b=1}else b=1;h=k;i=j;e=e+3|0;k=h;j=i;continue a}case 7:{if(!b)if((k|0)<(f|0)){c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;b=1}else b=1;h=k;i=j;e=e+4|0;k=h;j=i;continue a}case 24:case 22:case 29:{if(b|0){o=b;n=k;i=j;e=h;b=o;k=n;j=i;continue a}if((k|0)>=(f|0)){n=k;o=j;b=1;e=h;k=n;j=o;continue a}c[g+(k<<4)>>2]=h;a[g+(k<<4)+12>>0]=1;n=k;o=j;b=1;e=h;k=n;j=o;continue a}case 12:{if((b|0)!=2){if((k|0)>=(f|0)){o=k;j=12;b=2;e=h;k=o;continue a}c[g+(k<<4)+4>>2]=e+2;o=k;j=12;b=2;e=h;k=o;continue a}if((j|0)!=12){n=k;o=j;b=2;e=h;k=n;j=o;continue a}if((k|0)<(f|0))c[g+(k<<4)+8>>2]=h;j=12;k=k+1|0;b=0;e=h;continue a}case 13:{if((b|0)!=2){if((k|0)>=(f|0)){o=k;j=13;b=2;e=h;k=o;continue a}c[g+(k<<4)+4>>2]=e+2;o=k;j=13;b=2;e=h;k=o;continue a}if((j|0)!=13){n=k;o=j;b=2;e=h;k=n;j=o;continue a}if((k|0)<(f|0))c[g+(k<<4)+8>>2]=h;j=13;k=k+1|0;b=0;e=h;continue a}case 3:{if((k|0)>=(f|0)){i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}a[g+(k<<4)+12>>0]=0;i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}case 21:{switch(b|0){case 1:{n=k;o=j;b=0;e=h;k=n;j=o;continue a}case 2:break;default:{i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}}if((k|0)>=(f|0)){n=k;o=j;b=2;e=h;k=n;j=o;continue a}b=g+(k<<4)+12|0;if(!(a[b>>0]|0)){n=k;o=j;b=2;e=h;k=n;j=o;continue a}if(((i<<24>>24==32?(h|0)!=(c[g+(k<<4)+4>>2]|0):0)?(m=a[e+2>>0]|0,m<<24>>24!=32):0)?(j|0)!=(d[l+(m&255)>>0]|0):0){n=k;o=j;b=2;e=h;k=n;j=o;continue a}a[b>>0]=0;n=k;o=j;b=2;e=h;k=n;j=o;continue a}case 10:case 9:{switch(b|0){case 1:{n=k;o=j;b=0;e=h;k=n;j=o;continue a}case 2:break;default:{i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}}if((k|0)>=(f|0)){n=k;o=j;b=2;e=h;k=n;j=o;continue a}a[g+(k<<4)+12>>0]=0;n=k;o=j;b=2;e=h;k=n;j=o;continue a}case 17:case 11:if((b|0)==2){n=k;o=j;b=2;e=h;k=n;j=o;continue a}else break a;default:{i=b;n=k;o=j;e=h;b=i;k=n;j=o;continue a}}while(0)}return k|0}function zX(b,c){b=b|0;c=c|0;var d=0,e=0;b=c+2|0;d=a[b>>0]|0;a:do if(d<<24>>24==120){d=c+3|0;b=0;while(1){b:while(1){e=a[d>>0]|0;c=e<<24>>24;if(e<<24>>24==59){e=14;break a}switch(c|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{e=7;break b}case 70:case 69:case 68:case 67:case 66:case 65:{e=8;break b}case 102:case 101:case 100:case 99:case 98:case 97:{e=9;break b}default:{}}d=d+1|0}if((e|0)==7){e=0;b=c+-48|b<<4}else if((e|0)==8){e=0;b=(b<<4)+-55+c|0}else if((e|0)==9){e=0;b=(b<<4)+-87+c|0}if((b|0)<1114112)d=d+1|0;else{b=-1;break}}}else{c=b;b=0;while(1){if(d<<24>>24==59){e=14;break a}b=(d<<24>>24)+-48+(b*10|0)|0;if((b|0)>=1114112){b=-1;break a}d=c+1|0;c=d;d=a[d>>0]|0}}while(0);if((e|0)==14)b=jX(b)|0;return b|0}function AX(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do switch(d-c|0){case 2:{if((a[c+1>>0]|0)==116){b=a[c>>0]|0;b=b<<24>>24==108?60:b<<24>>24==103?62:0}else e=14;break}case 3:{if(((a[c>>0]|0)==97?(a[c+1>>0]|0)==109:0)?(a[c+2>>0]|0)==112:0)b=38;else e=14;break}case 4:switch(a[c>>0]|0){case 113:{if((a[c+1>>0]|0)!=117){e=14;break a}if((a[c+2>>0]|0)!=111){e=14;break a}if((a[c+3>>0]|0)==116){b=34;break a}else{e=14;break a}}case 97:{if((a[c+1>>0]|0)!=112){e=14;break a}if((a[c+2>>0]|0)!=111){e=14;break a}if((a[c+3>>0]|0)==115){b=39;break a}else{e=14;break a}}default:{e=14;break a}}default:e=14}while(0);if((e|0)==14)b=0;return b|0}function BX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=b+72|0;i=g+4|0;while(1){if((f-e|0)<=0)break;switch(a[h+(d[e>>0]|0)>>0]|0){case 5:{e=e+2|0;break}case 6:{e=e+3|0;break}case 7:{e=e+4|0;break}case 10:{c[i>>2]=-1;c[g>>2]=(c[g>>2]|0)+1;e=e+1|0;break}case 9:{c[g>>2]=(c[g>>2]|0)+1;b=e+1|0;if((f-b|0)>0)e=(a[h+(d[b>>0]|0)>>0]|0)==10?e+2|0:b;else e=b;c[i>>2]=-1;break}default:e=e+1|0}c[i>>2]=(c[i>>2]|0)+1}return}function CX(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=e+-1|0;b=b+72|0;a:while(1){d=d+1|0;if((g-d|0)<=0){d=1;break}e=a[d>>0]|0;switch(a[b+(e&255)>>0]|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:continue a;case 21:if(e<<24>>24==9){h=7;break a}else continue a;case 22:case 26:{if(e<<24>>24>=0)continue a;break}default:{}}switch(e<<24>>24|0){case 64:case 36:break;default:{h=7;break a}}}if((h|0)==7){c[f>>2]=d;d=0}return d|0}function DX(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=h;while(1){j=c[e>>2]|0;if((j|0)==(f|0)){b=0;break}k=d[j>>0]|0;b=c[g>>2]|0;if(!(k&128)){if((b|0)==(h|0)){b=2;break}c[e>>2]=j+1;j=a[j>>0]|0;k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=j;continue}else{if((i-b|0)<2){b=2;break}c[g>>2]=b+1;a[b>>0]=k>>>6|192;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=k&63|128;c[e>>2]=(c[e>>2]|0)+1;continue}}return b|0}function EX(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;while(1){a=c[e>>2]|0;i=a>>>0>>0;j=c[g>>2]|0;if(!(i&j>>>0>>0))break;c[e>>2]=a+1;i=d[a>>0]|0;j=c[g>>2]|0;c[g>>2]=j+2;b[j>>1]=i}return ((j|0)!=(h|0)|i^1?0:2)|0}function FX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f;h=k-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{f=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=4;break}case 19:{f=HX(b,e+1|0,f,g)|0;break a}default:{c[g>>2]=e;f=0;break a}}h=b+328|0;i=b+332|0;j=b+336|0;e=e+f|0;b:while(1){f=k-e|0;if((f|0)<=0){f=-1;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{h=18;break b}case 18:{h=29;break b}case 27:case 26:case 25:case 24:case 22:{f=1;break}case 5:{if((f|0)<2){f=-2;break a}if(!(lb[c[h>>2]&127](b,e)|0)){h=21;break b}else f=2;break}case 6:{if((f|0)<3){f=-2;break a}if(!(lb[c[i>>2]&127](b,e)|0)){h=24;break b}else f=3;break}case 7:{if((f|0)<4){f=-2;break a}if(!(lb[c[j>>2]&127](b,e)|0)){h=27;break b}else f=4;break}default:{h=30;break b}}e=e+f|0}if((h|0)==18){c[g>>2]=e;f=0;break}else if((h|0)==21){c[g>>2]=e;f=0;break}else if((h|0)==24){c[g>>2]=e;f=0;break}else if((h|0)==27){c[g>>2]=e;f=0;break}else if((h|0)==29){c[g>>2]=e+1;f=9;break}else if((h|0)==30){c[g>>2]=e;f=0;break}}else f=-1;while(0);return f|0}function GX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=4;break}case 30:case 9:case 10:case 21:{c[g>>2]=e;f=22;break a}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;e=e+h|0;b:while(1){h=f-e|0;if((h|0)<=0){f=-1;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{h=18;break b}case 18:{h=29;break b}case 27:case 26:case 25:case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,e)|0)){h=21;break b}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,e)|0)){h=24;break b}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,e)|0)){h=27;break b}else h=4;break}default:{h=30;break b}}e=e+h|0}if((h|0)==18){c[g>>2]=e;f=0;break}else if((h|0)==21){c[g>>2]=e;f=0;break}else if((h|0)==24){c[g>>2]=e;f=0;break}else if((h|0)==27){c[g>>2]=e;f=0;break}else if((h|0)==29){c[g>>2]=e+1;f=28;break}else if((h|0)==30){c[g>>2]=e;f=0;break}}else f=-1;while(0);return f|0}function HX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=f;a:do if((i-e|0)>0){h=a[e>>0]|0;if(h<<24>>24==120){b=IX(b,e+1|0,f,g)|0;break}f=b+72|0;if((a[f+(h&255)>>0]|0)!=25){c[g>>2]=e;b=0;break}b:while(1){b=e+1|0;if((i-b|0)<=0){b=-1;break a}switch(a[f+(d[b>>0]|0)>>0]|0){case 25:{e=b;break}case 18:{f=8;break b}default:{f=9;break b}}}if((f|0)==8){c[g>>2]=e+2;b=10;break}else if((f|0)==9){c[g>>2]=b;b=0;break}}else b=-1;while(0);return b|0}function IX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0;a:do if((f-e|0)>0){b=b+72|0;if((a[b+(d[e>>0]|0)>>0]&-2)<<24>>24!=24){c[g>>2]=e;f=0;break}b:while(1){h=e+1|0;if((f-h|0)<=0){f=-1;break a}switch(a[b+(d[h>>0]|0)>>0]|0){case 24:case 25:{e=h;break}case 18:{b=6;break b}default:{b=7;break b}}}if((b|0)==6){c[g>>2]=e+2;f=10;break}else if((b|0)==7){c[g>>2]=h;f=0;break}}else f=-1;while(0);return f|0}function JX(b,e,f,g){b=b|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;q=f;h=q-e|0;a:do if((h|0)>0){p=b+72|0;switch(a[p+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;h=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){h=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else h=2;break}case 6:{if((h|0)<3){h=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else h=3;break}case 7:{if((h|0)<4){h=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;h=0;break a}else h=4;break}case 16:{h=e+1|0;if((q-h|0)<=0){h=-1;break a}switch(a[p+(d[h>>0]|0)>>0]|0){case 27:{h=KX(b,e+2|0,f,g)|0;break a}case 20:{h=LX(e+2|0,f,g)|0;break a}default:{c[g>>2]=h;h=0;break a}}}case 15:{h=MX(b,e+1|0,f,g)|0;break a}case 17:{h=NX(b,e+1|0,f,g)|0;break a}default:{c[g>>2]=e;h=0;break a}}j=b+328|0;k=b+332|0;l=b+336|0;m=b+340|0;n=b+344|0;o=b+348|0;i=0;h=e+h|0;b:while(1){e=q-h|0;if((e|0)<=0){h=-1;break a}c:do switch(a[p+(d[h>>0]|0)>>0]|0){case 29:{r=24;break b}case 10:case 9:case 21:{r=50;break b}case 11:{r=64;break b}case 17:break b;case 27:case 26:case 25:case 24:case 22:{e=1;break}case 5:{if((e|0)<2){h=-2;break a}if(!(lb[c[j>>2]&127](b,h)|0)){r=27;break b}else e=2;break}case 6:{if((e|0)<3){h=-2;break a}if(!(lb[c[k>>2]&127](b,h)|0)){r=30;break b}else e=3;break}case 7:{if((e|0)<4){h=-2;break a}if(!(lb[c[l>>2]&127](b,h)|0)){r=33;break b}else e=4;break}case 23:{if(i|0){r=35;break b}i=h+1|0;e=q-i|0;if((e|0)<=0){h=-1;break a}switch(a[p+(d[i>>0]|0)>>0]|0){case 29:{r=38;break b}case 24:case 22:{i=1;e=2;break c}case 5:{if((e|0)<2){h=-2;break a}if(!(lb[c[m>>2]&127](b,i)|0)){r=42;break b}else{i=1;e=3;break c}}case 6:{if((e|0)<3){h=-2;break a}if(!(lb[c[n>>2]&127](b,i)|0)){r=45;break b}else{i=1;e=4;break c}}case 7:{if((e|0)<4){h=-2;break a}if(!(lb[c[o>>2]&127](b,i)|0)){r=48;break b}else{i=1;e=5;break c}}default:{r=49;break b}}}default:{r=69;break b}}while(0);h=h+e|0}d:switch(r|0){case 24:{c[g>>2]=h;h=0;break a}case 27:{c[g>>2]=h;h=0;break a}case 30:{c[g>>2]=h;h=0;break a}case 33:{c[g>>2]=h;h=0;break a}case 35:{c[g>>2]=h;h=0;break a}case 38:{c[g>>2]=i;h=0;break a}case 42:{c[g>>2]=i;h=0;break a}case 45:{c[g>>2]=i;h=0;break a}case 48:{c[g>>2]=i;h=0;break a}case 49:{c[g>>2]=i;h=0;break a}case 50:{e:while(1){r=0;i=h+1|0;e=q-i|0;if((e|0)<=0){h=-1;break a}switch(a[p+(d[i>>0]|0)>>0]|0){case 11:{h=i;r=64;break d}case 17:{h=i;break d}case 10:case 9:case 21:{h=i;r=50;break}case 29:{r=52;break e}case 24:case 22:{i=2;break e}case 5:{r=53;break e}case 6:{r=56;break e}case 7:{r=59;break e}default:{r=62;break e}}}if((r|0)==52){c[g>>2]=i;h=0;break a}else if((r|0)==53){if((e|0)<2){h=-2;break a}if(!(lb[c[m>>2]&127](b,i)|0)){c[g>>2]=i;h=0;break a}else i=3}else if((r|0)==56){if((e|0)<3){h=-2;break a}if(!(lb[c[n>>2]&127](b,i)|0)){c[g>>2]=i;h=0;break a}else i=4}else if((r|0)==59){if((e|0)<4){h=-2;break a}if(!(lb[c[o>>2]&127](b,i)|0)){c[g>>2]=i;h=0;break a}else i=5}else if((r|0)==62){c[g>>2]=i;h=0;break a}h=OX(b,h+i|0,f,g)|0;break a}case 69:{c[g>>2]=h;h=0;break a}}if((r|0)==64){c[g>>2]=h+1;h=2;break}i=h+1|0;if((q-i|0)>0)if((a[i>>0]|0)==62){c[g>>2]=h+2;h=4;break}else{c[g>>2]=i;h=0;break}else h=-1}else h=-1;while(0);return h|0}function KX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;a:do if((f-e|0)>0){if((a[e>>0]|0)!=45){c[g>>2]=e;f=0;break}h=b+72|0;i=b+352|0;j=b+356|0;k=b+360|0;l=e+1|0;b:while(1){e=f-l|0;if((e|0)<=0){f=-1;break a}switch(a[h+(d[l>>0]|0)>>0]|0){case 8:case 1:case 0:{e=19;break b}case 5:{if((e|0)<2){f=-2;break a}if(lb[c[i>>2]&127](b,l)|0){e=9;break b}l=l+2|0;continue b}case 6:{if((e|0)<3){f=-2;break a}if(lb[c[j>>2]&127](b,l)|0){e=13;break b}l=l+3|0;continue b}case 7:{if((e|0)<4){f=-2;break a}if(lb[c[k>>2]&127](b,l)|0){e=17;break b}l=l+4|0;continue b}case 27:{e=l+1|0;if((f-e|0)<=0){f=-1;break a}if((a[e>>0]|0)==45){e=22;break b}else{l=e;continue b}}default:{l=l+1|0;continue b}}}if((e|0)==9){c[g>>2]=l;f=0;break}else if((e|0)==13){c[g>>2]=l;f=0;break}else if((e|0)==17){c[g>>2]=l;f=0;break}else if((e|0)==19){c[g>>2]=l;f=0;break}else if((e|0)==22){e=l+2|0;if((f-e|0)<=0){f=-1;break}if((a[e>>0]|0)==62){c[g>>2]=l+3;f=13;break}else{c[g>>2]=e;f=0;break}}}else f=-1;while(0);return f|0}function LX(b,d,e){b=b|0;d=d|0;e=e|0;if((d-b|0)>5){d=0;while(1){if((d|0)>=6){d=8;break}if((a[b>>0]|0)!=(a[141218+d>>0]|0)){d=0;break}d=d+1|0;b=b+1|0}c[e>>2]=b}else d=-1;return d|0}function MX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q;o=f;f=o-e|0;a:do if((f|0)>0){n=b+72|0;switch(a[n+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{f=1;break}case 5:{if((f|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=2;break}case 6:{if((f|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=3;break}case 7:{if((f|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else f=4;break}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;f=e+f|0;b:while(1){h=o-f|0;if((h|0)<=0){f=-1;break a}switch(a[n+(d[f>>0]|0)>>0]|0){case 29:{m=17;break b}case 10:case 9:case 21:{m=28;break b}case 15:{m=50;break b}case 27:case 26:case 25:case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,f)|0)){m=20;break b}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,f)|0)){m=23;break b}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,f)|0)){m=26;break b}else h=4;break}default:break b}f=f+h|0}if((m|0)==17){c[g>>2]=f;f=0;break}else if((m|0)==20){c[g>>2]=f;f=0;break}else if((m|0)==23){c[g>>2]=f;f=0;break}else if((m|0)==26){c[g>>2]=f;f=0;break}else if((m|0)==28){if(!(PX(e,f,p)|0)){c[g>>2]=f;f=0;break}i=b+352|0;j=b+356|0;k=b+360|0;h=f+1|0;c:while(1){f=o-h|0;if((f|0)<=0){f=-1;break a}switch(a[n+(d[h>>0]|0)>>0]|0){case 8:case 1:case 0:{m=45;break c}case 5:{if((f|0)<2){f=-2;break a}if(lb[c[i>>2]&127](b,h)|0){m=35;break c}h=h+2|0;continue c}case 6:{if((f|0)<3){f=-2;break a}if(lb[c[j>>2]&127](b,h)|0){m=39;break c}h=h+3|0;continue c}case 7:{if((f|0)<4){f=-2;break a}if(lb[c[k>>2]&127](b,h)|0){m=43;break c}h=h+4|0;continue c}case 15:{f=h+1|0;if((o-f|0)<=0){f=-1;break a}if((a[f>>0]|0)==62){m=48;break c}else{h=f;continue c}}default:{h=h+1|0;continue c}}}if((m|0)==35){c[g>>2]=h;f=0;break}else if((m|0)==39){c[g>>2]=h;f=0;break}else if((m|0)==43){c[g>>2]=h;f=0;break}else if((m|0)==45){c[g>>2]=h;f=0;break}else if((m|0)==48){c[g>>2]=h+2;f=c[p>>2]|0;break}}else if((m|0)==50){if(!(PX(e,f,p)|0)){c[g>>2]=f;f=0;break}h=f+1|0;if((o-h|0)<=0){f=-1;break}if((a[h>>0]|0)==62){c[g>>2]=f+2;f=c[p>>2]|0;break}else f=h}c[g>>2]=f;f=0}else f=-1;while(0);l=q;return f|0}function NX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=4;break}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;h=e+h|0;b:while(1){e=f-h|0;if((e|0)<=0){f=-1;break a}switch(a[l+(d[h>>0]|0)>>0]|0){case 29:{i=17;break b}case 10:case 9:case 21:{i=27;break b}case 11:{i=32;break b}case 23:case 27:case 26:case 25:case 24:case 22:{e=1;break}case 5:{if((e|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,h)|0)){i=20;break b}else e=2;break}case 6:{if((e|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,h)|0)){i=23;break b}else e=3;break}case 7:{if((e|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,h)|0)){i=26;break b}else e=4;break}default:{i=33;break b}}h=h+e|0}if((i|0)==17){c[g>>2]=h;f=0;break}else if((i|0)==20){c[g>>2]=h;f=0;break}else if((i|0)==23){c[g>>2]=h;f=0;break}else if((i|0)==26){c[g>>2]=h;f=0;break}else if((i|0)==27){c:while(1){e=h+1|0;if((f-e|0)<=0){f=-1;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 10:case 9:case 21:{h=e;i=27;break}case 11:{i=29;break c}default:{i=30;break c}}}if((i|0)==29){c[g>>2]=h+2;f=5;break}else if((i|0)==30){c[g>>2]=e;f=0;break}}else if((i|0)==32){c[g>>2]=h+1;f=5;break}else if((i|0)==33){c[g>>2]=h;f=0;break}}else f=-1;while(0);return f|0}function OX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=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;y=l;l=l+16|0;v=y;c[v>>2]=e;w=f;r=b+72|0;s=b+328|0;t=b+332|0;u=b+336|0;k=b+340|0;m=b+344|0;n=b+348|0;o=b+352|0;p=b+356|0;q=b+360|0;i=0;a:while(1){h=w-e|0;if((h|0)<=0){e=-1;break}b:do switch(a[r+(d[e>>0]|0)>>0]|0){case 29:{x=4;break a}case 27:case 26:case 25:case 24:case 22:{h=e+1|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 5:{if((h|0)<2){e=-2;break a}if(!(lb[c[s>>2]&127](b,e)|0)){x=8;break a}h=e+2|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 6:{if((h|0)<3){e=-2;break a}if(!(lb[c[t>>2]&127](b,e)|0)){x=12;break a}h=e+3|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 7:{if((h|0)<4){e=-2;break a}if(!(lb[c[u>>2]&127](b,e)|0)){x=16;break a}h=e+4|0;c[v>>2]=h;j=i;e=h;i=j;continue a}case 23:{if(i|0){x=19;break a}h=e+1|0;c[v>>2]=h;i=w-h|0;if((i|0)<=0){e=-1;break a}switch(a[r+(d[h>>0]|0)>>0]|0){case 29:{x=22;break a}case 24:case 22:{j=e+2|0;c[v>>2]=j;i=1;e=j;continue a}case 5:{if((i|0)<2){e=-2;break a}if(!(lb[c[k>>2]&127](b,h)|0)){x=26;break a}j=e+3|0;c[v>>2]=j;i=1;e=j;continue a}case 6:{if((i|0)<3){e=-2;break a}if(!(lb[c[m>>2]&127](b,h)|0)){x=30;break a}j=e+4|0;c[v>>2]=j;i=1;e=j;continue a}case 7:{if((i|0)<4){e=-2;break a}if(!(lb[c[n>>2]&127](b,h)|0)){x=34;break a}j=e+5|0;c[v>>2]=j;i=1;e=j;continue a}default:{x=36;break a}}}case 10:case 9:case 21:while(1){e=e+1|0;c[v>>2]=e;if((w-e|0)<=0){e=-1;break a}switch(a[r+(d[e>>0]|0)>>0]|0){case 14:break b;case 9:case 10:case 21:break;default:{x=39;break a}}}case 14:break;default:{x=92;break a}}while(0);while(1){h=e+1|0;c[v>>2]=h;if((w-h|0)<=0){e=-1;break a}j=a[r+(d[h>>0]|0)>>0]|0;if((j|1)<<24>>24==13)break;switch(j<<24>>24){case 9:case 10:case 21:{e=h;break}default:{x=43;break a}}}e=e+2|0;c[v>>2]=e;c:while(1){h=w-e|0;if((h|0)<=0){e=-1;break a}i=a[r+(d[e>>0]|0)>>0]|0;if(i<<24>>24==j<<24>>24)break;switch(i<<24>>24){case 8:case 1:case 0:{x=60;break a}case 2:{x=65;break a}case 5:{if((h|0)<2){e=-2;break a}if(lb[c[o>>2]&127](b,e)|0){x=50;break a}i=e+2|0;c[v>>2]=i;e=i;continue c}case 6:{if((h|0)<3){e=-2;break a}if(lb[c[p>>2]&127](b,e)|0){x=54;break a}i=e+3|0;c[v>>2]=i;e=i;continue c}case 7:{if((h|0)<4){e=-2;break a}if(lb[c[q>>2]&127](b,e)|0){x=58;break a}i=e+4|0;c[v>>2]=i;e=i;continue c}case 3:{e=FX(b,e+1|0,f,v)|0;if((e|0)<1){x=63;break a}e=c[v>>2]|0;continue c}default:{i=e+1|0;c[v>>2]=i;e=i;continue c}}}h=e+1|0;c[v>>2]=h;if((w-h|0)<=0){e=-1;break}switch(a[r+(d[h>>0]|0)>>0]|0){case 11:{x=86;break a}case 17:{x=87;break a}case 10:case 9:case 21:{e=h;break}default:{x=69;break a}}d:while(1){h=e+1|0;c[v>>2]=h;i=w-h|0;if((i|0)<=0){e=-1;break a}switch(a[r+(d[h>>0]|0)>>0]|0){case 29:{x=72;break a}case 11:{x=86;break a}case 17:{x=87;break a}case 10:case 9:case 21:{e=h;break}case 24:case 22:{x=73;break d}case 5:{x=74;break d}case 6:{x=78;break d}case 7:{x=82;break d}default:{x=91;break a}}}if((x|0)==73){x=0;e=e+2|0;c[v>>2]=e;i=0;continue}else if((x|0)==74){x=0;if((i|0)<2){e=-2;break}if(!(lb[c[k>>2]&127](b,h)|0)){x=76;break}e=e+3|0;c[v>>2]=e;i=0;continue}else if((x|0)==78){x=0;if((i|0)<3){e=-2;break}if(!(lb[c[m>>2]&127](b,h)|0)){x=80;break}e=e+4|0;c[v>>2]=e;i=0;continue}else if((x|0)==82){x=0;if((i|0)<4){e=-2;break}if(!(lb[c[n>>2]&127](b,h)|0)){x=84;break}e=e+5|0;c[v>>2]=e;i=0;continue}}switch(x|0){case 4:{c[g>>2]=e;e=0;break}case 8:{c[g>>2]=e;e=0;break}case 12:{c[g>>2]=e;e=0;break}case 16:{c[g>>2]=e;e=0;break}case 19:{c[g>>2]=e;e=0;break}case 22:{c[g>>2]=h;e=0;break}case 26:{c[g>>2]=h;e=0;break}case 30:{c[g>>2]=h;e=0;break}case 34:{c[g>>2]=h;e=0;break}case 36:{c[g>>2]=h;e=0;break}case 39:{c[g>>2]=e;e=0;break}case 43:{c[g>>2]=h;e=0;break}case 50:{c[g>>2]=e;e=0;break}case 54:{c[g>>2]=e;e=0;break}case 58:{c[g>>2]=e;e=0;break}case 60:{c[g>>2]=e;e=0;break}case 63:{if(!e){c[g>>2]=c[v>>2];e=0}break}case 65:{c[g>>2]=e;e=0;break}case 69:{c[g>>2]=h;e=0;break}case 72:{c[g>>2]=h;e=0;break}case 76:{c[g>>2]=h;e=0;break}case 80:{c[g>>2]=h;e=0;break}case 84:{c[g>>2]=h;e=0;break}case 86:{c[g>>2]=e+2;e=1;break}case 87:{e=h+1|0;c[v>>2]=e;if((w-e|0)>0)if((a[e>>0]|0)==62){c[g>>2]=h+2;e=3;break}else{c[g>>2]=e;e=0;break}else e=-1;break}case 91:{c[g>>2]=h;e=0;break}case 92:{c[g>>2]=e;e=0;break}}l=y;return e|0}function PX(b,d,e){b=b|0;d=d|0;e=e|0;c[e>>2]=11;a:do if((d-b|0)==3){switch(a[b>>0]|0){case 120:{d=0;break}case 88:{d=1;break}default:{d=1;break a}}switch(a[b+1>>0]|0){case 109:break;case 77:{d=1;break}default:{d=1;break a}}switch(a[b+2>>0]|0){case 108:break;case 76:{d=0;break a}default:{d=1;break a}}if(!d){c[e>>2]=12;d=1}else d=0}else d=1;while(0);return d|0}function QX(b,e,f,g,h){b=b|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;k=e+72|0;l=e+352|0;m=e+356|0;n=e+360|0;a:while(1){i=g-f|0;if((i|0)<=0){g=-1;break}j=a[k+(d[f>>0]|0)>>0]|0;switch(j<<24>>24){case 8:case 1:case 0:{o=16;break a}case 5:{if((i|0)<2){g=-2;break a}if(lb[c[l>>2]&127](e,f)|0){o=6;break a}f=f+2|0;continue a}case 6:{if((i|0)<3){g=-2;break a}if(lb[c[m>>2]&127](e,f)|0){o=10;break a}f=f+3|0;continue a}case 7:{if((i|0)<4){g=-2;break a}if(lb[c[n>>2]&127](e,f)|0){o=14;break a}f=f+4|0;continue a}case 13:case 12:{f=f+1|0;if((j&255|0)==(b|0)){o=18;break a}else continue a}default:{f=f+1|0;continue a}}}b:do if((o|0)==6){c[h>>2]=f;g=0}else if((o|0)==10){c[h>>2]=f;g=0}else if((o|0)==14){c[h>>2]=f;g=0}else if((o|0)==16){c[h>>2]=f;g=0}else if((o|0)==18)if((g-f|0)>0){c[h>>2]=f;switch(a[k+(d[f>>0]|0)>>0]|0){case 20:case 30:case 11:case 10:case 9:case 21:{g=27;break b}default:{}}g=0}else g=-27;while(0);return g|0}function RX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=f;a:do if((h-e|0)>0){i=b+72|0;switch(a[i+(d[e>>0]|0)>>0]|0){case 27:{b=KX(b,e+1|0,f,g)|0;break a}case 20:{c[g>>2]=e+1;b=33;break a}case 24:case 22:{b:while(1){b=e+1|0;f=h-b|0;if((f|0)<=0){b=-1;break a}switch(a[i+(d[b>>0]|0)>>0]|0){case 24:case 22:{e=b;break}case 30:{j=8;break b}case 10:case 9:case 21:break b;default:{j=12;break b}}}if((j|0)==12){c[g>>2]=b;b=0;break a}c:do if((j|0)==8){if((f|0)<=1){b=-1;break a}switch(a[i+(d[e+2>>0]|0)>>0]|0){case 30:case 10:case 9:case 21:break;default:break c}c[g>>2]=b;b=0;break a}while(0);c[g>>2]=b;b=16;break a}default:{c[g>>2]=e;b=0;break a}}}else b=-1;while(0);return b|0} +function Rv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=a;while(1){j=c[f>>2]|0;if(!j){k=6;break}if((c[j>>2]|0)==(b|0))break;f=j+4|0}if((k|0)==6)qa(93188,93195,217,93206);i=j+8|0;f=c[i>>2]|0;g=j+4|0;b=c[g>>2]|0;c[(f|0?f+4|0:a)>>2]=b;h=a+4|0;c[(b|0?b+8|0:h)>>2]=f;b=0;f=a;while(1){f=c[f>>2]|0;if(!f)break;if((c[f>>2]|0)==(d|0)){k=9;break}b=f;f=f+4|0}if((k|0)==9){do if(!e)if((f|0)==(c[a>>2]|0)){c[a>>2]=j;c[g>>2]=f;c[i>>2]=0;f=f+8|0;break}else{c[b+4>>2]=j;c[i>>2]=b;c[g>>2]=f;f=f+8|0;break}else if((f|0)==(c[h>>2]|0)){c[h>>2]=j;c[g>>2]=0;c[i>>2]=f;f=f+4|0;break}else{c[i>>2]=f;f=f+4|0;c[g>>2]=c[f>>2];c[(c[f>>2]|0)+8>>2]=j;break}while(0);c[f>>2]=j}return}function Sv(a){a=a|0;return c[a+8>>2]|0}function Tv(a,b){a=a|0;b=b|0;Uv(a,Ov(b)|0);D_(b);return}function Uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[b>>2]|0;if(d|0){e=a+4|0;f=c[e>>2]|0;c[f+4>>2]=d;c[d+8>>2]=f;c[e>>2]=c[b+4>>2];d=a+8|0;c[d>>2]=(c[d>>2]|0)+(c[b+8>>2]|0)}return}function Vv(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0;m=c[b+8>>2]|0;Wv(a,b);l=Xv(m)|0;a=Zv(Yv(l)|0)|0;_v(m,a);m=$v(a,m)|0;a=Sv(m)|0;j=+aw(m);k=(a|0)==1;f=+(a|0);i=f*.15915494309189535*(j+d);g=k?0.0:i;a=m;while(1){a=c[a>>2]|0;if(!a)break;if(c[(c[(c[(c[a>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&8|0){e=4;break}a=a+4|0}if((e|0)==4)Pv(m,a);d=1.0/f;e=0;a=m;while(1){a=c[a>>2]|0;if(!a)break;n=(c[a>>2]|0)+16|0;c[(c[(c[n>>2]|0)+112>>2]|0)+16>>2]=e;h[(c[(c[n>>2]|0)+112>>2]|0)+24>>3]=0.0;f=6.283185307179586*d*+(e|0);o=+E(+f)*g;n=c[(c[n>>2]|0)+132>>2]|0;h[n>>3]=o;h[n+8>>3]=+F(+f)*g;e=e+1|0;a=a+4|0}o=k?j*.5:i;h[b+16>>3]=o;h[b+24>>3]=o;h[b+48>>3]=-1.0;$x(l)|0;return m|0}function Wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b+8>>2]|0;d=Sy(f)|0;while(1){if(!d)break;e=Ex(a,d)|0;while(1){if(!e)break;if((c[(c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0)+12>>2]|0)==(b|0))Vx(f,e,1)|0;e=Gx(a,e)|0}d=Ty(f,d)|0}return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k;f=gw(a,g)|0;g=c[g>>2]|0;i=ay(g)|0;h=hw(g)|0;i=i+-3|0;e=0;while(1){if((e|0)>=(i|0))break;j=qw(h)|0;d=Jx(g,j)|0;while(1){if(!d)break;b=c[d>>2]&3;a=c[((b|0)==2?d:d+-48|0)+40>>2]|0;if((j|0)==(a|0))a=c[((b|0)==3?d:d+48|0)+40>>2]|0;pw(h,a);d=Kx(g,d,j)|0}iw(g,j,f);d=Jx(g,j)|0;while(1){if(!d)break;b=c[d>>2]&3;a=c[((b|0)==2?d:d+-48|0)+40>>2]|0;if((j|0)==(a|0))a=c[((b|0)==3?d:d+48|0)+40>>2]|0;b=(c[a+16>>2]|0)+236|0;c[b>>2]=(c[b>>2]|0)+-1;ow(h,a);d=Kx(g,d,j)|0}dz(g,j)|0;e=e+1|0}$x(g)|0;nw(h);l=k;return f|0}function Yv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+144|0;b=f;e=f+8|0;d=c[46162]|0;c[46162]=d+1;c[b>>2]=d;Y0(e,93221,b)|0;e=vA(a,e,1)|0;Az(e,134401,280,1)|0;b=Sy(a)|0;while(1){if(!b)break;Xy(e,b,1)|0;d=b+16|0;c[(c[(c[d>>2]|0)+112>>2]|0)+16+12>>2]=0;c[(c[(c[d>>2]|0)+112>>2]|0)+32>>2]=0;d=(c[(c[d>>2]|0)+112>>2]|0)+4|0;c[d>>2]=c[d>>2]&-2;b=Ty(a,b)|0}b=Sy(a)|0;while(1){if(!b)break;d=c[(c[b+16>>2]|0)+112>>2]|0;if(!(c[d+4>>2]&1)){c[d+16>>2]=0;fw(a,b,e)}b=Ty(a,b)|0}l=f;return e|0}function Zv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((ay(a)|0)!=1){d=Sy(a)|0;while(1){if(!d)break;b=0;e=Jx(a,d)|0;while(1){if(!e)break;b=b+1|0;e=Kx(a,e,d)|0}if((b|0)==1)ew(d,d,0,0);d=Ty(a,d)|0}b=0;f=0;d=Sy(a)|0;while(1){if(!d)break;g=c[(c[d+16>>2]|0)+112>>2]|0;g=(c[g+32>>2]|0)+(c[g+16+12>>2]|0)|0;e=(g|0)>(b|0);b=e?g:b;f=e?d:f;d=Ty(a,d)|0}b=Kv()|0;e=f+16|0;d=(c[(c[e>>2]|0)+112>>2]|0)+16+4|0;while(1){d=c[d>>2]|0;if((d|0)==(f|0))break;Mv(b,0,d);d=c[(c[d+16>>2]|0)+112>>2]|0;g=d+4|0;c[g>>2]=c[g>>2]|16;d=d+16|0}Mv(b,0,f);g=c[(c[e>>2]|0)+112>>2]|0;a=g+4|0;c[a>>2]=c[a>>2]|16;if(c[g+32>>2]|0){a=Kv()|0;d=(c[(c[e>>2]|0)+112>>2]|0)+24|0;while(1){d=c[d>>2]|0;if((d|0)==(f|0))break;Mv(a,0,d);d=c[(c[d+16>>2]|0)+112>>2]|0;g=d+4|0;c[g>>2]=c[g>>2]|16;d=d+16|0}Tv(b,a)}}else{b=Kv()|0;g=Sy(a)|0;Mv(b,0,g);g=(c[(c[g+16>>2]|0)+112>>2]|0)+4|0;c[g>>2]=c[g>>2]|16}return b|0}function _v(a,b){a=a|0;b=b|0;var d=0;d=Sy(a)|0;while(1){if(!d)break;if(!(c[(c[(c[d+16>>2]|0)+112>>2]|0)+4>>2]&16))dw(a,d,b);d=Ty(a,d)|0}return}function $v(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g;d=bw(a,b)|0;c[f>>2]=d;a:do if(d){e=0;while(1){if((e|0)>=10)break a;a=cw(a,b,f)|0;h=d;d=c[f>>2]|0;if((h|0)==(d|0)|(d|0)==0)break;else e=e+1|0}}while(0);l=g;return a|0}function aw(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0;b=0.0;while(1){a=c[a>>2]|0;if(!a)break;f=c[(c[c[(c[(c[a>>2]|0)+16>>2]|0)+112>>2]>>2]|0)+16>>2]|0;d=+h[f+32>>3];d=d>b?d:b;e=+h[f+40>>3];b=e>d?e:d;a=a+4|0}return +b}function bw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=rw()|0;e=Sy(b)|0;while(1){if(!e)break;d=Ex(b,e)|0;while(1){if(!d)break;c[c[(c[d+16>>2]|0)+120>>2]>>2]=0;d=Gx(b,d)|0}e=Ty(b,e)|0}j=1;d=0;while(1){h=c[a>>2]|0;if(!h)break;i=c[h>>2]|0;g=Jx(b,i)|0;while(1){if(!g)break;f=g+16|0;if((c[c[(c[f>>2]|0)+120>>2]>>2]|0)>0){a=nb[c[k>>2]&63](k,0,128)|0;while(1){if(!a)break;e=c[a+8>>2]|0;if((c[c[(c[e+16>>2]|0)+120>>2]>>2]|0)>(c[c[(c[f>>2]|0)+120>>2]>>2]|0)?(l=c[e>>2]&3,(c[((l|0)==2?e:e+-48|0)+40>>2]|0)!=(i|0)):0)d=d+((c[((l|0)==3?e:e+48|0)+40>>2]|0)!=(i|0)&1)|0;a=nb[c[k>>2]&63](k,a,8)|0}xw(k,g)}g=Kx(b,g,i)|0}e=Jx(b,i)|0;while(1){if(!e)break;a=c[(c[e+16>>2]|0)+120>>2]|0;if(!(c[a>>2]|0)){c[a>>2]=j;ww(k,e)}e=Kx(b,e,i)|0}a=h+4|0;j=j+1|0}vw(k);return d|0}function cw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=c[d>>2]|0;k=Sy(b)|0;a:while(1){if(!k)break;j=Jx(b,k)|0;while(1){if(!j)break;g=c[j>>2]&3;f=c[((g|0)==3?j:j+48|0)+40>>2]|0;if((f|0)==(k|0))f=c[((g|0)==2?j:j+-48|0)+40>>2]|0;i=0;while(1){if((i|0)>=2)break;h=Qv(a)|0;Rv(a,k,f,i);g=bw(a,b)|0;if((g|0)<(e|0)){Lv(h);if(!g){e=0;break a}else e=g}else{Lv(a);a=h}i=i+1|0}j=Kx(b,j,k)|0}k=Ty(b,k)|0}c[d>>2]=e;return a|0}function dw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Kv()|0;e=Ex(a,b)|0;while(1){if(!e)break;f=e+-48|0;Mv(h,0,c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0);f=(c[(c[(c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;c[f>>2]=c[f>>2]|32;e=Gx(a,e)|0}e=Hx(a,b)|0;while(1){if(!e)break;f=e+48|0;Mv(h,0,c[((c[e>>2]&3|0)==3?e:f)+40>>2]|0);f=(c[(c[(c[((c[e>>2]&3|0)==3?e:f)+40>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;c[f>>2]=c[f>>2]|32;e=Ix(a,e)|0}a:do if((Sv(h)|0)>1){f=d+4|0;a=d;while(1){e=c[a>>2]|0;if(!e){g=13;break a}a=e+4|0;if(!(c[(c[(c[(c[e>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32))continue;if(c[(c[(c[(c[c[((e|0)==(c[f>>2]|0)?d:a)>>2]>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32|0)break}Mv(d,e,b)}else g=13;while(0);b:do if((g|0)==13){c:do if((Sv(h)|0)>0){e=d;while(1){e=c[e>>2]|0;if(!e)break c;if(c[(c[(c[(c[e>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32|0)break;e=e+4|0}Mv(d,e,b);break b}while(0);Mv(d,0,b)}while(0);e=h;while(1){e=c[e>>2]|0;if(!e)break;d=(c[(c[(c[e>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;c[d>>2]=c[d>>2]&-33;e=e+4|0}Lv(h);return}function ew(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;while(1){g=c[(c[(c[b+16>>2]|0)+112>>2]|0)+16>>2]|0;if(!g)break;h=d+1|0;i=g+16|0;j=c[(c[i>>2]|0)+112>>2]|0;b=j+16|0;f=c[b+12>>2]|0;if(f){if((f|0)>(d|0)){k=11;break}b=c[b+4>>2]|0;f=b;if((b|0)==(e|0))b=j;else{d=j+24|0;if(!((c[j+32>>2]|0)!=0?(c[d>>2]|0)==(e|0):0))e=b;c[d>>2]=f;b=c[(c[i>>2]|0)+112>>2]|0;c[b+32>>2]=c[b+16+12>>2];b=c[(c[i>>2]|0)+112>>2]|0}b=b+16|0}c[b+4>>2]=a;c[(c[(c[i>>2]|0)+112>>2]|0)+16+12>>2]=h;b=g;d=h}if((k|0)==11?(c[j+32>>2]|0)<=(d|0):0){c[j+24>>2]=a;c[(c[(c[i>>2]|0)+112>>2]|0)+32>>2]=h}return}function fw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=(c[(c[b+16>>2]|0)+112>>2]|0)+4|0;c[g>>2]=c[g>>2]|1;g=Jx(a,b)|0;while(1){if(!g)break;f=c[g>>2]&3;e=c[((f|0)==2?g:g+-48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((f|0)==3?g:g+48|0)+40>>2]|0;f=e+16|0;if(!(c[(c[(c[f>>2]|0)+112>>2]|0)+4>>2]&1)){Vx(d,g,1)|0;c[(c[(c[f>>2]|0)+112>>2]|0)+16>>2]=b;fw(a,e,d)}g=Kx(a,g,b)|0}return}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+144|0;j=k+8|0;i=k;e=k+16|0;h=c[46163]|0;c[46163]=h+1;c[i>>2]=h;Y0(e,93230,i)|0;i=vA(b,e,1)|0;Az(i,134401,280,1)|0;h=c[46163]|0;c[46163]=h+1;c[j>>2]=h;Y0(e,93230,j)|0;h=b+24|0;a[j>>0]=a[h>>0]|0;a[j+1>>0]=a[h+1>>0]|0;a[j+2>>0]=a[h+2>>0]|0;a[j+3>>0]=a[h+3>>0]|0;j=Xx(e,j,0)|0;e=Sy(b)|0;while(1){if(!e)break;Xy(i,e,1)|0;h=az(j,ry(e)|0,1)|0;Az(h,134365,304,1)|0;c[(c[(c[e+16>>2]|0)+112>>2]|0)+16>>2]=h;e=Ty(b,e)|0}f=Sy(b)|0;while(1){if(!f)break;g=c[(c[(c[f+16>>2]|0)+112>>2]|0)+16>>2]|0;h=g+16|0;e=Ex(b,f)|0;while(1){if(!e)break;Vx(i,e,1)|0;m=c[(c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0)+16>>2]|0;n=Rx(j,g,m,0,1)|0;Az(n,134378,176,1)|0;c[(c[n+16>>2]|0)+116>>2]=e;n=(c[h>>2]|0)+236|0;c[n>>2]=(c[n>>2]|0)+1;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;e=Gx(b,e)|0}f=Ty(b,f)|0}c[d>>2]=j;l=k;return i|0}function hw(a){a=a|0;var b=0,c=0;c=jw()|0;b=Sy(a)|0;while(1){if(!b)break;ow(c,b);b=Ty(a,b)|0}return c|0}function iw(a,b,d){a=a|0;b=b|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;m=c[(c[b+16>>2]|0)+236>>2]|0;p=m<<2;o=vH(p)|0;p=vH(p)|0;i=0;l=Jx(a,b)|0;n=0;f=0;while(1){if(!l)break;e=c[l>>2]&3;g=c[((e|0)==2?l:l+-48|0)+40>>2]|0;if((g|0)==(b|0))g=c[((e|0)==3?l:l+48|0)+40>>2]|0;h=0;k=Jx(a,b)|0;j=i;while(1){if(!k)break;if((k|0)!=(l|0)){i=c[k>>2]&3;e=c[((i|0)==2?k:k+-48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((i|0)==3?k:k+48|0)+40>>2]|0;i=Rx(a,g,e,0,0)|0;if(i)if(g>>>0>>0){e=j+1|0;h=i+16|0;i=c[(c[h>>2]|0)+116>>2]|0;if(!i)h=1;else{dz(d,i)|0;c[(c[h>>2]|0)+116>>2]=0;h=1}}else{h=1;e=j}else e=j}else e=j;k=Kx(a,k,b)|0;j=e}if(!h){c[p+(n<<2)>>2]=g;e=n+1|0}else{c[o+(f<<2)>>2]=g;e=n;f=f+1|0}i=j;l=Kx(a,l,b)|0;n=e}e=m+-1-i|0;a:do if((e|0)>0){if((e|0)<(n|0))g=0;else{if((e|0)!=(n|0))break;f=c[o>>2]|0;g=f+16|0;e=0;while(1){if((e|0)>=(n|0))break a;m=c[p+(e<<2)>>2]|0;Az(Rx(a,f,m,0,1)|0,134378,176,1)|0;d=(c[g>>2]|0)+236|0;c[d>>2]=(c[d>>2]|0)+1;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;e=e+1|0}}while(1){if((g|0)>=(n|0)){f=2;break}f=g|1;if((f|0)>=(n|0)){f=2;break}d=c[p+(g<<2)>>2]|0;m=c[p+(f<<2)>>2]|0;Az(Rx(a,d,m,0,1)|0,134378,176,1)|0;d=(c[d+16>>2]|0)+236|0;c[d>>2]=(c[d>>2]|0)+1;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;g=g+2|0;e=e+-1|0}while(1){if((e|0)<=0)break a;m=c[p>>2]|0;n=c[p+(f<<2)>>2]|0;Az(Rx(a,m,n,0,1)|0,134378,176,1)|0;m=(c[m+16>>2]|0)+236|0;c[m>>2]=(c[m>>2]|0)+1;n=(c[n+16>>2]|0)+236|0;c[n>>2]=(c[n>>2]|0)+1;f=f+1|0;e=e+-1|0}}while(0);D_(p);D_(o);return}function jw(){return Cw(18136,c[4555]|0)|0}function kw(a,b,d){a=a|0;b=b|0;d=d|0;d=vH(16)|0;c[d+12>>2]=0;c[d+8>>2]=c[b+8>>2];return d|0}function lw(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function mw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b>>2]|0;e=c[d>>2]|0;return ((b|0)<(e|0)?-1:(b|0)>(e|0)&1)|0}function nw(a){a=a|0;yw(a)|0;return}function ow(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d;e=b+16|0;c[f+8>>2]=c[(c[e>>2]|0)+236>>2];a=(nb[c[a>>2]&63](a,f,1)|0)+12|0;c[(c[e>>2]|0)+164>>2]=c[a>>2];c[a>>2]=b;l=d;return}function pw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=b+16|0;c[g+8>>2]=c[(c[f>>2]|0)+236>>2];g=nb[c[a>>2]&63](a,g,4)|0;if(!g)qa(93240,93243,107,93253);e=g+12|0;d=c[e>>2]|0;if((d|0)==(b|0)){b=c[(c[f>>2]|0)+164>>2]|0;c[e>>2]=b;if(!b)nb[c[a>>2]&63](a,g,2)|0}else{do{a=(c[d+16>>2]|0)+164|0;d=c[a>>2]|0;e=(d|0)!=0}while(e&(d|0)!=(b|0));if(e)c[a>>2]=c[(c[d+16>>2]|0)+164>>2]}l=h;return}function qw(a){a=a|0;var b=0,d=0,e=0,f=0;d=nb[c[a>>2]&63](a,0,128)|0;if(d){f=d+12|0;b=c[f>>2]|0;e=c[(c[b+16>>2]|0)+164>>2]|0;c[f>>2]=e;if(!e)nb[c[a>>2]&63](a,d,2)|0}else b=0;return b|0}function rw(){return Cw(18172,c[4555]|0)|0}function sw(a,b,d){a=a|0;b=b|0;d=d|0;d=vH(12)|0;c[d+8>>2]=c[b+8>>2];return d|0}function tw(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function uw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b>>2]|0;e=c[d>>2]|0;return (b>>>0>e>>>0?1:(b>>>0>>0)<<31>>31)|0}function vw(a){a=a|0;yw(a)|0;return}function ww(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e+8>>2]=b;nb[c[a>>2]&63](a,e,1)|0;l=d;return}function xw(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e+8>>2]=b;nb[c[a>>2]&63](a,e,2)|0;l=d;return}function yw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;do if((a|0)!=0?(c[a+24>>2]|0)<=0:0){h=c[a+4>>2]|0;g=h+32|0;b=c[g>>2]|0;if(b){b=ob[b&127](a,2,0,h)|0;if((b|0)<0){b=-1;break}}else b=0;if(c[a+28>>2]|0)Hw(a,0)|0;f=(b|0)==0;if(f){nb[c[c[a+16>>2]>>2]&63](a,0,64)|0;if((Ew(a)|0)>0){b=-1;break}d=a+8|0;b=c[d>>2]|0;if((c[b+12>>2]|0)>0){e=a+12|0;ob[c[e>>2]&127](a,c[b+8>>2]|0,0,h)|0;b=c[d>>2]|0}else e=a+12|0;ob[c[e>>2]&127](a,b,0,h)|0}b=c[a+20>>2]|0;if(b){if(f&(b|0)==1)ob[c[a+12>>2]&127](a,a,0,h)|0}else D_(a);b=c[g>>2]|0;if(!b)b=0;else{ob[b&127](a,6,0,h)|0;b=0}}else b=-1;while(0);return b|0}function zw(a){a=a|0;var b=0,d=0,e=0;e=a+8|0;b=c[e>>2]|0;d=c[b>>2]|0;a:do if(!(d&12)){if(!(d&3)){d=b+8|0;a=c[d>>2]|0;c[d>>2]=0;break}a=Aw(a)|0;d=c[e>>2]|0;b=c[d+8>>2]|0;d=b+(c[d+12>>2]<<2)|0;while(1){if(b>>>0>=d>>>0)break a;c[b>>2]=0;b=b+4|0}}else a=c[b+4>>2]|0;while(0);e=c[e>>2]|0;c[e>>2]=c[e>>2]&-4097;c[e+16>>2]=0;c[e+4>>2]=0;return a|0}function Aw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+8|0;a=c[g>>2]|0;b=c[a>>2]|0;if(!(b&4096)){a:do if(!(b&3)){if(b&112|0){a=c[a+8>>2]|0;break}a=c[a+4>>2]|0;if(!a)a=0;else{while(1){b=a+4|0;d=c[b>>2]|0;if(!d){e=a;break}c[b>>2]=c[d>>2];c[d>>2]=a;a=d}while(1){b=c[e>>2]|0;if(!b)break a;d=c[b+4>>2]|0;if(!d){e=b;continue}while(1){c[b+4>>2]=c[d>>2];c[d>>2]=b;b=c[d+4>>2]|0;if(!b)break;else{f=d;d=b;b=f}}c[e>>2]=d;e=d}}}else{e=c[a+8>>2]|0;f=e+(c[a+12>>2]<<2)|0;b=0;a=0;while(1){if(e>>>0>=f>>>0)break a;d=c[e>>2]|0;if(d){if(!b){b=d;a=d}else c[b>>2]=d;while(1){d=c[b>>2]|0;if(!d)break;else b=d}c[e>>2]=b}e=e+4|0}}while(0);g=c[g>>2]|0;c[g+4>>2]=a;c[g>>2]=c[g>>2]|4096}else a=c[a+4>>2]|0;return a|0}function Bw(a,b,d){a=a|0;b=b|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;s=a+8|0;if(c[c[s>>2]>>2]&4096|0)Dw(a,0)|0;r=c[a+4>>2]|0;m=c[r>>2]|0;n=c[r+4>>2]|0;q=r+8|0;u=c[q>>2]|0;o=c[r+20>>2]|0;p=a+20|0;f=c[p>>2]&-32769;c[p>>2]=f;a:do if(!b){if(d&384|0){f=c[s>>2]|0;e=c[f+8>>2]|0;if(!e){e=0;break}if(d&256){e=c[e+4>>2]|0;c[f+4>>2]=e;if(!e){e=0;break}}else c[f+4>>2]=e;if((u|0)<0){e=c[e+8>>2]|0;break}else{e=e+(0-u)|0;break}}if(d&4098|0){e=c[s>>2]|0;if(c[e>>2]&144|0){e=0;break}e=c[e+8>>2]|0;if(!e){e=0;break}else{h=e;t=84;break}}if(!(d&64))e=0;else{i=r+16|0;b:do if((c[i>>2]|0)!=0|(u|0)<0){j=a+12|0;k=(u|0)<0;f=0-u|0;e=c[(c[s>>2]|0)+8>>2]|0;while(1){if(!e)break b;g=c[e>>2]|0;h=c[i>>2]|0;if(h|0){if(k)b=c[e+8>>2]|0;else b=e+f|0;vb[h&127](a,b,r)}if((c[q>>2]|0)>=0){e=g;continue}ob[c[j>>2]&127](a,e,0,r)|0;e=g}}while(0);e=c[s>>2]|0;c[e+4>>2]=0;c[e+8>>2]=0;c[(c[s>>2]|0)+16>>2]=0;e=0}}else{if(d&2049|0){g=r+12|0;e=c[g>>2]|0;h=(d&1|0)==0;if(!(h|(e|0)==0)){e=nb[e&63](a,b,r)|0;if(!e){e=0;break}else f=e}else f=b;do if((u|0)>-1)h=f+u|0;else{e=ob[c[a+12>>2]&127](a,0,12,r)|0;if(e|0){c[e+8>>2]=f;h=e;break}if(!(c[g>>2]|0)){e=0;break a}e=c[r+16>>2]|0;if(h|(e|0)==0){e=0;break a}vb[e&127](a,f,r);e=0;break a}while(0);g=c[s>>2]|0;e=c[g>>2]|0;do if(!(e&128)){if(!(e&16))if(!(e&32)){t=51;break}else{t=48;break}f=c[g+4>>2]|0;e=(f|0)!=0;if(!(d&8192)){if(!e){t=48;break}if((f|0)==(c[g+8>>2]|0)){t=48;break}r=f+4|0;a=c[r>>2]|0;c[h+4>>2]=a;c[a>>2]=h;c[h>>2]=f;c[r>>2]=h;break}else{if(!e){t=51;break}e=c[f>>2]|0;if(!e){t=51;break}c[h>>2]=e;c[e+4>>2]=h;c[h+4>>2]=f;c[f>>2]=h;break}}else if(!(d&8192))t=48;else t=51;while(0);if((t|0)==48){e=c[g+8>>2]|0;c[h>>2]=e;if(!e)e=h;else c[h+4>>2]=c[e+4>>2];c[e+4>>2]=h;c[(c[s>>2]|0)+8>>2]=h}else if((t|0)==51){f=g+8|0;e=c[f>>2]|0;if(!e){c[f>>2]=h;e=h}else{r=e+4|0;c[c[r>>2]>>2]=h;c[h+4>>2]=c[r>>2]}c[e+4>>2]=h;c[h>>2]=0}e=c[s>>2]|0;f=e+16|0;g=c[f>>2]|0;if((g|0)>-1)c[f>>2]=g+1;c[e+4>>2]=h;if((u|0)<0){e=c[h+8>>2]|0;break}else{e=h+(0-u)|0;break}}h=c[s>>2]|0;do if(!(d&512)){e=c[h+4>>2]|0;if(e|0){if((u|0)<0)g=c[e+8>>2]|0;else g=e+(0-u)|0;if((g|0)==(b|0))break}e=b+m|0;if((n|0)<0){b=c[e>>2]|0;t=68}else{b=e;t=68}}else t=68;while(0);if((t|0)==68){g=(u|0)<0;i=(n|0)<0;j=(o|0)==0;k=(n|0)<1;l=0-u|0;e=h+8|0;do{e=c[e>>2]|0;if(!e){e=0;break a}if(g)f=c[e+8>>2]|0;else f=e+l|0;f=f+m|0;if(i)f=c[f>>2]|0;do if(j)if(k){f=b$(b,f)|0;break}else{f=L0(b,f,n)|0;break}else f=ob[o&127](a,b,f,r)|0;while(0)}while((f|0)!=0);f=c[p>>2]|0}c[p>>2]=f|32768;if(!(d&4098)){do if(!(d&8)){f=c[s>>2]|0;if(!(d&16)){c[f+4>>2]=e;break}if((e|0)==(c[f+8>>2]|0)){c[f+4>>2]=0;e=0;break a}else{e=e+4|0;t=108;break}}else{f=c[s>>2]|0;t=108}while(0);if((t|0)==108){e=c[e>>2]|0;c[f+4>>2]=e;if(!e){e=0;break}}if((u|0)<0){e=c[e+8>>2]|0;break}else{e=e+(0-u)|0;break}}else{h=e;t=84}}while(0);if((t|0)==84){e=c[h>>2]|0;if(e){c[e+4>>2]=c[h+4>>2];e=c[h>>2]|0}f=(c[s>>2]|0)+8|0;g=c[f>>2]|0;if((h|0)==(g|0)){c[f>>2]=e;e=c[(c[s>>2]|0)+8>>2]|0;if(e|0)c[e+4>>2]=c[h+4>>2]}else{f=h+4|0;c[c[f>>2]>>2]=e;e=g+4|0;if((h|0)==(c[e>>2]|0))c[e>>2]=c[f>>2]}e=c[s>>2]|0;f=e+4|0;if((h|0)==(c[f>>2]|0))g=c[h>>2]|0;else g=0;c[f>>2]=g;t=e+16|0;c[t>>2]=(c[t>>2]|0)+-1;if((u|0)<0)e=c[h+8>>2]|0;else e=h+(0-u)|0;f=c[r+16>>2]|0;if(!((d&2|0)==0|(f|0)==0))vb[f&127](a,e,r);if((c[q>>2]|0)<0)ob[c[a+12>>2]&127](a,h,0,r)|0}return e|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;a:do if((a|0)!=0&(b|0)!=0?(f=C_(40)|0,(f|0)!=0):0){c[f>>2]=0;c[f+16>>2]=0;c[f+4>>2]=0;Kw(f,a,0)|0;d=f+20|0;i=a+32|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;d=c[i>>2]|0;do if(d){c[g>>2]=0;d=ob[d&127](f,1,g,a)|0;if((d|0)>=0)if(d){e=c[g>>2]|0;if(e|0)if(!(c[b+4>>2]&c[e>>2])){d=f;h=12;break}else{d=f;break}d=a+28|0;if(!(c[d>>2]|0)){d=f;h=12}else{D_(f);e=ob[c[d>>2]&127](0,0,40,a)|0;if(!e){d=0;break a}c[e>>2]=0;c[e+16>>2]=0;c[e+4>>2]=0;Kw(e,a,0)|0;c[e+20>>2]=1;c[e+24>>2]=0;c[e+32>>2]=0;c[e+28>>2]=0;d=e;f=e;h=11}}else{d=f;h=11}else{d=f;h=12}}else{d=f;h=11}while(0);if((h|0)==11){e=ob[c[d+12>>2]&127](d,0,28,a)|0;c[g>>2]=e;if(!e){d=f;h=12}else{c[e>>2]=c[b+4>>2];g=e+4|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0}}if((h|0)==12){D_(d);d=0;break}c[d+8>>2]=e;c[d>>2]=c[b>>2];c[d+16>>2]=b;e=c[i>>2]|0;if(e)ob[e&127](d,5,f,a)|0}else d=0;while(0);l=j;return d|0}function Dw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=c[c[a+16>>2]>>2]|0;j=a+8|0;g=c[j>>2]|0;h=c[g>>2]|0;d=h&4096;if(!b)if(!d)b=-1;else{e=d;b=c[g+4>>2]|0;i=5}else if(!(c[g+16>>2]|0)){e=0;i=5}else b=-1;a:do if((i|0)==5){c[g>>2]=h&-4097;if(!(h&3)){d=g+4|0;if(!(h&12)){c[d>>2]=0;d=g+8|0}c[d>>2]=b;if(e|0){b=0;break}c[(c[j>>2]|0)+16>>2]=-1;b=0;break}c[g+4>>2]=0;if(!e){c[g+16>>2]=0;while(1){if(!b){b=0;break a}j=c[b>>2]|0;nb[f&63](a,b,32)|0;b=j}}e=c[g+8>>2]|0;a=e+(c[g+12>>2]<<2)|0;while(1){if(e>>>0>=a>>>0){b=0;break a}d=c[e>>2]|0;if(d){c[e>>2]=b;b=c[d>>2]|0;c[d>>2]=0}e=e+4|0}}while(0);return b|0}function Ew(a){a=a|0;var b=0,d=0,e=0;b=a+8|0;d=c[b>>2]|0;if(c[d>>2]&4096){Dw(a,0)|0;d=c[b>>2]|0}e=d+16|0;a=c[e>>2]|0;do if((a|0)<0){b=c[d>>2]|0;if(b&12|0){a=Fw(c[d+4>>2]|0)|0;c[e>>2]=a;break}if(b&112){a=0;b=d+8|0;while(1){b=c[b>>2]|0;if(!b)break;a=a+1|0}c[e>>2]=a}}while(0);return a|0}function Fw(a){a=a|0;var b=0;if(!a)return 0;else{b=Fw(c[a+4>>2]|0)|0;return b+1+(Fw(c[a>>2]|0)|0)|0}return 0}function Gw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+128|0;z=G+120|0;r=G;F=a+8|0;e=c[F>>2]|0;if(c[e>>2]&4096){Dw(a,0)|0;e=c[F>>2]|0}E=c[a+4>>2]|0;A=c[E>>2]|0;B=c[E+4>>2]|0;x=E+8|0;D=c[x>>2]|0;C=c[E+20>>2]|0;t=a+20|0;c[t>>2]=c[t>>2]&-32769;h=c[e+4>>2]|0;a:do if(!b)if((d&448|0)==0|(h|0)==0)e=0;else{if(!(d&64)){b:do if(!(d&256)){e=h;while(1){f=e+4|0;g=c[f>>2]|0;if(!g)break b;c[f>>2]=c[g>>2];c[g>>2]=e;e=g}}else{e=h;while(1){f=c[e>>2]|0;if(!f)break b;a=f+4|0;c[e>>2]=c[a>>2];c[a>>2]=e;e=f}}while(0);c[(c[F>>2]|0)+4>>2]=e;if((D|0)<0){e=c[e+8>>2]|0;break}else{e=e+(0-D)|0;break}}b=E+16|0;if((c[b>>2]|0)!=0|(D|0)<0){j=a+12|0;k=(D|0)<0;i=0-D|0;e=h;do{h=e;while(1){e=h+4|0;f=c[e>>2]|0;if(!f)break;c[e>>2]=c[f>>2];c[f>>2]=h;h=f}e=c[h>>2]|0;f=c[b>>2]|0;if(f|0){if(k)g=c[h+8>>2]|0;else g=h+i|0;vb[f&127](a,g,E)}if((c[x>>2]|0)<0)ob[c[j>>2]&127](a,h,0,E)|0}while((e|0)!=0);e=c[F>>2]|0}c[e+16>>2]=0;c[e+4>>2]=0;e=0}else{y=a+16|0;u=(d&4098|0)==0;c:do if(u|(c[(c[y>>2]|0)+4>>2]|0)!=8)v=45;else{k=(B|0)<0;e=b+A|0;if(k)e=c[e>>2]|0;i=(C|0)==0;j=(B|0)<1;g=nb[c[a>>2]&63](a,b,4)|0;while(1){if(!g){v=45;break c}f=g+A|0;if(k)f=c[f>>2]|0;do if(i)if(j){f=b$(e,f)|0;break}else{f=L0(e,f,B)|0;break}else f=ob[C&127](a,e,f,E)|0;while(0);if(f|0){v=45;break c}if((g|0)==(b|0))break;g=nb[c[a>>2]&63](a,g,8)|0}h=c[(c[F>>2]|0)+4>>2]|0;c[z>>2]=c[h+4>>2];c[z+4>>2]=c[h>>2];e=z;v=180}while(0);d:do if((v|0)==45){do if(!(d&2565)){if(d&32|0){if((D|0)<0)g=c[b+8>>2]|0;else g=b+(0-D)|0;e=g+A|0;if((B|0)<0)f=c[e>>2]|0;else f=e;if(!h){e=b;f=z;h=z;v=198;break}else{e=b;s=f;j=b;v=64;break}}if(h){if((D|0)<0)e=c[h+8>>2]|0;else e=h+(0-D)|0;if((e|0)!=(b|0)){f=b+A|0;if((B|0)<0){g=b;e=0;s=c[f>>2]|0;j=0;v=64}else{g=b;e=0;s=f;j=0;v=64}}else{e=0;g=b;f=z;k=z;j=0;v=141}}else{e=0;g=b;f=z;h=z;v=198}}else{if(!(d&512)){e=b+A|0;if((B|0)<0)f=c[e>>2]|0;else f=e}else f=b;if(!h){e=0;g=b;f=z;h=z;v=198}else{g=b;e=0;s=f;j=0;v=64}}while(0);e:do if((v|0)==64){f:do if((c[(c[y>>2]|0)+4>>2]|0)==4?(q=c[(c[F>>2]|0)+24>>2]|0,!((d&516|0)==0|(q|0)==0)):0){b=(D|0)<0;m=(B|0)<0;n=(C|0)==0;o=(B|0)<1;p=0-D|0;k=0;f=h;while(1){if((k|0)>=(q|0)){f=z;k=z;m=0;break}if(b)i=c[f+8>>2]|0;else i=f+p|0;i=i+A|0;if(m)i=c[i>>2]|0;do if(n)if(o){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if(!i){v=80;break}c[r+(k<<2)>>2]=i;f=c[((i|0)<0?f+4|0:f)>>2]|0;if(!f){e=0;break a}else k=k+1|0}if((v|0)==80)if(b){e=c[f+8>>2]|0;break a}else{e=f+p|0;break a}while(1){if((m|0)>=(q|0))break f;do if((c[r+(m<<2)>>2]|0)<0){i=h+4|0;b=c[i>>2]|0;if((c[r+((m|1)<<2)>>2]|0)<0){c[i>>2]=c[b>>2];c[b>>2]=h;c[f+4>>2]=b;f=b;h=k;i=b+4|0;break}else{c[k>>2]=b;c[f+4>>2]=h;f=h;h=b;i=b;break}}else{i=c[h>>2]|0;if((c[r+((m|1)<<2)>>2]|0)>0){p=i+4|0;c[h>>2]=c[p>>2];c[p>>2]=h;c[k>>2]=i;h=i;break}else{c[f+4>>2]=i;c[k>>2]=h;f=i;i=i+4|0;break}}while(0);k=h;m=m+2|0;h=c[i>>2]|0}}else{f=z;k=z}while(0);n=(D|0)<0;o=(B|0)<0;p=(C|0)!=0;q=(B|0)<1;r=0-D|0;i=h;g:while(1){h=i;while(1){if(n)i=c[h+8>>2]|0;else i=h+r|0;i=i+A|0;if(o)i=c[i>>2]|0;do if(!p)if(q){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if(!i){v=140;break g}if((i|0)>=0)break;b=h+4|0;m=c[b>>2]|0;if(!m){v=121;break g}if(n)i=c[m+8>>2]|0;else i=m+r|0;i=i+A|0;if(o)i=c[i>>2]|0;do if(!p)if(q){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if((i|0)>=0){v=118;break}c[b>>2]=c[m>>2];c[m>>2]=h;c[f+4>>2]=m;h=c[m+4>>2]|0;if(!h){f=m;h=k;v=198;break e}else f=m}if((v|0)==118){v=0;if(!i){v=119;break}c[k>>2]=m;c[f+4>>2]=h;i=c[m>>2]|0;if(!i){f=h;h=m;v=198;break e}else{f=h;k=m;continue}}b=c[h>>2]|0;if(!b){v=139;break}if(n)i=c[b+8>>2]|0;else i=b+r|0;i=i+A|0;if(o)i=c[i>>2]|0;do if(!p)if(q){i=b$(s,i)|0;break}else{i=L0(s,i,B)|0;break}else i=ob[C&127](a,s,i,E)|0;while(0);if((i|0)>0){i=b+4|0;c[h>>2]=c[i>>2];c[i>>2]=h;c[k>>2]=b;i=c[b>>2]|0;if(!i){h=b;v=198;break e}else{k=b;continue}}if(!i){v=137;break}c[f+4>>2]=b;c[k>>2]=h;i=c[b+4>>2]|0;if(!i){f=b;v=198;break e}else{f=b;k=h}}if((v|0)==119){c[f+4>>2]=h;f=h;h=m;v=141;break}else if((v|0)==121){c[f+4>>2]=h;f=h;h=k;v=198;break}else if((v|0)==137){c[k>>2]=h;k=h;h=b;v=141;break}else if((v|0)==139){c[k>>2]=h;v=198;break}else if((v|0)==140)if(!h){h=k;v=198;break}else{v=141;break}}while(0);do if((v|0)==141){c[t>>2]=c[t>>2]|32768;i=h+4|0;c[k>>2]=c[i>>2];c[f+4>>2]=c[h>>2];if(!(d&516)){if(d&8|0){c[i>>2]=c[z>>2];c[h>>2]=0;c[z>>2]=h;v=169;break}if(d&16|0){v=z+4|0;c[h>>2]=c[v>>2];c[i>>2]=0;c[v>>2]=h;v=175;break}if(!u){e=f;v=180;break d}if(d&2049|0){if(c[(c[y>>2]|0)+4>>2]&4|0){e=h;break}c[i>>2]=0;e=z+4|0;c[h>>2]=c[e>>2];c[e>>2]=h;e=h;v=205;break}if(!(d&32)){e=0;break a}if(!(c[(c[y>>2]|0)+4>>2]&4)){c[e+4>>2]=0;x=z+4|0;c[e>>2]=c[x>>2];c[x>>2]=j;e=(c[F>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+1;e=h;break}e=c[E+16>>2]|0;if(e|0)vb[e&127](a,g,E);if((c[x>>2]|0)<0){ob[c[a+12>>2]&127](a,j,0,E)|0;e=h}else e=h}else e=h}else if((v|0)==198){c[f+4>>2]=0;c[h>>2]=0;if(!(d&8))if(!(d&16)){if(d&516|0){e=f;break d}if(!(d&2049)){if(!(d&32)){g=0;e=f;break d}x=(c[F>>2]|0)+16|0;c[x>>2]=(c[x>>2]|0)+1}else{e=0;v=205}}else v=175;else v=169}while(0);if((v|0)==169){h=z+4|0;e=c[h>>2]|0;if(!e){e=f;break}while(1){f=e+4|0;g=c[f>>2]|0;if(!g)break;c[f>>2]=c[g>>2];c[g>>2]=e;e=g}c[h>>2]=c[e>>2]}else if((v|0)==175){e=c[z>>2]|0;if(!e){e=f;break}while(1){f=c[e>>2]|0;if(!f)break;x=f+4|0;c[e>>2]=c[x>>2];c[x>>2]=e;e=f}c[z>>2]=c[e+4>>2]}else if((v|0)==205){i=E+12|0;h=c[i>>2]|0;j=(d&1|0)==0;if(!(j|(h|0)==0))g=nb[h&63](a,g,E)|0;do if(g){if((D|0)>-1){e=g+D|0;v=215;break}e=ob[c[a+12>>2]&127](a,0,12,E)|0;if(e|0){c[e+8>>2]=g;break}if((c[i>>2]|0)!=0?(w=c[E+16>>2]|0,!(j|(w|0)==0)):0){vb[w&127](a,g,E);v=215}else v=215}else v=215;while(0);if((v|0)==215)if(!e){e=f;break}f=(c[F>>2]|0)+16|0;g=c[f>>2]|0;if((g|0)>-1)c[f>>2]=g+1}c[e+4>>2]=c[z>>2];c[e>>2]=c[z+4>>2];h:do if(!((d&516|0)==0?1:(c[(c[y>>2]|0)+4>>2]&8|0)==0)){m=(D|0)<0;if(m)f=c[e+8>>2]|0;else f=e+(0-D)|0;n=(B|0)<0;f=f+A|0;if(n)f=c[f>>2]|0;j=(C|0)==0;k=(B|0)<1;b=0-D|0;while(1){i=e+4|0;g=c[i>>2]|0;if(!g)break h;while(1){h=c[g>>2]|0;if(!h)break;z=h+4|0;c[g>>2]=c[z>>2];c[z>>2]=g;g=h}c[i>>2]=g;if(m)h=c[g+8>>2]|0;else h=g+b|0;h=h+A|0;if(n)h=c[h>>2]|0;do if(j)if(k){h=b$(f,h)|0;break}else{h=L0(f,h,B)|0;break}else h=ob[C&127](a,f,h,E)|0;while(0);if(h|0)break h;c[i>>2]=c[g>>2];c[g>>2]=e;e=g}}while(0);c[(c[F>>2]|0)+4>>2]=e;if((D|0)<0){e=c[e+8>>2]|0;break a}else{e=e+(0-D)|0;break a}}while(0);if((v|0)==180){if((D|0)<0)g=c[h+8>>2]|0;else g=h+(0-D)|0;f=c[E+16>>2]|0;if(!((d&2|0)==0|(f|0)==0))vb[f&127](a,g,E);if((c[x>>2]|0)<0)ob[c[a+12>>2]&127](a,h,0,E)|0;a=(c[F>>2]|0)+16|0;E=c[a>>2]|0;c[a>>2]=(E|0)<1?-1:E+-1|0}do{f=e+4|0;e=c[f>>2]|0}while((e|0)!=0);c[f>>2]=c[z>>2];c[(c[F>>2]|0)+4>>2]=c[z+4>>2];e=d&2|0?g:0}while(0);l=G;return e|0}function Hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(c[c[a+8>>2]>>2]&4096|0)Dw(a,0)|0;f=(b|0)!=0;if(f){if(c[c[b+8>>2]>>2]&4096|0)Dw(b,0)|0;if((c[b+16>>2]|0)==(c[a+16>>2]|0)){d=b;e=7}else b=0}else{d=0;e=7}a:do if((e|0)==7){while(1){if(!d)break;if((d|0)==(a|0)){b=0;break a}d=c[d+28>>2]|0;e=7}d=a+28|0;e=c[d>>2]|0;if(e|0){g=e+24|0;c[g>>2]=(c[g>>2]|0)+-1}c[a+32>>2]=0;c[d>>2]=0;if(f){c[d>>2]=b;c[a>>2]=25;g=b+24|0;c[g>>2]=(c[g>>2]|0)+1;break}else{c[a>>2]=c[c[a+16>>2]>>2];b=e;break}}while(0);return b|0}function Iw(a,b,d){a=a|0;b=b|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;a:do if(!(d&99)){if((d&516|0)==0?(e=c[(c[a+16>>2]|0)+4>>2]|0,!((d&384|0)!=0&(e&12|0)==0)):0){if(e&12|0){if(!(d&408)){e=0;break}o=(d&136|0)!=0;p=(d&272|0)!=0;l=0;f=0;e=0;n=a;while(1){if(!n)break;m=nb[c[c[n+16>>2]>>2]&63](n,b,d)|0;do if(!m)g=l;else{h=c[n+4>>2]|0;i=c[h+4>>2]|0;j=c[h+20>>2]|0;g=m+(c[h>>2]|0)|0;if((i|0)<0)k=c[g>>2]|0;else k=g;if(e|0){do if(!j)if((i|0)<1){g=b$(k,f)|0;break}else{g=L0(k,f,i)|0;break}else g=ob[j&127](n,k,f,h)|0;while(0);if(!(o&(g|0)<0|p&(g|0)>0)){g=l;break}}g=n;f=k;e=m}while(0);l=g;n=c[n+28>>2]|0}c[a+32>>2]=l;break}if(!(d&24)){e=0;break}j=a+32|0;f=c[j>>2]|0;if(f){e=c[(c[f+4>>2]|0)+8>>2]|0;g=c[(c[f+8>>2]|0)+4>>2]|0;if((e|0)<0)e=c[g+8>>2]|0;else e=g+(0-e)|0;if((e|0)==(b|0))e=b;else{f=a;h=32}}else{f=a;h=32}do if((h|0)==32){while(1){if(!f){h=33;break}e=nb[c[c[f+16>>2]>>2]&63](f,b,4)|0;if(e|0){h=36;break}f=c[f+28>>2]|0;h=32}if((h|0)==33){c[j>>2]=0;e=0;break a}else if((h|0)==36){c[j>>2]=f;break}}while(0);i=(d<<4&128^128)+128|0;e=nb[c[c[f+16>>2]>>2]&63](f,e,d)|0;while(1){h=f+16|0;while(1){if(!e)break;else g=a;while(1){if((g|0)==(f|0))break a;if(nb[c[c[g+16>>2]>>2]&63](g,e,4)|0)break;g=c[g+28>>2]|0}e=nb[c[c[h>>2]>>2]&63](f,e,d)|0}f=c[f+28>>2]|0;c[j>>2]=f;if(!f){e=0;break a}e=nb[c[c[f+16>>2]>>2]&63](f,0,i)|0}}else f=a;while(1){if(!f){f=0;e=0;break}e=nb[c[c[f+16>>2]>>2]&63](f,b,d)|0;if(e|0)break;f=c[f+28>>2]|0}c[a+32>>2]=f}else e=nb[c[c[a+16>>2]>>2]&63](a,b,d)|0;while(0);return e|0}function Jw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+32|0;f=nb[c[a>>2]&63](a,0,128)|0;do{if(!f){e=0;break}h=c[g>>2]|0;e=f;f=nb[c[a>>2]&63](a,f,8)|0;e=nb[b&63]((h|0)==0?a:h,e,d)|0}while((e|0)>=0);return e|0}function Kw(a,b,d){a=a|0;b=b|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;f=a+4|0;n=c[f>>2]|0;a:do if(n)if(b){m=c[c[a+16>>2]>>2]|0;g=a+8|0;if(c[c[g>>2]>>2]&4096|0)Dw(a,0)|0;e=c[n+32>>2]|0;if(e|0?(ob[e&127](a,3,b,n)|0)<0:0){b=0;break}c[f>>2]=b;e=c[b+28>>2]|0;c[a+12>>2]=(e|0)==0?52:e;e=c[c[g>>2]>>2]|0;if(!(e&112)){do if(!(e&2))if(!(e&3))if(!(d&1))break;else{b=n;break a}else if((d&3|0)==3){b=n;break a}else break;else if(d&2|0){b=n;break a}while(0);h=Aw(a)|0;e=c[g>>2]|0;l=c[e>>2]|0;c[e>>2]=l&-4097;c[e+4>>2]=0;c[e+16>>2]=0;b:do if(l&3|0){l=c[e+8>>2]|0;f=l+(c[e+12>>2]<<2)|0;e=l;while(1){if(e>>>0>=f>>>0)break b;c[e>>2]=0;e=e+4|0}}while(0);i=(d&2|0)==0;j=b+8|0;k=b+4|0;l=b+24|0;while(1){if(!h){b=n;break a}d=c[h>>2]|0;if(i){e=c[j>>2]|0;if((e|0)<0)e=c[h+8>>2]|0;else e=h+(0-e)|0;g=c[k>>2]|0;e=e+(c[b>>2]|0)|0;if((g|0)<0)e=c[e>>2]|0;f=c[l>>2]|0;if(!f)e=Mw(0,e,g)|0;else e=nb[f&63](a,e,b)|0;c[h+4>>2]=e}nb[m&63](a,h,32)|0;h=d}}else b=n}else b=n;else{c[f>>2]=b;n=c[b+28>>2]|0;c[a+12>>2]=(n|0)==0?52:n}while(0);return b|0}function Lw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=(c|0)==0;do if(!b)if(a)a=0;else a=C_(c)|0;else if(a){D_(b);a=0;break}else{a=F_(b,c)|0;break}while(0);return a|0}function Mw(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;g=c;if((e|0)>=1){h=c+e+-1|0;g=(h>>>0>>0?c:h)+(1-g)&-2;f=c;while(1){if(f>>>0>=h>>>0)break;b=O(((d[f>>0]|0)<<8)+b+(d[f+1>>0]|0)|0,17109811)|0;f=f+2|0}f=c+g|0;if(f>>>0>h>>>0)c=e;else{c=e;b=O(((d[f>>0]|0)<<8)+b|0,17109811)|0}}else{while(1){f=a[c>>0]|0;if(!(f<<24>>24))break;h=a[c+1>>0]|0;e=O(((f&255)<<8)+b+(h&255)|0,17109811)|0;b=e;c=c+(h<<24>>24?2:1)|0}c=c-g|0}return O(b+c|0,17109811)|0}function Nw(a){a=a|0;var b=0;b=c[46164]|0;c[46164]=a;return b|0}function Ow(a){a=a|0;var b=0;b=c[46165]|0;c[46165]=a;return b|0}function Pw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Qw(a,b,f)|0;l=e;return d|0}function Qw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=(a|0)==3;h=f?c[46167]|0:(a|0)==2?1:a;c[46167]=h;i=c[46168]|0;c[46168]=i>>>0>h>>>0?i:h;do if(h>>>0<(c[46165]|0)>>>0){a=c[46166]|0;if(!a){a=l3()|0;c[46166]=a;if(!a){a=1;break}}if(!f){o3(a)|0;a=c[46166]|0}r0(a,b,d)|0;a=0}else{if(c[46164]|0){Rw(a,b,d);a=0;break}if(f)a=c[15686]|0;else{i=c[15686]|0;c[e>>2]=(a|0)==1?93267:93273;g1(i,93281,e)|0;a=i}r0(a,b,d)|0;a=0}while(0);l=g;return a|0}function Rw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[46169]|0)==0?(f=C_(c[4564]|0)|0,c[46169]=f,(f|0)==0):0)D1(93286,c[15686]|0)|0;else e=4;do if((e|0)==4){if((a|0)!=3){kb[c[46164]&63]((a|0)==1?93267:93273)|0;kb[c[46164]&63](93945)|0}while(1){a=q0(c[46169]|0,c[4564]|0,b,d)|0;e=c[4564]|0;if((a|0)>-1&(a|0)<(e|0)){e=7;break}e=e<<1;f=a+1|0;f=(e|0)>(f|0)?e:f;c[4564]=f;if(!(F_(c[46169]|0,f)|0)){e=9;break}}if((e|0)==7){kb[c[46164]&63](c[46169]|0)|0;break}else if((e|0)==9){D1(93286,c[15686]|0)|0;break}}while(0);return}function Sw(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Qw(1,a,e)|0;l=d;return}function Tw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!e){e=(d|0)==0?1024:d;d=e;e=C_(e)|0;f=1}else f=0;c[b+12>>2]=f;c[b>>2]=e;c[b+8>>2]=e+d;c[b+4>>2]=e;a[e>>0]=0;return}function Uw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=a+8|0;f=c[a>>2]|0;g=(c[h>>2]|0)-f|0;e=g<<1;g=g+b|0;e=g>>>0>e>>>0?g:e;g=a+4|0;b=f;f=(c[g>>2]|0)-f|0;d=a+12|0;if(!(c[d>>2]|0)){i=C_(e)|0;F3(i|0,b|0,f|0)|0;c[d>>2]=1;b=i}else b=F_(b,e)|0;c[a>>2]=b;c[g>>2]=b+f;c[h>>2]=b+e;return 0}function Vw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=a+4|0;e=c[f>>2]|0;if((e+d|0)>>>0>(c[a+8>>2]|0)>>>0){Uw(a,d)|0;e=c[f>>2]|0}F3(e|0,b|0,d|0)|0;c[f>>2]=(c[f>>2]|0)+d;return d|0}function Ww(a,b){a=a|0;b=b|0;return Vw(a,b,W_(b)|0)|0}function Xw(a){a=a|0;if(c[a+12>>2]|0)D_(c[a>>2]|0);return}function Yw(a){a=a|0;var b=0,e=0;b=a+4|0;e=c[b>>2]|0;if(e>>>0>(c[a>>2]|0)>>>0){c[b>>2]=e+-1;a=d[e>>0]|0}else a=-1;return a|0}function Zw(a,b,d){a=a|0;b=b|0;d=d|0;Qz(c[46171]|0,c[b+8>>2]|0)|0;Qz(c[46171]|0,c[b+12>>2]|0)|0;Ny(c[46171]|0,b);return}function _w(a,b){a=a|0;b=b|0;var c=0;c=yz(a,93334,0)|0;if((b|0)!=0&(c|0)==0){$w(a);c=yz(a,93334,0)|0}return c|0}function $w(a){a=a|0;var b=0,c=0,d=0;d=fz(a)|0;jB(d,d,104,0,1)|0;c=Sy(d)|0;while(1){if(!c)break;bx(a,c);b=Ex(d,c)|0;while(1){if(!b)break;cx(a,b);b=Gx(d,b)|0}c=Ty(d,c)|0}return}function ax(b){b=b|0;var c=0;c=b+24|0;a[c>>0]=a[c>>0]|64;hx(b);c=yA(b)|0;ex((c|0)==0?b:c,b);return}function bx(a,b){a=a|0;b=b|0;var d=0;d=dx(b)|0;if(!((d|0)!=0?(c[d+8>>2]|0)!=0:0))ex(a,b);return}function cx(a,b){a=a|0;b=b|0;var d=0;d=dx(b)|0;if(!((d|0)!=0?(c[d+8>>2]|0)!=0:0))ex(a,b);return}function dx(a){a=a|0;return yz(a,93322,0)|0}function ex(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=Az(b,93322,16,0)|0;f=fx(a,c[b>>2]&3)|0;e=d+8|0;a:do if(!(c[e>>2]|0)){a=fz(a)|0;c[e>>2]=fx(a,c[b>>2]&3)|0;a=gx(b)|0;d=d+12|0;c[d>>2]=My(ez(b)|0,((a|0)>4?a:4)<<2)|0;a=nb[c[f>>2]&63](f,0,128)|0;while(1){if(!a)break a;e=ez(b)|0;e=Oz(e,c[a+12>>2]|0)|0;c[(c[d>>2]|0)+(c[a+16>>2]<<2)>>2]=e;a=nb[c[f>>2]&63](f,a,8)|0}}while(0);return}function fx(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;a=_w(a,0)|0;a:do if(!a)a=0;else switch(b|0){case 0:{a=c[a+16>>2]|0;break a}case 1:{a=c[a+8>>2]|0;break a}case 2:case 3:{a=c[a+12>>2]|0;break a}default:{c[d>>2]=b;Pw(1,93347,d)|0;a=0;break a}}while(0);l=e;return a|0}function gx(a){a=a|0;var b=0;b=fz(ez(a)|0)|0;a=fx(b,c[a>>2]&3)|0;if(!a)a=0;else a=Ew(a)|0;return a|0}function hx(a){a=a|0;var b=0,d=0,e=0,f=0;d=Az(a,93334,20,0)|0;e=d+8|0;c[e>>2]=CA(a,18260,c[4563]|0)|0;f=d+12|0;c[f>>2]=CA(a,18260,c[4563]|0)|0;d=d+16|0;c[d>>2]=CA(a,18260,c[4563]|0)|0;b=yA(a)|0;if(!b){b=c[46170]|0;if(!((b|0)==0|(b|0)==(a|0))){b=_w(b,0)|0;ix(c[b+8>>2]|0,c[e>>2]|0,a,1);ix(c[b+12>>2]|0,c[f>>2]|0,a,2);ix(c[b+16>>2]|0,c[d>>2]|0,a,0)}}else{a=_w(b,0)|0;Hw(c[e>>2]|0,c[a+8>>2]|0)|0;Hw(c[f>>2]|0,c[a+12>>2]|0)|0;Hw(c[d>>2]|0,c[a+16>>2]|0)|0}return}function ix(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=nb[c[b>>2]&63](b,0,128)|0;while(1){if(!g)break;h=jx(e,c[g+8>>2]|0,c[g+12>>2]|0,c[g+16>>2]|0,f)|0;a[h+22>>0]=a[g+22>>0]|0;a[h+21>>0]=a[g+21>>0]|0;nb[c[d>>2]&63](d,h,1)|0;g=nb[c[b>>2]&63](b,g,8)|0}return}function jx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=My(b,24)|0;a[h+20>>0]=g;c[h+8>>2]=Oz(b,d)|0;c[h+12>>2]=Oz(b,e)|0;c[h+16>>2]=f;return h|0}function kx(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+32|0;e=d;c[e+8>>2]=b;b=nb[c[a>>2]&63](a,e,4)|0;l=d;return b|0}function lx(a,b){a=a|0;b=b|0;var c=0;c=Hw(a,0)|0;b=kx(a,b)|0;Hw(a,c)|0;return b|0}function mx(a,b){a=a|0;b=b|0;a=dx(a)|0;if(!a)a=0;else a=kx(c[a+8>>2]|0,b)|0;return a|0}function nx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!b){b=c[46170]|0;if(!b){a[g>>0]=a[18296]|0;a[g+1>>0]=a[18297]|0;a[g+2>>0]=a[18298]|0;a[g+3>>0]=a[18299]|0;b=Xx(0,g,0)|0;c[46170]=b}}if(!f)b=px(b,d,e)|0;else b=ox(b,d,e,f)|0;l=h;return b|0}function ox(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=fz(a)|0;_w(a,1)|0;g=fx(a,b)|0;f=lx(g,d)|0;a:do if(!f){f=kx(g,d)|0;if(f|0){f=jx(a,d,e,c[f+16>>2]|0,b)|0;nb[c[g>>2]&63](g,f,1)|0;h=16;break}g=fx(i,b)|0;f=jx(a,d,e,Ew(g)|0,b)|0;nb[c[g>>2]&63](g,f,1)|0;switch(b|0){case 0:{jB(i,i,57,f,1)|0;h=16;break a}case 1:{d=Sy(i)|0;while(1){if(!d){h=16;break a}qx(a,d,f);d=Ty(i,d)|0}}case 2:case 3:{g=Sy(i)|0;while(1){if(!g){h=16;break a}d=Ex(i,g)|0;while(1){if(!d)break;qx(a,d,f);d=Gx(i,d)|0}g=Ty(i,g)|0}}default:break a}}else{h=f+12|0;Qz(a,c[h>>2]|0)|0;c[h>>2]=Oz(a,e)|0;h=16}while(0);if((h|0)==16)if((b|0)==0&(f|0)!=0)rx(a,f,e)|0;iz(a,a,f);return f|0}function px(a,b,c){a=a|0;b=b|0;c=c|0;a=fx(a,b)|0;if(!a)a=0;else a=kx(a,c)|0;return a|0}function qx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;b=dx(b)|0;f=d+16|0;e=c[f>>2]|0;if((e|0)>3){g=c[a+64>>2]|0;b=b+12|0;e=e<<2;c[b>>2]=ob[c[(c[g>>2]|0)+8>>2]&127](c[g+12>>2]|0,c[b>>2]|0,e,e+4|0)|0}else b=b+12|0;g=Oz(a,c[d+12>>2]|0)|0;c[(c[b>>2]|0)+(c[f>>2]<<2)>>2]=g;return}function rx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=ez(a)|0;g=(dx(a)|0)+12|0;i=b+16|0;Qz(h,c[(c[g>>2]|0)+(c[i>>2]<<2)>>2]|0)|0;f=Oz(h,d)|0;c[(c[g>>2]|0)+(c[i>>2]<<2)>>2]=f;do if(!(c[a>>2]&3)){e=c[(_w(h,0)|0)+16>>2]|0;f=b+8|0;g=lx(e,c[f>>2]|0)|0;if(!g){i=jx(h,c[f>>2]|0,d,c[i>>2]|0,c[a>>2]&3)|0;nb[c[e>>2]&63](e,i,1)|0;break}else{i=g+12|0;Qz(h,c[i>>2]|0)|0;c[i>>2]=Oz(h,d)|0;break}}while(0);iz(h,a,b);return 0}function sx(a,b,d){a=a|0;b=b|0;d=d|0;a=fx(a,b)|0;do if(a){b=c[a>>2]|0;if(!d){a=nb[b&63](a,0,128)|0;break}else{a=nb[b&63](a,d,8)|0;break}}else a=0;while(0);return a|0}function tx(a){a=a|0;var b=0;c[46171]=a;b=dx(a)|0;if(b|0){ux(a,b);Cz(a,c[b>>2]|0)|0}b=_w(a,0)|0;if(b)if(((EA(a,c[b+8>>2]|0)|0)==0?(EA(a,c[b+12>>2]|0)|0)==0:0)?(EA(a,c[b+16>>2]|0)|0)==0:0){Cz(a,c[b>>2]|0)|0;b=0}else b=1;else b=0;return b|0}function ux(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=ez(a)|0;e=gx(a)|0;b=b+12|0;a=0;while(1){d=c[b>>2]|0;if((a|0)>=(e|0))break;Qz(f,c[d+(a<<2)>>2]|0)|0;a=a+1|0}Ny(f,d);return}function vx(a){a=a|0;var b=0;b=dx(a)|0;if(b|0){ux(a,b);Cz(a,93322)|0}return}function wx(a){a=a|0;var b=0;b=dx(a)|0;if(b|0){ux(a,b);Cz(a,93322)|0}return}function xx(a,b){a=a|0;b=b|0;b=mx(a,b)|0;if(!b)b=0;else{a=c[(dx(a)|0)+12>>2]|0;b=c[a+(c[b+16>>2]<<2)>>2]|0}return b|0}function yx(a,b){a=a|0;b=b|0;a=c[(dx(a)|0)+12>>2]|0;return c[a+(c[b+16>>2]<<2)>>2]|0}function zx(a,b,c){a=a|0;b=b|0;c=c|0;b=mx(a,b)|0;if(!b)b=-1;else{rx(a,b,c)|0;b=0}return b|0}function Ax(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=ez(a)|0;f=nx(f,c[a>>2]&3,b,0)|0;if(!f){f=ez(a)|0;f=nx(f,c[a>>2]&3,b,e)|0}rx(a,f,d)|0;return 0}function Bx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=ez(a)|0;f=c[a>>2]|0;a:do if(!((c[b>>2]^f)&3)){d=1;e=0;while(1){e=sx(g,f&3,e)|0;if(!e)break a;d=mx(b,c[e+8>>2]|0)|0;if(!d){d=1;break a}f=yx(a,e)|0;rx(b,d,f)|0;if(Rz(f)|0)Sz(yx(b,d)|0);d=0;f=c[a>>2]|0}}else d=1;while(0);return d|0}function Cx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;a=c[b+40>>2]|0;f=c[d+40>>2]|0;if((a|0)==(f|0)){e=(c[b>>2]|0)>>>4;a=(c[d>>2]|0)>>>4;if(e>>>0>=a>>>0)if(e>>>0>a>>>0)a=1;else g=6;else a=-1}else{e=(c[a>>2]|0)>>>4;a=(c[f>>2]|0)>>>4;if(e>>>0>=a>>>0)if(e>>>0>a>>>0)a=1;else g=6;else a=-1}if((g|0)==6)a=0;return a|0}function Dx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a=(c[b+40>>2]|0)+8|0;g=c[a>>2]|0;a=c[a+4>>2]|0;f=(c[d+40>>2]|0)+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;do if(!(a>>>0>>0|(a|0)==(f|0)&g>>>0>>0))if(a>>>0>f>>>0|(a|0)==(f|0)&g>>>0>e>>>0)a=1;else{e=b+8|0;a=c[e>>2]|0;e=c[e+4>>2]|0;if(!((a|0)==0&(e|0)==0)?(i=d+8|0,h=c[i>>2]|0,i=c[i+4>>2]|0,!((h|0)==0&(i|0)==0)):0){if(e>>>0>>0|(e|0)==(i|0)&a>>>0>>0){a=-1;break}if(e>>>0>i>>>0|(e|0)==(i|0)&a>>>0>h>>>0){a=1;break}}a=0}else a=-1;while(0);return a|0}function Ex(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if(!b)b=0;else{d=a+44|0;a=b+32|0;Dw(c[d>>2]|0,c[a>>2]|0)|0;b=c[d>>2]|0;b=nb[c[b>>2]&63](b,0,128)|0;c[a>>2]=zw(c[d>>2]|0)|0}return b|0}function Fx(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+48|0;d=e;if((c[b+24>>2]|0)==(a|0))a=b+28|0;else{c[d+16>>2]=b;a=c[a+40>>2]|0;a=nb[c[a>>2]&63](a,d,4)|0}l=e;return a|0}function Gx(a,b){a=a|0;b=b|0;var d=0,e=0;d=Fx(a,c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;if(!d)a=0;else{e=a+44|0;d=d+32|0;Dw(c[e>>2]|0,c[d>>2]|0)|0;a=c[e>>2]|0;a=nb[c[a>>2]&63](a,b,8)|0;c[d>>2]=zw(c[e>>2]|0)|0}return a|0}function Hx(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if(!b)b=0;else{d=a+44|0;a=b+28|0;Dw(c[d>>2]|0,c[a>>2]|0)|0;b=c[d>>2]|0;b=nb[c[b>>2]&63](b,0,128)|0;c[a>>2]=zw(c[d>>2]|0)|0}return b|0}function Ix(a,b){a=a|0;b=b|0;var d=0,e=0;d=Fx(a,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;if(!d)a=0;else{e=a+44|0;d=d+28|0;Dw(c[e>>2]|0,c[d>>2]|0)|0;a=c[e>>2]|0;a=nb[c[a>>2]&63](a,b,8)|0;c[d>>2]=zw(c[e>>2]|0)|0}return a|0}function Jx(a,b){a=a|0;b=b|0;var c=0;c=Ex(a,b)|0;if(!c)c=Hx(a,b)|0;return c|0}function Kx(a,b,d){a=a|0;b=b|0;d=d|0;a:do if((c[b>>2]&3|0)==2){b=Gx(a,b)|0;if(!b){b=0;do{if(!b)b=Hx(a,d)|0;else b=Ix(a,b)|0;if(!b){b=0;break a}}while((c[b+40>>2]|0)==(d|0))}}else do{b=Ix(a,b)|0;if(!b){b=0;break a}}while((c[b+40>>2]|0)==(d|0));while(0);return b|0}function Lx(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if((gy(a)|0)!=0?(c[g>>2]=0,c[g+4>>2]=0,c[g+8>>2]=0,c[g+12>>2]=0,c[f>>2]=c[g>>2],c[f+4>>2]=c[g+4>>2],c[f+8>>2]=c[g+8>>2],c[f+12>>2]=c[g+12>>2],(Px(a,b,e,f)|0)!=0):0)f=0;else f=((d[a+24>>0]|0)>>>2&1^1)&255|(b|0)!=(e|0);l=h;return f|0}function Mx(a,b){a=a|0;b=b|0;Ox(a,b);return}function Nx(b,d,e,f,g){b=b|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;Xy(b,d,1)|0;Xy(b,e,1)|0;h=My(b,96)|0;i=h+48|0;l=_x(b,2)|0;j=c[i>>2]|0;k=c[h>>2]|0;m=h+8|0;c[m>>2]=f;c[m+4>>2]=g;m=h+56|0;c[m>>2]=f;c[m+4>>2]=g;g=l<<4;c[h>>2]=k&12|g|2;c[i>>2]=j&12|g|3;c[h+88>>2]=d;c[h+40>>2]=e;Ox(b,h);if(a[b+24>>0]&64){Az(h,93322,16,0)|0;cx(b,h)}gz(b,h);return h|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;i=l;l=l+16|0;d=i;h=c[b>>2]&3;g=(h|0)==2?b:b+-48|0;h=(h|0)==3?b:b+48|0;e=c[h+40>>2]|0;f=c[g+40>>2]|0;while(1){if(!a)break;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(Px(a,e,f,d)|0)break;j=Fx(a,e)|0;m=a+44|0;Qx(c[m>>2]|0,j+32|0,g);k=a+48|0;Qx(c[k>>2]|0,j+24|0,g);j=Fx(a,f)|0;Qx(c[m>>2]|0,j+28|0,h);Qx(c[k>>2]|0,j+20|0,h);a=yA(a)|0}l=i;return}function Px(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+48|0;f=h;if(!((b|0)==0|(d|0)==0)?(c[f>>2]=c[e>>2],c[f+4>>2]=c[e+4>>2],c[f+8>>2]=c[e+8>>2],c[f+12>>2]=c[e+12>>2],c[f+40>>2]=b,g=Fx(a,d)|0,(g|0)!=0):0){e=a+48|0;g=g+20|0;Dw(c[e>>2]|0,c[g>>2]|0)|0;a=c[e>>2]|0;a=nb[c[a>>2]&63](a,f,4)|0;c[g>>2]=zw(c[e>>2]|0)|0}else a=0;l=h;return a|0}function Qx(a,b,d){a=a|0;b=b|0;d=d|0;Dw(a,c[b>>2]|0)|0;nb[c[a>>2]&63](a,d,1)|0;c[b>>2]=zw(a)|0;return}function Rx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+24|0;k=n+16|0;j=n;do if(!(oy(a,2,e,k,0)|0))if(!e){if(f|0?(gy(a)|0)==0:0){m=18;break};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;m=7}else m=17;else{o=j;c[o>>2]=0;c[o+4>>2]=0;o=k;g=c[o+4>>2]|0;m=j+8|0;c[m>>2]=c[o>>2];c[m+4>>2]=g;c[j>>2]=2;m=7}while(0);a:do if((m|0)==7){c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];g=Px(a,b,d,i)|0;b:do if(!g){if(fy(a)|0?(c[i>>2]=c[j>>2],c[i+4>>2]=c[j+4>>2],c[i+8>>2]=c[j+8>>2],c[i+12>>2]=c[j+12>>2],h=Px(a,d,b,i)|0,h|0):0){g=h;break}do if(f|0){g=fz(a)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];g=Px(g,b,d,i)|0;if(!g){if(!(fy(a)|0))break;g=fz(a)|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];g=Px(g,d,b,i)|0;if(!g)break}Mx(a,g);break b}while(0);m=17;break a}while(0)}while(0);if((m|0)==17)if(!f)g=0;else m=18;if((m|0)==18)if((Lx(a,b,d)|0)!=0?(oy(a,2,e,k,1)|0)!=0:0){g=k;g=Nx(a,b,d,c[g>>2]|0,c[g+4>>2]|0)|0;sy(a,2,g)}else g=0;l=n;return g|0}function Sx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;d=(c[b>>2]&3|0)==3;g=d?b+-48|0:b;d=d?b:b+48|0;b=c[g+40>>2]|0;h=Fx(a,c[d+40>>2]|0)|0;f=a+44|0;Tx(c[f>>2]|0,h+32|0,g);e=a+48|0;Tx(c[e>>2]|0,h+24|0,g);b=Fx(a,b)|0;Tx(c[f>>2]|0,b+28|0,d);Tx(c[e>>2]|0,b+20|0,d);return}function Tx(a,b,d){a=a|0;b=b|0;d=d|0;Dw(a,c[b>>2]|0)|0;nb[c[a>>2]&63](a,d,2)|0;c[b>>2]=zw(a)|0;return}function Ux(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;f=e;d=(c[d>>2]&3|0)==2?d:d+-48|0;g=c[d>>2]&3;h=c[((g|0)==3?d:d+48|0)+40>>2]|0;g=c[((g|0)==2?d:d+-48|0)+40>>2]|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(Px(b,h,g,f)|0){if((fz(b)|0)==(b|0)){if(a[b+24>>0]&64)wx(d);kz(b,d);Iz(d);h=d+8|0;qy(b,2,c[h>>2]|0,c[h+4>>2]|0)}if(!(jB(b,d,58,0,0)|0))if((fz(b)|0)==(b|0)){Ny(b,d);d=0}else d=0;else d=-1}else d=-1;l=e;return d|0}function Vx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;e=h;f=Xy(a,c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0,d)|0;g=Xy(a,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0,d)|0;do if((f|0)!=0&(g|0)!=0){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=Px(a,f,g,e)|0;f=(e|0)==0;if(!((d|0)!=0&f)){if(f)break}else{Ox(a,b);e=b}d=c[e>>2]&3;l=h;return ((d|0)==(c[b>>2]&3|0)?e:e+(((d|0)==3?-1:1)*48|0)|0)|0}while(0);l=h;return 0}function Wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=b+8|0;e=d+8|0;e=t3(c[b>>2]|0,c[b+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;return ((e|0)==0?0:e>>31|1)|0}function Xx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+16|0;g=h;j=Yx(e)|0;f=lb[c[(c[j>>2]|0)+4>>2]&127](c[j+12>>2]|0,72)|0;c[f>>2]=c[f>>2]&-4;i=f+64|0;c[i>>2]=j;k=f+24|0;d=c[d>>2]|0;c[k>>2]=d;a[k>>0]=d&255|8;c[f+60>>2]=f;e=lb[c[c[j+4>>2]>>2]&127](f,e)|0;c[(c[i>>2]|0)+16>>2]=e;if(oy(f,0,b,g,1)|0){i=g;j=c[i+4>>2]|0;k=f+8|0;c[k>>2]=c[i>>2];c[k+4>>2]=j}k=Zx(f)|0;sy(k,0,f);l=h;return k|0}function Yx(b){b=b|0;var d=0,e=0,f=0,g=0;d=(b|0)!=0;if(d){e=c[b>>2]|0;e=(e|0)==0?18632:e}else e=18632;g=kb[c[e>>2]&63](b)|0;f=lb[c[e+4>>2]&127](g,80)|0;c[f>>2]=e;c[f+12>>2]=g;if(d){g=c[b+4>>2]|0;c[f+4>>2]=(g|0)==0?18508:g;b=c[b+8>>2]|0;b=(b|0)==0?18608:b}else{c[f+4>>2]=18508;b=18608}c[f+8>>2]=b;a[f+52>>0]=1;return f|0}function Zx(b){b=b|0;var d=0,e=0;c[b+36>>2]=CA(b,18688,c[4563]|0)|0;c[b+40>>2]=CA(b,18652,c[4563]|0)|0;d=(fz(b)|0)==(b|0);c[b+44>>2]=CA(b,d?18300:18336,c[4563]|0)|0;d=(fz(b)|0)==(b|0);c[b+48>>2]=CA(b,d?18372:18408,c[4563]|0)|0;c[b+52>>2]=CA(b,18444,c[4563]|0)|0;d=yA(b)|0;if(!((d|0)!=0?(e=_x(d,0)|0,c[b>>2]=c[b>>2]&15|e<<4,e=c[d+52>>2]|0,nb[c[e>>2]&63](e,b,1)|0,!(a[d+24>>0]&64)):0))ax(b);gz(b,b);return b|0}function _x(a,b){a=a|0;b=b|0;var d=0;d=(c[a+64>>2]|0)+24+(b<<3)|0;b=d;b=s3(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;a=z;c[d>>2]=b;c[d+4>>2]=a;z=a;return b|0}function $x(b){b=b|0;var d=0,e=0,f=0,g=0;f=yA(b)|0;g=(f|0)==0;if(g?(d=b+64|0,(c[(c[c[d>>2]>>2]|0)+16>>2]|0)!=0):0){kz(b,b);g=b+8|0;qy(b,0,c[g>>2]|0,c[g+4>>2]|0);d=c[d>>2]|0;tb[c[(c[d>>2]|0)+16>>2]&127](c[d+12>>2]|0);d=0}else e=4;do if((e|0)==4){d=wA(b)|0;while(1){if(!d)break;e=xA(d)|0;$x(d)|0;d=e}d=Sy(b)|0;while(1){if(!d)break;e=Ty(b,d)|0;cz(b,d)|0;d=e}By(b);kz(b,b);if(((((EA(b,c[b+40>>2]|0)|0)==0?(EA(b,c[b+36>>2]|0)|0)==0:0)?(EA(b,c[b+48>>2]|0)|0)==0:0)?(EA(b,c[b+44>>2]|0)|0)==0:0)?(EA(b,c[b+52>>2]|0)|0)==0:0){if(a[b+24>>0]&64?tx(b)|0:0){d=-1;break}Iz(b);e=b+8|0;qy(b,0,c[e>>2]|0,c[e+4>>2]|0);if(!g){zA(f,b)|0;Ny(f,b);d=0;break}d=b+64|0;while(1){e=c[d>>2]|0;f=c[e+48>>2]|0;if(!f)break;nz(b,c[f>>2]|0)|0}tb[c[(c[e+4>>2]|0)+20>>2]&127](c[e+16>>2]|0);if(!(Jz(b)|0)){d=c[d>>2]|0;g=c[d+12>>2]|0;f=(c[d>>2]|0)+12|0;ub[c[f>>2]&63](g,b);ub[c[f>>2]&63](g,d);d=0}else d=-1}else d=-1}while(0);return d|0}function ay(a){a=a|0;return Ew(c[a+40>>2]|0)|0}function by(a){a=a|0;var b=0,c=0,d=0;b=0;c=Sy(a)|0;while(1){if(!c)break;d=(cy(a,c,0,1)|0)+b|0;b=d;c=Ty(a,c)|0}return b|0}function cy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=Fx(a,b)|0;if(f){if(!e)b=0;else b=dy(c[a+44>>2]|0,f+32|0)|0;if(d)b=(dy(c[a+44>>2]|0,f+28|0)|0)+b|0}else b=0;return b|0}function dy(a,b){a=a|0;b=b|0;var d=0;Dw(a,c[b>>2]|0)|0;d=Ew(a)|0;c[b>>2]=zw(a)|0;return d|0}function ey(b){b=b|0;return a[b+24>>0]&1|0}function fy(a){a=a|0;return (ey(a)|0)==0|0}function gy(a){a=a|0;return (d[a+24>>0]|0)>>>1&1|0}function hy(a,b){a=a|0;b=b|0;return a|0}function iy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!d){f=1392;d=c[f>>2]|0;f=c[f+4>>2]|0;c[e>>2]=d;c[e+4>>2]=f;f=s3(d|0,f|0,2,0)|0;e=1392;c[e>>2]=f;c[e+4>>2]=z}else{if(!f)a=Lz(a,d)|0;else a=Oz(a,d)|0;c[e>>2]=a;c[e+4>>2]=0}return 1}function jy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function ky(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((c&1|0)==0&0==0)Qz(a,c)|0;return}function ly(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ((c&1|0)==0&0==0?c:0)|0}function my(a){a=a|0;return}function ny(a,b,c){a=a|0;b=b|0;c=c|0;return}function oy(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=(e|0)!=0;do if(i){if((a[e>>0]|0)!=37?(h=c[b+64>>2]|0,h=pb[c[(c[h+4>>2]|0)+4>>2]&127](c[h+16>>2]|0,d,e,f,g)|0,h|0):0)break;h=ty(b,d,e,f)|0;if(!h)j=5}else j=5;while(0);if((j|0)==5)if(g){h=c[b+64>>2]|0;h=pb[c[(c[h+4>>2]|0)+4>>2]&127](c[h+16>>2]|0,d,0,f,g)|0;if(i&(h|0)!=0){j=f;uy(b,d,e,c[j>>2]|0,c[j+4>>2]|0)}}else h=0;return h|0}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a+64>>2]|0;return ob[c[(c[a+4>>2]|0)+8>>2]&127](c[a+16>>2]|0,b,d,e)|0}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;zy(a,b,d,e)|0;a=c[a+64>>2]|0;xb[c[(c[a+4>>2]|0)+12>>2]&31](c[a+16>>2]|0,b,d,e);return}function ry(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;d=ez(a)|0;f=a+8|0;b=f;b=xy(d,c[a>>2]&3,c[b>>2]|0,c[b+4>>2]|0)|0;do if(!b){b=c[d+64>>2]|0;d=c[(c[b+4>>2]|0)+16>>2]|0;if(d|0?(e=f,e=ob[d&127](c[b+16>>2]|0,c[a>>2]&3,c[e>>2]|0,c[e+4>>2]|0)|0,e|0):0){b=e;break}if((c[a>>2]&3|0)==2)b=0;else{e=c[f>>2]|0;f=c[f+4>>2]|0;c[g>>2]=37;b=g+8|0;c[b>>2]=e;c[b+4>>2]=f;Y0(191693,93374,g)|0;b=191693}}while(0);l=h;return b|0}function sy(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+64>>2]|0;vb[c[(c[a+4>>2]|0)+24>>2]&127](c[a+16>>2]|0,b,d);return}function ty(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;b=c[(c[a+64>>2]|0)+56+(((b|0)==3?2:b)<<2)>>2]|0;if(((b|0)!=0?(f=Lz(a,d)|0,(f|0)!=0):0)?(c[h+24>>2]=f,g=nb[c[b>>2]&63](b,h,4)|0,(g|0)!=0):0){d=g+16|0;h=c[d+4>>2]|0;b=e;c[b>>2]=c[d>>2];c[b+4>>2]=h;b=1}else b=0;l=i;return b|0}function uy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=My(a,32)|0;g=h+16|0;c[g>>2]=e;c[g+4>>2]=f;c[h+24>>2]=Oz(a,d)|0;e=(b|0)==3?2:b;g=a+64|0;d=c[g>>2]|0;b=c[d+56+(e<<2)>>2]|0;if(!b){f=CA(a,18536,c[4563]|0)|0;c[(c[g>>2]|0)+56+(e<<2)>>2]=f;b=c[g>>2]|0}else{f=b;b=d}b=c[b+68+(e<<2)>>2]|0;if(!b){b=CA(a,18572,c[4563]|0)|0;c[(c[g>>2]|0)+68+(e<<2)>>2]=b}nb[c[f>>2]&63](f,h,1)|0;nb[c[b>>2]&63](b,h,1)|0;return}function vy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=b+16|0;b=c[a>>2]|0;a=c[a+4>>2]|0;d=d+16|0;e=c[d>>2]|0;d=c[d+4>>2]|0;return (a>>>0>d>>>0|(a|0)==(d|0)&b>>>0>e>>>0?1:(a>>>0>>0|(a|0)==(d|0)&b>>>0>>0)<<31>>31)|0}function wy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=c[b+24>>2]|0;e=c[d+24>>2]|0;return (b>>>0>e>>>0?1:(b>>>0>>0)<<31>>31)|0}function xy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=yy(a,b,d,e)|0;if(!a)a=0;else a=c[a+24>>2]|0;return a|0}function yy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;a=c[(c[a+64>>2]|0)+68+(((b|0)==3?2:b)<<2)>>2]|0;if(!a)a=0;else{b=f+16|0;c[b>>2]=d;c[b+4>>2]=e;a=nb[c[a>>2]&63](a,f,4)|0}l=g;return a|0}function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=(b|0)==3?2:b;b=yy(a,f,d,e)|0;if(!b)b=0;else{e=a+64|0;d=c[(c[e>>2]|0)+56+(f<<2)>>2]|0;nb[c[d>>2]&63](d,b,2)|0;e=c[(c[e>>2]|0)+68+(f<<2)>>2]|0;nb[c[e>>2]&63](e,b,2)|0;Qz(a,c[b+24>>2]|0)|0;Ny(a,b);b=1}return b|0}function Ay(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[46171]=b;g=c[b+64>>2]|0;f=0;while(1){if((f|0)==3)break;h=g+56+(f<<2)|0;d=c[h>>2]|0;a:do if(d|0){d=nb[c[d>>2]&63](d,0,128)|0;while(1){if(!d)break a;e=c[h>>2]|0;e=nb[c[e>>2]&63](e,d,8)|0;if((a[c[d+24>>2]>>0]|0)!=37){d=e;continue}i=d+16|0;zy(b,f,c[i>>2]|0,c[i+4>>2]|0)|0;d=e}}while(0);f=f+1|0}return}function By(a){a=a|0;c[46171]=a;a=a+64|0;Cy((c[a>>2]|0)+56|0);Cy((c[a>>2]|0)+68|0);return}function Cy(a){a=a|0;var b=0,d=0,e=0;b=0;while(1){if((b|0)==3)break;d=a+(b<<2)|0;e=c[d>>2]|0;if(e|0){yw(e)|0;c[d>>2]=0}b=b+1|0}return}function Dy(a,b,c){a=a|0;b=b|0;c=c|0;if(!(O0(b,c,a)|0))a=0;else a=W_(b)|0;return a|0}function Ey(a,b){a=a|0;b=b|0;return D1(b,a)|0}function Fy(a){a=a|0;return w1(a)|0}function Gy(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+32|0;e=b+12|0;d=b;c[4656]=c[4653];c[4657]=c[4654];c[e>>2]=a;c[e+4>>2]=W_(a)|0;c[e+8>>2]=0;c[d>>2]=18632;c[d+4>>2]=18508;c[d+8>>2]=18620;a=TB(e,d)|0;Uz(0);l=b;return a|0}function Hy(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((e|0)!=0?(h=b+8|0,f=c[h>>2]|0,(f|0)<(c[b+4>>2]|0)):0){i=(c[b>>2]|0)+f|0;b=0;g=a[i>>0]|0;f=d;d=i;while(1){d=d+1|0;a[f>>0]=g;b=b+1|0;if(!(g<<24>>24!=10&(b|0)<(e|0)))break;g=a[d>>0]|0;if(!(g<<24>>24))break;else f=f+1|0}c[h>>2]=(c[h>>2]|0)+b}else b=0;return b|0}function Iy(a){a=a|0;return 0}function Jy(a,b){a=a|0;b=b|0;a=C_(b)|0;H3(a|0,0,b|0)|0;return a|0}function Ky(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=F_(b,d)|0;if(d>>>0>c>>>0)H3(a+c|0,0,d-c|0)|0;return a|0}function Ly(a,b){a=a|0;b=b|0;D_(b);return}function My(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;a=c[a+64>>2]|0;a=lb[c[(c[a>>2]|0)+4>>2]&127](c[a+12>>2]|0,b)|0;if(!a)Pw(1,93380,d)|0;l=d;return a|0}function Ny(a,b){a=a|0;b=b|0;if(b|0){a=c[a+64>>2]|0;ub[c[(c[a>>2]|0)+12>>2]&63](c[a+12>>2]|0,b)}return}function Oy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=(c[b+16>>2]|0)+8|0;b=c[a>>2]|0;a=c[a+4>>2]|0;d=(c[d+16>>2]|0)+8|0;e=c[d>>2]|0;d=c[d+4>>2]|0;return (a>>>0>>0|(a|0)==(d|0)&b>>>0>>0?-1:(a>>>0>d>>>0|(a|0)==(d|0)&b>>>0>e>>>0)&1)|0}function Py(a,b,d){a=a|0;b=b|0;d=d|0;a=c[b+16>>2]|0;if((a+28|0)!=(b|0))Ny(c[a+24>>2]|0,b);return}function Qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=(c[c[b+16>>2]>>2]|0)>>>4;e=(c[c[d+16>>2]>>2]|0)>>>4;return (b>>>0>>0?-1:b>>>0>e>>>0&1)|0}function Ry(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=183176;c[e>>2]=b;c[e+4>>2]=d;c[46176]=183168;a=c[a+40>>2]|0;a=nb[c[a>>2]&63](a,184688,4)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Sy(a){a=a|0;a=c[a+36>>2]|0;a=nb[c[a>>2]&63](a,0,128)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Ty(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if((b|0)!=0?(d=c[a+36>>2]|0,d=nb[c[d>>2]&63](d,b,8)|0,(d|0)!=0):0)b=c[d+16>>2]|0;else b=0;return b|0}function Uy(a){a=a|0;a=c[a+36>>2]|0;a=nb[c[a>>2]&63](a,0,256)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Vy(a,b){a=a|0;b=b|0;var d=0;b=Fx(a,b)|0;if((b|0)!=0?(d=c[a+36>>2]|0,d=nb[c[d>>2]&63](d,b,16)|0,(d|0)!=0):0)b=c[d+16>>2]|0;else b=0;return b|0}function Wy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=Ry(a,b,c)|0;do if((d|0)!=0&(e|0)==0){e=fz(a)|0;if((e|0)!=(a|0)?(f=Ry(e,b,c)|0,f|0):0){Xy(a,f,1)|0;e=f;break}if(!(py(a,1,b,c)|0))e=0;else{e=_x(a,1)|0;e=Yy(a,b,c,e,z)|0;Zy(a,e);_y(a,e)}}while(0);return e|0}function Xy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=fz(a)|0;if((e|0)==(c[b+24>>2]|0)){e=b+8|0;e=Ry(a,c[e>>2]|0,c[e+4>>2]|0)|0;if((d|0)!=0&(e|0)==0){e=yA(a)|0;if(!e)e=0;else{d=Xy(e,b,d)|0;$y(a,d);return d|0}}}else e=0;return e|0}function Yy(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;g=My(b,64)|0;h=c[g>>2]|0;i=g+8|0;c[i>>2]=d;c[i+4>>2]=e;c[g>>2]=h&12|f<<4|1;c[g+24>>2]=fz(b)|0;if(a[(fz(b)|0)+24>>0]&64)Az(g,93322,16,0)|0;return g|0}function Zy(a,b){a=a|0;b=b|0;do{$y(a,b);a=yA(a)|0}while((a|0)!=0);return}function _y(b,c){b=b|0;c=c|0;if(a[(fz(b)|0)+24>>0]&64)bx(b,c);gz(b,c);return}function $y(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+40|0;Ew(c[e>>2]|0)|0;if((fz(a)|0)==(a|0))d=b+28|0;else d=My(a,36)|0;c[d+16>>2]=b;e=c[e>>2]|0;nb[c[e>>2]&63](e,d,1)|0;e=c[a+36>>2]|0;nb[c[e>>2]&63](e,d,1)|0;return}function az(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;h=fz(a)|0;if(oy(a,1,b,g,0)|0){e=g;e=Ry(a,c[e>>2]|0,c[e+4>>2]|0)|0;if(!e)if(!((d|0)==0|(h|0)==(a|0))?(f=g,f=Ry(h,c[f>>2]|0,c[f+4>>2]|0)|0,(f|0)!=0):0)e=Xy(a,f,1)|0;else i=6}else i=6;if((i|0)==6)if((d|0)!=0?(oy(a,1,b,g,1)|0)!=0:0){i=g;h=c[i>>2]|0;i=c[i+4>>2]|0;e=_x(a,1)|0;e=Yy(a,h,i,e,z)|0;Zy(a,e);_y(a,e);sy(a,1,e)}else e=0;l=j;return e|0}function bz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;c[46185]=b;d=Jx(a,b)|0;while(1){if(!d)break;e=Kx(a,d,b)|0;Sx(a,d,0);d=e}e=c[a+40>>2]|0;nb[c[e>>2]&63](e,184724,2)|0;e=c[a+36>>2]|0;nb[c[e>>2]&63](e,184724,2)|0;return}function cz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d+8|0;e=f;if(Ry(b,c[e>>2]|0,c[e+4>>2]|0)|0){if((fz(b)|0)==(b|0)){e=Jx(b,d)|0;while(1){if(!e)break;g=Kx(b,e,d)|0;Ux(b,e)|0;e=g}if(a[b+24>>0]&64)vx(d);kz(b,d);Iz(d);g=f;qy(b,1,c[g>>2]|0,c[g+4>>2]|0)}if(!(jB(b,d,59,0,0)|0))if((fz(b)|0)==(b|0)){Ny(b,d);e=0}else e=0;else e=-1}else e=-1;return e|0}function dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;e=h;d=c[b>>2]|0;do if(!(d&3))if((yA(b)|0)==(a|0)){d=c[b>>2]|0;g=5;break}else{Pw(1,93406,e)|0;f=-1;break}else g=5;while(0);a:do if((g|0)==5)switch(d&3){case 1:{f=cz(a,b)|0;break a}case 2:case 3:{f=Ux(a,b)|0;break a}case 0:{f=$x(b)|0;break a}default:{}}while(0);l=h;return f|0}function ez(a){a=a|0;var b=0;switch(c[a>>2]&3){case 2:case 3:{b=c[(c[a+40>>2]|0)+24>>2]|0;break}case 1:{b=c[a+24>>2]|0;break}case 0:{b=a;break}default:{}}return b|0}function fz(a){a=a|0;var b=0;switch(c[a>>2]&3){case 2:case 3:{b=(c[a+40>>2]|0)+24|0;break}case 1:{b=a+24|0;break}case 0:{b=a+60|0;break}default:{}}return c[b>>2]|0}function gz(b,d){b=b|0;d=d|0;var e=0;e=c[b+64>>2]|0;if(!(a[e+52>>0]|0))qz(b,d,100,0);else hz(b,d,c[e+48>>2]|0);return}function hz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if(d|0){hz(a,b,c[d+8>>2]|0);switch(c[b>>2]&3){case 0:{e=c[d>>2]|0;break}case 1:{e=(c[d>>2]|0)+12|0;break}case 2:{e=(c[d>>2]|0)+24|0;break}default:break a}e=c[e>>2]|0;if(e|0)vb[e&127](a,b,c[d+4>>2]|0)}while(0);return}function iz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[b+64>>2]|0;if(!(a[f+52>>0]|0))qz(b,d,101,e);else jz(b,d,e,c[f+48>>2]|0);return}function jz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a:do if(e|0){jz(a,b,d,c[e+8>>2]|0);switch(c[b>>2]&3){case 0:{f=(c[e>>2]|0)+4|0;break}case 1:{f=(c[e>>2]|0)+16|0;break}case 2:{f=(c[e>>2]|0)+28|0;break}default:break a}f=c[f>>2]|0;if(f|0)xb[f&31](a,b,c[e+4>>2]|0,d)}while(0);return}function kz(b,d){b=b|0;d=d|0;var e=0;e=c[b+64>>2]|0;if(!(a[e+52>>0]|0))qz(b,d,102,0);else lz(b,d,c[e+48>>2]|0);return}function lz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if(d|0){lz(a,b,c[d+8>>2]|0);switch(c[b>>2]&3){case 0:{e=(c[d>>2]|0)+8|0;break}case 1:{e=(c[d>>2]|0)+20|0;break}case 2:{e=(c[d>>2]|0)+32|0;break}default:break a}e=c[e>>2]|0;if(e|0)vb[e&127](a,b,c[d+4>>2]|0)}while(0);return}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=My(a,12)|0;c[e>>2]=b;c[e+4>>2]=d;d=(c[a+64>>2]|0)+48|0;c[e+8>>2]=c[d>>2];c[d>>2]=e;return}function nz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=(c[a+64>>2]|0)+48|0;d=c[e>>2]|0;a:do if(!d)d=-1;else{if((c[d>>2]|0)!=(b|0)){while(1){if(!d){d=-1;break a}e=d+8|0;f=c[e>>2]|0;if((c[f>>2]|0)==(b|0))break;else d=f}if(f)c[e>>2]=c[f+8>>2]}else c[e>>2]=c[d+8>>2];Ny(a,d);d=0}while(0);return d|0}function oz(a,b){a=a|0;b=b|0;var d=0;d=fz(a)|0;a:do if((d|0)==(fz(b)|0))switch(c[b>>2]&3){case 0:{while(1){if((b|0)==(a|0)){b=1;break a}b=yA(b)|0;if(!b){b=0;break}}break}case 1:{b=b+8|0;b=(Wy(a,c[b>>2]|0,c[b+4>>2]|0,0)|0)!=0;break a}default:{b=(Vx(a,b,0)|0)!=0;break a}}else b=0;while(0);return b&1|0}function pz(a){a=a|0;return c[a>>2]&3|0}function qz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=Az(a,93430,44,0)|0;switch(c|0){case 100:{e=rz(f,b,100)|0;if(!(sz(e,b)|0))tz(e,a,b,d)|0;break}case 101:{if(((sz(rz(f,b,100)|0,b)|0)==0?(sz(rz(f,b,102)|0,b)|0)==0:0)?(e=rz(f,b,101)|0,(sz(e,b)|0)==0):0)tz(e,a,b,d)|0;break}case 102:{uz(rz(f,b,100)|0,b);uz(rz(f,b,101)|0,b);e=rz(f,b,102)|0;if(!(sz(e,b)|0))tz(e,a,b,d)|0;break}default:Pw(1,93442,g)|0}l=h;return}function rz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;a:do switch(c[b>>2]&3){case 0:switch(d|0){case 100:{d=a+8|0;break a}case 101:{d=a+20|0;break a}case 102:{d=a+32|0;break a}default:{f=14;break a}}case 1:switch(d|0){case 100:{d=a+12|0;break a}case 101:{d=a+24|0;break a}case 102:{d=a+36|0;break a}default:{f=14;break a}}case 2:switch(d|0){case 100:{d=a+16|0;break a}case 101:{d=a+28|0;break a}case 102:{d=a+40|0;break a}default:{f=14;break a}}default:f=14}while(0);if((f|0)==14){Pw(1,93476,e)|0;d=0}a=c[d>>2]|0;if(!a){a=ez(b)|0;a=CA(a,18724,c[4563]|0)|0;c[d>>2]=a}l=g;return a|0}function sz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vz(b)|0;b=e+8|0;c[b>>2]=f;c[b+4>>2]=z;b=nb[c[a>>2]&63](a,e,4)|0;l=d;return b|0}function tz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=My(ez(d)|0,32)|0;c[f+20>>2]=d;g=vz(d)|0;d=f+8|0;c[d>>2]=g;c[d+4>>2]=z;c[f+16>>2]=b;if(e|0){g=My(b,8)|0;c[f+24>>2]=g;c[g>>2]=e}nb[c[a>>2]&63](a,f,1)|0;return f|0}function uz(a,b){a=a|0;b=b|0;b=sz(a,b)|0;if(b|0)nb[c[a>>2]&63](a,b,2)|0;return}function vz(a){a=a|0;a=a+8|0;z=c[a+4>>2]|0;return c[a>>2]|0}function wz(a,b,d){a=a|0;b=b|0;d=d|0;xz(b);Ny(c[b+16>>2]|0,b);return}function xz(a){a=a|0;var b=0,d=0;b=a+16|0;a=c[a+24>>2]|0;while(1){if(!a)break;d=c[a+4>>2]|0;Ny(c[b>>2]|0,a);a=d}return}function yz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k;h=c[b+16>>2]|0;f=h;while(1){if(!f){f=0;break}g=c[f>>2]|0;if((g|0)==(d|0)){j=7;break}if((a[d>>0]|0)==(a[g>>0]|0)?(b$(d,g)|0)==0:0){j=7;break}f=c[f+4>>2]|0;if((f|0)==(h|0)){f=0;break}}do if((j|0)==7){if(!(c[b>>2]&4)){if((f|0)==(h|0)&(e|0)==0){f=h;break}zz(b,f,e);break}if(e)if((h|0)==(f|0))f=h;else Pw(1,93501,i)|0}while(0);l=k;return f|0}function zz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;c[a+16>>2]=b;e=c[a>>2]|0;d=d<<2&4;c[a>>2]=e&-5|d;if(e&2|0){e=(e&3|0)==3?-1:1;c[a+(e*48|0)+16>>2]=b;e=a+(e*48|0)|0;c[e>>2]=c[e>>2]&-5|d}return}function Az(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=ez(a)|0;f=yz(a,b,0)|0;a:do if((d|0)!=0&(f|0)==0){d=My(h,d)|0;c[d>>2]=Oz(h,b)|0;switch(c[a>>2]&3){case 0:{Bz(a,d);g=d;break a}case 1:{Bz(a,d);g=d;break a}case 2:case 3:{Bz(a,d);g=d;break a}default:{}}}else g=f;while(0);if(e|0)yz(a,b,1)|0;return g|0}function Bz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a+16>>2]|0;do if(d){e=d+4|0;f=c[e>>2]|0;if((f|0)==(d|0)){c[e>>2]=b;e=d;d=b;break}else{c[b+4>>2]=f;e=b;break}}else{e=b;d=b}while(0);c[d+4>>2]=e;if(!(c[a>>2]&4))zz(a,b,0);return}function Cz(a,b){a=a|0;b=b|0;var d=0,e=0;e=ez(a)|0;d=yz(a,b,0)|0;if(!d)b=-1;else{Dz(a,d);if(!(c[a>>2]&3)){Ez(e,a,d);b=d}else{jB(fz(e)|0,a,60,d,0)|0;b=d}Qz(e,c[d>>2]|0)|0;Ny(e,b);b=0}return b|0}function Dz(a,b){a=a|0;b=b|0;var d=0;a=c[a+16>>2]|0;do{d=a+4|0;a=c[d>>2]|0}while((a|0)!=(b|0));c[d>>2]=c[b+4>>2];return}function Ez(a,b,d){a=a|0;b=b|0;d=d|0;if((c[b+16>>2]|0)==(d|0)){a=c[d+4>>2]|0;zz(b,(a|0)==(d|0)?0:a,0)}return}function Fz(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;f=(d|0)>-1;g=f?d:0-d|0;a:do switch(b|0){case 0:{Az(a,c,g,e)|0;if(!f){b=wA(a)|0;while(1){if(!b)break a;Fz(b,0,c,d,e);b=xA(b)|0}}break}case 3:case 2:case 1:{d=(b|0)==1;b=Sy(a)|0;while(1){if(!b)break a;b:do if(d)Az(b,c,g,e)|0;else{f=Ex(a,b)|0;while(1){if(!f)break b;Az(f,c,g,e)|0;f=Gx(a,f)|0}}while(0);b=Ty(a,b)|0}}default:{}}while(0);return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do switch(b|0){case 0:{jB(a,a,61,c,1)|0;break}case 3:case 2:case 1:{e=(b|0)==1;d=Sy(a)|0;while(1){if(!d)break a;b:do if(e)Cz(d,c)|0;else{b=Ex(a,d)|0;while(1){if(!b)break b;Cz(b,c)|0;b=Gx(a,b)|0}}while(0);d=Ty(a,d)|0}}default:{}}while(0);return}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;Cz(b,c)|0;return}function Iz(a){a=a|0;var b=0,d=0,e=0;d=ez(a)|0;b=a+16|0;a=c[b>>2]|0;if(a|0)do{e=a;a=c[a+4>>2]|0;Qz(d,c[e>>2]|0)|0;Ny(d,e)}while((a|0)!=(c[b>>2]|0));c[b>>2]=0;return}function Jz(a){a=a|0;return EA(a,Kz(a)|0)|0}function Kz(a){a=a|0;var b=0,d=0;if(!a)d=184760;else d=(c[a+64>>2]|0)+20|0;b=c[d>>2]|0;if(!b){b=CA(a,18760,c[4563]|0)|0;c[d>>2]=b;a=183232;c[a>>2]=-2147483648;c[a+4>>2]=0;a=183240;c[a>>2]=2147483647;c[a+4>>2]=-1}return b|0}function Lz(a,b){a=a|0;b=b|0;return Mz(Kz(a)|0,b)|0}function Mz(a,b){a=a|0;b=b|0;a=Nz(a,b)|0;if(!a)a=0;else a=c[a+16>>2]|0;return a|0}function Nz(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+32|0;e=d;c[e+16>>2]=b;b=nb[c[a>>2]&63](a,e,4)|0;l=d;return b|0}function Oz(a,b){a=a|0;b=b|0;var d=0,e=0;if(!b)d=0;else{e=Kz(a)|0;d=Nz(e,b)|0;if(!d){d=(W_(b)|0)+24|0;if(!a)d=C_(d)|0;else d=My(a,d)|0;a=d+8|0;c[a>>2]=1;c[a+4>>2]=0;a=d+20|0;b0(a,b)|0;c[d+16>>2]=a;nb[c[e>>2]&63](e,d,1)|0}else{e=d+8|0;b=e;b=s3(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;c[e>>2]=b;c[e+4>>2]=z}d=c[d+16>>2]|0}return d|0}function Pz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)d=0;else{e=Kz(a)|0;d=Nz(e,b)|0;if(!d){d=(W_(b)|0)+24|0;if(!a)d=C_(d)|0;else d=My(a,d)|0;g=183232;f=c[g+4>>2]|0;a=d+8|0;c[a>>2]=c[g>>2]|1;c[a+4>>2]=f;a=d+20|0;b0(a,b)|0;c[d+16>>2]=a;nb[c[e>>2]&63](e,d,1)|0}else{g=d+8|0;f=g;f=s3(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;c[g>>2]=f;c[g+4>>2]=z}d=c[d+16>>2]|0}return d|0}function Qz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((b|0)!=0?(d=Kz(a)|0,e=Nz(d,b)|0,(e|0)!=0):0)if((c[e+16>>2]|0)==(b|0)?(b=e+8|0,g=b,g=s3(c[g>>2]|0,c[g+4>>2]|0,-1,-1)|0,f=z,b,c[b>>2]=g,c[b+4>>2]=f,b=183240,(g|0)==0&(f|0)==0|(c[b>>2]|0)==0&(c[b+4>>2]|0)==0):0){DA(a,d,e)|0;a=0}else a=0;else a=-1;return a|0}function Rz(a){a=a|0;var b=0;if(!a)a=0;else{a=a+-12|0;b=183232;a=c[b>>2]&c[a>>2]}return a|0}function Sz(a){a=a|0;var b=0,d=0,e=0;if(a|0){d=183232;a=a+-12|0;e=a;b=c[e+4>>2]|c[d+4>>2];c[a>>2]=c[e>>2]|c[d>>2];c[a+4>>2]=b}return}function Tz(a){a=a|0;c[4699]=a;return}function Uz(a){a=a|0;c[46195]=a;c[4699]=1;return}function Vz(a,b){a=a|0;b=b|0;c[46196]=a;c[46197]=b;c[46198]=0;return}function Wz(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!(c[46199]|0)){c[46199]=1;if(!(c[46200]|0))c[46200]=1;if(!(c[46191]|0))c[46191]=c[15621];if(!(c[46192]|0))c[46192]=c[15653];k=c[46201]|0;if(!((k|0)!=0?(c[k>>2]|0)!=0:0)){Xz();k=Yz(c[46191]|0,16384)|0;c[c[46201]>>2]=k}Zz()}a:while(1){j=c[46202]|0;a[j>>0]=a[191725]|0;e=(c[(c[c[46201]>>2]|0)+28>>2]|0)+(c[46200]|0)|0;f=j;b:while(1){h=f;while(1){f=c[18800+(d[h>>0]<<2)>>2]|0;if(b[63752+(e<<1)>>1]|0){c[46203]=e;c[46204]=h}c:while(1){g=f&255;do{f=g+(b[63938+(e<<1)>>1]|0)|0;if((e|0)==(b[64148+(f<<1)>>1]|0))break c;k=b[64684+(e<<1)>>1]|0;e=k<<16>>16}while(k<<16>>16<=92);f=c[19824+(g<<2)>>2]|0}e=b[64894+(f<<1)>>1]|0;f=h+1|0;if((b[63938+(e<<1)>>1]|0)==219)break;else h=f}d:while(1){k=j;e:while(1){e=b[63752+(e<<1)>>1]|0;if(!(e<<16>>16)){e=b[63752+(c[46203]<<1)>>1]|0;f=c[46204]|0}else e=e<<16>>16;c[46193]=j;i=f;c[46194]=i-k;a[191725]=a[f>>0]|0;a[f>>0]=0;c[46202]=f;f:while(1){switch(e|0){case 1:{m=27;break a}case 12:{m=53;break a}case 13:{m=55;break a}case 14:{m=57;break a}case 15:{m=61;break a}case 16:{m=65;break a}case 17:{m=67;break a}case 18:{m=69;break a}case 19:{m=72;break a}case 20:{m=75;break a}case 21:{m=78;break a}case 23:{m=86;break a}case 33:{m=118;break a}case 39:case 38:case 37:case 36:{l=0;break a}case 2:{m=29;break b}case 3:{m=32;break b}case 4:{m=35;break b}case 5:{m=37;break b}case 6:{m=39;break b}case 7:{m=42;break b}case 8:{m=44;break b}case 9:{m=47;break b}case 10:{m=49;break b}case 11:{m=51;break b}case 22:{m=83;break b}case 24:{m=89;break b}case 25:{m=92;break b}case 26:{m=95;break b}case 27:{m=98;break b}case 28:{m=101;break b}case 29:{m=104;break b}case 30:{m=109;break b}case 31:{m=112;break b}case 32:{m=115;break b}case 34:{m=121;break b}case 0:break f;case 35:break;default:{m=134;break a}}h=c[46193]|0;a[f>>0]=a[191725]|0;e=c[46201]|0;g=c[e>>2]|0;if(!(c[g+44>>2]|0)){n=c[g+16>>2]|0;c[46206]=n;c[g>>2]=c[46191];g=c[e>>2]|0;c[g+44>>2]=1;e=n}else e=c[46206]|0;if((c[46202]|0)>>>0<=((c[g+4>>2]|0)+e|0)>>>0){m=128;break e}switch(gA()|0){case 0:{m=132;break d}case 2:{m=133;break e}case 1:break;default:continue a}c[46202]=c[46193];e=(((c[46200]|0)+-1|0)/2|0)+36|0}a[f>>0]=a[191725]|0;f=c[46204]|0;e=c[46203]|0}if((m|0)==128){m=0;g=i-h|0;h=c[46193]|0;f=h+(g+-1)|0;c[46202]=f;e=eA()|0;i=fA(e)|0;j=c[46193]|0;if(!i)continue;else{m=129;break}}else if((m|0)==133){m=0;f=(c[(c[c[46201]>>2]|0)+4>>2]|0)+(c[46206]|0)|0;c[46202]=f;e=eA()|0;j=c[46193]|0;continue}}if((m|0)==129){m=0;f=h+g|0;c[46202]=f;e=i;continue}else if((m|0)==132){m=0;f=(c[46193]|0)+(i-h+-1)|0;c[46202]=f;e=eA()|0;j=c[46193]|0;continue}}switch(m|0){case 29:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[4699]=(c[4699]|0)+1;continue a}case 32:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=3;continue a}case 35:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 37:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 39:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=1;continue a}case 42:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 44:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;_z();continue a}case 47:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 49:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 51:{m=0;e=c[46194]|0;if(!e)continue a;c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;continue a}case 83:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=5;aA();continue a}case 89:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;cA(95669);continue a}case 92:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;cA(93534);continue a}case 95:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[4699]=(c[4699]|0)+1;continue a}case 98:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;cA(e);continue a}case 101:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=7;c[46205]=1;aA();continue a}case 104:{m=0;e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;n=(c[46205]|0)+-1|0;c[46205]=n;if(!n){m=108;break a}cA(c[46193]|0);continue a}case 109:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;c[46205]=(c[46205]|0)+1;cA(e);continue a}case 112:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;cA(e);c[4699]=(c[4699]|0)+1;continue a}case 115:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;cA(e);continue a}case 121:{m=0;f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;E1(e,f,1,c[46192]|0)|0;continue a}}}switch(m|0){case 27:{e=c[46194]|0;if(!e)l=-1;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=-1}break}case 53:{e=c[46194]|0;if(!e)l=259;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=259}break}case 55:{e=c[46194]|0;if(!e)l=260;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=260}break}case 57:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;if(!(c[46198]|0)){c[46198]=258;l=258}else l=258;break}case 61:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;if(!(c[46198]|0)){c[46198]=261;l=261}else l=261;break}case 65:{e=c[46194]|0;if(!e)l=263;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=263}break}case 67:{e=c[46194]|0;if(!e)l=262;else{c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=262}break}case 69:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=(c[46198]|0)==261?264:45;break}case 72:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;l=(c[46198]|0)==258?264:45;break}case 75:{f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;c[46221]=Oz(c[46171]|0,e)|0;l=267;break}case 78:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;if($z()|0){m=(c[46194]|0)+-1|0;a[f>>0]=a[191725]|0;n=j+m|0;c[46202]=n;c[46193]=j;c[46194]=m;a[191725]=a[n>>0]|0;a[n>>0]=0;c[46202]=n}c[46221]=Oz(c[46171]|0,c[46193]|0)|0;l=267;break}case 86:{e=c[46194]|0;if(e|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[(c[46193]|0)+(e+-1)>>0]|0)==10&1;c[46200]=1;bA();l=268;break}case 108:{c[46200]=1;dA();l=268;break}case 118:{f=c[46194]|0;e=c[46193]|0;if(f|0)c[(c[c[46201]>>2]|0)+28>>2]=(a[e+(f+-1)>>0]|0)==10&1;l=a[e>>0]|0;break}case 134:{hA(93537);break}}return l|0}function Xz(){var a=0,b=0,d=0;b=c[46201]|0;do if(!b){a=oA(4)|0;c[46201]=a;if(!a)hA(93895);else{c[a>>2]=0;a=1;d=9;break}}else{a=c[46212]|0;if(0>=(a+-1|0)>>>0){a=a+8|0;b=iA(b,a<<2)|0;c[46201]=b;if(!b)hA(93895);else{d=b+(c[46212]<<2)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;d=9;break}}}while(0);if((d|0)==9)c[46212]=a;return}function Yz(a,b){a=a|0;b=b|0;var d=0;d=oA(48)|0;if(!d)hA(93850);c[d+12>>2]=b;b=oA(b+2|0)|0;c[d+4>>2]=b;if(!b)hA(93850);else{c[d+20>>2]=1;kA(d,a);return d|0}return 0}function Zz(){var b=0,d=0;d=c[46201]|0;b=c[d>>2]|0;c[46206]=c[b+16>>2];b=c[b+8>>2]|0;c[46202]=b;c[46193]=b;c[46191]=c[c[d>>2]>>2];a[191725]=a[b>>0]|0;return}function _z(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;f=g;d=g+16|0;e=g+12|0;h=c[46193]|0;b=h+1|0;i=(z$(b,93834,4)|0)==0;b=i?h+5|0:b;c[f>>2]=e;c[f+4>>2]=g+20;c[f+8>>2]=d;f=N1(b,93839,f)|0;if((f|0)>0?(c[4699]=(c[e>>2]|0)+-1,(f|0)!=1):0){d=b+(c[d>>2]|0)|0;b=d;a:while(1){e=a[b>>0]|0;switch(e<<24>>24){case 0:case 34:break a;default:{}}b=b+1|0}if((b|0)!=(d|0)&e<<24>>24==34){a[b>>0]=0;nA(d,b-d|0)}}l=g;return}function $z(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+2080|0;i=j+8|0;f=j;b=j+1056|0;d=j+32|0;h=j+16|0;k=a[(c[46193]|0)+((c[46194]|0)+-1)>>0]|0;e=k<<24>>24==46;if(e|((k&255)+-48|0)>>>0<10)if(e?(mA()|0)!=0:0)g=4;else b=0;else g=4;if((g|0)==4){k=c[46195]|0;Tw(h,1024,b);Ww(h,93745)|0;Ww(h,c[46193]|0)|0;c[f>>2]=c[4699];Y0(d,93789,f)|0;Ww(h,d)|0;Ww(h,(k|0)==0?93739:k)|0;Ww(h,93806)|0;d=h+4|0;b=c[d>>2]|0;if(b>>>0>=(c[h+8>>2]|0)>>>0){Uw(h,1)|0;b=c[d>>2]|0}a[b>>0]=0;b=c[h>>2]|0;c[d>>2]=b;c[i>>2]=b;Pw(0,93831,i)|0;Xw(h);b=1}l=j;return b|0}function aA(){var b=0;b=c[46207]|0;if(!b){b=C_(1024)|0;c[46207]=b;c[46209]=b+1024}c[46208]=b;a[b>>0]=0;return}function bA(){c[46221]=Oz(c[46171]|0,c[46207]|0)|0;a[c[46207]>>0]=0;return}function cA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=c[46208]|0;d=c[46207]|0;if(e>>>0>d>>>0){e=e+-1|0;f=3}a:while(1){if((f|0)==3)c[46208]=e;f=c[46209]|0;g=f;do{h=b;b=b+1|0;h=a[h>>0]|0;i=e;e=e+1|0;a[i>>0]=h;if(!(h<<24>>24))break a}while(e>>>0>>0);c[46208]=e;f=d;i=g-f<<1;d=F_(d,i)|0;c[46207]=d;c[46209]=d+i;e=d+(e-f)|0;f=3}c[46208]=e;return}function dA(){c[46221]=Pz(c[46171]|0,c[46207]|0)|0;a[c[46207]>>0]=0;return}function eA(){var d=0,e=0,f=0,g=0,h=0;h=c[46202]|0;g=c[46193]|0;e=(c[(c[c[46201]>>2]|0)+28>>2]|0)+(c[46200]|0)|0;while(1){if(g>>>0>=h>>>0)break;d=a[g>>0]|0;if(!(d<<24>>24))d=1;else d=c[18800+((d&255)<<2)>>2]|0;if(b[63752+(e<<1)>>1]|0){c[46203]=e;c[46204]=g}a:while(1){f=d&255;do{d=f+(b[63938+(e<<1)>>1]|0)|0;if((e|0)==(b[64148+(d<<1)>>1]|0))break a;d=b[64684+(e<<1)>>1]|0;e=d<<16>>16}while(d<<16>>16<=92);d=c[19824+(f<<2)>>2]|0}g=g+1|0;e=b[64894+(d<<1)>>1]|0}return e|0}function fA(a){a=a|0;var d=0;if(b[63752+(a<<1)>>1]|0){d=c[46202]|0;c[46203]=a;c[46204]=d}while(1){d=(b[63938+(a<<1)>>1]|0)+1|0;if((a|0)==(b[64148+(d<<1)>>1]|0))break;a=b[64684+(a<<1)>>1]|0}d=b[64894+(d<<1)>>1]|0;return (d<<16>>16==92?0:d<<16>>16)|0}function gA(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=c[46201]|0;g=c[j>>2]|0;i=c[g+4>>2]|0;f=c[46193]|0;l=c[46202]|0;k=l;if(l>>>0>(i+((c[46206]|0)+1)|0)>>>0)hA(93592);h=k-f|0;if(!(c[g+40>>2]|0))b=(h|0)==1?1:2;else{l=h+-1|0;h=i;g=0;while(1){if((g|0)>=(l|0))break;a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0;g=g+1|0}f=c[j>>2]|0;do if((c[f+44>>2]|0)==2){c[46206]=0;c[f+16>>2]=0;e=f;m=17}else{while(1){i=f+12|0;h=c[i>>2]|0;g=h-l+-1|0;if(g|0){m=16;break}g=f+4|0;j=c[g>>2]|0;if(!(c[f+20>>2]|0)){m=12;break}f=h<<1;f=(f|0)==0?(h>>>3)+h|0:f;c[i>>2]=f;f=iA(j,f+2|0)|0;c[g>>2]=f;if(!f)break;j=f+(k-j)|0;c[46202]=j;f=c[c[46201]>>2]|0;k=j}if((m|0)==12)c[g>>2]=0;else if((m|0)==16){d=nb[c[c[(c[46196]|0)+8>>2]>>2]&63](c[46197]|0,(c[f+4>>2]|0)+l|0,g>>>0<8192?g:8192)|0;e=c[c[46201]>>2]|0;c[46206]=d;c[e+16>>2]=d;if(!d){m=17;break}else{b=0;break}}hA(93648)}while(0);do if((m|0)==17)if(!l){jA(c[46191]|0);b=1;d=c[46206]|0;e=c[c[46201]>>2]|0;break}else{c[e+44>>2]=2;b=2;d=0;break}while(0);f=d+l|0;do if(f>>>0>(c[e+12>>2]|0)>>>0){m=iA(c[e+4>>2]|0,f+(d>>>1)|0)|0;d=c[46201]|0;c[(c[d>>2]|0)+4>>2]=m;d=c[(c[d>>2]|0)+4>>2]|0;if(!d)hA(93692);else{n=c[46206]|0;o=d;break}}else{n=d;o=c[e+4>>2]|0}while(0);n=n+l|0;c[46206]=n;a[o+n>>0]=0;o=c[46201]|0;a[(c[(c[o>>2]|0)+4>>2]|0)+((c[46206]|0)+1)>>0]=0;c[46193]=c[(c[o>>2]|0)+4>>2]}return b|0}function hA(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=c[15686]|0;c[b>>2]=a;g1(d,93588,b)|0;Sa(2)}function iA(a,b){a=a|0;b=b|0;return F_(a,b)|0}function jA(a){a=a|0;var b=0,d=0,e=0;d=c[46201]|0;if((d|0)!=0?(b=c[d>>2]|0,(b|0)!=0):0)e=4;else{Xz();b=Yz(c[46191]|0,16384)|0;d=c[46201]|0;c[d>>2]=b;if(!d)b=0;else e=4}kA(b,a);Zz();return}function kA(a,b){a=a|0;b=b|0;var d=0;d=c[(O_()|0)>>2]|0;lA(a);c[a>>2]=b;c[a+40>>2]=1;b=c[46201]|0;if(!b)b=0;else b=c[b>>2]|0;if((b|0)!=(a|0)){c[a+32>>2]=1;c[a+36>>2]=0}c[a+24>>2]=0;c[(O_()|0)>>2]=d;return}function lA(b){b=b|0;var d=0;if(b|0){c[b+16>>2]=0;d=b+4|0;a[c[d>>2]>>0]=0;a[(c[d>>2]|0)+1>>0]=0;c[b+8>>2]=c[d>>2];c[b+28>>2]=1;c[b+44>>2]=0;d=c[46201]|0;if(!d)d=0;else d=c[d>>2]|0;if((d|0)==(b|0))Zz()}return}function mA(){var b=0,d=0;d=c[46193]|0;b=(c[46194]|0)+-2|0;while(1){if((b|0)<=-1){b=0;break}if((a[d+b>>0]|0)==46){b=1;break}else b=b+-1|0}return b|0}function nA(a,b){a=a|0;b=b|0;var d=0;d=c[46210]|0;if((d|0)<(b|0)){if(!d)d=C_(b+1|0)|0;else d=F_(c[46211]|0,b+1|0)|0;c[46211]=d;c[46210]=b}else d=c[46211]|0;b0(d,a)|0;c[46195]=c[46211];return}function oA(a){a=a|0;return C_(a)|0}function pA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+2112|0;k=m+32|0;i=m+24|0;h=m+16|0;g=m+8|0;f=m;d=m+56|0;j=m+40|0;Tw(j,1024,m+1080|0);e=c[46195]|0;if(e|0){Ww(j,e)|0;Ww(j,93945)|0}Ww(j,b)|0;c[f>>2]=c[4699];Y0(d,93948,f)|0;Ww(j,d)|0;a:do if(!(a[c[46193]>>0]|0))switch(((c[46200]|0)+-1|0)/2|0|0){case 2:{c[g>>2]=16384;Y0(d,93968,g)|0;Ww(j,d)|0;b=c[46207]|0;if(!(a[b>>0]|0))break a;i=W_(b)|0;Ww(j,94030)|0;b=c[46207]|0;if((i|0)>80)a[b+80>>0]=0;Ww(j,b)|0;break a}case 3:{c[h>>2]=16384;Y0(d,94049,h)|0;Ww(j,d)|0;b=c[46207]|0;if(!(a[b>>0]|0))break a;i=W_(b)|0;Ww(j,94117)|0;b=c[46207]|0;if((i|0)>80)a[b+80>>0]=0;Ww(j,b)|0;break a}case 1:{c[i>>2]=16384;Y0(d,94136,i)|0;Ww(j,d)|0;break a}default:break a}else{Ww(j,93960)|0;Ww(j,c[46193]|0)|0;d=j+4|0;b=c[d>>2]|0;if(b>>>0>=(c[j+8>>2]|0)>>>0){Uw(j,1)|0;b=c[d>>2]|0}c[d>>2]=b+1;a[b>>0]=39}while(0);e=j+4|0;b=c[e>>2]|0;d=j+8|0;if(b>>>0>=(c[d>>2]|0)>>>0){Uw(j,1)|0;b=c[e>>2]|0}c[e>>2]=b+1;a[b>>0]=10;b=c[e>>2]|0;if(b>>>0>=(c[d>>2]|0)>>>0){Uw(j,1)|0;b=c[e>>2]|0}a[b>>0]=0;i=c[j>>2]|0;c[e>>2]=i;c[k>>2]=i;Pw(1,93831,k)|0;Xw(j);l=m;return}function qA(){rA(c[46193]|0);return}function rA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=c[46202]|0;a[j>>0]=a[191725]|0;i=c[46201]|0;e=c[i>>2]|0;d=c[e+4>>2]|0;if(j>>>0<(d+2|0)>>>0){f=d+((c[46206]|0)+2)|0;g=d+((c[e+12>>2]|0)+2)|0;k=d;h=e;while(1){if(f>>>0<=k>>>0)break;e=f+-1|0;k=g+-1|0;a[k>>0]=a[e>>0]|0;h=c[i>>2]|0;f=e;g=k;k=c[h+4>>2]|0}e=g-f|0;d=j+e|0;j=c[h+12>>2]|0;c[46206]=j;c[h+16>>2]=j;if(d>>>0<(k+2|0)>>>0)hA(94195);else{l=b+e|0;m=d}}else{l=b;m=j}b=m+-1|0;a[b>>0]=64;c[46193]=l;a[191725]=a[b>>0]|0;c[46202]=b;return}function sA(){var a=0;a=c[46201]|0;if(!a)a=0;else a=c[a>>2]|0;lA(a);return}function tA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+80|0;f=e;g=a+52|0;FA(a,c[g>>2]|0,18444);a=f+8|0;c[a>>2]=b;c[a+4>>2]=d;d=c[g>>2]|0;d=nb[c[d>>2]&63](d,f,4)|0;l=e;return d|0}function uA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=tA(b,d,e)|0;if(!f){f=My(b,72)|0;c[f+64>>2]=c[b+64>>2];g=f+24|0;h=c[b+24>>2]|0;c[g>>2]=h;a[g>>0]=h&255&-9;c[f+56>>2]=b;c[f+60>>2]=c[b+60>>2];b=f+8|0;c[b>>2]=d;c[b+4>>2]=e;Zx(f)|0}return f|0}function vA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;if(!(((b|0)!=0?(oy(a,0,b,f,0)|0)!=0:0)?(e=f,e=tA(a,c[e>>2]|0,c[e+4>>2]|0)|0,(e|0)!=0):0))if((d|0)!=0?(oy(a,0,b,f,1)|0)!=0:0){e=f;e=uA(a,c[e>>2]|0,c[e+4>>2]|0)|0;sy(a,0,e)}else e=0;l=g;return e|0}function wA(a){a=a|0;a=c[a+52>>2]|0;return nb[c[a>>2]&63](a,0,128)|0}function xA(a){a=a|0;var b=0;b=yA(a)|0;if(!b)a=0;else{b=c[b+52>>2]|0;a=nb[c[b>>2]&63](b,a,8)|0}return a|0}function yA(a){a=a|0;return c[a+56>>2]|0}function zA(a,b){a=a|0;b=b|0;a=c[a+52>>2]|0;return nb[c[a>>2]&63](a,b,2)|0}function AA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[46213]|0;e=(b|0)!=0;do if(!a)if(e){D_(b);a=0;break}else{a=C_(d)|0;break}else if(e){Ny(a,b);a=0;break}else{a=My(a,d)|0;break}while(0);return a|0}function BA(a,b,d){a=a|0;b=b|0;d=d|0;a=c[46213]|0;if(!a)D_(b);else Ny(a,b);return}function CA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=b+28|0;f=c[e>>2]|0;c[e>>2]=7;c[46213]=a;d=Cw(b,d)|0;c[e>>2]=f;c[46213]=0;return d|0}function DA(a,b,d){a=a|0;b=b|0;d=d|0;c[46213]=a;return nb[c[b>>2]&63](b,d,2)|0}function EA(a,b){a=a|0;b=b|0;var d=0,e=0;d=(Kw(b,0,0)|0)+28|0;e=c[d>>2]|0;c[d>>2]=7;c[46213]=a;if(!(yw(b)|0)){c[d>>2]=e;c[46213]=0;a=0}else a=1;return a|0}function FA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0?(Kw(b,0,0)|0)!=(c|0):0)Kw(b,c,0)|0;return}function GA(a,b){a=a|0;b=b|0;if(!(Rz(a)|0))b=IA(a,b)|0;else HA(a,b)|0;return b|0}function HA(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;a[c>>0]=60;e=c;while(1){d=e+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;a[d>>0]=f;b=b+1|0;e=d}a[d>>0]=62;a[e+2>>0]=0;return c|0}function IA(b,d){b=b|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;a:do if((b|0)!=0?(a[b>>0]|0)!=0:0){a[d>>0]=34;l=a[b>>0]|0;q=0;g=((l+-45&255)<2|((l&255)+-48|0)>>>0<10)&1;h=0;i=0;j=0;e=d+1|0;f=b+1|0;b:while(1){k=e;while(1){if(!(l<<24>>24))break b;e=l&255;c:do if(l<<24>>24==34){a[k>>0]=92;m=g;n=1;k=k+1|0}else{if(!g){n=l<<24>>24>-1&(l<<24>>24!=95&(M$(e)|0)==0);m=0;n=n?1:h;break}switch(l<<24>>24){case 45:{n=(j|0)==0;m=n?g:0;n=n?h:1;break c}case 46:{n=(i|0)==0;m=n?g:0;n=n?h:1;i=i+1|0;break c}default:{n=(e+-48|0)>>>0<10;m=n?g:0;n=n?h:1;break c}}}while(0);e=k+1|0;a[k>>0]=l;p=f+1|0;o=a[f>>0]|0;j=j+1|0;f=c[5005]|0;if(!f){g=m;h=n;k=e;f=p;l=o;continue}g=o&255;h=o<<24>>24!=0;if((q&h?!(l<<24>>24==92|l<<24>>24>-1&((l+-45&255)>1&(M$(l<<24>>24)|0)==0)^1):0)?!(o<<24>>24>-1&((o+-45&255)>1&(M$(g)|0)==0)):0)break;if((j|0)<(f|0)|h^1){g=m;h=n;k=e;f=p;l=o;continue}if(l<<24>>24==92|l<<24>>24>-1&((M$(l<<24>>24)|0)==0&(l+-45&255)>1)^1){q=1;g=m;h=n;l=o;f=p;continue b}if(o<<24>>24>-1&((o+-45&255)>1&(M$(g)|0)==0)){q=1;g=m;h=n;l=o;f=p;continue b}a[e>>0]=92;a[k+2>>0]=10;g=m;h=1;j=0;k=k+3|0;f=p;l=o}a[e>>0]=92;a[k+2>>0]=10;q=0;g=m;h=1;j=0;l=o;e=k+3|0;f=p}a[k>>0]=34;a[k+1>>0]=0;if(!h){if((j|0)==1?((a[b>>0]|0)+-45&255)<2:0){b=d;break}else e=20024;while(1){f=c[e>>2]|0;if(!f)break a;if(!(O$(f,b)|0)){b=d;break}else e=e+4|0}}else b=d}else b=94227;while(0);return b|0}function JA(a){a=a|0;return GA(a,KA(a)|0)|0}function KA(a){a=a|0;var b=0;b=((W_(a)|0)<<1)+2|0;b=b>>>0>1024?b:1024;a=c[46215]|0;if(b>>>0>(c[46214]|0)>>>0){if(!a)a=C_(b)|0;else a=F_(a,b)|0;c[46215]=a;c[46214]=b}return a|0}function LA(a,b){a=a|0;b=b|0;a=wA(a)|0;while(1){if(!a){a=0;break}if((MA(a)|0)==0?Xy(a,b,0)|0:0){a=1;break}a=xA(a)|0}return a|0}function MA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=ry(b)|0;if((h|0)!=0?(a[h>>0]|0)!=37:0)d=0;else e=3;a:do if((e|0)==3){d=dx(b)|0;b:do if(d|0?(f=dx(yA(b)|0)|0,f|0):0){h=Ew(c[(dx(fz(b)|0)|0)+8>>2]|0)|0;g=d+12|0;e=f+12|0;d=0;while(1){if((d|0)>=(h|0))break b;f=c[(c[g>>2]|0)+(d<<2)>>2]|0;if((f|0?(i=c[(c[e>>2]|0)+(d<<2)>>2]|0,i|0):0)?b$(f,i)|0:0){d=0;break a}d=d+1|0}}while(0);d=_w(b,0)|0;if(d)if((Ew(c[d+8>>2]|0)|0)>0)d=0;else return (Ew(c[d+12>>2]|0)|0)<1|0;else d=1}while(0);return d|0}function NA(b,d){b=b|0;d=d|0;var e=0,f=0;c[46216]=0;e=xx(b,94237)|0;if((e|0?((a[e>>0]|0)+-48|0)>>>0<10:0)?(f=i1(e,0,10)|0,(f|0)==0|(f|0)>59):0)c[5005]=f;OA(b,1);if(((PA(b,d,1)|0)!=-1?(QA(b,d)|0)!=-1:0)?(RA(b,d)|0)!=-1:0){c[5005]=128;b=kb[c[(c[(c[b+64>>2]|0)+8>>2]|0)+8>>2]&63](d)|0}else b=-1;return b|0}function OA(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=c[a>>2]&-9;d=wA(a)|0;while(1){if(!d)break;OA(d,0);d=xA(d)|0}a:do if(b|0){b=Sy(a)|0;while(1){if(!b)break a;c[b>>2]=c[b>>2]&-9;d=Ex(a,b)|0;while(1){if(!d)break;c[d>>2]=c[d>>2]&-9;d=Gx(a,d)|0}b=Ty(a,b)|0}}while(0);return}function PA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;if((e|0)==0?(yA(b)|0)!=0:0){i=0;g=191979;k=106488}else{k=(a[b+24>>0]&1)==0?191979:94281;g=(gy(b)|0)==0;c[46217]=nx(b,2,108373,0)|0;c[46218]=nx(b,2,108382,0)|0;i=1;g=g?191979:94284}f=ry(b)|0;if((f|0)!=0?(a[f>>0]|0)!=37:0){h=1;j=99578}else{h=0;j=191979;f=191979}do if((SA(b,d)|0)!=-1?(TA(b,d,g)|0)!=-1:0){g=(h|0)==0;if(h|i|0){if((TA(b,d,k)|0)==-1){f=-1;break}if((TA(b,d,99571)|0)==-1){f=-1;break}}if(!g?(cB(b,d,f)|0)==-1:0){f=-1;break}if(((TA(b,d,j)|0)!=-1?(TA(b,d,94292)|0)!=-1:0)?(c[46216]=(c[46216]|0)+1,(hB(b,d,e)|0)!=-1):0){c[b>>2]=c[b>>2]|8;f=0}else f=-1}else f=-1;while(0);return f|0}function QA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:do if((UA(a,b)|0)==-1)d=-1;else{k=_w(fz(a)|0,0)|0;i=(k|0)==0;j=k+12|0;k=k+8|0;h=Sy(a)|0;while(1){if(!h){d=0;break a}if(VA(a,h,(c[h>>2]|0)>>>4,0)|0){if(i)d=0;else d=c[k>>2]|0;if((WA(h,b,d)|0)==-1){d=-1;break a}}g=Ex(a,h)|0;d=h;while(1){if(!g)break;f=g+-48|0;e=c[((c[g>>2]&3|0)==2?g:f)+40>>2]|0;if((d|0)!=(e|0)?(VA(a,e,(c[h>>2]|0)>>>4,0)|0)!=0:0){if(i)d=0;else d=c[k>>2]|0;if((WA(c[((c[g>>2]&3|0)==2?g:f)+40>>2]|0,b,d)|0)==-1){d=-1;break a}d=c[((c[g>>2]&3|0)==2?g:f)+40>>2]|0}if(XA(a,g)|0){if(i)e=0;else e=c[j>>2]|0;if((YA(g,b,e)|0)==-1){d=-1;break a}}g=Gx(a,g)|0}h=Ty(a,h)|0}}while(0);return d|0}function RA(a,b){a=a|0;b=b|0;c[46216]=(c[46216]|0)+-1;if((SA(a,b)|0)==-1)a=-1;else a=((TA(a,b,107982)|0)==-1)<<31>>31;return a|0}function SA(a,b){a=a|0;b=b|0;var d=0;d=c[46216]|0;while(1){if((d|0)<=0){d=0;break}if((TA(a,b,150515)|0)==-1){d=-1;break}else d=d+-1|0}return d|0}function TA(a,b,d){a=a|0;b=b|0;d=d|0;return lb[c[(c[(c[a+64>>2]|0)+8>>2]|0)+4>>2]&127](b,d)|0}function UA(a,b){a=a|0;b=b|0;a=wA(a)|0;while(1){if(!a){a=0;break}if(!(MA(a)|0)){if((PA(a,b,0)|0)==-1){a=-1;break}if((QA(a,b)|0)==-1){a=-1;break}if((RA(a,b)|0)==-1){a=-1;break}}else UA(a,b)|0;a=xA(a)|0}return a|0}function VA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((LA(a,b)|0)==0?(eB(a,b,c,d)|0)!=0:0)if((fB(a,b)|0)==0?(gB(b)|0)==0:0)e=5;else a=1;else e=5;if((e|0)==5)a=0;return a|0}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=ez(a)|0;do if((SA(d,b)|0)!=-1?(ZA(a,b)|0)!=-1:0){if(($A(a)|0)==0?(aB(a,b,c)|0)==-1:0){a=-1;break}a=TA(d,b,94248)|0}else a=-1;while(0);return a|0}function XA(a,b){a=a|0;b=b|0;a=wA(a)|0;while(1){if(!a){a=1;break}if((MA(a)|0)==0?Vx(a,b,0)|0:0){a=0;break}a=xA(a)|0}return a|0}function YA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[a>>2]&3;g=c[((e|0)==3?a:a+48|0)+40>>2]|0;e=c[((e|0)==2?a:a+-48|0)+40>>2]|0;f=ez(g)|0;do if((((((SA(f,b)|0)!=-1?(ZA(g,b)|0)!=-1:0)?(_A(a,b,c[46217]|0)|0)!=-1:0)?(g=(ey(ez(g)|0)|0)!=0,(TA(f,b,g?97053:97058)|0)!=-1):0)?(ZA(e,b)|0)!=-1:0)?(_A(a,b,c[46218]|0)|0)!=-1:0){if(!($A(a)|0)){if((aB(a,b,d)|0)==-1){a=-1;break}}else if((bB(a,b,1)|0)==-1){a=-1;break}a=TA(f,b,94248)|0}else a=-1;while(0);return a|0}function ZA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i;d=i+8|0;e=ry(a)|0;f=ez(a)|0;if(!e){j=a+8|0;a=c[j+4>>2]|0;e=g;c[e>>2]=c[j>>2];c[e+4>>2]=a;Y0(d,94268,g)|0;if((TA(f,b,d)|0)==-1)a=-1;else h=4}else if((cB(f,b,e)|0)==-1)a=-1;else h=4;if((h|0)==4)a=0;l=i;return a|0}function _A(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if((d|0)!=0?(e=ez(b)|0,f=yx(b,d)|0,(a[f>>0]|0)!=0):0)if((TA(e,c,104958)|0)==-1)b=-1;else{do if(Rz(f)|0){if((cB(e,c,f)|0)==-1){b=-1;break a}}else{b=A$(f,58)|0;if(!b)if((dB(e,c,f,0)|0)==-1){b=-1;break a}else break;a[b>>0]=0;if((dB(e,c,f,0)|0)==-1){b=-1;break a}if((TA(e,c,104958)|0)==-1){b=-1;break a}if((dB(e,c,b+1|0,0)|0)==-1){b=-1;break a}a[b>>0]=58}while(0);b=0}else b=0;while(0);return b|0}function $A(a){a=a|0;return (c[a>>2]|0)>>>3&1|0}function aB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:do if(!(c[a>>2]&2)){e=0;k=4}else{switch(bB(a,b,0)|0){case -1:{e=-1;break a}case 0:{e=0;k=4;break a}default:{}}e=1;k=4}while(0);b:do if((k|0)==4){f=dx(a)|0;j=ez(a)|0;c:do if(f){i=f+12|0;h=nb[c[d>>2]&63](d,0,128)|0;while(1){if(!h)break c;do if(c[a>>2]&2){g=c[46217]|0;if(g|0?(c[h+16>>2]|0)==(c[g+16>>2]|0):0)break;g=c[46218]|0;if(!((g|0)!=0?(c[h+16>>2]|0)==(c[g+16>>2]|0):0))k=12}else k=12;while(0);if((k|0)==12){k=0;f=h+16|0;if((c[(c[i>>2]|0)+(c[f>>2]<<2)>>2]|0)!=(c[h+12>>2]|0)){g=e+1|0;if(e){if((TA(j,b,94263)|0)==-1){e=-1;break b}if((SA(j,b)|0)==-1){e=-1;break b}}else{if((SA(j,b)|0)==-1){e=-1;break b}if((TA(j,b,94260)|0)==-1){e=-1;break b}c[46216]=(c[46216]|0)+1}if((cB(j,b,c[h+8>>2]|0)|0)==-1){e=-1;break b}if((TA(j,b,94266)|0)==-1){e=-1;break b}if((cB(j,b,c[(c[i>>2]|0)+(c[f>>2]<<2)>>2]|0)|0)==-1){e=-1;break b}else e=g}}h=nb[c[d>>2]&63](d,h,8)|0}}while(0);if((e|0)>0){if((TA(j,b,94258)|0)==-1){e=-1;break}c[46216]=(c[46216]|0)+-1}c[a>>2]=c[a>>2]|8;e=0}while(0);return e|0}function bB(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ry(b)|0;b=ez(b)|0;if((e|0)!=0?(a[e>>0]|0)!=0:0)if((TA(b,c,94251)|0)!=-1?(cB(b,c,e)|0)!=-1:0)if((d|0)!=0?(TA(b,c,94258)|0)==-1:0)b=-1;else{b=1;f=7}else b=-1;else{b=0;f=7}return b|0}function cB(a,b,c){a=a|0;b=b|0;c=c|0;return dB(a,b,c,1)|0}function dB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!d)c=IA(c,KA(c)|0)|0;else c=JA(c)|0;return TA(a,b,c)|0}function eB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do if(0>>0|(0==(e|0)?(c[b>>2]|0)>>>4>>>0>>0:0))b=0;else{b=Hx(a,b)|0;while(1){if(!b){b=1;break a}if(0>>0|(0==(e|0)?(c[c[b+40>>2]>>2]|0)>>>4>>>0>>0:0)){b=0;break a}b=Ix(a,b)|0}}while(0);return b|0}function fB(a,b){a=a|0;b=b|0;if(!(Hx(a,b)|0))a=(Ex(a,b)|0)==0&1;else a=0;return a|0}function gB(a){a=a|0;var b=0,d=0,e=0;a=dx(a)|0;a:do if(!a)a=0;else{d=a+8|0;e=c[d>>2]|0;b=a+12|0;a=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!a){a=0;break a}if((c[(c[b>>2]|0)+(c[a+16>>2]<<2)>>2]|0)!=(c[a+12>>2]|0)){a=1;break a}e=c[d>>2]|0;a=nb[c[e>>2]&63](e,a,8)|0}}while(0);return a|0}function hB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=_w(a,0)|0;if(e)if(((iB(a,b,108412,c[e+16>>2]|0,d)|0)!=-1?(iB(a,b,108399,c[e+8>>2]|0,d)|0)!=-1:0)?(iB(a,b,108368,c[e+12>>2]|0,d)|0)!=-1:0)f=5;else a=-1;else f=5;if((f|0)==5)a=0;return a|0}function iB(b,d,e,f,g){b=b|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;m=(g|0)!=0;if(m)l=0;else l=Hw(f,0)|0;k=(l|0)==0;j=nb[c[f>>2]&63](f,0,128)|0;g=0;while(1){if(!j){n=23;break}i=j+12|0;n=c[i>>2]|0;if((n|0)!=0?(a[n>>0]|0)!=0:0)n=12;else n=7;do if((n|0)==7){n=0;if(!(a[j+22>>0]|0)){if(!k){h=nb[c[l>>2]&63](l,j,4)|0;o=c[h+12>>2]|0;if(o|0?a[o>>0]|0:0){n=12;break}if(!(a[h+22>>0]|0))n=12}}else n=12}while(0);if((n|0)==12){n=0;h=g+1|0;if(g){if((TA(b,d,94263)|0)==-1){g=-1;break}if((SA(b,d)|0)==-1){g=-1;break}}else{if((SA(b,d)|0)==-1){g=-1;break}if((TA(b,d,e)|0)==-1){g=-1;break}if((TA(b,d,94260)|0)==-1){g=-1;break}c[46216]=(c[46216]|0)+1}if((cB(b,d,c[j+8>>2]|0)|0)==-1){g=-1;break}if((TA(b,d,94266)|0)==-1){g=-1;break}if((cB(b,d,c[i>>2]|0)|0)==-1){g=-1;break}else g=h}j=nb[c[f>>2]&63](f,j,8)|0}do if((n|0)==23){if((g|0)>0){c[46216]=(c[46216]|0)+-1;if((g|0)!=1){if((TA(b,d,150517)|0)==-1){g=-1;break}if((SA(b,d)|0)==-1){g=-1;break}}g=(TA(b,d,94295)|0)==-1;if(m|g){g=g<<31>>31;break}}else if(m){g=0;break}Hw(f,l)|0;g=0}while(0);return g|0}function jB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(c[b>>2]&3){case 0:{g=80;break}case 1:{g=81;break}case 3:case 2:{g=82;break}default:{}}b=lb[g&127](a,b)|0;if(!b)b=-1;else{nB(a,b,d,e,g,f);b=0}return b|0}function kB(a,b){a=a|0;b=b|0;if((ez(b)|0)!=(a|0))b=Vx(a,b,0)|0;return b|0}function lB(a,b){a=a|0;b=b|0;if((ez(b)|0)!=(a|0))b=Xy(a,b,0)|0;return b|0}function mB(a,b){a=a|0;b=b|0;return a|0}function nB(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;h=(f|0)!=0;if(h)vb[c&127](a,b,d);g=wA(a)|0;while(1){if(!g)break;i=lb[e&127](g,b)|0;if(i|0)nB(g,i,c,d,e,f);g=xA(g)|0}if(!h)vb[c&127](a,b,d);return}function oB(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+1200|0;r=t+800|0;g=t;c[46219]=0;c[46220]=-2;f=r;i=200;n=g;p=0;q=0;o=r;a:while(1){b[o>>1]=p;if((f+(i<<1)+-2|0)>>>0>o>>>0)k=i;else{m=o-f>>1;e=m+1|0;if(i>>>0>9999){s=75;break}k=i<<1;k=k>>>0<1e4?k:1e4;h=C_(k*6|3)|0;if(h){F3(h|0,f|0,e<<1|0)|0;i=h+(k>>>1<<2)|0;F3(i|0,n|0,e<<2|0)|0;if((f|0)==(r|0)){e=0;f=h}else{D_(f);e=0;f=h}}else{e=4;i=n}j=(e|0)==0;h=f+(m<<1)|0;switch((j?((f+(k<<1)+-2|0)>>>0>h>>>0?0:9):e)&15){case 9:{e=1;s=76;break a}case 4:{s=75;break a}case 0:{g=j?i+(m<<2)|0:g;n=i;o=j?h:o;break}default:{e=0;break a}}}if((p|0)==6){e=0;s=76;break}e=a[94299+p>>0]|0;j=e<<24>>24;do if(e<<24>>24!=-18){h=c[46220]|0;if((h|0)==-2){h=Wz()|0;c[46220]=h}if((h|0)>=1)if(h>>>0<269)i=d[94379+h>>0]|0;else i=2;else{c[46220]=0;i=0}h=i+j|0;if(h>>>0<=59?(i|0)==(d[94648+h>>0]|0):0){p=a[94708+h>>0]|0;e=p<<24>>24;if(p<<24>>24<1){h=0-e|0;s=23;break}else{c[46220]=-2;g=g+4|0;c[g>>2]=c[46221];j=(q|0)==0?0:q+-1|0;h=o;break}}else s=22}else s=22;while(0);if((s|0)==22){s=0;p=a[94768+p>>0]|0;h=p&255;if(!(p<<24>>24)){h=c[46220]|0;b:do switch(q|0){case 0:{c[46219]=(c[46219]|0)+1;pA(140679);h=o;break}case 3:if((h|0)<1)if(!h){e=1;s=76;break a}else{h=o;break b}else{c[46220]=-2;h=o;break b}default:h=o}while(0);while(1){if(e<<24>>24==18)break;if((h|0)==(f|0)){e=1;s=76;break a}e=h+-2|0;g=g+-4|0;h=e;e=a[94299+(b[e>>1]|0)>>0]|0}g=g+4|0;c[g>>2]=c[46221];e=1;j=3}else s=23}do if((s|0)==23){s=0;i=d[94848+h>>0]|0;e=c[g+(1-i<<2)>>2]|0;c:do switch(h|0){case 2:{pB();qB();break}case 3:{if(c[46222]|0){pB();qB();$x(c[46222]|0)|0;c[46171]=0;c[46222]=0}break}case 6:{rB(c[g>>2]|0,c[g+-4>>2]|0,c[g+-8>>2]|0);break}case 7:{e=c[g>>2]|0;break}case 8:{e=0;break}case 9:{e=1;break}case 10:{e=0;break}case 11:{e=0;break}case 12:{e=1;break}case 21:if(!(c[g+-4>>2]|0)){tB();break c}else{sB();break c}case 24:{uB();break}case 25:{uB();break}case 26:{e=1;break}case 27:{e=0;break}case 30:{vB(c[g>>2]|0,0,0);break}case 31:{vB(c[g+-8>>2]|0,c[g>>2]|0,0);break}case 32:{vB(c[g+-16>>2]|0,c[g+-8>>2]|0,c[g>>2]|0);break}case 33:{wB(c[g+-8>>2]|0,c[g+-4>>2]|0);break}case 34:{wB(258,0);break}case 35:{e=258;break}case 36:{e=259;break}case 37:{e=260;break}case 38:{e=c[g+-4>>2]|0;break}case 39:{e=0;break}case 48:{xB(c[g+-8>>2]|0,c[g>>2]|0);break}case 49:{xB(c[g>>2]|0,0);break}case 51:{yB(c[g>>2]|0);break}case 52:{zB();break}case 53:{e=c[g>>2]|0;break}case 54:{e=0;break}case 55:{e=0;break}case 59:{e=c[g>>2]|0;break}case 60:{e=c[g>>2]|0;break}case 61:{e=c[g>>2]|0;break}case 62:{e=AB(c[g+-8>>2]|0,c[g>>2]|0)|0;break}default:{}}while(0);i=0-i|0;p=g+(i<<2)|0;i=o+(i<<1)|0;g=p+4|0;c[p+4>>2]=e;e=(d[94911+h>>0]|0)+-24|0;p=b[i>>1]|0;h=p+(a[94974+e>>0]|0)|0;if(h>>>0<60?(d[94648+h>>0]|0)==(p|0):0){e=a[94708+h>>0]|0;j=q;h=i;break}e=a[95009+e>>0]|0;j=q;h=i}while(0);i=k;p=e;q=j;o=h+2|0}if((s|0)==75){pA(137476);e=2;s=76}if((s|0)==76)if((f|0)!=(r|0))D_(f);l=t;return e|0}function pB(){var a=0,b=0;a=c[46223]|0;while(1){if(!a)break;IB(a+8|0);IB((c[46223]|0)+24|0);IB((c[46223]|0)+16|0);b=BB(c[46223]|0)|0;c[46223]=b;a=b}return}function qB(){qA();Ay(c[46222]|0);return}function rB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=c[46222]|0;if(!f){a[184896]=d&1|(e&255)<<1&2|a[184896]&-12|8;f=c[46225]|0;a[g>>0]=a[184896]|0;a[g+1>>0]=a[184897]|0;a[g+2>>0]=a[184898]|0;a[g+3>>0]=a[184899]|0;f=Xx(b,g,f)|0;c[46222]=f}c[46171]=f;c[46223]=CB(c[46223]|0,f)|0;Qz(0,b)|0;l=h;return}function sB(){var b=0,d=0,e=0,f=0,g=0,h=0;HB(2);e=c[46223]|0;f=a[95044]|0;h=0;b=e+24|0;while(1){d=c[b>>2]|0;if(!d)break;if(((c[d>>2]|0)==267?(g=c[d+4>>2]|0,(a[g>>0]|0)==f<<24>>24):0)?(b$(g,95044)|0)==0:0)b=c[d+8>>2]|0;else b=h;h=b;b=d+12|0}b=e+16|0;a:while(1){e=c[b>>2]|0;b=e+12|0;if(!(c[b>>2]|0))break;d=e+4|0;if((c[e>>2]|0)==262){e=c[d>>2]|0;d=Sy(e)|0;while(1){if(!d)continue a;g=Xy(c[c[46223]>>2]|0,d,0)|0;PB(g,0,c[b>>2]|0,h);d=Ty(e,d)|0}}else while(1){d=c[d>>2]|0;if(!d)continue a;PB(c[d+4>>2]|0,c[d+8>>2]|0,c[b>>2]|0,h);d=d+12|0}}IB((c[46223]|0)+8|0);IB((c[46223]|0)+16|0);IB((c[46223]|0)+24|0);c[(c[46223]|0)+4>>2]=0;return}function tB(){var a=0;HB(1);a=(c[46223]|0)+8|0;while(1){a=c[a>>2]|0;if(!a)break;OB(c[a+4>>2]|0);a=a+12|0}IB((c[46223]|0)+8|0);IB((c[46223]|0)+24|0);IB((c[46223]|0)+16|0);c[(c[46223]|0)+4>>2]=0;return}function uB(){var a=0,b=0;a=c[46223]|0;b=c[a+8>>2]|0;if(!b){b=c[a+4>>2]|0;if(!b)b=0;else{b=NB(b)|0;a=c[46223]|0}c[a+4>>2]=0}else{b=MB(b)|0;a=c[46223]|0;c[a+12>>2]=0;c[a+8>>2]=0}if(b|0)EB(a+16|0,b);return}function vB(a,b,d){a=a|0;b=b|0;d=d|0;if(d)b=KB(b,d)|0;d=LB(az(c[c[46223]>>2]|0,a,1)|0,b)|0;EB((c[46223]|0)+8|0,d);Qz(c[46222]|0,a)|0;return}function wB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0)GB();d=(c[46223]|0)+24|0;while(1){d=c[d>>2]|0;if(!d)break;if(!(c[d+8>>2]|0))GB();d=d+12|0}g=(b|0)==260?2:(b|0)==259&1;HB(g);b=c[46223]|0;d=b+24|0;while(1){f=c[d>>2]|0;if(!f)break;do if((c[f>>2]|0)!=267){d=c[f+4>>2]|0;e=c[b>>2]|0;if(!((a[d+21>>0]|0)!=0&(e|0)==(c[46222]|0))){d=nx(e,g,c[d+8>>2]|0,c[f+8>>2]|0)|0;b=c[46223]|0;if((c[b>>2]|0)!=(c[46222]|0))break}a[d+22>>0]=1}while(0);d=f+12|0}IB(b+24|0);return}function xB(a,b){a=a|0;b=b|0;b=DB(a,b)|0;EB((c[46223]|0)+24|0,b);return}function yB(a){a=a|0;var b=0;b=c[46223]|0;c[46223]=CB(b,vA(c[b>>2]|0,a,1)|0)|0;Qz(c[46222]|0,a)|0;return}function zB(){var a=0,b=0;a=c[46223]|0;b=c[a>>2]|0;a=BB(a)|0;c[46223]=a;c[a+4>>2]=b;return}function AB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+1024|0;f=g;d=W_(a)|0;d=d+1+(W_(b)|0)|0;if(d>>>0<1025)d=f;else d=C_(d)|0;b0(d,a)|0;p1(d,b)|0;e=Oz(c[46222]|0,d)|0;Qz(c[46222]|0,a)|0;Qz(c[46222]|0,b)|0;if((d|0)!=(f|0))D_(d);l=g;return e|0}function BB(a){a=a|0;var b=0;b=c[(c[46223]|0)+32>>2]|0;Ny(c[46222]|0,a);return b|0}function CB(a,b){a=a|0;b=b|0;var d=0;d=My(c[46222]|0,36)|0;c[d+32>>2]=a;c[d>>2]=b;return d|0}function DB(a,b){a=a|0;b=b|0;return FB(267,a,b)|0}function EB(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+4|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=b;c[d>>2]=b;if(!(c[a>>2]|0))c[a>>2]=b;return}function FB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=My(c[46222]|0,16)|0;c[e>>2]=a;c[e+4>>2]=b;c[e+8>>2]=d;return e|0}function GB(){var a=0;a=l;l=l+16|0;Pw(0,95048,a)|0;l=a;return}function HB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=(b|0)==2;d=(c[46223]|0)+24|0;while(1){d=c[d>>2]|0;if(!d)break;e=d+4|0;f=c[e>>2]|0;if(!((g?(a[f>>0]|0)==(a[95044]|0):0)?!(b$(f,95044)|0):0)){h=nx(c[c[46223]>>2]|0,b,f,0)|0;c[e>>2]=h;if(!h)c[e>>2]=nx(c[c[46223]>>2]|0,b,f,191979)|0;c[d>>2]=266;Qz(c[46222]|0,f)|0}d=d+12|0}return}function IB(a){a=a|0;JB(c[a>>2]|0);c[a+4>>2]=0;c[a>>2]=0;return}function JB(a){a=a|0;var b=0;while(1){if(!a)break;b=c[a+12>>2]|0;switch(c[a>>2]|0){case 265:{JB(c[a+4>>2]|0);break}case 266:case 267:{Qz(c[46222]|0,c[a+8>>2]|0)|0;break}default:{}}Ny(c[46222]|0,a);a=b}return}function KB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+1040|0;f=h;g=h+8|0;d=W_(a)|0;d=d+2+(W_(b)|0)|0;if(d>>>0<1025)e=g;else e=C_(d)|0;c[f>>2]=a;c[f+4>>2]=b;Y0(e,95081,f)|0;d=Oz(c[46222]|0,e)|0;Qz(c[46222]|0,a)|0;Qz(c[46222]|0,b)|0;if((e|0)!=(g|0))D_(e);l=h;return d|0}function LB(a,b){a=a|0;b=b|0;return FB(259,a,b)|0}function MB(a){a=a|0;return FB(265,a,0)|0}function NB(a){a=a|0;return FB(262,a,0)|0}function OB(a){a=a|0;var b=0,d=0;b=(c[46223]|0)+24|0;while(1){b=c[b>>2]|0;if(!b)break;if((c[b>>2]|0)==266?(d=c[b+4>>2]|0,d|0):0)rx(a,d,c[b+8>>2]|0)|0;b=b+12|0}return}function PB(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=d+4|0;a:do if((c[d>>2]|0)==262){d=c[f>>2]|0;f=Sy(d)|0;while(1){if(!f)break a;QB(a,b,Xy(c[c[46223]>>2]|0,f,0)|0,0,e);f=Ty(d,f)|0}}else while(1){f=c[f>>2]|0;if(!f)break a;d=Xy(c[c[46223]>>2]|0,c[f+4>>2]|0,0)|0;QB(a,b,d,c[f+8>>2]|0,e);f=f+12|0}while(0);return}function QB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;d=Rx(c[c[46223]>>2]|0,a,d,f,1)|0;if(d|0){g=c[d>>2]&3;f=c[((g|0)==2?d:d+-48|0)+40>>2]|0;a=(f|0)==(a|0)?(c[((g|0)==3?d:d+48|0)+40>>2]|0)!=(f|0):0;RB(d,108373,a?e:b);RB(d,108382,a?b:e);OB(d)}return}function RB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=nx(c[c[46223]>>2]|0,2,b,0)|0;if(!e)e=nx(c[c[46223]>>2]|0,2,b,191979)|0;rx(a,e,d)|0}return}function SB(a,b,d){a=a|0;b=b|0;d=d|0;c[46191]=b;c[46222]=a;c[46171]=0;a=d|0?d:18496;c[46225]=a;Vz(a,b);oB()|0;a=c[46171]|0;if(!a){sA();a=c[46171]|0}return a|0}function TB(a,b){a=a|0;b=b|0;return SB(0,a,b)|0}function UB(a,b){a=a|0;b=b|0;b=wC(a,1,b)|0;if(!b)b=999;else{b=c[b+16>>2]|0;c[a+184>>2]=c[b+4>>2];c[a+172>>2]=c[b+12>>2];c[a+176>>2]=c[b>>2];c[a+180>>2]=c[b+16>>2];b=300}return b|0}function VB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i;Az(b,134401,280,1)|0;g=b+16|0;c[(c[g>>2]|0)+144>>2]=a;if((fz(b)|0)!=(b|0))c[(c[(fz(b)|0)+16>>2]|0)+144>>2]=a;e=xx(b,95297)|0;d=a+172|0;if((e|0)!=0?(c[d>>2]=0,(UB(a,e)|0)==999):0){d=xC(a,1,e)|0;c[f>>2]=e;c[f+4>>2]=d;Pw(1,95824,f)|0;d=-1}else{e=c[d>>2]|0;if(!e)d=-1;else{CG(1);bH(b,c[c[a+180>>2]>>2]&1);d=c[(c[g>>2]|0)+8>>2]|0;c[(c[(fz(b)|0)+16>>2]|0)+8>>2]=d;LK();d=c[e>>2]|0;if(d|0?(tb[d&127](b),h=c[e+4>>2]|0,h|0):0)c[(c[g>>2]|0)+148>>2]=h;CG(0);d=0}}l=i;return d|0}function WB(a,b){a=a|0;b=b|0;var d=0,e=0;if(Az(b,134401,0,1)|0){d=b+16|0;a=c[d>>2]|0;e=c[a+148>>2]|0;if(e){tb[e&127](b);a=c[d>>2]|0;c[a+148>>2]=0}if(c[a+8>>2]|0)gH(b)}return 0}function XB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;d=c[b+76>>2]|0;f=c[b>>2]|0;if((d|0)!=0?(e=c[d>>2]|0,(e|0)!=0):0){tb[e&127](b);g=12}else g=4;do if((g|0)==4)if((c[b+40>>2]|0)==0?(h=b+36|0,(c[h>>2]|0)==0):0){if(a[f+13>>0]|0)YB(b);d=b+32|0;e=c[d>>2]|0;if(!e){c[h>>2]=c[15653];g=12;break}f=L1(e,103486)|0;c[h>>2]=f;if(!f){j=c[(c[b+12>>2]|0)+16>>2]|0;h=c[d>>2]|0;d=c$(c[(O_()|0)>>2]|0)|0;c[i>>2]=h;c[i+4>>2]=d;ub[j&63](95087,i);d=1}else g=12}else g=12;while(0);if((g|0)==12)if(!(c[b+152>>2]&1024))d=0;else{ub[c[(c[b+12>>2]|0)+16>>2]&63](95125,j);d=1}l=k;return d|0}function YB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+112|0;e=h;g=h+4|0;d=c[b+24>>2]|0;if(!d)a[g>>0]=0;else{c[e>>2]=d+1;Y0(g,95143,e)|0}e=c[b+20>>2]|0;e=e|0?e:95147;d=W_(e)|0;i=W_(g)|0;f=b+52|0;i=d+1+i+(W_(c[f>>2]|0)|0)|0;d=i+11|0;if((c[46226]|0)>>>0<(i+1|0)>>>0){c[46226]=d;d=F_(c[46227]|0,d)|0;c[46227]=d}else d=c[46227]|0;b0(d,e)|0;p1(c[46227]|0,g)|0;d=c[46227]|0;d=d+(W_(d)|0)|0;a[d>>0]=46;a[d+1>>0]=0;d=n1(c[f>>2]|0)|0;f=c[46227]|0;while(1){e=o1(d,58)|0;if(!e)break;p1(f,e+1|0)|0;i=c[46227]|0;g=i+(W_(i)|0)|0;a[g>>0]=46;a[g+1>>0]=0;a[e>>0]=0;f=i}p1(f,d)|0;D_(d);c[b+32>>2]=c[46227];l=h;return}function ZB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h+8|0;f=h;if((b|0)!=0&(d|0)!=0){if(c[a+152>>2]&1024|0){ub[c[(c[a+12>>2]|0)+16>>2]&63](95125,f);Sa(1)}if((_B(a,b,d)|0)==(d|0))e=d;else{f=c[(c[a+12>>2]|0)+16>>2]|0;c[g>>2]=d;ub[f&63](95157,g);Sa(1)}}else e=0;l=h;return e|0}function _B(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;f=c[(c[b>>2]|0)+104>>2]|0;do if(!f){j=b+40|0;h=c[j>>2]|0;if(!h){e=E1(d,1,e,c[b+36>>2]|0)|0;break}f=b+44|0;i=b+48|0;g=c[i>>2]|0;do if(((c[f>>2]|0)+-1-g|0)>>>0>>0){g=e+4096+g&-4096;c[f>>2]=g;f=F_(h,g)|0;c[j>>2]=f;if(!f){ub[c[(c[b+12>>2]|0)+16>>2]&63](95182,n);Sa(1)}else{k=f;m=c[i>>2]|0;break}}else{k=h;m=g}while(0);F3(k+m|0,d|0,e|0)|0;n=(c[i>>2]|0)+e|0;c[i>>2]=n;a[(c[j>>2]|0)+n>>0]=0}else e=nb[f&63](b,d,e)|0;while(0);l=o;return e|0}function $B(a,b){a=a|0;b=b|0;var c=0;c=W_(b)|0;b=(ZB(a,b,c)|0)==(c|0);return (b?1:-1)|0}function aC(b,c){b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;a[e>>0]=c;b=(ZB(b,e,1)|0)==1;l=d;return (b?c:-1)|0}function bC(b){b=b|0;var d=0;d=c[b+36>>2]|0;if(((d|0)!=0?(a[b+144>>0]|0)==0:0)?(c[(c[b>>2]|0)+104>>2]|0)==0:0)b=w1(d)|0;else b=0;return b|0}function cC(a){a=a|0;var b=0,d=0;b=c[a+76>>2]|0;if(b|0?(d=c[b+4>>2]|0,d|0):0)tb[d&127](a);bC(a)|0;return}function dC(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=c[a+76>>2]|0;if(c[a+152>>2]&1024|0){ub[c[(c[a+12>>2]|0)+16>>2]&63](95209,e);Sa(1)}if((d|0)!=0?(b=c[d+8>>2]|0,(b|0)!=0):0)tb[b&127](a);else{bC(a)|0;eC(a)}l=e;return}function eC(b){b=b|0;var d=0,e=0,f=0;d=b+32|0;if((c[d>>2]|0?(e=b+36|0,f=c[e>>2]|0,(f|0)!=(c[15653]|0)):0)?(a[b+144>>0]|0)==0:0){if(f|0){s1(f)|0;c[e>>2]=0}c[d>>2]=0}return}function fC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+1056|0;f=i;h=i+24|0;g=i+8|0;c[g>>2]=d;e=q0(h,1024,b,g)|0;if((e|0)>=0){if((e|0)>1023){e=vH(e+1|0)|0;c[g>>2]=d;f=e;e=Z0(e,b,g)|0}else f=h;ZB(a,f,e)|0;if((f|0)!=(h|0))D_(f)}else{c[f>>2]=c$(c[(O_()|0)>>2]|0)|0;Pw(1,95226,f)|0}l=i;return}function gC(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=hC(e,b)|0;ZB(a,f,c[e>>2]|0)|0;l=d;return}function hC(b,d){b=b|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(d<-1.0e15))if(!(d>1.0e15)){d=d*1.0e4;f=~~((d<0.0?-.5:.5)+d);if(!f){f=135312;e=1}else{l=(f|0)<0;k=4;i=0;e=191746;f=l?0-f|0:f;while(1){if(!((f|0)!=0|(k|0)>0))break;g=(f|0)%10|0;j=(f|0)/10|0;h=e+-1|0;if((g|0)==0&i<<24>>24==0)f=0;else{a[h>>0]=g|48;f=1;e=h}if((k|0)==1)if(!(f<<24>>24))f=1;else{e=e+-1|0;a[e>>0]=46;f=1}k=k+-1|0;i=f;f=j}if(l){e=e+-1|0;a[e>>0]=45}f=e;e=191746-e|0}}else{f=95241;e=18}else{f=95240;e=19}c[b>>2]=e;return f|0}function iC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=hC(e,+h[b>>3])|0;ZB(a,f,c[e>>2]|0)|0;ZB(a,99578,1)|0;b=hC(e,+h[b+8>>3])|0;ZB(a,b,c[e>>2]|0)|0;l=d;return}function jC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g;e=0;while(1){h=b+(e<<4)|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];iC(a,f);e=e+1|0;if((e|0)>=(d|0))break;ZB(a,99578,1)|0}l=g;return}function kC(a,b){a=a|0;b=b|0;var d=0;d=uH(392)|0;if(d|0){c[d>>2]=20052;c[d+16>>2]=23;c[d+32>>2]=a;c[d+36>>2]=b}return d|0}function lC(a){a=a|0;var b=0,d=0,e=0,f=0;b=uH(392)|0;d=b;e=a;f=d+40|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));f=b+60|0;e=a+60|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];f=b+80|0;e=a+80|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];return b|0}function mC(a){a=a|0;tC(a);D_(a);return}function nC(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+160|0;d=c[e>>2]|0;if(d){e=c[46228]|0;if(e){d=c[e+4>>2]|0;if(!d){d=uH(632)|0;c[(c[46228]|0)+4>>2]=d}}}else{d=uH(632)|0;c[e>>2]=d;c[a+164>>2]=d}c[46228]=d;c[d+32>>2]=b;c[d>>2]=a;return}function oC(a,b){a=a|0;b=b|0;var d=0,e=0;e=a+160|0;d=c[e>>2]|0;if(d){e=c[46229]|0;if(e){d=c[e+4>>2]|0;if(!d){d=uH(632)|0;c[(c[46229]|0)+4>>2]=d}}}else{d=uH(632)|0;c[e>>2]=d;c[a+164>>2]=d}c[46229]=d;c[d+52>>2]=b;c[d>>2]=a;return (wC(a,3,b)|0)!=0|0}function pC(a){a=a|0;var b=0;b=c[a+160>>2]|0;c[a+164>>2]=b;return b|0}function qC(a){a=a|0;var b=0,d=0,e=0;a=a+164|0;b=c[a>>2]|0;d=c[b+4>>2]|0;if(d|0?(e=d+52|0,(c[e>>2]|0)==0):0)c[e>>2]=c[b+52>>2];c[a>>2]=d;return d|0}function rC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+8|0;f=b+10|0;if((c[e>>2]|0)>(b|0))a=c[a>>2]|0;else{c[e>>2]=f;f=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=f;a=f}c[a+(b<<2)>>2]=d;return}function sC(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0)D_(b);c[a>>2]=0;c[a+8>>2]=0;c[a+4>>2]=0;return}function tC(a){a=a|0;var b=0,d=0,e=0;d=a+160|0;b=c[d>>2]|0;while(1){if(!b)break;e=c[b+4>>2]|0;sC(b+604|0);sC(b+592|0);D_(c[b+584>>2]|0);D_(c[b+588>>2]|0);D_(b);b=e}c[46229]=0;c[46228]=0;c[a+192>>2]=0;c[a+164>>2]=0;c[d>>2]=0;c[a+28>>2]=0;return}function uC(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;k=n+64|0;m=n;U0(k,e,63)|0;i=A$(k,58)|0;if(i|0)a[i>>0]=0;b=b+60+(d<<2)|0;while(1){d=c[b>>2]|0;if(!d){d=b;b=0;break}U0(m,c[d+4>>2]|0,63)|0;d=A$(m,58)|0;if(d|0)a[d>>0]=0;if((b$(k,m)|0)<1){j=9;break}b=c[b>>2]|0}while(1){if((j|0)==9){d=b;b=c[b>>2]|0}if(!b)break;U0(m,c[b+4>>2]|0,63)|0;b=A$(m,58)|0;if(b|0)a[b>>0]=0;if(b$(k,m)|0)break;b=c[d>>2]|0;if((c[b+8>>2]|0)<=(f|0))break;j=9}m=vH(20)|0;c[m>>2]=c[d>>2];c[d>>2]=m;c[m+4>>2]=e;c[m+8>>2]=f;c[m+12>>2]=g;c[m+16>>2]=h;l=n;return 1}function vC(a,b){a=a|0;b=b|0;b=l;l=l+16|0;Pw(1,95321,b)|0;l=b;return 0}function wC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+144|0;r=s;o=s+80|0;p=s+16|0;n=(d+-3|0)>>>0<2?0:d;U0(o,e,63)|0;e=A$(o,58)|0;if(e){f=e+1|0;a[e>>0]=0;e=A$(f,58)|0;if(!e)m=0;else{a[e>>0]=0;m=e+1|0}}else{m=0;f=0}i=(f|0)!=0;j=(m|0)==0;k=(n|0)==(d|0);h=b+60+(d<<2)|0;a:while(1){e=c[h>>2]|0;if(!e){e=0;break}U0(p,c[e+4>>2]|0,63)|0;e=A$(p,58)|0;if(!e)e=0;else{a[e>>0]=0;e=e+1|0}do if(!(b$(p,o)|0)){g=(e|0)!=0;if(i&g?b$(e,f)|0:0)break;if(!j?b$(m,c[(c[(c[h>>2]|0)+12>>2]|0)+8>>2]|0)|0:0)break;if(k|g^1){q=16;break a}if(wC(b,n,e)|0){q=16;break a}}while(0);h=c[h>>2]|0}do if((q|0)==16){e=c[h>>2]|0;if(e){f=e+16|0;if((c[f>>2]|0)==0?(vC(0,0)|0,(c[f>>2]|0)==0):0){e=0;break}if((c[b+8>>2]|0)>0){q=c[15686]|0;o=c[e+4>>2]|0;p=c[(c[e+12>>2]|0)+8>>2]|0;c[r>>2]=c[20064+(d<<2)>>2];c[r+4>>2]=o;c[r+8>>2]=p;g1(q,95352,r)|0}}else e=0}while(0);c[b+80+(d<<2)>>2]=e;l=s;return e|0}function xC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;do if(!e)e=0;else{if(c[5021]|0){Tw(184920,0,0);c[5021]=0}h=n1(e)|0;e=A$(h,58)|0;if(e){a[e>>0]=0;f=b+60+(d<<2)|0;e=1;g=f;while(1){b=c[g>>2]|0;if(!b)break;d=n1(c[b+4>>2]|0)|0;b=A$(d,58)|0;if(b|0)a[b>>0]=0;if(!((a[h>>0]|0)!=0?(O$(h,d)|0)!=0:0)){e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}c[46231]=e+1;a[e>>0]=32;Ww(184920,c[(c[g>>2]|0)+4>>2]|0)|0;e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}c[46231]=e+1;a[e>>0]=58;Ww(184920,c[(c[(c[g>>2]|0)+12>>2]|0)+8>>2]|0)|0;e=0}D_(d);g=c[g>>2]|0}D_(h);if(e<<24>>24){g=0;i=19}}else{D_(h);g=0;f=b+60+(d<<2)|0;e=1;i=19}if((i|0)==19){while(1){b=c[f>>2]|0;if(!b)break;d=n1(c[b+4>>2]|0)|0;b=A$(d,58)|0;if(b|0)a[b>>0]=0;if(!((g|0)!=0?(O$(g,d)|0)==0:0)){e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}c[46231]=e+1;a[e>>0]=32;Ww(184920,d)|0;e=0}g=d;f=c[f>>2]|0;i=19}if(e<<24>>24){e=191979;break}}e=c[46231]|0;if(e>>>0>=(c[46232]|0)>>>0){Uw(184920,1)|0;e=c[46231]|0}a[e>>0]=0;e=c[46230]|0;c[46231]=e}while(0);return e|0}function yC(b){b=b|0;var d=0;if(!b)qa(108182,95369,573,95383);if(!(a[b>>0]|0))qa(108187,95369,574,95383);d=c[46234]|0;if(!d)b=0;else b=nb[c[d>>2]&63](d,b,512)|0;return b|0}function zC(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;if(!b)qa(108230,95369,589,95400);g=b+8|0;e=c[g>>2]|0;if(!e)qa(108233,95369,590,95400);if(!(a[e>>0]|0))qa(108242,95369,591,95400);h=b+20|0;f=c[h>>2]|0;do if(!f){d=ZL(e)|0;if(!d){c[i>>2]=c[g>>2];Pw(0,95424,i)|0;d=0;break}i=L1(d,135739)|0;c[h>>2]=i;if(!i){c[j>>2]=c$(c[(O_()|0)>>2]|0)|0;c[j+4>>2]=d;Pw(0,95449,j)|0;d=0;break}d=c[46235]|0;if((d|0)>49){a[b+17>>0]=1;d=1;break}else{c[46235]=d+1;d=1;break}}else{Z1(f,0,0)|0;if(!(c[h>>2]|0))qa(95470,95369,614,95400);else d=1}while(0);l=k;return d|0}function AC(b){b=b|0;var d=0,e=0;if(a[b+17>>0]|0?(d=b+20|0,e=c[d>>2]|0,e|0):0){s1(e)|0;c[d>>2]=0}return}function BC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0;if(!b){e=-1;d=-1}else{e=c[b+48>>2]|0;f=+(e|0);if(!e){g=+h[d>>3];f=+h[d+8>>3]}else{h[d+8>>3]=f;h[d>>3]=f;g=f}e=~~(+((c[b+40>>2]|0)*72|0)/g);d=~~(+((c[b+44>>2]|0)*72|0)/f)}c[a>>2]=e;c[a+4>>2]=d;return}function CC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0.0;m=l;l=l+48|0;f=m+16|0;j=m;k=m+32|0;if((e|0)!=0?(a[e>>0]|0)!=0:0){if((0==0?(g=c[46362]|0,(c[46236]|0)!=(g|0)):0)?(c[46236]=g,i=c[46234]|0,i|0):0){yw(i)|0;c[46234]=0}n=+h[(c[(c[d+16>>2]|0)+8>>2]|0)+24>>3];n=!(n>=1.0)?96.0:n;h[j+8>>3]=n;h[j>>3]=n;d=DC(e)|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];BC(k,d,f);d=c[k>>2]|0;f=c[k+4>>2]|0}else{d=-1;f=-1}c[b>>2]=d;c[b+4>>2]=f;l=m;return}function DC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=f;if(!a)qa(108182,95369,638,95476);if(!(c[46234]|0))c[46234]=Cw(20088,c[4563]|0)|0;b=yC(a)|0;a:do if(!b){b=uH(64)|0;if(!b)b=0;else{d=b+8|0;c[d>>2]=Oz(0,a)|0;if(!((zC(b)|0)<<24>>24)){EC(b);b=0;break}if(!(c[b+20>>2]|0))qa(95470,95369,653,95476);do switch(FC(b)|0){case 0:{a=VJ(c[d>>2]|0)|0;c[b+52>>2]=a;if(!a){c[e>>2]=c[d>>2];Pw(0,95493,e)|0;EC(b);b=0;break a}break}case 2:{GC(b);break}case 3:{HC(b);break}case 1:{IC(b);break}case 4:{JC(b);break}case 6:{KC(b);break}case 11:{LC(b);break}case 8:{MC(b);break}case 5:{NC(b);break}case 12:{OC(b);break}default:{}}while(0);AC(b);e=c[46234]|0;nb[c[e>>2]&63](e,b,1)|0}}else AC(b);while(0);l=f;return b|0}function EC(a){a=a|0;var b=0;b=c[a+8>>2]|0;if(b|0)Qz(0,b)|0;D_(a);return}function FC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+224|0;f=j+200|0;g=j;h=a+20|0;b=c[h>>2]|0;a:do if((b|0)!=0?(g3(f,1,20,b)|0)==20:0){d=0;while(1){if(d>>>0>=10){i=13;break a}if(!(L0(f,c[20124+(d<<4)>>2]|0,c[20124+(d<<4)+4>>2]|0)|0))break;d=d+1|0}e=a+28|0;c[e>>2]=c[20124+(d<<4)+12>>2];b=c[20124+(d<<4)+8>>2]|0;a=a+24|0;c[a>>2]=b;switch(d|0){case 7:break;case 8:{if(L0(f+8|0,95709,4)|0)break a;c[e>>2]=95714;c[a>>2]=11;b=11;break a}default:break a}while(1){if(!(O0(g,200,c[h>>2]|0)|0)){i=11;break}if(!(L0(g,95704,4)|0)){i=8;break}}if((i|0)==8){c[e>>2]=98777;c[a>>2]=8;b=8;break}else if((i|0)==11){b=c[a>>2]|0;break}}else i=13;while(0);if((i|0)==13){c[a+28>>2]=95719;c[a+24>>2]=0;b=0}l=j;return b|0}function GC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f+4|0;d=f;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,6,0)|0;if((XC(c[e>>2]|0,2,b)|0)<<24>>24?(XC(c[e>>2]|0,2,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}l=f;return}function HC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f+4|0;d=f;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,16,0)|0;if((PC(c[e>>2]|0,4,b)|0)<<24>>24?(PC(c[e>>2]|0,4,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}l=f;return}function IC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;b=h+12|0;d=h+8|0;e=h+4|0;f=h;c[a+48>>2]=0;g=a+20|0;Z1(c[g>>2]|0,16,0)|0;if((((XC(c[g>>2]|0,2,b)|0)<<24>>24?(XC(c[g>>2]|0,2,d)|0)<<24>>24:0)?(XC(c[g>>2]|0,2,e)|0)<<24>>24:0)?(XC(c[g>>2]|0,2,f)|0)<<24>>24:0){c[a+40>>2]=c[b>>2]<<16|c[d>>2];c[a+44>>2]=c[e>>2]<<16|c[f>>2]}l=h;return}function JC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;b=m+16|0;e=m+12|0;f=m+8|0;h=m+4|0;i=m;c[a+48>>2]=0;j=a+20|0;while(1){if(!((PC(c[j>>2]|0,1,b)|0)<<24>>24))break;d=c[b>>2]|0;if((d|0)==255)continue;if(A$(95692,d)|0)continue;if((d|0)==192){k=6;break}g=c[j>>2]|0;if((d|0)==194){k=11;break}if(!((PC(g,2,e)|0)<<24>>24))break;Z1(c[j>>2]|0,(c[e>>2]|0)+-2|0,1)|0}if((k|0)==6){if(((PC(c[j>>2]|0,3,i)|0)<<24>>24?(PC(c[j>>2]|0,2,f)|0)<<24>>24:0)?(PC(c[j>>2]|0,2,h)|0)<<24>>24:0){c[a+44>>2]=c[f>>2];c[a+40>>2]=c[h>>2]}}else if((((k|0)==11?(PC(g,3,i)|0)<<24>>24:0)?(PC(c[j>>2]|0,2,f)|0)<<24>>24:0)?(PC(c[j>>2]|0,2,h)|0)<<24>>24:0){c[a+44>>2]=c[f>>2];c[a+40>>2]=c[h>>2]}l=m;return}function KC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+1056|0;j=m;b=m+32|0;e=m+28|0;f=m+24|0;g=m+20|0;h=m+16|0;c[a+48>>2]=72;i=a+20|0;Z1(c[i>>2]|0,0,0)|0;while(1){if(!(O0(b,1024,c[i>>2]|0)|0))break;d=P0(b,95677)|0;if(!d)continue;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=g;c[j+12>>2]=h;if((N1(d,101285,j)|0)==4){k=5;break}}if((k|0)==5){j=c[e>>2]|0;c[a+32>>2]=j;k=c[f>>2]|0;c[a+36>>2]=k;c[a+40>>2]=(c[g>>2]|0)-j;c[a+44>>2]=(c[h>>2]|0)-k}l=m;return}function LC(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;b=g+4|0;d=g;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,15,0)|0;h=(m3(c[e>>2]|0)|0)==88;f=c[e>>2]|0;if(h){Z1(f,24,0)|0;if((XC(c[e>>2]|0,4,b)|0)<<24>>24?(XC(c[e>>2]|0,4,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}}else{Z1(f,26,0)|0;if((XC(c[e>>2]|0,2,b)|0)<<24>>24?(XC(c[e>>2]|0,2,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}}l=g;return}function MC(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+352|0;C=F+80|0;B=F+72|0;E=F+64|0;D=F+56|0;A=F+48|0;d=F+40|0;s=F+32|0;t=F+24|0;u=F+16|0;v=F+8|0;w=F;x=F+328|0;y=F+128|0;z=F+96|0;if(!(c[46237]|0)){if(o2(184952,95562,1)|0){c[d>>2]=95562;Pw(1,95589,d)|0}c[46237]=184952}m=b+20|0;Z1(c[m>>2]|0,0,0)|0;n=z+12|0;o=z+20|0;p=z+8|0;q=z+16|0;r=z+4|0;d=0;g=0;f=0;e=0;a:while(1){if(!(O0(y,200,c[m>>2]|0)|0))break;if(g<<24>>24==0|d<<24>>24==0){i=y;k=e}else break;b:while(1){j=f;c:while(1){while(1){if(a3(184952,i,4,z,0)|0){f=j;e=k;continue a}a[i+(c[n>>2]|0)>>0]=0;a[i+(c[o>>2]|0)>>0]=0;e=i+(c[p>>2]|0)|0;f=i+(c[q>>2]|0)|0;i=i+((c[r>>2]|0)+1)|0;if(!(b$(e,138034)|0))break;if(!(b$(e,137966)|0))break c;if(b$(e,95636)|0)continue;c[C>>2]=t;c[C+4>>2]=u;c[C+8>>2]=v;c[C+12>>2]=w;if((N1(f,95644,C)|0)==4)break b}c[A>>2]=s;c[A+4>>2]=x;if((N1(f,95626,A)|0)!=2){c[D>>2]=s;if((N1(f,98183,D)|0)==1){e=1;f=WC(+h[s>>3],95633)|0}else{e=g;f=j}}else{e=1;f=WC(+h[s>>3],x)|0}if(!(d<<24>>24)){d=0;g=e;j=f}else{g=e;e=k;continue a}}c[E>>2]=s;c[E+4>>2]=x;if((N1(f,95626,E)|0)!=2){c[B>>2]=s;if((N1(f,98183,B)|0)==1){d=1;e=WC(+h[s>>3],95633)|0}else e=k}else{d=1;e=WC(+h[s>>3],x)|0}if(!(g<<24>>24)){g=0;f=j;k=e}else{f=j;continue a}}d=1;g=1;f=~~(+h[v>>3]+1.0-+h[t>>3])>>>0;e=~~(+h[w>>3]+1.0-+h[u>>3])>>>0}c[b+48>>2]=0;c[b+40>>2]=f;c[b+44>>2]=e;l=F;return}function NC(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0;d=l;l=l+32|0;b=d;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,0,0)|0;if(!(QC(c[e>>2]|0,b)|0)){g=+h[b>>3];c[a+32>>2]=~~g;f=+h[b+8>>3];c[a+36>>2]=~~f;c[a+40>>2]=~~(+h[b+16>>3]-g);c[a+44>>2]=~~(+h[b+24>>3]-f)}l=d;return}function OC(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f+4|0;d=f;c[a+48>>2]=0;e=a+20|0;Z1(c[e>>2]|0,6,0)|0;if((PC(c[e>>2]|0,1,b)|0)<<24>>24?(PC(c[e>>2]|0,1,d)|0)<<24>>24:0){c[a+40>>2]=c[b>>2];c[a+44>>2]=c[d>>2]}l=f;return}function PC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;c[d>>2]=0;e=0;while(1){if(e>>>0>=b>>>0){e=1;break}f=m3(a)|0;if(r1(a)|0){e=0;break}c[d>>2]=c[d>>2]<<8|f;e=e+1|0}return e|0}function QC(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+1040|0;d=h;e=h+16|0;while(1){if(!(O0(e,1024,a)|0)){a=1;break}f=P0(e,95552)|0;if(f|0){g=4;break}}if((g|0)==4){c[d+4>>2]=e;c[d>>2]=f+9;c[d+8>>2]=a;a=RC(d,b)|0}l=h;return a|0}function RC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+1024|0;f=g;SC(b);e=a[c[b>>2]>>0]|0;if(!(e<<24>>24))e=(TC(b)|0)&255;else e=e<<24>>24;if((((e|0)==91?(c[b>>2]=(c[b>>2]|0)+1,UC(b,f),(VC(f,d)|0)==0):0)?(UC(b,f),(VC(f,d+8|0)|0)==0):0)?(UC(b,f),(VC(f,d+16|0)|0)==0):0){UC(b,f);e=(VC(f,d+24|0)|0)!=0&1}else e=1;l=g;return e|0}function SC(b){b=b|0;var d=0;d=c[b>>2]|0;while(1){d=a[d>>0]|0;if(!(d<<24>>24))d=(TC(b)|0)&255;else d=d<<24>>24;if(!((d&255)<<24>>24))break;if(!(B$(d&255)|0))break;d=(c[b>>2]|0)+1|0;c[b>>2]=d}return}function TC(b){b=b|0;var d=0;d=b+4|0;if(!(O0(c[d>>2]|0,1024,c[b+8>>2]|0)|0))b=0;else{d=c[d>>2]|0;c[b>>2]=d;b=a[d>>0]|0}return b|0}function UC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;SC(b);e=0;f=c[b>>2]|0;while(1){f=a[f>>0]|0;if(!(f<<24>>24))g=(TC(b)|0)&255;else g=f<<24>>24;f=g<<24>>24;if(!f)break;if(!((f|0)==46|(f+-48|0)>>>0<10))break;a[d+e>>0]=g;e=e+1|0;f=(c[b>>2]|0)+1|0;c[b>>2]=f;if((e|0)==1023){e=1023;break}}a[d+e>>0]=0;return}function VC(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=l;l=l+16|0;f=e;d=+c2(a,f);if((c[f>>2]|0)==(a|0))a=1;else{h[b>>3]=d;a=0}l=e;return a|0}function WC(a,b){a=+a;b=b|0;var c=0.0;do if(!(b$(b,95660)|0)){a=a*72.0;c=a;a=a>=0.0?.5:-.5}else{if(!(b$(b,95663)|0)){a=a*.75;c=a;a=a>=0.0?.5:-.5;break}if(!(b$(b,95666)|0)){a=a*12.0;c=a;a=a>=0.0?.5:-.5;break}if(b$(b,95633)|0?b$(b,95669)|0:0)if(!(b$(b,95671)|0)){a=a*28.346456664;c=a;a=a>=0.0?.5:-.5;break}else{b=(b$(b,95674)|0)==0;c=a*2.8346456663999997;return (b?~~(c+(c>=0.0?.5:-.5)):0)|0}c=a>=0.0?.5:-.5}while(0);return ~~(a+c)|0}function XC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;c[d>>2]=0;e=0;while(1){if(e>>>0>=b>>>0){e=1;break}f=m3(a)|0;if(r1(a)|0){e=0;break}c[d>>2]=c[d>>2]|f<<(e<<3);e=e+1|0}return e|0}function YC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=c[b+20>>2]|0;if(a|0)s1(a)|0;if(c[b+52>>2]|0?(e=c[b+60>>2]|0,e|0):0)tb[e&127](b);D_(b);return}function ZC(){var a=0;nx(0,1,105198,102467)|0;a=kC(0,1)|0;LP(a,0);return a|0}function _C(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0;k=l;l=l+304|0;j=k+24|0;i=k+8|0;f=k;g=k+40|0;if((UB(b,e)|0)!=999)if((VB(b,d)|0)==-1)b=-1;else{b=c[d+16>>2]|0;e=b+16|0;if(!(a[(c[b+8>>2]|0)+81>>0]|0)){p=+h[e>>3];o=+h[b+24>>3];n=+h[b+32>>3];m=+h[b+40>>3];c[j>>2]=~~(p+(p>=0.0?.5:-.5));c[j+4>>2]=~~(o+(o>=0.0?.5:-.5));c[j+8>>2]=~~(n+(n>=0.0?.5:-.5));c[j+12>>2]=~~(m+(m>=0.0?.5:-.5));Y0(g,95873,j)|0}else{m=+h[b+24>>3];n=+h[e>>3];o=+h[b+40>>3];p=+h[b+32>>3];c[i>>2]=~~(m+(m>=0.0?.5:-.5));c[i+4>>2]=~~(n+(n>=0.0?.5:-.5));c[i+8>>2]=~~(o+(o>=0.0?.5:-.5));c[i+12>>2]=~~(p+(p>=0.0?.5:-.5));Y0(g,95873,i)|0}Ax(d,99645,g,191979)|0;b=0}else{b=xC(b,1,e)|0;c[f>>2]=e;c[f+4>>2]=b;Pw(1,95824,f)|0;b=-1}l=k;return b|0}function $C(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;f=c[b+60>>2]|0;oC(a,d)|0;b=c[a+164>>2]|0;c[b+56>>2]=uO(b,c[b+52>>2]|0)|0;if((Az(f,134401,0,1)|0)!=0?(c[(c[f+16>>2]|0)+8>>2]|0)!=0:0)h=5;else if(!(c[b+152>>2]&67108864)){Sw(95885,g);b=-1}else h=5;if((h|0)==5){c[b+36>>2]=e;if(!e){h=b+152|0;c[h>>2]=c[h>>2]|134217728}h=DG(a,f)|0;wO(b);tC(a);b=h}l=i;return b|0}function aD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;f=c[b+60>>2]|0;oC(a,d)|0;b=c[a+164>>2]|0;c[b+56>>2]=uO(b,c[b+52>>2]|0)|0;if((Az(f,134401,0,1)|0)!=0?(c[(c[f+16>>2]|0)+8>>2]|0)!=0:0)h=5;else if(!(c[b+152>>2]&67108864)){Sw(95885,g);b=-1}else h=5;if((h|0)==5){nC(a,e);h=DG(a,f)|0;wO(b);dC(b);tC(a);b=h}l=i;return b|0}function bD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;h=m+8|0;g=m;b=c[b+60>>2]|0;oC(a,d)|0;j=c[a+164>>2]|0;c[j+56>>2]=uO(j,c[j+52>>2]|0)|0;if((Az(b,134401,0,1)|0)!=0?(c[(c[b+16>>2]|0)+8>>2]|0)!=0:0)k=5;else if(!(c[j+152>>2]&67108864)){Sw(95885,g);b=-1}else k=5;do if((k|0)==5){if(e|0?(i=C_(4096)|0,c[e>>2]=i,i|0):0){g=j+40|0;c[g>>2]=i;c[j+44>>2]=4096;d=j+48|0;c[d>>2]=0;b=DG(a,b)|0;wO(j);if(!b){c[e>>2]=c[g>>2];c[f>>2]=c[d>>2]}tC(a);break}Pw(1,95906,h)|0;b=-1}while(0);l=m;return b|0}function cD(a,b){a=a|0;b=b|0;JP(a,0,b);return}function dD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+4288|0;E=H+8|0;D=H;F=4;G=C_(40)|0;c[G>>2]=0;A=H+4152|0;B=H+4148|0;C=H+4128|0;j=H+4112|0;k=H+16|0;o=0;i=$(24,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;a:do if((h|0)!=1){if(!i){c[d>>2]=0;g=0;break}o=0;n=ca(26,e|0,B|0,A|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){o=0;m=$(23,40)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){o=0;na(7,C|0,j|0,k|0,24,83);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){o=0;e=$(25,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)!=1){j=C+16|0;i=c[j>>2]|0;g=e;while(1){if(!g)break;o=0;aa(i|0,g|0,0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){y=0;x=j;w=m;v=n;g=z;m=15;break a}o=0;g=aa(84,b|0,g|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){y=0;x=j;w=m;v=n;g=z;m=15;break a}}G=D3(184984,1,G|0,F|0)|0;F=z;o=0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){y=m;x=j;w=m;v=n;g=z;m=15}else{y=m;x=j;w=m;v=n;g=0;m=15}}else{y=0;x=0;w=m;v=n;g=z;m=15}}else{y=0;x=0;w=m;v=n;g=z;m=15}}else{y=0;x=0;w=m;v=n;g=z;m=15}}else{y=0;x=0;w=0;v=n;g=z;m=15}}else{y=0;x=0;w=0;v=0;g=z;m=15}while(0);do if((m|0)==15){b:while(1){c:do if(!g){o=0;e=$(25,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}u=v+(c[B>>2]|0)|0;k=0;m=0;j=0;while(1){if(!e)break;o=0;g=aa(c[x>>2]|0,e|0,-1)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){i=E3(c[h>>2]|0,G|0,F|0)|0;if(!i)bb(h|0,p|0);z=p}else i=-1;if((i|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}if((g|0)==0?(a[(c[e+16>>2]|0)+119>>0]|0)==3:0){if(!m){o=0;c[D>>2]=j;ca(27,u|0,134313,D|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;i=ca(28,b|0,v|0,1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;da(53,i|0,134401,280,1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}c[y+(j<<2)>>2]=i;k=1;j=j+1|0}else i=m;o=0;da(54,b|0,e|0,i|0,C|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}}else i=m;o=0;e=aa(84,b|0,e|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}m=i}o=0;e=$(25,b|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}i=10;n=y;q=w;r=w;t=w;while(1){if(!e){m=0;i=r;e=t;break c}o=0;g=aa(c[x>>2]|0,e|0,-1)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){m=E3(c[h>>2]|0,G|0,F|0)|0;if(!m)bb(h|0,p|0);z=p}else m=-1;if((m|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}if(!g){o=0;c[E>>2]=j;ca(27,u|0,134313,E|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;s=ca(28,b|0,v|0,1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;da(53,s|0,134401,280,1)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){g=E3(c[h>>2]|0,G|0,F|0)|0;if(!g)bb(h|0,p|0);z=p}else g=-1;if((g|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}o=0;da(54,b|0,e|0,s|0,C|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}if((j|0)==(i|0)){i=j<<1;o=0;m=aa(85,q|0,j<<3|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}g=m;q=m;r=m;h=m}else{g=n;h=t}c[g+(j<<2)>>2]=s;n=g;j=j+1|0;m=h}else m=t;o=0;e=aa(84,b|0,e|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}t=m}}else{m=1;k=0;n=y;j=0;i=w;e=w}while(0);o=0;ia(105,C|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue}if((v|0)!=(A|0)){o=0;ia(103,v|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue}}if(!m){o=0;g=aa(85,e|0,j<<2|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue}else{m=58;break}}c[d>>2]=0;g=0;while(1){if((g|0)>=(j|0))break;o=0;$(26,c[n+(g<<2)>>2]|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){e=E3(c[h>>2]|0,G|0,F|0)|0;if(!e)bb(h|0,p|0);z=p}else e=-1;if((e|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15;continue b}g=g+1|0}o=0;ia(103,i|0);g=o;o=0;if((g|0)!=0&(p|0)!=0){h=E3(c[g>>2]|0,G|0,F|0)|0;if(!h)bb(g|0,p|0);z=p}else h=-1;if((h|0)==1){s=v;t=w;u=x;m=y;g=z;v=s;w=t;x=u;y=m;m=15}else{m=56;break}}if((m|0)==56){g=0;break}else if((m|0)==58){c[d>>2]=j;a[f>>0]=k;break}}while(0);D_(G|0);l=H;return g|0}function eD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if(!((a|0)!=0?(nD(a)|0)!=0:0))a=95962;e=W_(a)|0;if((e|0)>=104){d=vH(e+25|0)|0;if(!d)d=0;else f=6}else f=6;if((f|0)==6){b0(d,a)|0;c[b>>2]=e}return d|0}function fD(a,b){a=a|0;b=b|0;Xy(b,a,1)|0;return}function gD(b,d){b=b|0;d=d|0;var e=0;b=(c[b+16>>2]|0)+157|0;e=a[b>>0]|0;if((d|0)>=0)a[b>>0]=d;return e|0}function hD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[b>>2]=d;c[b+4>>2]=d+4096;c[b+12>>2]=0;c[b+8>>2]=0;c[a>>2]=b;c[a+4>>2]=b;c[a+8>>2]=d;c[a+12>>2]=e;c[a+16>>2]=f;return}function iD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;lD(e,b);i=e+12|0;j=e+16|0;b=0;a:while(1){k=mD(e)|0;if(!k)break;b=b+1|0;f=c[i>>2]|0;if(f|0)ub[f&63](k,d);h=Jx(a,k)|0;while(1){if(!h)continue a;g=c[h>>2]&3;f=c[((g|0)==3?h:h+48|0)+40>>2]|0;if((f|0)==(k|0))f=c[((g|0)==2?h:h+-48|0)+40>>2]|0;if(!(lb[c[j>>2]&127](f,-1)|0))lD(e,f);h=Kx(a,h,k)|0}}return b|0}function jD(a){a=a|0;var b=0;a=c[(c[a>>2]|0)+12>>2]|0;while(1){if(!a)break;b=c[a+12>>2]|0;kD(a);a=b}return}function kD(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function lD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;f=k;g=a+8|0;i=a+4|0;d=c[i>>2]|0;if((c[g>>2]|0)==(c[d+4>>2]|0)){d=c[d+12>>2]|0;do if(!d){e=vH(16)|0;if(!e){Pw(1,95943,f)|0;bb(184984,1)}c[e+8>>2]=c[i>>2];c[e+12>>2]=0;d=vH(4e6)|0;c[e>>2]=d;if(!d){Pw(1,95943,j)|0;bb(184984,1)}else{c[e+4>>2]=d+4e6;c[(c[i>>2]|0)+12>>2]=e;h=e;break}}else h=d;while(0);c[i>>2]=h;c[g>>2]=c[h>>2]}lb[c[a+16>>2]&127](b,1)|0;j=c[g>>2]|0;c[g>>2]=j+4;c[j>>2]=b;l=k;return}function mD(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+8|0;b=c[f>>2]|0;d=a+4|0;e=c[d>>2]|0;if((b|0)==(c[e>>2]|0))if((e|0)==(c[a>>2]|0))b=0;else{b=c[e+8>>2]|0;c[d>>2]=b;b=c[b+4>>2]|0;c[f>>2]=b;g=4}else g=4;if((g|0)==4){b=b+-4|0;c[f>>2]=b;b=c[b>>2]|0}return b|0}function nD(b){b=b|0;var c=0;a:while(1){c=b;b=b+1|0;c=a[c>>0]|0;switch(c<<24>>24){case 95:continue a;case 0:{b=1;break a}default:{}}if(!(M$(c&255)|0)){b=0;break}}return b|0}function oD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0;B=l;l=l+4272|0;x=B;y=4;A=C_(40)|0;c[A>>2]=0;u=B+4144|0;v=B+4140|0;w=B+4120|0;h=B+4104|0;i=B+8|0;o=0;f=$(24,a|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){e=E3(c[g>>2]|0,A|0,y|0)|0;if(!e)bb(g|0,p|0);z=p}else e=-1;a:do if((e|0)!=1)if(f){o=0;k=ca(26,d|0,v|0,u|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){o=0;j=$(23,40)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){o=0;na(7,w|0,h|0,i|0,24,83);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){o=0;f=$(25,a|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1){h=w+16|0;g=c[h>>2]|0;e=f;while(1){if(!e)break;o=0;aa(g|0,e|0,0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=E3(c[d>>2]|0,A|0,y|0)|0;if(!f)bb(d|0,p|0);z=p}else f=-1;if((f|0)==1){t=h;s=j;r=k;e=z;j=14;break a}o=0;e=aa(84,a|0,e|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=E3(c[d>>2]|0,A|0,y|0)|0;if(!f)bb(d|0,p|0);z=p}else f=-1;if((f|0)==1){t=h;s=j;r=k;e=z;j=14;break a}}A=D3(184984,1,A|0,y|0)|0;y=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){t=h;s=j;r=k;e=z;j=14}else{t=h;s=j;r=k;e=0;j=14}}else{t=0;s=j;r=k;e=z;j=14}}else{t=0;s=j;r=k;e=z;j=14}}else{t=0;s=j;r=k;e=z;j=14}}else{t=0;s=0;r=k;e=z;j=14}}else{d=0;e=0}else{t=0;s=0;r=0;e=z;j=14}while(0);b:do if((j|0)==14){c:while(1){if(e|0){o=0;ia(105,w|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}o=0;ia(103,s|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}if((r|0)==(u|0)){d=0;e=0;break b}o=0;ia(103,r|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}else{j=19;break}}o=0;f=$(25,a|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,A|0,y|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}q=r+(c[v>>2]|0)|0;h=10;k=s;e=0;j=s;n=s;while(1){if(!f)break;o=0;d=aa(c[t>>2]|0,f|0,-1)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,A|0,y|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}if(!d){o=0;c[x>>2]=e;ca(27,q|0,134313,x|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}o=0;m=ca(28,a|0,r|0,1)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}o=0;da(53,m|0,134401,280,1)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}o=0;da(54,a|0,f|0,m|0,w|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}if((e|0)==(h|0)){h=e<<1;o=0;i=aa(85,j|0,e<<3|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}g=i;j=i;d=i}else{g=k;d=n}c[g+(e<<2)>>2]=m;e=e+1|0;k=g;i=d}else i=n;o=0;f=aa(84,a|0,f|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){g=E3(c[d>>2]|0,A|0,y|0)|0;if(!g)bb(d|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue c}n=i}o=0;ia(105,w|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=E3(c[d>>2]|0,A|0,y|0)|0;if(!f)bb(d|0,p|0);z=p}else f=-1;if((f|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}o=0;d=aa(85,n|0,e<<2|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,A|0,y|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14;continue}if((r|0)==(u|0))break b;o=0;ia(103,r|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,A|0,y|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){n=r;q=s;j=t;e=z;r=n;s=q;t=j;j=14}else{j=39;break}}if((j|0)==19){d=0;e=0;break}else if((j|0)==39)break}while(0);c[b>>2]=e;D_(A|0);l=B;return d|0}function pD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=0;f=Sy(a)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;if(Xy(a,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,0)|0){Vx(a,e,1)|0;d=d+1|0}e=Gx(b,e)|0}f=Ty(a,f)|0}return d|0}function qD(a){a=a|0;a=yz(a,95967,0)|0;if(!a)qa(95972,95975,529,95984);else return c[a+8>>2]|0;return 0}function rD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=l;l=l+4320|0;s=u+24|0;r=u+8|0;q=u;t=u+4184|0;p=u+4160|0;f=u+40|0;if(ay(b)|0){Fz(b,0,95993,-12,0);Fz(b,1,96005,16,0);o=eD(e,f,t)|0;k=sD(b)|0;m=vH((ay(k)|0)<<2)|0;hD(p,u+4144|0,u+48|0,24,86);h=Sy(k)|0;n=p+16|0;i=o+(c[f>>2]|0)|0;j=c[15686]|0;e=0;while(1){if(!h)break;if(!(lb[c[n>>2]&127](h,-1)|0)){c[q>>2]=e;Y0(i,96907,q)|0;v=vA(k,o,1)|0;w=vA(b,o,1)|0;Az(w,95993,12,0)|0;a[(yz(w,95993,0)|0)+8>>0]=1;f=iD(k,h,v,p)|0;uD(v,w);g=vD(w)|0;wD(b,w);c[m+(e<<2)>>2]=w;dz(k,v)|0;if(0){c[r>>2]=e;c[r+4>>2]=f;c[r+8>>2]=g;g1(j,96017,r)|0}e=e+1|0}h=Ty(k,h)|0}if(0){r=ay(b)|0;v=by(b)|0;w=ry(b)|0;c[s>>2]=r;c[s+4>>2]=v;c[s+8>>2]=e;c[s+12>>2]=w;g1(j,96047,s)|0}$x(k)|0;Gz(b,0,95993);Gz(b,1,96005);jD(p);f=xH(m,e<<2)|0;if((o|0)!=(t|0))D_(o)}else{f=0;e=0}c[d>>2]=e;l=u;return f|0}function sD(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;a[h>>0]=a[18492]|0;a[h+1>>0]=a[18493]|0;a[h+2>>0]=a[18494]|0;a[h+3>>0]=a[18495]|0;h=Xx(96094,h,0)|0;zD(h,b);d=Sy(b)|0;while(1){if(!d)break;if(!(c[(yz(d,96005,0)|0)+12>>2]|0)){g=az(h,ry(d)|0,1)|0;Az(g,96005,16,1)|0;c[(c[g+16>>2]|0)+12>>2]=d;c[(yz(d,96005,0)|0)+12>>2]=g}d=Ty(b,d)|0}e=Sy(b)|0;while(1){if(!e)break;f=c[(yz(e,96005,0)|0)+12>>2]|0;d=Ex(b,e)|0;while(1){if(!d)break;g=c[(yz(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,96005,0)|0)+12>>2]|0;do if((g|0)!=(f|0))if(g>>>0>f>>>0){Rx(h,f,g,0,1)|0;break}else{Rx(h,g,f,0,1)|0;break}while(0);d=Gx(b,d)|0}e=Ty(b,e)|0}l=i;return h|0}function tD(b,d){b=b|0;d=d|0;var e=0;b=(c[b+16>>2]|0)+8|0;e=a[b>>0]|0;if((d|0)>=0)a[b>>0]=d;return e|0}function uD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=Sy(a)|0;while(1){if(!e)break;f=c[(c[e+16>>2]|0)+12>>2]|0;a:do if((c[f>>2]&3|0)==1)Xy(b,f,1)|0;else{d=Sy(f)|0;while(1){if(!d)break a;Xy(b,d,1)|0;d=Ty(f,d)|0}}while(0);e=Ty(a,e)|0}return}function vD(a){a=a|0;return pD(a,c[a+60>>2]|0)|0}function wD(a,b){a=a|0;b=b|0;xD(a,b,0);return}function xD(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=(d|0)==0;b=wA(b)|0;while(1){if(!b)break;if((a[(yz(b,95993,0)|0)+8>>0]|0)==0?(f=yD(b,c,d)|0,f|0):0){if(g)e=(z$(ry(b)|0,104980,7)|0)==0;else e=1;xD(b,f,e&1)}b=xA(b)|0}return}function yD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=0;g=Sy(a)|0;while(1){if(!g)break;f=az(b,ry(g)|0,0)|0;if(f){if(!e)e=vA(b,ry(a)|0,1)|0;Xy(e,f,1)|0}g=Ty(a,g)|0}if((d|0)!=0&(e|0)==0)e=vA(b,ry(a)|0,1)|0;if(e|0?(pD(e,a)|0,Bx(a,e)|0,(z$(ry(e)|0,104980,7)|0)==0):0)c[(Az(e,95967,12,0)|0)+8>>2]=a;return e|0}function zD(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+16|0;g=h;d=wA(b)|0;e=c[15686]|0;while(1){if(!d)break;a:do if(!(z$(ry(d)|0,104980,7)|0)){f=az(a,ry(d)|0,1)|0;Az(f,96005,16,1)|0;c[(c[f+16>>2]|0)+12>>2]=d;b=Sy(d)|0;while(1){if(!b)break a;if(c[(yz(b,96005,0)|0)+12>>2]|0){k=ry(b)|0;j=ry(d)|0;i=ry(c[(yz(b,96005,0)|0)+12>>2]|0)|0;c[g>>2]=k;c[g+4>>2]=j;c[g+8>>2]=i;g1(e,96097,g)|0}c[(yz(b,96005,0)|0)+12>>2]=f;b=Ty(d,b)|0}}else zD(a,d);while(0);d=xA(d)|0}l=h;return}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0.0;n=+h[a>>3];j=~~(n+(n>=0.0?.5:-.5));n=+h[a+8>>3];a=~~(n+(n>=0.0?.5:-.5));n=+h[b>>3];g=~~(n+(n>=0.0?.5:-.5));n=+h[b+8>>3];f=~~(n+(n>=0.0?.5:-.5));l=g-j|0;i=((l|0)>-1?l:0-l|0)<<1;l=l>>31|1;m=f-a|0;k=((m|0)>-1?m:0-m|0)<<1;m=m>>31|1;a:do if((i|0)>(k|0)){e=0-i|0;d=k-(i>>1)|0;b=j;while(1){BI(c,b,a);if((b|0)==(g|0))break a;j=(d|0)>-1;d=d+k+(j?e:0)|0;b=b+l|0;a=(j?m:0)+a|0}}else{e=0-k|0;d=j;b=i-(k>>1)|0;while(1){BI(c,d,a);if((a|0)==(f|0))break a;k=(b|0)>-1;d=(k?l:0)+d|0;b=b+i+(k?e:0)|0;a=a+m|0}}while(0);return}function BD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;j=n+4|0;do if((a|0)<1)d=0;else{f=e+16|0;if((c[f>>2]|0)>>>0<4){d=CD(a,b,d,e)|0;break}m=vH(a<<5)|0;d=0;while(1){if((d|0)==(a|0))break;g=c[b+(d<<2)>>2]|0;mM(g);h=m+(d<<5)|0;g=(c[g+16>>2]|0)+16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[h+16>>2]=c[g+16>>2];c[h+20>>2]=c[g+20>>2];c[h+24>>2]=c[g+24>>2];c[h+28>>2]=c[g+28>>2];d=d+1|0}if((c[f>>2]|0)==4){h=e+28|0;a:do if(c[h>>2]&2|0){f=e+24|0;c[f>>2]=uH(a<<2)|0;d=0;while(1){if((d|0)==(a|0))break a;g=xx(c[b+(d<<2)>>2]|0,96164)|0;if(g|0?(c[k>>2]=j,g=(N1(g,134313,k)|0)>0,i=c[j>>2]|0,g&(i|0)>-1):0)c[(c[f>>2]|0)+(d<<2)>>2]=i;d=d+1|0}}while(0);d=DD(a,m,e)|0;if(c[h>>2]&2)D_(c[e+24>>2]|0)}else d=0;D_(m)}while(0);l=n;return d|0}function CD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0;G=l;l=l+144|0;B=G+136|0;A=G+64|0;F=G+48|0;v=G+40|0;u=G;t=G+120|0;x=G+104|0;C=G+96|0;D=c[f+20>>2]|0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;a:do if((b|0)>=1){o=(D|0)==0;E=c[15686]|0;p=t+4|0;q=t+8|0;r=t+12|0;y=x+4|0;w=x+8|0;z=x+12|0;n=0;g=0;while(1){if((n|0)==(b|0))break;s=c[d+(n<<2)>>2]|0;mM(s);if(!o?(a[D+n>>0]|0)!=0:0){m=c[s+16>>2]|0;H=+h[m+16>>3];i=~~(H+(H>=0.0?.5:-.5));c[t>>2]=i;H=+h[m+24>>3];j=~~(H+(H>=0.0?.5:-.5));c[p>>2]=j;H=+h[m+32>>3];k=~~(H+(H>=0.0?.5:-.5));c[q>>2]=k;H=+h[m+40>>3];m=~~(H+(H>=0.0?.5:-.5));c[r>>2]=m;if(!g){c[x>>2]=c[t>>2];c[x+4>>2]=c[t+4>>2];c[x+8>>2]=c[t+8>>2];c[x+12>>2]=c[t+12>>2]}else{c[x>>2]=c[((c[x>>2]|0)>(i|0)?t:x)>>2];c[y>>2]=c[((c[y>>2]|0)>(j|0)?t:x)+4>>2];c[w>>2]=c[((c[w>>2]|0)<(k|0)?t:x)+8>>2];c[z>>2]=c[((c[z>>2]|0)<(m|0)?t:x)+12>>2]}g=g+1|0}if(0>2){m=ry(s)|0;s=c[s+16>>2]|0;K=+h[s+16>>3];J=+h[s+24>>3];I=+h[s+32>>3];H=+h[s+40>>3];c[u>>2]=m;h[u+8>>3]=K;h[u+16>>3]=J;h[u+24>>3]=I;h[u+32>>3]=H;g1(E,96231,u)|0}n=n+1|0}q=vH(b<<5)|0;g=0;while(1){if((g|0)==(b|0))break;u=q+(g<<5)|0;t=(c[(c[d+(g<<2)>>2]|0)+16>>2]|0)+16|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];c[u+16>>2]=c[t+16>>2];c[u+20>>2]=c[t+20>>2];c[u+24>>2]=c[t+24>>2];c[u+28>>2]=c[t+28>>2];g=g+1|0}o=f+8|0;p=GD(b,q,c[o>>2]|0)|0;if(0){c[v>>2]=p;g1(E,96259,v)|0}if((p|0)>=1){n=(D|0)!=0;if(n){i=((c[w>>2]|0)+(c[x>>2]|0)|0)/2|0;g=((c[z>>2]|0)+(c[y>>2]|0)|0)/2|0}else{i=0;g=0}c[C+4>>2]=g;c[C>>2]=i;m=uH(b<<4)|0;k=f+16|0;g=0;while(1){if((g|0)>=(b|0))break;i=c[d+(g<<2)>>2]|0;j=m+(g<<4)|0;c[m+(g<<4)+12>>2]=g;if((c[k>>2]|0)==3){x=(c[i+16>>2]|0)+16|0;y=c[o>>2]|0;z=ry(i)|0;c[A>>2]=c[x>>2];c[A+4>>2]=c[x+4>>2];c[A+8>>2]=c[x+8>>2];c[A+12>>2]=c[x+12>>2];c[A+16>>2]=c[x+16>>2];c[A+20>>2]=c[x+20>>2];c[A+24>>2]=c[x+24>>2];c[A+28>>2]=c[x+28>>2];c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];HD(A,j,p,y,B,z)}else{c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];ID(e,i,j,p,f,B)}g=g+1|0}j=uH(b<<2)|0;g=0;while(1){if((g|0)>=(b|0))break;c[j+(g<<2)>>2]=m+(g<<4);g=g+1|0}_0(j,b,4,87);k=vI()|0;g=uH(b<<3)|0;b:do if(n){i=0;while(1){if((i|0)>=(b|0)){i=0;break}if(a[D+i>>0]|0){e=c[j+(i<<2)>>2]|0;f=g+(c[e+12>>2]<<3)|0;c[B>>2]=c[C>>2];c[B+4>>2]=c[C+4>>2];KD(e,k,f,B)}i=i+1|0}while(1){if((i|0)>=(b|0))break b;if(!(a[D+i>>0]|0)){C=c[j+(i<<2)>>2]|0;LD(i,C,k,g+(c[C+12>>2]<<3)|0,p,c[o>>2]|0,q)}i=i+1|0}}else{i=0;while(1){if((i|0)>=(b|0))break b;D=c[j+(i<<2)>>2]|0;LD(i,D,k,g+(c[D+12>>2]<<3)|0,p,c[o>>2]|0,q);i=i+1|0}}while(0);D_(j);i=0;while(1){if((i|0)>=(b|0))break;D_(c[m+(i<<4)+4>>2]|0);i=i+1|0}D_(m);yI(k);D_(q);if(0>1){i=0;while(1){if((i|0)>=(b|0))break a;C=c[g+(i<<3)>>2]|0;D=c[g+(i<<3)+4>>2]|0;c[F>>2]=i;c[F+4>>2]=C;c[F+8>>2]=D;g1(E,96275,F)|0;i=i+1|0}}}else g=0}else g=0;while(0);l=G;return g|0}function DD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+16|0;g=z;x=uH(a<<3)|0;f=c[d+4>>2]|0;y=d+28|0;e=(f|0)>0;do if(!(c[y>>2]&1))if(e){k=1;w=(a+-1+f|0)/(f|0)|0;break}else{f=~~+N(+(+C(+(+(a|0)))));k=1;w=(a+-1+f|0)/(f|0)|0;break}else if(e){k=0;w=f;f=(a+-1+f|0)/(f|0)|0;break}else{f=~~+N(+(+C(+(+(a|0)))));k=0;w=f;f=(a+-1+f|0)/(f|0)|0;break}while(0);if(0){v=c[15686]|0;c[g>>2]=k|0?96170:96180;c[g+4>>2]=w;c[g+8>>2]=f;g1(v,96193,g)|0}t=uH((f<<3)+8|0)|0;u=uH((w<<3)+8|0)|0;v=uH(a*24|0)|0;j=d+8|0;e=0;g=v;while(1){if((e|0)>=(a|0))break;p=+h[b+(e<<5)+8>>3];o=+h[b+(e<<5)+24>>3];q=+((c[j>>2]|0)>>>0);h[g>>3]=+h[b+(e<<5)+16>>3]-+h[b+(e<<5)>>3]+q;h[g+8>>3]=o-p+q;c[g+16>>2]=e;e=e+1|0;g=g+24|0}s=uH(a<<2)|0;e=0;while(1){if((e|0)>=(a|0))break;c[s+(e<<2)>>2]=v+(e*24|0);e=e+1|0}e=c[d+24>>2]|0;if(!e){if(!(c[y>>2]&64))_0(s,a,4,89)}else{c[46285]=e;_0(s,a,4,88)}r=(k|0)==0;e=0;g=0;j=0;while(1){if((j|0)>=(a|0)){i=0.0;e=0;break}k=c[s+(j<<2)>>2]|0;d=t+(g<<3)|0;q=+h[d>>3];p=+h[k>>3];h[d>>3]=q>p?q:p;d=u+(e<<3)|0;p=+h[d>>3];q=+h[k+8>>3];h[d>>3]=p>q?p:q;if(r){e=e+1|0;d=(e|0)==(w|0);e=d?0:e;g=g+(d&1)|0}else{g=g+1|0;d=(g|0)==(f|0);e=e+(d&1)|0;g=d?0:g}j=j+1|0}while(1){if((e|0)>(f|0)){i=0.0;e=w;break}d=t+(e<<3)|0;q=+h[d>>3];h[d>>3]=i;i=q+i;e=e+1|0}while(1){if((e|0)<=0)break;d=e+-1|0;q=+h[u+(d<<3)>>3];h[u+(e<<3)>>3]=i;i=q+i;e=d}h[u>>3]=i;e=0;g=0;d=0;while(1){if((d|0)>=(a|0))break;k=c[(c[s+(d<<2)>>2]|0)+16>>2]|0;i=+h[b+(k<<5)>>3];m=-i;p=+h[b+(k<<5)+8>>3];q=-p;n=+h[b+(k<<5)+16>>3];o=+h[b+(k<<5)+24>>3];j=c[y>>2]|0;do if(!(j&4))if(!(j&8)){i=(m-n+ +h[t+(g<<3)>>3]+ +h[t+(g+1<<3)>>3])*.5;break}else{i=i-n+ +h[t+(g+1<<3)>>3];break}else i=+h[t+(g<<3)>>3];while(0);c[x+(k<<3)>>2]=~~i;do if(!(j&16))if(!(j&32)){i=(q-o+ +h[u+(e<<3)>>3]+ +h[u+(e+1<<3)>>3])*.5;break}else{i=+h[u+(e+1<<3)>>3];break}else i=p-o+ +h[u+(e<<3)>>3];while(0);c[x+(k<<3)+4>>2]=~~i;if(r){e=e+1|0;k=(e|0)==(w|0);e=k?0:e;g=g+(k&1)|0}else{g=g+1|0;k=(g|0)==(f|0);e=e+(k&1)|0;g=k?0:g}d=d+1|0}D_(v);D_(s);D_(t);D_(u);l=z;return x|0}function ED(a,b){a=a|0;b=b|0;var d=0;d=c[46285]|0;a=c[d+(c[(c[a>>2]|0)+16>>2]<<2)>>2]|0;b=c[d+(c[(c[b>>2]|0)+16>>2]<<2)>>2]|0;return ((a|0)>(b|0)?1:((a|0)<(b|0))<<31>>31)|0}function FD(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a>>2]|0;b=c[b>>2]|0;e=+h[a>>3]+ +h[a+8>>3];d=+h[b>>3]+ +h[b+8>>3];return (ed)<<31>>31)|0}function GD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0,s=0;s=l;l=l+96|0;q=s+80|0;r=s+48|0;p=s+8|0;m=s;k=(a*100|0)+-1|0;e=+(d<<1|0);n=0.0;o=0.0;d=0;while(1){if((d|0)>=(a|0))break;j=+h[b+(d<<5)+16>>3]-+h[b+(d<<5)>>3]+e;i=+h[b+(d<<5)+24>>3]-+h[b+(d<<5)+8>>3]+e;n=n-j-i;o=o-i*j;d=d+1|0}i=+(k|0);j=n*n-i*4.0*o;if(!(j<0.0)){e=+C(+j);g=i*2.0;f=(e-n)/g;g=(-n-e)/g;d=~~f;d=(d|0)==0?1:d;if(0>2){m=c[15686]|0;E1(96418,27,1,m)|0;h[p>>3]=i;h[p+8>>3]=n;h[p+16>>3]=o;h[p+24>>3]=j;h[p+32>>3]=e;g1(m,96446,p)|0;c[r>>2]=d;h[r+8>>3]=f;c[r+16>>2]=~~g;h[r+24>>3]=g;g1(m,96472,r)|0;h[q>>3]=(f*i+n)*f+o;h[q+8>>3]=(g*i+n)*g+o;g1(m,96494,q)|0}}else{h[m>>3]=j;Pw(1,96391,m)|0;d=-1}l=s;return d|0}function HD(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0.0;u=l;l=l+32|0;t=u+16|0;s=u;p=+h[a>>3];q=+h[a+8>>3];n=+h[a+16>>3];o=+h[a+24>>3];r=vI()|0;j=c[f>>2]|0;a=j-e|0;k=c[f+4>>2]|0;i=k-e|0;j=e-~~(p+(p>=0.0?.5:-.5))+j+~~(n+(n>=0.0?.5:-.5))|0;k=e-~~(q+(q>=0.0?.5:-.5))+k+~~(o+(o>=0.0?.5:-.5))|0;if((a|0)>-1)f=(a|0)/(d|0)|0;else f=((a+1|0)/(d|0)|0)+-1|0;if((i|0)>-1)m=(i|0)/(d|0)|0;else m=((i+1|0)/(d|0)|0)+-1|0;if((j|0)>-1)j=(j|0)/(d|0)|0;else j=((j+1|0)/(d|0)|0)+-1|0;if((k|0)>-1)i=(k|0)/(d|0)|0;else i=((k+1|0)/(d|0)|0)+-1|0;while(1){if((f|0)>(j|0))break;else a=m;while(1){if((a|0)>(i|0))break;BI(r,f,a);a=a+1|0}f=f+1|0}k=b+4|0;c[k>>2]=FI(r)|0;j=EI(r)|0;m=b+8|0;c[m>>2]=j;w=+(e<<1|0);v=+(d|0);i=~~+N(+((n+w-p)/v));a=~~+N(+((o+w-q)/v));c[b>>2]=a+i;a:do if(0>2){f=c[15686]|0;c[s>>2]=g;c[s+4>>2]=j;c[s+8>>2]=i;c[s+12>>2]=a;g1(f,96350,s)|0;a=0;while(1){if((a|0)>=(c[m>>2]|0))break a;g=c[k>>2]|0;s=c[g+(a<<3)+4>>2]|0;c[t>>2]=c[g+(a<<3)>>2];c[t+4>>2]=s;g1(f,96377,t)|0;a=a+1|0}}while(0);yI(r);l=u;return}function ID(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0.0,R=0.0;P=l;l=l+128|0;F=P+112|0;E=P+104|0;O=P+16|0;M=P;H=P+64|0;I=P+56|0;z=P+40|0;A=P+96|0;y=P+88|0;v=P+24|0;w=P+80|0;x=P+72|0;K=c[f+8>>2]|0;G=c[f+12>>2]|0;C=(a|0)==0?b:a;L=vI()|0;J=b+16|0;B=c[J>>2]|0;t=+h[B+16>>3];D=(c[g>>2]|0)-~~(t+(t>=0.0?.5:-.5))|0;t=+h[B+24>>3];B=(c[g+4>>2]|0)-~~(t+(t>=0.0?.5:-.5))|0;a:do if((c[f+16>>2]|0)==1){v=vH((ay(b)|0)<<2)|0;a=0;g=Sy(b)|0;while(1){if(!g)break;x=g+16|0;c[v+(a<<2)>>2]=c[(c[x>>2]|0)+112>>2];c[(c[x>>2]|0)+112>>2]=0;a=a+1|0;g=Ty(b,g)|0}o=D-K|0;p=B-K|0;q=D+K|0;r=B+K|0;n=1;while(1){a=c[J>>2]|0;if((n|0)>(c[a+180>>2]|0))break;m=c[(c[a+184>>2]|0)+(n<<2)>>2]|0;i=c[m+16>>2]|0;t=+h[i+16>>3];a=~~(t+(t>=0.0?.5:-.5));t=+h[i+24>>3];g=~~(t+(t>=0.0?.5:-.5));t=+h[i+32>>3];f=~~(t+(t>=0.0?.5:-.5));t=+h[i+40>>3];i=~~(t+(t>=0.0?.5:-.5));b:do if((f|0)>(a|0)&(i|0)>(g|0)){a=o+a|0;j=p+g|0;f=q+f|0;k=r+i|0;if((a|0)>-1)g=(a|0)/(e|0)|0;else g=((a+1|0)/(e|0)|0)+-1|0;if((j|0)>-1)j=(j|0)/(e|0)|0;else j=((j+1|0)/(e|0)|0)+-1|0;if((f|0)>-1)i=(f|0)/(e|0)|0;else i=((f+1|0)/(e|0)|0)+-1|0;if((k|0)>-1)f=(k|0)/(e|0)|0;else f=((k+1|0)/(e|0)|0)+-1|0;while(1){if((g|0)>(i|0))break;else a=j;while(1){if((a|0)>(f|0))break;BI(L,g,a);a=a+1|0}g=g+1|0}a=Sy(m)|0;while(1){if(!a)break b;c[(c[a+16>>2]|0)+212>>2]=m;a=Ty(m,a)|0}}while(0);n=n+1|0}r=z+8|0;s=H+4|0;t=+(K|0);u=I+4|0;q=A+4|0;p=y+4|0;o=Sy(b)|0;while(1){if(!o)break;WL(z,o);R=+h[z>>3];Q=+h[r>>3];m=D+~~(R+(R>=0.0?.5:-.5))|0;c[H>>2]=m;n=B+~~(Q+(Q>=0.0?.5:-.5))|0;c[s>>2]=n;g=o+16|0;a=c[g>>2]|0;c:do if(!(c[a+212>>2]|0)){c[I>>2]=~~((+h[a+96>>3]+ +h[a+88>>3])*.5+t);c[u>>2]=~~(+h[a+80>>3]*.5+t);c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];ND(A,E,F);a=c[A>>2]|0;f=c[q>>2]|0;c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];OD(y,E,F);i=c[y>>2]|0;j=c[p>>2]|0;if((a|0)>-1)g=(a|0)/(e|0)|0;else g=((a+1|0)/(e|0)|0)+-1|0;if((f|0)>-1)k=(f|0)/(e|0)|0;else k=((f+1|0)/(e|0)|0)+-1|0;if((i|0)>-1)i=(i|0)/(e|0)|0;else i=((i+1|0)/(e|0)|0)+-1|0;if((j|0)>-1)f=(j|0)/(e|0)|0;else f=((j+1|0)/(e|0)|0)+-1|0;while(1){if((g|0)>(i|0))break;else a=k;while(1){if((a|0)>(f|0))break;BI(L,g,a);a=a+1|0}g=g+1|0}if((m|0)>-1)a=(m|0)/(e|0)|0;else a=((m+1|0)/(e|0)|0)+-1|0;c[H>>2]=a;if((n|0)>-1)a=(n|0)/(e|0)|0;else a=((n+1|0)/(e|0)|0)+-1|0;c[s>>2]=a;a=Ex(C,o)|0;while(1){if(!a)break c;c[F>>2]=c[H>>2];c[F+4>>2]=c[H+4>>2];PD(a,F,L,D,B,e,G);a=Gx(C,a)|0}}else{if((m|0)>-1)a=(m|0)/(e|0)|0;else a=((m+1|0)/(e|0)|0)+-1|0;c[H>>2]=a;if((n|0)>-1)a=(n|0)/(e|0)|0;else a=((n+1|0)/(e|0)|0)+-1|0;c[s>>2]=a;a=Ex(C,o)|0;while(1){if(!a)break c;if((c[(c[g>>2]|0)+212>>2]|0)!=(c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)){c[F>>2]=c[H>>2];c[F+4>>2]=c[H+4>>2];PD(a,F,L,D,B,e,G)}a=Gx(C,a)|0}}while(0);o=Ty(b,o)|0}a=0;g=Sy(b)|0;while(1){if(!g)break;c[(c[g+16>>2]|0)+112>>2]=c[v+(a<<2)>>2];a=a+1|0;g=Ty(b,g)|0}D_(v)}else{r=v+8|0;s=H+4|0;t=+(K|0);u=I+4|0;q=w+4|0;p=x+4|0;o=Sy(b)|0;while(1){if(!o)break a;WL(v,o);Q=+h[v>>3];R=+h[r>>3];m=D+~~(Q+(Q>=0.0?.5:-.5))|0;c[H>>2]=m;n=B+~~(R+(R>=0.0?.5:-.5))|0;c[s>>2]=n;a=c[o+16>>2]|0;c[I>>2]=~~((+h[a+96>>3]+ +h[a+88>>3])*.5+t);c[u>>2]=~~(+h[a+80>>3]*.5+t);c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];ND(w,E,F);a=c[w>>2]|0;f=c[q>>2]|0;c[E>>2]=c[H>>2];c[E+4>>2]=c[H+4>>2];c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];OD(x,E,F);i=c[x>>2]|0;j=c[p>>2]|0;if((a|0)>-1)g=(a|0)/(e|0)|0;else g=((a+1|0)/(e|0)|0)+-1|0;if((f|0)>-1)k=(f|0)/(e|0)|0;else k=((f+1|0)/(e|0)|0)+-1|0;if((i|0)>-1)i=(i|0)/(e|0)|0;else i=((i+1|0)/(e|0)|0)+-1|0;if((j|0)>-1)f=(j|0)/(e|0)|0;else f=((j+1|0)/(e|0)|0)+-1|0;while(1){if((g|0)>(i|0))break;else a=k;while(1){if((a|0)>(f|0))break;BI(L,g,a);a=a+1|0}g=g+1|0}if((m|0)>-1)a=(m|0)/(e|0)|0;else a=((m+1|0)/(e|0)|0)+-1|0;c[H>>2]=a;if((n|0)>-1)a=(n|0)/(e|0)|0;else a=((n+1|0)/(e|0)|0)+-1|0;c[s>>2]=a;a=Ex(C,o)|0;while(1){if(!a)break;c[F>>2]=c[H>>2];c[F+4>>2]=c[H+4>>2];PD(a,F,L,D,B,e,G);a=Gx(C,a)|0}o=Ty(b,o)|0}}while(0);i=d+4|0;c[i>>2]=FI(L)|0;j=d+8|0;c[j>>2]=EI(L)|0;g=c[J>>2]|0;Q=+(K<<1|0);R=+(e|0);a=~~+N(+((+h[g+32>>3]+Q-+h[g+16>>3])/R));g=~~+N(+((+h[g+40>>3]+Q-+h[g+24>>3])/R));c[d>>2]=g+a;d:do if(0>2){f=c[15686]|0;d=ry(b)|0;b=c[j>>2]|0;c[M>>2]=d;c[M+4>>2]=b;c[M+8>>2]=a;c[M+12>>2]=g;g1(f,96350,M)|0;a=0;while(1){if((a|0)>=(c[j>>2]|0))break d;b=c[i>>2]|0;M=c[b+(a<<3)+4>>2]|0;c[O>>2]=c[b+(a<<3)>>2];c[O+4>>2]=M;g1(f,96377,O)|0;a=a+1|0}}while(0);yI(L);l=P;return}function JD(a,b){a=a|0;b=b|0;return (c[c[b>>2]>>2]|0)-(c[c[a>>2]>>2]|0)|0}function KD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;h=j+16|0;i=j;k=c[a+4>>2]|0;g=c[a+8>>2]|0;c[d>>2]=0-(c[e>>2]|0);f=d+4|0;c[f>>2]=0-(c[e+4>>2]|0);a=0;e=k;while(1){if((a|0)>=(g|0))break;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];zI(b,h);a=a+1|0;e=e+8|0}if(0>1){k=c[15686]|0;b=c[d>>2]|0;d=c[f>>2]|0;c[i>>2]=g;c[i+4>>2]=b;c[i+8>>2]=d;g1(k,96324,i)|0}l=j;return}function LD(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0;k=c[b+12>>2]|0;l=+h[i+(k<<5)>>3];m=+h[i+(k<<5)+8>>3];n=+h[i+(k<<5)+16>>3];o=+h[i+(k<<5)+24>>3];if(!((a|0)==0?(q=+(g<<1|0),p=+(f|0),(MD((~~+N(+((q-l+n)/p))|0)/-2|0,(~~+N(+((q-m+o)/p))|0)/-2|0,b,d,e,f,i)|0)!=0):0))j=3;a:do if((j|0)==3?(MD(0,0,b,d,e,f,i)|0)==0:0)if((~~+N(+(n-l))|0)<(~~+N(+(o-m))|0)){k=1;while(1){j=0-k|0;a=0;while(1){if((a|0)<=(j|0)){g=j;break}if(MD(j,a,b,d,e,f,i)|0)break a;a=a+-1|0}while(1){if((g|0)>=(k|0))break;if(MD(g,a,b,d,e,f,i)|0)break a;g=g+1|0}while(1){if((a|0)>=(k|0))break;if(MD(g,a,b,d,e,f,i)|0)break a;a=a+1|0}while(1){if((g|0)<=(j|0))break;if(MD(g,a,b,d,e,f,i)|0)break a;g=g+-1|0}while(1){if((a|0)<=0)break;if(!(MD(g,a,b,d,e,f,i)|0))a=a+-1|0;else break a}k=k+1|0}}else{k=1;while(1){j=0-k|0;a=0;while(1){if((a|0)>=(k|0)){g=j;break}if(MD(a,j,b,d,e,f,i)|0)break a;a=a+1|0}while(1){if((g|0)>=(k|0))break;if(MD(a,g,b,d,e,f,i)|0)break a;g=g+1|0}while(1){if((a|0)<=(j|0))break;if(MD(a,g,b,d,e,f,i)|0)break a;a=a+-1|0}while(1){if((g|0)<=(j|0))break;if(MD(a,g,b,d,e,f,i)|0)break a;g=g+-1|0}while(1){if((a|0)>=0)break;if(!(MD(a,g,b,d,e,f,i)|0))a=a+1|0;else break a}k=k+1|0}}while(0);return}function MD(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0;t=l;l=l+48|0;r=t+32|0;s=t+8|0;q=t;m=d+4|0;o=c[d+8>>2]|0;p=q+4|0;j=c[m>>2]|0;k=0;while(1){if((k|0)>=(o|0)){n=5;break}v=j;u=c[v+4>>2]|0;c[q>>2]=(c[v>>2]|0)+a;c[p>>2]=u+b;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];if(CI(e,r)|0){j=0;break}j=j+8|0;k=k+1|0}if((n|0)==5){d=c[d+12>>2]|0;x=+h[i+(d<<5)>>3];w=+h[i+(d<<5)+8>>3];c[f>>2]=(O(g,a)|0)-~~(x+(x>=0.0?.5:-.5));d=f+4|0;c[d>>2]=(O(g,b)|0)-~~(w+(w>=0.0?.5:-.5));j=c[m>>2]|0;k=0;while(1){if((k|0)>=(o|0))break;u=j;v=c[u+4>>2]|0;c[q>>2]=(c[u>>2]|0)+a;c[p>>2]=v+b;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];zI(e,r);j=j+8|0;k=k+1|0}if(0>1){j=c[15686]|0;u=c[f>>2]|0;v=c[d>>2]|0;c[s>>2]=o;c[s+4>>2]=a;c[s+8>>2]=b;c[s+12>>2]=u;c[s+16>>2]=v;g1(j,96290,s)|0;j=1}else j=1}l=t;return j|0}function ND(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[b+4>>2]|0)-(c[d+4>>2]|0)|0;c[a>>2]=(c[b>>2]|0)-(c[d>>2]|0);c[a+4>>2]=e;return}function OD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[d+4>>2]|0)+(c[b+4>>2]|0)|0;c[a>>2]=(c[d>>2]|0)+(c[b>>2]|0);c[a+4>>2]=e;return}function PD(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+112|0;x=A+96|0;w=A+80|0;r=A+48|0;s=A+32|0;y=A+16|0;z=A;n=A+64|0;h[y>>3]=+(c[b>>2]|0);t=y+8|0;h[t>>3]=+(c[b+4>>2]|0);a:do if((i|0)!=0?(u=a+16|0,m=c[(c[u>>2]|0)+8>>2]|0,(m|0)!=0):0){q=+(e|0);p=+(f|0);o=1.0/+(g|0);n=z+8|0;i=0;while(1){if((i|0)>=(c[m+4>>2]|0))break a;f=c[m>>2]|0;a=c[f+(i*48|0)>>2]|0;b=c[f+(i*48|0)+4>>2]|0;g=c[f+(i*48|0)+8>>2]|0;e=c[f+(i*48|0)+12>>2]|0;m=f+(i*48|0)+16|0;c[r>>2]=c[m>>2];c[r+4>>2]=c[m+4>>2];c[r+8>>2]=c[m+8>>2];c[r+12>>2]=c[m+12>>2];f=f+(i*48|0)+32|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];if(!g){c[y>>2]=c[a>>2];c[y+4>>2]=c[a+4>>2];c[y+8>>2]=c[a+8>>2];c[y+12>>2]=c[a+12>>2];m=a+16|0;c[z>>2]=c[m>>2];c[z+4>>2]=c[m+4>>2];c[z+8>>2]=c[m+8>>2];c[z+12>>2]=c[m+12>>2];m=2}else{c[y>>2]=c[r>>2];c[y+4>>2]=c[r+4>>2];c[y+8>>2]=c[r+8>>2];c[y+12>>2]=c[r+12>>2];c[z>>2]=c[a>>2];c[z+4>>2]=c[a+4>>2];c[z+8>>2]=c[a+8>>2];c[z+12>>2]=c[a+12>>2];m=1}j=+h[y>>3]+q;h[y>>3]=j;k=+h[t>>3]+p;h[t>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[y>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[t>>3]=j;j=+h[z>>3]+q;h[z>>3]=j;k=+h[n>>3]+p;h[n>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[n>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d);while(1){if((m|0)>=(b|0))break;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];g=a+(m<<4)|0;c[z>>2]=c[g>>2];c[z+4>>2]=c[g+4>>2];c[z+8>>2]=c[g+8>>2];c[z+12>>2]=c[g+12>>2];j=+h[z>>3]+q;h[z>>3]=j;k=+h[n>>3]+p;h[n>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[n>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d);m=m+1|0}if(e|0){c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[z>>2]=c[s>>2];c[z+4>>2]=c[s+4>>2];c[z+8>>2]=c[s+8>>2];c[z+12>>2]=c[s+12>>2];j=+h[z>>3]+q;h[z>>3]=j;k=+h[n>>3]+p;h[n>>3]=k;if(!(j>=0.0))j=(j+1.0)*o+-1.0;else j=j*o;h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)*o+-1.0;else j=k*o;h[n>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d)}i=i+1|0;m=c[(c[u>>2]|0)+8>>2]|0}}else v=4;while(0);if((v|0)==4){WL(n,c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0);c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];c[z+8>>2]=c[n+8>>2];c[z+12>>2]=c[n+12>>2];j=+h[z>>3]+ +(e|0);h[z>>3]=j;m=z+8|0;k=+h[m>>3]+ +(f|0);h[m>>3]=k;if(!(j>=0.0))j=(j+1.0)/+(g|0)+-1.0;else j=j/+(g|0);h[z>>3]=j;if(!(k>=0.0))j=(k+1.0)/+(g|0)+-1.0;else j=k/+(g|0);h[m>>3]=j;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[x>>2]=c[z>>2];c[x+4>>2]=c[z+4>>2];c[x+8>>2]=c[z+8>>2];c[x+12>>2]=c[z+12>>2];AD(w,x,d)}l=A;return}function QD(a,b,d){a=a|0;b=b|0;d=d|0;a:do if((a|0)<1)a=0;else switch(c[d+16>>2]|0){case 4:{a=DD(a,b,d)|0;break a}case 3:{a=RD(a,b,d)|0;break a}default:{a=0;break a}}while(0);return a|0}function RD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+80|0;g=n+64|0;f=n+24|0;m=n+8|0;e=n;h=n+56|0;j=d+8|0;k=GD(a,b,c[j>>2]|0)|0;if(0){i=c[15686]|0;c[e>>2]=k;g1(i,96259,e)|0}a:do if((k|0)>=1){c[h+4>>2]=0;c[h>>2]=0;i=uH(a<<4)|0;d=0;while(1){if((d|0)>=(a|0))break;c[i+(d<<4)+12>>2]=d;o=b+(d<<5)|0;e=c[j>>2]|0;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[f+16>>2]=c[o+16>>2];c[f+20>>2]=c[o+20>>2];c[f+24>>2]=c[o+24>>2];c[f+28>>2]=c[o+28>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];HD(f,i+(d<<4)|0,k,e,g,191979);d=d+1|0}f=uH(a<<2)|0;d=0;while(1){if((d|0)>=(a|0))break;c[f+(d<<2)>>2]=i+(d<<4);d=d+1|0}_0(f,a,4,87);g=vI()|0;d=uH(a<<3)|0;e=0;while(1){if((e|0)>=(a|0))break;o=c[f+(e<<2)>>2]|0;LD(e,o,g,d+(c[o+12>>2]<<3)|0,k,c[j>>2]|0,b);e=e+1|0}D_(f);e=0;while(1){if((e|0)>=(a|0))break;D_(c[i+(e<<4)+4>>2]|0);e=e+1|0}D_(i);yI(g);if(0>1){f=c[15686]|0;e=0;while(1){if((e|0)>=(a|0))break a;b=c[d+(e<<3)>>2]|0;o=c[d+(e<<3)+4>>2]|0;c[m>>2]=e;c[m+4>>2]=b;c[m+8>>2]=o;g1(f,96275,m)|0;e=e+1|0}}}else d=0;while(0);l=n;return d|0}function SD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0;a:do if((a|0)<1)f=0-a|0;else{s=(e|0)==0;q=(f|0)==0;j=0;while(1){if((j|0)==(a|0)){f=0;break a}r=c[b+(j<<2)>>2]|0;g=s?r:e;k=c[d+(j<<3)>>2]|0;l=c[d+(j<<3)+4>>2]|0;m=+(k|0);n=m*.013888888888888888;o=+(l|0);p=o*.013888888888888888;i=Sy(r)|0;while(1){if(!i)break;f=c[i+16>>2]|0;t=c[f+132>>2]|0;h[t>>3]=+h[t>>3]+n;t=t+8|0;h[t>>3]=+h[t>>3]+p;t=f+16|0;h[t>>3]=+h[t>>3]+m;t=f+24|0;h[t>>3]=+h[t>>3]+o;f=c[f+108>>2]|0;if(f|0){t=f+56|0;h[t>>3]=+h[t>>3]+m;t=f+64|0;h[t>>3]=+h[t>>3]+o}b:do if(!q){f=Ex(g,i)|0;while(1){if(!f)break b;TD(f,k,l);f=Gx(g,f)|0}}while(0);i=Ty(r,i)|0}UD(r,k,l);j=j+1|0}}while(0);return f|0}function TD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0,l=0.0,m=0,n=0;e=c[a+16>>2]|0;a=c[e+96>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}a=c[e+108>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}a=c[e+100>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}a=c[e+104>>2]|0;if(a|0){m=a+56|0;h[m>>3]=+h[m>>3]+ +(b|0);m=a+64|0;h[m>>3]=+h[m>>3]+ +(d|0)}m=c[e+8>>2]|0;a:do if(m|0){l=+(b|0);j=+(d|0);b=c[m+4>>2]|0;a=0;while(1){if((a|0)>=(b|0))break a;k=c[m>>2]|0;d=c[k+(a*48|0)>>2]|0;f=c[k+(a*48|0)+4>>2]|0;g=c[k+(a*48|0)+8>>2]|0;i=c[k+(a*48|0)+12>>2]|0;e=0;while(1){if((e|0)>=(f|0))break;n=d+(e<<4)|0;h[n>>3]=+h[n>>3]+l;n=d+(e<<4)+8|0;h[n>>3]=+h[n>>3]+j;e=e+1|0}if(g|0){n=k+(a*48|0)+16|0;h[n>>3]=+h[n>>3]+l;n=k+(a*48|0)+24|0;h[n>>3]=+h[n>>3]+j}if(i|0){n=k+(a*48|0)+32|0;h[n>>3]=+h[n>>3]+l;n=k+(a*48|0)+40|0;h[n>>3]=+h[n>>3]+j}a=a+1|0}}while(0);return}function UD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0,n=0.0,o=0;j=b+16|0;b=c[j>>2]|0;o=b+16|0;m=b+24|0;f=b+32|0;b=b+40|0;g=+(d|0);l=+h[f>>3]+g;i=+(e|0);n=+h[m>>3]+i;k=+h[b>>3]+i;h[o>>3]=+h[o>>3]+g;h[m>>3]=n;h[f>>3]=l;h[b>>3]=k;b=c[j>>2]|0;f=c[b+12>>2]|0;if((f|0)!=0?(a[f+81>>0]|0)!=0:0){o=f+56|0;h[o>>3]=+h[o>>3]+g;f=f+64|0;h[f>>3]=+h[f>>3]+i;f=1}else f=1;while(1){if((f|0)>(c[b+180>>2]|0))break;UD(c[(c[b+184>>2]|0)+(f<<2)>>2]|0,d,e);f=f+1|0;b=c[j>>2]|0}return}function VD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=BD(a,b,d,e)|0;if(!f)a=1;else{a=SD(a,b,f,d,c[e+12>>2]|0)|0;D_(f)}return a|0}function WD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;o=p;n=VD(a,b,d,e)|0;if(!n){mM(d);m=(c[d+16>>2]|0)+16|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[o+16>>2]=c[m+16>>2];c[o+20>>2]=c[m+20>>2];c[o+24>>2]=c[m+24>>2];c[o+28>>2]=c[m+28>>2];f=o+8|0;g=o+16|0;i=o+24|0;e=0;while(1){if((e|0)>=(a|0))break;k=c[(c[b+(e<<2)>>2]|0)+16>>2]|0;j=c[k+180>>2]|0;k=k+184|0;d=1;while(1){if((d|0)>(j|0))break;r=(c[(c[(c[k>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+16|0;h[o>>3]=+h[(+h[o>>3]<+h[r>>3]?o:r)>>3];r=c[(c[(c[k>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;q=r+16|0;h[f>>3]=+h[(+h[f>>3]<+h[r+24>>3]?o:q)+8>>3];h[g>>3]=+h[(+h[g>>3]>+h[r+32>>3]?o:q)+16>>3];h[i>>3]=+h[(+h[i>>3]>+h[r+40>>3]?o:q)+24>>3];d=d+1|0}e=e+1|0}c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[m+16>>2]=c[o+16>>2];c[m+20>>2]=c[o+20>>2];c[m+24>>2]=c[o+24>>2];c[m+28>>2]=c[o+28>>2]}l=p;return n|0}function XD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=l;l=l+16|0;f=g;if(!e)qa(96508,96514,1400,96521);d=YD(a,d,d)|0;c[e+8>>2]=d;if(0){h=c[15686]|0;c[f>>2]=d;g1(h,96533,f)|0}c[e+12>>2]=0;c[e+20>>2]=0;ZD(a,b,e)|0;l=g;return c[e+16>>2]|0}function YD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;f=i+4|0;g=xx(b,96663)|0;a:do if(g){c[h>>2]=f;h=(N1(g,134313,h)|0)==1;b=c[f>>2]|0;if(h&(b|0)>-1)d=b;else{switch(a[g>>0]|0){case 84:case 116:break;default:break a}d=e}}while(0);l=i;return d|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;return _D(xx(a,96546)|0,b,c)|0}function _D(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;u=l;l=l+64|0;r=u+40|0;q=u+32|0;t=u+24|0;s=u+16|0;m=u+8|0;k=u;i=u+48|0;j=u+44|0;if(!e)qa(96508,96514,1292,96555);o=e+28|0;c[o>>2]=0;p=e+16|0;c[p>>2]=d;n=e+4|0;c[n>>2]=0;c[e+24>>2]=0;a:do if(b|0?(f=a[b>>0]|0,f<<24>>24):0)switch(f<<24>>24|0){case 97:if(!(z$(b,96573,5)|0)){c[p>>2]=4;m=$D(b+5|0,e)|0;c[k>>2]=j;m=(N1(m,134313,k)|0)>0;d=c[j>>2]|0;if(!(m&(d|0)>0))break a;c[n>>2]=d;break a}else{if(z$(b,96579,6)|0)break a;c[p>>2]=5;c[m>>2]=i;m=(N1(b+5|0,96586,m)|0)>0;v=+g[i>>2];g[e>>2]=m&v>0.0?v:1.0;break a}case 99:{if(f<<24>>24!=99)break a;if(b$(b,104980)|0)break a;c[p>>2]=1;break a}case 103:{if(f<<24>>24!=103)break a;if(b$(b,108412)|0)break a;c[p>>2]=3;break a}case 110:{if(f<<24>>24!=110)break a;if(b$(b,108399)|0)break a;c[p>>2]=2;break a}default:break a}while(0);if(0){d=c[15686]|0;E1(96589,11,1,d)|0;c[s>>2]=aE(c[p>>2]|0)|0;g1(d,96601,s)|0;if((c[p>>2]|0)==5){h[t>>3]=+g[e>>2];g1(d,96614,t)|0}c[q>>2]=c[n>>2];g1(d,96627,q)|0;c[r>>2]=c[o>>2];g1(d,96640,r)|0}l=u;return c[p>>2]|0}function $D(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;a:do if((a[b>>0]|0)==95){f=d+28|0;e=1;while(1){b=b+1|0;b:while(1){if(!e)break a;d=a[b>>0]|0;if(!(d<<24>>24))break a;switch(d<<24>>24|0){case 99:{g=10;break b}case 105:{g=9;break b}case 117:{g=11;break b}case 116:{g=12;break b}case 98:{d=32;break b}case 108:{g=7;break b}case 114:{g=8;break b}default:e=0}}if((g|0)==7){g=0;d=4}else if((g|0)==8){g=0;d=8}else if((g|0)==9){g=0;d=64}else if((g|0)==10){g=0;d=1}else if((g|0)==11){g=0;d=2}else if((g|0)==12){g=0;d=16}c[f>>2]=c[f>>2]|d}}while(0);return b|0}function aE(a){a=a|0;switch(a|0){case 1:{a=104980;break}case 2:{a=108399;break}case 3:{a=108412;break}case 4:{a=96573;break}case 5:{a=96579;break}default:a=96653}return a|0}function bE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+96|0;k=n;m=n+80|0;do if(a){if(!e){e=E_(1,20)|0;c[e+4>>2]=d>>>0>80?d:80}d=c[e>>2]|0;j=c[e+4>>2]|0;if(!d){h=100;d=a;i=E_(100,j)|0}else{h=d+100|0;i=F_(c[e+8>>2]|0,O(h,j)|0)|0;H3(i+(O(j,d)|0)|0,0,j*100|0)|0;d=a}while(1){d=cE(k,d,b,m)|0;if(!d)break;a=c[e>>2]|0;f=h<<1;g=O(h,j)|0;if((a|0)==(h|0)){i=F_(i,O(f,j)|0)|0;H3(i+g|0,0,g|0)|0;a=c[e>>2]|0}else f=h;a=i+(O(a,j)|0)|0;g=k;h=a+80|0;do{c[a>>2]=c[g>>2];a=a+4|0;g=g+4|0}while((a|0)<(h|0));c[e>>2]=(c[e>>2]|0)+1;h=f}if(c[m>>2]|0){m=e+16|0;c[m>>2]=c[m>>2]|1}d=c[e>>2]|0;if(!d){D_(i);D_(e);e=0;break}else{c[e+8>>2]=F_(i,O(d,j)|0)|0;break}}while(0);l=n;return e|0}function cE(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+80|0;h=j+64|0;i=j;c[f>>2]=0;do{g=a[d>>0]|0;d=d+1|0}while((B$(g)|0)!=0);a:do switch(g|0){case 69:{c[b>>2]=0;d=dE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e>>2];break}case 101:{c[b>>2]=1;d=dE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e>>2];break}case 80:{c[b>>2]=2;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+4>>2];break}case 112:{c[b>>2]=3;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+4>>2];break}case 98:{c[b>>2]=4;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+8>>2];break}case 66:{c[b>>2]=5;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+8>>2];break}case 99:{d=fE(d,h)|0;if(!d){c[f>>2]=1;d=0;break a}g=gE(c[h>>2]|0,i)|0;c[h>>2]=g;if(!g){c[f>>2]=1;d=0;break a}if(!(c[i>>2]|0)){c[b>>2]=9;c[b+8>>2]=c[i+8>>2];if(!e)break a;c[b+72>>2]=c[e+24>>2];break a}else{c[b>>2]=14;f=b+8|0;g=i;h=f+64|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if(!e)break a;c[b+72>>2]=c[e+40>>2];break a}}case 67:{d=fE(d,h)|0;if(!d){c[f>>2]=1;d=0;break a}g=gE(c[h>>2]|0,i)|0;c[h>>2]=g;if(!g){c[f>>2]=1;d=0;break a}if(!(c[i>>2]|0)){c[b>>2]=8;c[b+8>>2]=c[i+8>>2];if(!e)break a;c[b+72>>2]=c[e+20>>2];break a}else{c[b>>2]=13;f=b+8|0;g=i;h=f+64|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if(!e)break a;c[b+72>>2]=c[e+40>>2];break a}}case 76:{c[b>>2]=6;d=eE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+12>>2];break}case 84:{c[b>>2]=7;d=hE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=hE(d,b+16|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=iE(d,b+24|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=hE(d,b+32|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=fE(d,b+40|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+16>>2];break}case 70:{c[b>>2]=10;d=hE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=fE(d,b+16|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+28>>2];break}case 83:{c[b>>2]=11;d=fE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+32>>2];break}case 73:{c[b>>2]=12;d=dE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}d=fE(d,b+40|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+36>>2];break}case 116:{c[b>>2]=15;d=jE(d,b+8|0)|0;if(!d){c[f>>2]=1;d=0;break a}if(e)c[b+72>>2]=c[e+44>>2];break}case 0:{d=0;break}default:{c[f>>2]=1;d=0}}while(0);l=j;return d|0}function dE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0;i=l;l=l+16|0;e=i;h[b>>3]=+c2(a,e);f=c[e>>2]|0;if(((f|0)!=(a|0)?(h[b+8>>3]=+c2(f,e),g=c[e>>2]|0,(f|0)!=(g|0)):0)?(h[b+16>>3]=+c2(g,e),d=c[e>>2]|0,(g|0)!=(d|0)):0){h[b+24>>3]=+c2(d,e);a=c[e>>2]|0;a=(d|0)==(a|0)?0:a}else a=0;l=i;return a|0}function eE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+4|0;g=k;a=kE(a,j)|0;do if(a){d=c[j>>2]|0;i=E_(d,24)|0;c[b>>2]=d;e=i;f=0;while(1){if((f|0)>=(d|0)){d=9;break}h[e>>3]=+c2(a,g);d=c[g>>2]|0;if((a|0)==(d|0)){d=5;break}h[e+8>>3]=+c2(d,g);a=c[g>>2]|0;if((d|0)==(a|0)){d=7;break}h[e+16>>3]=0.0;e=e+24|0;d=c[b>>2]|0;f=f+1|0}if((d|0)==5){c[j>>2]=f;D_(i);a=0;break}else if((d|0)==7){c[j>>2]=f;D_(i);a=0;break}else if((d|0)==9){c[j>>2]=f;c[b+4>>2]=i;break}}else a=0;while(0);l=k;return a|0}function fE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;b=kE(b,i)|0;f=c[i>>2]|0;do if(!((b|0)==0|(f|0)<1)){while(1){h=a[b>>0]|0;e=h<<24>>24==0;if(e^h<<24>>24!=45)b=b+1|0;else break}if(!e){h=E_(f+1|0,1)|0;g=h;e=f;while(1){b=b+1|0;if((e|0)<=0){e=9;break}e=a[b>>0]|0;if(!(e<<24>>24)){e=8;break}a[g>>0]=e;e=(c[i>>2]|0)+-1|0;c[i>>2]=e;g=g+1|0}if((e|0)==8){D_(h);b=0;break}else if((e|0)==9){a[g>>0]=0;c[d>>2]=h;break}}else b=0}else b=0;while(0);l=j;return b|0}function gE(b,d){b=b|0;d=d|0;var e=0;e=a[b>>0]|0;switch(e|0){case 91:{b=lE(b+1|0,d)|0;break}case 40:{b=mE(b+1|0,d)|0;break}case 47:case 35:{c[d>>2]=0;c[d+8>>2]=b;break}default:if(!(M$(e)|0))b=0;else{c[d>>2]=0;c[d+8>>2]=b}}return b|0}function hE(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;f=l;l=l+16|0;d=f;e=+c2(a,d);d=c[d>>2]|0;if((d|0)==(a|0))d=0;else h[b>>3]=e;l=f;return d|0}function iE(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=kE(a,e)|0;e=c[e>>2]|0;c[b>>2]=(e|0)<0?0:e|0?2:1;l=d;return a|0}function jE(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[b>>2]=C$(a,e,10)|0;b=c[e>>2]|0;l=d;return ((b|0)==(a|0)?0:b)|0}function kE(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[b>>2]=i1(a,e,10)|0;b=c[e>>2]|0;l=d;return ((b|0)==(a|0)?0:b)|0}function lE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;c[b>>2]=1;n=b+8|0;i=hE(a,n)|0;do if(((((i|0)!=0?(j=hE(i,b+16|0)|0,(j|0)!=0):0)?(e=hE(j,b+24|0)|0,(e|0)!=0):0)?(f=hE(e,b+32|0)|0,(f|0)!=0):0)?(k=b+40|0,d=kE(f,k)|0,(d|0)!=0):0){b=c[k>>2]|0;f=E_(b,8)|0;e=0;while(1){if((e|0)>=(b|0)){d=13;break}d=hE(d,m)|0;if(!d){d=9;break}g[f+(e<<3)>>2]=+h[m>>3];d=fE(d,f+(e<<3)+4|0)|0;if(!d){d=12;break}e=e+1|0;b=c[k>>2]|0}if((d|0)==9){D_(f);a=0;break}else if((d|0)==12){D_(f);a=0;break}else if((d|0)==13){c[n+36>>2]=f;break}}else a=0;while(0);l=o;return a|0}function mE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;c[b>>2]=2;k=hE(a,b+8|0)|0;do if(((((((k|0)!=0?(m=hE(k,b+16|0)|0,(m|0)!=0):0)?(e=hE(m,b+24|0)|0,(e|0)!=0):0)?(f=hE(e,b+32|0)|0,(f|0)!=0):0)?(i=hE(f,b+40|0)|0,(i|0)!=0):0)?(j=hE(i,b+48|0)|0,(j|0)!=0):0)?(o=b+56|0,d=kE(j,o)|0,(d|0)!=0):0){e=c[o>>2]|0;i=E_(e,8)|0;f=0;while(1){if((f|0)>=(e|0)){d=15;break}d=hE(d,n)|0;if(!d){d=11;break}g[i+(f<<3)>>2]=+h[n>>3];d=fE(d,i+(f<<3)+4|0)|0;if(!d){d=14;break}f=f+1|0;e=c[o>>2]|0}if((d|0)==11){D_(i);a=0;break}else if((d|0)==14){D_(i);a=0;break}else if((d|0)==15){c[b+60>>2]=i;break}}else a=0;while(0);l=p;return a|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return bE(a,b,c,0)|0}function oE(a){a=a|0;return nE(a,0,0)|0}function pE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=c[a+12>>2]|0;if(a|0){f=c[a+8>>2]|0;g=a+4|0;h=(e|0)==0;b=0;while(1){if((b|0)>=(c[a>>2]|0))break;d=f+(O(c[g>>2]|0,b)|0)|0;if(!h)tb[e&127](d);qE(d);b=b+1|0}D_(f);D_(a)}return}function qE(a){a=a|0;switch(c[a>>2]|0){case 3:case 2:{D_(c[a+8+4>>2]|0);break}case 5:case 4:{D_(c[a+8+4>>2]|0);break}case 6:{D_(c[a+8+4>>2]|0);break}case 7:{D_(c[a+40>>2]|0);break}case 9:case 8:{D_(c[a+8>>2]|0);break}case 14:case 13:{rE(a+8|0);break}case 10:{D_(c[a+16>>2]|0);break}case 11:{D_(c[a+8>>2]|0);break}case 12:{D_(c[a+40>>2]|0);break}default:{}}return}function rE(a){a=a|0;var b=0,d=0,e=0;switch(c[a>>2]|0){case 1:{e=a+40|0;b=a+8+36|0;a=0;while(1){d=c[b>>2]|0;if((a|0)>=(c[e>>2]|0))break;D_(c[d+(a<<3)+4>>2]|0);a=a+1|0}D_(d);break}case 2:{e=a+56|0;d=a+60|0;a=0;while(1){b=c[d>>2]|0;if((a|0)>=(c[e>>2]|0))break;D_(c[b+(a<<3)+4>>2]|0);a=a+1|0}D_(b);break}default:{}}return}function sE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;k=o+4|0;n=o;c[d>>2]=0;c[e>>2]=(ey(ez(b)|0)|0)!=0&1;f=c[46414]|0;a:do if(f|0?(h=yx(b,f)|0,i=a[h>>0]|0,i<<24>>24):0){f=20284;while(1){g=c[f>>2]|0;if(!g)break a;if(i<<24>>24==(a[g>>0]|0)?(b$(h,g)|0)==0:0)break;f=f+12|0}c[d>>2]=c[f+4>>2];c[e>>2]=c[f+8>>2]}while(0);f=c[46425]|0;if((f|0?(c[e>>2]|0)==1:0)?(j=yx(b,f)|0,a[j>>0]|0):0)tE(j,e);f=c[46426]|0;if((f|0?(c[d>>2]|0)==1:0)?(m=yx(b,f)|0,a[m>>0]|0):0)tE(m,d);if(a[(c[b+16>>2]|0)+153>>0]|0){j=b+-48|0;i=ez(c[((c[b>>2]&3|0)==2?b:j)+40>>2]|0)|0;m=c[b>>2]&3;sE(Rx(i,c[((m|0)==2?b:j)+40>>2]|0,c[((m|0)==3?b:b+48|0)+40>>2]|0,0,0)|0,k,n);c[e>>2]=c[k>>2]|c[e>>2];c[d>>2]=c[n>>2]|c[d>>2]}l=o;return}function tE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;k=o+4|0;j=0;e=0;a:while(1){c[d>>2]=e;g=(j|0)<4;h=(j|0)==3;i=(j|0)==0;while(1){if(!(g&(a[b>>0]|0)!=0))break a;c[k>>2]=0;f=uE(b,k)|0;e=c[k>>2]|0;if(!e){n=5;break a}b=(e|0)==8;if(!(h&b)){if(!(i&b))break;if(a[f>>0]|0)break}c[k>>2]=0;b=f}e=c[d>>2]|e<<(j<<3);j=j+1|0;b=f}if((n|0)==5){c[m>>2]=b;Pw(0,96668,m)|0}l=o;return}function uE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=0;d=vE(a,20344,e)|0;if((d|0)==(a|0)){while(1){d=vE(a,20360,e)|0;if((a|0)==(d|0))break;else a=d}d=vE(a,20408,e)|0}a=c[e>>2]|0;if((a|0)!=0&(a&15|0)==0){a=a|1;c[e>>2]=a}c[b>>2]=c[b>>2]|a;l=f;return d|0}function vE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;while(1){e=c[b>>2]|0;if(!e)break;f=W_(e)|0;if(!(z$(a,e,f)|0)){g=4;break}b=b+8|0}if((g|0)==4){c[d>>2]=c[d>>2]|c[b+4>>2];a=a+f|0}return a|0}function wE(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0;g=0;d=0.0;while(1){if((g|0)==4)break;f=b>>(g<<3)&15;e=1400;while(1){if(!(c[e+16>>2]|0))break;if((f|0)==(c[e>>2]|0)){i=6;break}e=e+24|0}if((i|0)==6){i=0;d=+h[e+8>>3]+d}g=g+1|0}return +(d*10.0*+LL(a,c[46418]|0,1.0,0.0))}function xE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0;p=l;l=l+96|0;m=p+80|0;o=p;k=f>4.0?f*.0875:.35;i=+h[d+8>>3];n=i*k;j=+h[d>>3];k=j*k;e=+h[b>>3];j=e+j;h[m>>3]=j;f=+h[b+8>>3];i=i+f;h[m+8>>3]=i;d=o+64|0;if(!(g&32)){c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=o+32|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];f=i;e=j}else{c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];b=o+32|0;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2]}h[o+16>>3]=e+n;h[o+24>>3]=f-k;h[o+48>>3]=e-n;h[o+56>>3]=f+k;do if(!(g&64))if(!(g&128)){_O(a,o+16|0,3,g>>>4&1^1);break}else{_O(a,o+32|0,3,g>>>4&1^1);break}else _O(a,o,3,g>>>4&1^1);while(0);l=p;return}function yE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0;x=l;l=l+160|0;n=x+144|0;w=x;q=e*4.0;y=(g&32|0)==0;q=!(q1.0)|y?0.0:(f+-1.0)*.05/e;u=+h[d+8>>3];r=-u;v=q*r;t=+h[d>>3];q=t*q;r=s*r;s=t*s;p=+h[b>>3];e=p+t;h[n>>3]=e;o=+h[b+8>>3];f=u+o;h[n+8>>3]=f;t=t*.5+p;u=u*.5+o;d=w+128|0;if(y){c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];y=w+64|0;c[y>>2]=c[b>>2];c[y+4>>2]=c[b+4>>2];c[y+8>>2]=c[b+8>>2];c[y+12>>2]=c[b+12>>2];i=o;j=p;k=o;m=p;f=o;e=p}else{c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[w>>2]=c[b>>2];c[w+4>>2]=c[b+4>>2];c[w+8>>2]=c[b+8>>2];c[w+12>>2]=c[b+12>>2];y=w+64|0;c[y>>2]=c[n>>2];c[y+4>>2]=c[n+4>>2];c[y+8>>2]=c[n+8>>2];c[y+12>>2]=c[n+12>>2];i=f+s;j=e+r;k=f-s;m=e-r}h[w+16>>3]=e-v;h[w+24>>3]=f-q;h[w+32>>3]=t-r;h[w+40>>3]=u-s;h[w+48>>3]=m;h[w+56>>3]=k;h[w+80>>3]=j;h[w+88>>3]=i;h[w+96>>3]=t+r;h[w+104>>3]=u+s;h[w+112>>3]=e+v;h[w+120>>3]=f+q;do if(!(g&64))if(!(g&128)){_O(a,w,9,1);break}else{_O(a,w+48|0,6,1);break}else _O(a,w,6,1);while(0);l=x;return}function zE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;q=l;l=l+64|0;p=q;t=+h[d+8>>3];s=+h[d>>3];k=+h[b>>3];e=k+s;m=+h[b+8>>3];f=m+t;i=k+s*.2;j=m+t*.2;k=k+s*.6;m=m+t*.6;h[p>>3]=i-t;h[p+8>>3]=j+s;n=p+16|0;h[n>>3]=i+t;o=p+24|0;h[o>>3]=j-s;h[p+32>>3]=k+t;h[p+40>>3]=m-s;h[p+48>>3]=k-t;h[p+56>>3]=m+s;if(!(g&64)){if(g&128|0){d=2;g=1;r=3}}else{d=3;g=0;r=3}if((r|0)==3){h[p+(g<<4)>>3]=i;h[p+(g<<4)+8>>3]=j;h[p+(d<<4)>>3]=k;h[p+(d<<4)+8>>3]=m}_O(a,p,4,1);c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];h[n>>3]=e;h[o>>3]=f;bP(a,p,2);l=q;return}function AE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0;o=l;l=l+64|0;n=o;j=+h[d+8>>3];r=j*-.4;i=+h[d>>3];q=i*.4;t=+h[b>>3];e=t+i*.8;s=+h[b+8>>3];f=s+j*.8;i=t+i;j=s+j;h[n>>3]=t+r;k=n+8|0;h[k>>3]=s+q;d=n+16|0;h[d>>3]=t-r;m=n+24|0;h[m>>3]=s-q;h[n+32>>3]=e-r;h[n+40>>3]=f-q;h[n+48>>3]=e+r;h[n+56>>3]=f+q;if(!(g&64)){if(g&128|0){c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=2;p=5}}else{c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];d=3;p=5}if((p|0)==5){h[n+(d<<4)>>3]=e;h[n+(d<<4)+8>>3]=f}_O(a,n,4,g>>>4&1^1);h[n>>3]=e;h[k>>3]=f;h[n+16>>3]=i;h[m>>3]=j;bP(a,n,2);l=o;return}function BE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0;j=l;l=l+80|0;i=j;n=+h[d+8>>3];k=n*-.3333333333333333;p=+h[d>>3];f=p*.3333333333333333;q=+h[b>>3];m=q+p*.5;o=+h[b+8>>3];e=o+n*.5;d=i+64|0;h[i+64>>3]=q+p;h[i+72>>3]=o+n;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];h[i+16>>3]=m+k;h[i+24>>3]=e+f;d=i+32|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[i+48>>3]=m-k;h[i+56>>3]=e-f;do if(!(g&64)){d=g>>>4&1^1;if(!(g&128)){_O(a,i,4,d);break}else{_O(a,i,3,d);break}}else _O(a,d,3,g>>>4&1^1);while(0);l=j;return}function CE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0.0;g=l;l=l+32|0;i=g;k=+h[c>>3];e=+h[c+8>>3];d=+C(+(e*e+k*k))*.5;m=+h[b>>3];k=k*.5;h[i>>3]=m+k-d;j=+h[b+8>>3];e=e*.5;h[i+8>>3]=j-d+e;h[i+16>>3]=m+d+k;h[i+24>>3]=j+d+e;ZO(a,i,2,f>>>4&1^1);l=g;return}function DE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0;t=l;l=l+112|0;q=t+48|0;r=t+16|0;s=t;n=f>4.0?f*.125:.5;p=+h[b>>3];o=+h[d>>3];i=+h[b+8>>3];m=+h[d+8>>3];e=m*n;f=o*n;c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];h[r+16>>3]=o+p;h[r+24>>3]=m+i;h[q>>3]=n*(o-m)+p;j=n*(m+o);k=j+i;h[q+8>>3]=k;h[q+48>>3]=j+p;i=n*(m-o)+i;h[q+56>>3]=i;o=e*-.95;m=o+f+p;n=f*1.3333333333333333;if(!(g&32)){e=e*1.3333333333333333;j=f*-.33333333333333326;i=i-e;f=k-e;e=m-n}else{e=e*1.3333333333333333;j=f*2.333333333333333;i=i+e;f=k+e;e=m+n}h[q+16>>3]=e;h[q+24>>3]=f;h[q+32>>3]=j-o+p;h[q+40>>3]=i;bP(a,r,2);if(!(g&64)){if(g&128|0)XL(s,q,3,.5,q,0)}else XL(s,q,3,.5,0,q);aP(a,q,4,0,0,0);l=t;return}function EE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;var i=0;g=l;l=l+32|0;i=g;e=+h[d>>3]+ +h[b>>3];f=+h[d+8>>3]+ +h[b+8>>3];c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];h[i+16>>3]=e;h[i+24>>3]=f;bP(a,i,2);l=g;return}function FE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;n=l;l=l+80|0;j=n+72|0;k=n+8|0;m=n;i=+wE(a,g);i=i*i;h[m>>3]=i;c[f+12>>2]=g;g=f+32|0;a=e+3|0;f=b+(a<<4)|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];if((e|0)>(d|0)?(o=+h[b+(e<<4)>>3]-+h[f>>3],p=+h[b+(e<<4)+8>>3]-+h[b+(a<<4)+8>>3],p*p+o*o>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];q=k+32|0;a=b+(e+1<<4)|0;c[q>>2]=c[a>>2];c[q+4>>2]=c[a+4>>2];c[q+8>>2]=c[a+8>>2];c[q+12>>2]=c[a+12>>2];f=k+16|0;d=b+(e+2<<4)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[j>>2]=k;c[j+4>>2]=m;MK(j,90,k,1);c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];c[a>>2]=c[q>>2];c[a+4>>2]=c[q+4>>2];c[a+8>>2]=c[q+8>>2];c[a+12>>2]=c[q+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];m=b+(e+3<<4)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];l=n;return e|0}function GE(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[a>>2]|0;d=+h[b>>3]-+h[f>>3];e=+h[b+8>>3]-+h[f+8>>3];return e*e+d*d<=+h[c[a+4>>2]>>3]|0}function HE(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0;o=l;l=l+80|0;k=o+72|0;m=o+8|0;n=o;j=+wE(a,g);j=j*j;h[n>>3]=j;c[f+8>>2]=g;f=f+16|0;a=b+(d<<4)|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];if(!((e|0)>(d|0)?(i=d+3|0,p=+h[a>>3]-+h[b+(i<<4)>>3],q=+h[b+(d<<4)+8>>3]-+h[b+(i<<4)+8>>3],q*q+p*p>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];g=m+16|0;d=b+(i+2<<4)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];r=m+32|0;a=b+(i+1<<4)|0;c[r>>2]=c[a>>2];c[r+4>>2]=c[a+4>>2];c[r+8>>2]=c[a+8>>2];c[r+12>>2]=c[a+12>>2];s=m+48|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];c[k>>2]=s;c[k+4>>2]=n;MK(k,90,m,0);n=b+(i<<4)|0;c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[n+12>>2]=c[s+12>>2];c[a>>2]=c[r>>2];c[a+4>>2]=c[r+4>>2];c[a+8>>2]=c[r+8>>2];c[a+12>>2]=c[r+12>>2];c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];l=o;return i|0}function IE(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0,v=0,w=0;u=(g|0)!=0;l=(i|0)!=0;if(!((e|0)==(d|0)&(u&l))){if(l){j=+wE(a,i);k=+h[b+(e<<4)>>3];p=+h[b+(e<<4)+8>>3];l=e+3|0;r=b+(l<<4)|0;n=+h[r>>3];l=b+(l<<4)+8|0;o=+h[l>>3];t=k-n;s=p-o;t=+C(+(s*s+t*t))*.9;j=j>=t?t:j;if(p==o){m=(k>3]=k;h[b+(w<<4)+8>>3]=p;e=b+(e+2<<4)|0;h[r>>3]=m;h[l>>3]=j;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];c[f+12>>2]=i;h[f+32>>3]=n;h[f+40>>3]=o}if(u){m=+wE(a,g);l=b+(d<<4)|0;k=+h[l>>3];j=+h[b+(d<<4)+8>>3];w=d+3|0;o=+h[b+(w<<4)>>3];p=+h[b+(w<<4)+8>>3];t=k-o;s=j-p;t=+C(+(s*s+t*t))*.9;m=m>=t?t:m;if(j==p){n=(k>3]=n;h[b+(w<<4)+8>>3]=m;c[l>>2]=c[v>>2];c[l+4>>2]=c[v+4>>2];c[l+8>>2]=c[v+8>>2];c[l+12>>2]=c[v+12>>2];v=d+2|0;h[b+(v<<4)>>3]=o;h[b+(v<<4)+8>>3]=p;v=16}}else{r=b+(e<<4)|0;s=+h[r>>3];t=+h[b+(e<<4)+8>>3];l=e+3|0;u=b+(l<<4)|0;k=+h[u>>3];l=b+(l<<4)+8|0;j=+h[l>>3];m=+wE(a,g);q=+wE(a,i);n=s-k;p=t-j;n=+C(+(p*p+n*n));w=!(q+m>=n);n=n*.3333333333333333;m=w?m:n;n=w?q:n;if(t==j){w=s>3]=q;h[b+(w<<4)+8>>3]=o;c[r>>2]=c[v>>2];c[r+4>>2]=c[v+4>>2];c[r+8>>2]=c[v+8>>2];c[r+12>>2]=c[v+12>>2];v=b+(e+2<<4)|0;h[u>>3]=p;h[l>>3]=m;c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[v+8>>2]=c[u+8>>2];c[v+12>>2]=c[u+12>>2];c[f+12>>2]=i;h[f+32>>3]=s;h[f+40>>3]=t;v=16}if((v|0)==16){c[f+8>>2]=g;h[f+16>>3]=k;h[f+24>>3]=j}return}function JE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0;n=+h[b>>3];k=+h[c>>3]-n;o=+h[b+8>>3];l=+h[c+8>>3]-o;j=d*10.0/(+C(+(k*k+l*l))+.0001);k=j*((k>=0.0?.0001:-.0001)+k);j=((l>=0.0?.0001:-.0001)+l)*j;l=k*.5;m=j*.5;i=n-m;f=o-l;n=m+n;l=o+l;o=i+k;m=f+j;k=n+k;j=l+j;g=o>k?o:k;g=n>g?n:g;d=m>j?m:j;d=l>d?l:d;k=o>3]=i>3]=f>3]=i>g?i:g;h[a+24>>3]=f>d?f:d;return}function KE(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0;q=l;l=l+48|0;m=q+32|0;k=q+16|0;p=q;n=(c[a+16>>2]|0)+12|0;o=c[n>>2]|0;c[n>>2]=b;YO(a,c[(c[a>>2]|0)+336>>2]|0);fP(a,g);t=+h[e>>3]-+h[d>>3];b=e+8|0;s=+h[b>>3]-+h[d+8>>3];r=10.0/(+C(+(t*t+s*s))+.0001);h[e>>3]=r*((t>=0.0?.0001:-.0001)+t);h[b>>3]=((s>=0.0?.0001:-.0001)+s)*r;b=0;while(1){if((b|0)>=4)break;j=i>>(b<<3)&255;if(!j)break;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];LE(p,a,k,m,f,g,j);c[d>>2]=c[p>>2];c[d+4>>2]=c[p+4>>2];c[d+8>>2]=c[p+8>>2];c[d+12>>2]=c[p+12>>2];b=b+1|0}c[n>>2]=o;l=q;return}function LE(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;m=q+16|0;k=q;n=i&15;j=1400;while(1){o=c[j>>2]|0;if(!o)break;if((n|0)==(o|0)){p=4;break}j=j+24|0}if((p|0)==4){r=+h[j+8>>3]*f;h[e>>3]=r*+h[e>>3];o=e+8|0;h[o>>3]=r*+h[o>>3];p=c[j+16>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];wb[p&15](b,k,m,f,g,i);h[d>>3]=+h[e>>3]+ +h[d>>3];p=d+8|0;h[p>>3]=+h[o>>3]+ +h[p>>3]};c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=q;return}function ME(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i+8|0;f=i;d=xx(b,96770)|0;if((d|0)!=0?(a[d>>0]|0)!=0:0){e=d;h=5}else{d=xx(b,96782)|0;if((d|0)!=0?(a[d>>0]|0)!=0:0){e=d;h=5}else d=0}if((h|0)==5){d=nE(e,0,120)|0;if(!d){c[f>>2]=ry(b)|0;Pw(0,96789,f)|0;c[g>>2]=e;Pw(3,96842,g)|0}}l=i;return d|0}function NE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;f=uH(304)|0;if(!f)Pw(1,96850,g)|0;e=a+16|0;a=c[e>>2]|0;c[f>>2]=a;c[e>>2]=f;if(!a){c[f+144>>2]=3;c[f+148>>2]=0;h[f+152>>3]=1.0}else{b=f+16|0;d=a+16|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));b=f+56|0;d=a+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));c[f+144>>2]=c[a+144>>2];c[f+148>>2]=c[a+148>>2];h[f+152>>3]=+h[a+152>>3];c[f+136>>2]=c[a+136>>2];b=f+96|0;d=a+96|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0))}l=g;return f|0}function OE(a){a=a|0;var b=0;a=a+16|0;b=c[a>>2]|0;if(!b)qa(96876,96880,117,96887);else{D_(c[b+212>>2]|0);D_(c[b+208>>2]|0);D_(c[b+216>>2]|0);D_(c[b+220>>2]|0);D_(c[b+224>>2]|0);D_(c[b+228>>2]|0);D_(c[b+232>>2]|0);D_(c[b+236>>2]|0);D_(c[b+240>>2]|0);D_(c[b+244>>2]|0);D_(c[b+248>>2]|0);D_(c[b+252>>2]|0);D_(c[b+256>>2]|0);D_(c[b+272>>2]|0);D_(c[b+284>>2]|0);D_(c[b+280>>2]|0);c[a>>2]=c[b>>2];D_(b);return}}function PE(d,e,f,g,h,i,j){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;l=c[d+16>>2]|0;k=c[d+152>>2]|0;if((e|0)!=0&(k&32768|0)!=0)c[l+192>>2]=e;if(((k&65536|0)!=0?(c[l+212>>2]=pH(i,j)|0,(f|0)!=0):0)?(a[f>>0]|0)!=0:0){c[l+208>>2]=pH(f,j)|0;d=1}else d=0;do if(k&4194304){if(g|0?a[g>>0]|0:0){c[l+228>>2]=pH(g,j)|0;d=l+260|0;b[d>>1]=b[d>>1]|1;d=1;break}e=c[l+192>>2]|0;if(e){c[l+228>>2]=n1(e)|0;d=1}}while(0);if((h|0)!=0&(k&8388608|0)!=0?(a[h>>0]|0)!=0:0){c[l+244>>2]=pH(h,j)|0;d=1}return d|0}function QE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+80|0;i=j;h=j+8|0;g=c[(c[b>>2]|0)+168>>2]|0;f=c[(c[(c[g+16>>2]|0)+8>>2]|0)+92>>2]|0;RE(b,e);b=xx(d,137978)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0){Ww(e,b)|0;f=e+4|0;b=c[f>>2]|0;if(b>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;b=c[f>>2]|0}a[b>>0]=0;b=c[e>>2]|0;c[f>>2]=b}else{if((g|0)!=(d|0)&(f|0)!=0){Ww(e,f)|0;f=e+4|0;b=c[f>>2]|0;if(b>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;b=c[f>>2]|0}c[f>>2]=b+1;a[b>>0]=95}switch(pz(d)|0){case 0:{f=(g|0)==(d|0)?108412:96901;b=(c[d>>2]|0)>>>4;break}case 1:{f=108399;b=(c[d>>2]|0)>>>4;break}case 2:{f=108368;b=(c[d>>2]|0)>>>4;break}default:{f=0;b=0}}Ww(e,f)|0;c[i>>2]=b;Y0(h,96907,i)|0;Ww(e,h)|0;f=e+4|0;b=c[f>>2]|0;if(b>>>0>=(c[e+8>>2]|0)>>>0){Uw(e,1)|0;b=c[f>>2]|0}a[b>>0]=0;b=c[e>>2]|0;c[f>>2]=b}l=j;return b|0}function RE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+144|0;h=i;g=i+8|0;e=c[b+160>>2]|0;if((e|0)>1?c[b+152>>2]&64|0:0){Ww(d,c[(c[(c[b>>2]|0)+308>>2]|0)+(e<<2)>>2]|0)|0;f=d+4|0;e=c[f>>2]|0;if(e>>>0>=(c[d+8>>2]|0)>>>0){Uw(d,1)|0;e=c[f>>2]|0}c[f>>2]=e+1;a[e>>0]=95}f=c[b+196>>2]|0;e=c[b+200>>2]|0;if((f|0)>0|(e|0)>0){c[h>>2]=f;c[h+4>>2]=e;Y0(g,96911,h)|0;Ww(d,g)|0}l=i;return}function SE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0;s=l;l=l+48|0;p=s+16|0;f=s+32|0;q=s;r=+h[(c[a+16>>2]|0)+152>>3];o=TE(d,0,f)|0;if((o+-1|0)>>>0>=2){e=+h[b+16>>3];k=(e+ +h[b>>3])*.5;h[q>>3]=k;i=+h[b+24>>3];m=(i+ +h[b+8>>3])*.5;h[q+8>>3]=m;k=e-k;m=i-m;n=r>.5;if(n)fP(a,.5);j=c[f>>2]|0;i=0.0;f=c[j+8>>2]|0;while(1){d=c[f>>2]|0;if(!d)break;b=f+4|0;if(+g[b>>2]==0.0)e=i;else{WO(a,d);if(!(c[f+12>>2]|0))e=6.283185307179586;else e=+g[b>>2]*6.283185307179586+i;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];b=rQ(p,k,m,i,e)|0;aP(a,c[b>>2]|0,c[b+4>>2]|0,0,0,1);nV(b)}i=e;f=f+12|0}if(n)fP(a,r);UE(j)}l=s;return o|0}function TE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;o=r+8|0;n=r;q=uH(12)|0;i=n1(b)|0;a:do if(!d){d=1;f=i;while(1){switch(a[f>>0]|0){case 0:break a;case 58:{d=d+1|0;break}default:{}}f=f+1|0}}while(0);c[q+4>>2]=i;p=uH((d*12|0)+12|0)|0;c[q+8>>2]=p;m=1.0;h=0;d=0;f=i;while(1){f=k1(f,104958)|0;if(!f){f=20;break}j=+VE(f);if(!(j>=0.0)){f=17;break}k=j-m;if(k>0.0)if((c[5130]|0)!=0?!(k<1.0e-05&k>-1.0e-05):0){c[n>>2]=b;Pw(0,96922,n)|0;c[5130]=0;j=m;d=3}else j=m;k=m-j;if(j>0.0)a[p+(h*12|0)+8>>0]=1;if(a[f>>0]|0)c[p+(h*12|0)>>2]=f;f=h+1|0;g[p+(h*12|0)+4>>2]=j;if(k<1.0e-05&k>-1.0e-05){h=f;f=30;break}else{m=k;h=f;f=0}}b:do if((f|0)==17){if(!(c[5130]|0))d=1;else{c[o>>2]=b;Pw(1,96957,o)|0;c[5130]=0;d=2}UE(q)}else if((f|0)==20)if(m>0.0){f=0;i=0;while(1){if((f|0)>=(h|0))break;o=i+(+g[p+(f*12|0)+4>>2]==0.0&1)|0;f=f+1|0;i=o}if((i|0)<=0){f=p+((h+-1|0)*12|0)+4|0;g[f>>2]=m+ +g[f>>2];f=30;break}j=m/+(i|0);f=0;while(1){if((f|0)>=(h|0)){f=30;break b}i=p+(f*12|0)+4|0;if(+g[i>>2]==0.0)g[i>>2]=j;f=f+1|0}}else f=30;while(0);if((f|0)==30){while(1){f=h+-1|0;if((h|0)<=0)break;if(+g[p+(f*12|0)+4>>2]>0.0)break;else h=f}c[p+(h*12|0)>>2]=0;c[q>>2]=h;c[e>>2]=q}l=r;return d|0}function UE(a){a=a|0;D_(c[a+4>>2]|0);D_(c[a+8>>2]|0);D_(a);return}function VE(b){b=b|0;var d=0.0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;b=A$(b,59)|0;if(!b)d=0.0;else{g=b+1|0;a[b>>0]=0;d=+c2(g,e);d=(d>=0.0?(c[e>>2]|0)!=(g|0):0)?d:-1.0}l=f;return +d}function WE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0.0,t=0;t=l;l=l+80|0;i=t+64|0;r=t;s=+h[(c[a+16>>2]|0)+152>>3];q=TE(d,0,i)|0;if((q+-1|0)>>>0>=2){if(!e){c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];p=r+16|0;o=b+16|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];p=r+32|0;o=b+32|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];p=r+48|0;o=b+48|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2]}else{p=b+32|0;c[r>>2]=c[p>>2];c[r+4>>2]=c[p+4>>2];c[r+8>>2]=c[p+8>>2];c[r+12>>2]=c[p+12>>2];p=r+16|0;o=b+48|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];p=r+32|0;c[p>>2]=c[b>>2];c[p+4>>2]=c[b+4>>2];c[p+8>>2]=c[b+8>>2];c[p+12>>2]=c[b+12>>2];p=r+48|0;o=b+16|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2]}k=r+16|0;m=+h[k>>3];f=+h[r>>3];n=m-f;o=r+32|0;h[o>>3]=f;h[k>>3]=f;p=s>.5;if(p)fP(a,.5);i=c[i>>2]|0;j=r+48|0;e=c[i+8>>2]|0;while(1){d=c[e>>2]|0;if(!d)break;b=e+4|0;if(!(+g[b>>2]==0.0)){WO(a,d);if(!(c[e+12>>2]|0))f=m;else f=n*+g[b>>2]+ +h[r>>3];h[o>>3]=f;h[k>>3]=f;_O(a,r,4,1);f=+h[k>>3];h[j>>3]=f;h[r>>3]=f}e=e+12|0}if(p)fP(a,s);UE(i)}l=t;return q|0}function XE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[a+16>>2]|0;e=c[a+152>>2]|0;if(e&4259840|0){f=e&131072;g=f>>>16^2;c[d+264>>2]=g;h=d+268|0;c[h>>2]=g+2;g=d+272|0;D_(c[g>>2]|0);d=uH(c[h>>2]<<4)|0;c[g>>2]=d;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];g=d+16|0;b=b+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(!(e&8192))yO(a,d,d,2)|0;if(!f)WG(d)}return}function YE(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0,g=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+144|0;c=q+80|0;e=q+16|0;f=q;k=+h[b>>3];o=a+16|0;m=+h[o>>3];if(!(((((((((!(k>m)?(n=+h[a>>3],!(k>3],i=+h[a+24>>3],!(d>i)):0)?(j=+h[a+8>>3],!(d>3],!(k>m|k>3],!(k>i|k>3],!(k>m|k>3],!(k>i|k>3],!(k>m|k>3],!(n>i|n>3];if(!(d>+h[o>>3])){if(d<+h[a>>3]){c=a;p=16}}else{c=o;p=16}if((p|0)==16){p=0;h[c>>3]=d}d=+h[b+(e<<4)+8>>3];if(!(d>+h[f>>3])){if(d<+h[g>>3]){c=a;p=19}}else{c=o;p=19}if((p|0)==19){p=0;h[c+8>>3]=d}e=e+1|0}}while(0);l=q;return}function ZE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,h=0,i=0;b=l;l=l+48|0;d=b+32|0;e=b+16|0;f=b;i=a+48|0;h=a+16|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];g=+$G(f,e,d);h=a+32|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];a=g<4.0&+$G(f,e,d)<4.0&1;l=b;return a|0}function _E(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0;D=l;l=l+272|0;u=D+256|0;v=D+224|0;w=D+192|0;x=D+128|0;y=D+64|0;z=D;A=D+160|0;B=D+96|0;C=D+32|0;t=c[d+16>>2]|0;s=c[t+144>>2]|0;r=t+16|0;c[x>>2]=c[r>>2];c[x+4>>2]=c[r+4>>2];c[x+8>>2]=c[r+8>>2];c[x+12>>2]=c[r+12>>2];c[x+16>>2]=c[r+16>>2];c[x+20>>2]=c[r+20>>2];c[x+24>>2]=c[r+24>>2];c[x+28>>2]=c[r+28>>2];t=c[(c[t+8>>2]|0)+88>>2]|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;if(!t){c[b>>2]=c[x>>2];c[b+4>>2]=c[x+4>>2];c[b+8>>2]=c[x+8>>2];c[b+12>>2]=c[x+12>>2];c[b+16>>2]=c[x+16>>2];c[b+20>>2]=c[x+20>>2];c[b+24>>2]=c[x+24>>2];c[b+28>>2]=c[x+28>>2]}else{d=x+16|0;if(+h[x>>3]==+h[d>>3]?(e=x+8|0,f=x+24|0,+h[e>>3]==+h[f>>3]):0){h[e>>3]=1797693134862315708145274.0e284;h[x>>3]=1797693134862315708145274.0e284;h[f>>3]=-1797693134862315708145274.0e284;h[d>>3]=-1797693134862315708145274.0e284}j=v+8|0;k=v+16|0;m=v+24|0;n=y+16|0;o=y+24|0;p=s+144|0;q=w+16|0;r=t+12|0;d=0;f=c[t+8>>2]|0;e=0;g=0.0;i=0;while(1){if((i|0)>=(c[t>>2]|0))break;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[y+16>>2]=c[z+16>>2];c[y+20>>2]=c[z+20>>2];c[y+24>>2]=c[z+24>>2];c[y+28>>2]=c[z+28>>2];switch(c[f>>2]|0){case 1:case 0:{H=+h[f+8>>3];I=+h[f+24>>3];h[v>>3]=H-I;F=+h[f+16>>3];G=+h[f+32>>3];h[j>>3]=F-G;h[k>>3]=I+H;h[m>>3]=G+F;E=f+80|0;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[E+8>>2]=c[v+8>>2];c[E+12>>2]=c[v+12>>2];E=f+96|0;c[E>>2]=c[k>>2];c[E+4>>2]=c[k+4>>2];c[E+8>>2]=c[k+8>>2];c[E+12>>2]=c[k+12>>2];c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];$E(x,u);c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[u+12>>2]=c[k+12>>2];$E(x,u);break}case 3:case 2:{E=f+80|0;J=f+8|0;aF(A,c[J+4>>2]|0,c[J>>2]|0,x);c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2];c[E+16>>2]=c[A+16>>2];c[E+20>>2]=c[A+20>>2];c[E+24>>2]=c[A+24>>2];c[E+28>>2]=c[A+28>>2];break}case 5:case 4:{J=f+80|0;E=f+8|0;aF(B,c[E+4>>2]|0,c[E>>2]|0,x);c[J>>2]=c[B>>2];c[J+4>>2]=c[B+4>>2];c[J+8>>2]=c[B+8>>2];c[J+12>>2]=c[B+12>>2];c[J+16>>2]=c[B+16>>2];c[J+20>>2]=c[B+20>>2];c[J+24>>2]=c[B+24>>2];c[J+28>>2]=c[B+28>>2];break}case 6:{J=f+80|0;E=f+8|0;aF(C,c[E+4>>2]|0,c[E>>2]|0,x);c[J>>2]=c[C>>2];c[J+4>>2]=c[C+4>>2];c[J+8>>2]=c[C+8>>2];c[J+12>>2]=c[C+12>>2];c[J+16>>2]=c[C+16>>2];c[J+20>>2]=c[C+20>>2];c[J+24>>2]=c[C+24>>2];c[J+28>>2]=c[C+28>>2];break}case 7:{J=f+112|0;c[J>>2]=uH(56)|0;E=n1(c[f+40>>2]|0)|0;K=c[J>>2]|0;c[K>>2]=E;a[K+48>>0]=a[97003+(c[f+24>>2]|0)>>0]|0;c[y>>2]=e;h[n>>3]=g;c[o>>2]=c[o>>2]&-128|d&127;K=c[p>>2]|0;K=nb[c[K>>2]&63](K,y,1)|0;E=c[J>>2]|0;c[E+4>>2]=K;wL(u,s,E);bF(w,+h[f+8>>3],+h[f+16>>3],c[J>>2]|0);J=f+80|0;c[J>>2]=c[w>>2];c[J+4>>2]=c[w+4>>2];c[J+8>>2]=c[w+8>>2];c[J+12>>2]=c[w+12>>2];c[J+16>>2]=c[w+16>>2];c[J+20>>2]=c[w+20>>2];c[J+24>>2]=c[w+24>>2];c[J+28>>2]=c[w+28>>2];c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];$E(x,u);c[u>>2]=c[q>>2];c[u+4>>2]=c[q+4>>2];c[u+8>>2]=c[q+8>>2];c[u+12>>2]=c[q+12>>2];$E(x,u);if(!(c[r>>2]|0))c[r>>2]=106;break}case 10:{e=c[f+16>>2]|0;g=+h[f+8>>3];break}case 15:{d=c[f+8>>2]|0;break}default:{}}f=f+120|0;i=i+1|0}c[b>>2]=c[x>>2];c[b+4>>2]=c[x+4>>2];c[b+8>>2]=c[x+8>>2];c[b+12>>2]=c[x+12>>2];c[b+16>>2]=c[x+16>>2];c[b+20>>2]=c[x+20>>2];c[b+24>>2]=c[x+24>>2];c[b+28>>2]=c[x+28>>2]}l=D;return}function $E(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+h[b>>3];d=a+16|0;if(c>+h[d>>3])h[d>>3]=c;if(c<+h[a>>3])h[a>>3]=c;c=+h[b+8>>3];b=a+24|0;if(c>+h[b>>3])h[b>>3]=c;b=a+8|0;if(c<+h[b>>3])h[b>>3]=c;return}function aF(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;k=r+32|0;n=r;f=+h[b>>3];o=n+16|0;h[o>>3]=f;h[n>>3]=f;f=+h[b+8>>3];p=n+24|0;h[p>>3]=f;m=n+8|0;h[m>>3]=f;j=1;while(1){if((j|0)>=(d|0))break;i=b+24|0;f=+h[i>>3];if(!(f<+h[n>>3])){if(f>+h[o>>3]){g=o;q=5}}else{g=n;q=5}if((q|0)==5){q=0;h[g>>3]=f}f=+h[b+32>>3];if(!(f<+h[m>>3])){if(f>+h[p>>3]){b=o;q=8}}else{b=n;q=8}if((q|0)==8){q=0;h[b+8>>3]=f}j=j+1|0;b=i}c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];$E(e,k);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];$E(e,k);c[a>>2]=c[n>>2];c[a+4>>2]=c[n+4>>2];c[a+8>>2]=c[n+8>>2];c[a+12>>2]=c[n+12>>2];c[a+16>>2]=c[n+16>>2];c[a+20>>2]=c[n+20>>2];c[a+24>>2]=c[n+24>>2];c[a+28>>2]=c[n+28>>2];l=r;return}function bF(b,c,d,e){b=b|0;c=+c;d=+d;e=e|0;var f=0.0,g=0,i=0,j=0,k=0.0,m=0,n=0;n=l;l=l+16|0;i=n+8|0;j=n;f=+h[e+32>>3];k=+h[e+40>>3];switch(a[e+48>>0]|0){case 108:{h[i>>3]=c;f=f+c;g=j;m=5;break}case 110:{f=f*.5;h[i>>3]=c-f;f=f+c;g=j;m=5;break}case 114:{h[j>>3]=c;f=c-f;g=i;m=5;break}default:{c=0.0;f=0.0}}if((m|0)==5){h[g>>3]=f;c=+h[i>>3];f=+h[j>>3]}d=+h[e+16>>3]+d;h[b>>3]=c;h[b+8>>3]=d-k;h[b+16>>3]=f;h[b+24>>3]=d;l=n;return}function cF(a){a=a|0;if((c[a>>2]|0)==7)mH(c[a+112>>2]|0,1);return}function dF(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0.0;m=l;l=l+16|0;k=m;j=c[b+152>>2]|0;n=+h[b+432>>3];i=+h[b+352>>3]*.013888888888888888;f=i*n;h[b+488>>3]=f;g=+h[b+440>>3];i=i*g;h[b+496>>3]=i;h[b+520>>3]=n*.013888888888888888;e=b+528|0;h[e>>3]=g*.013888888888888888;if(j&4096|c[46369]|0)h[e>>3]=g*-.013888888888888888;e=(c[b+360>>2]|0)==0;n=+((c[b+448>>2]|0)>>>0);g=+((c[b+452>>2]|0)>>>0);h[b+368>>3]=(e?n:g)/f;h[b+376>>3]=(e?g:n)/i;cP(b,NL(d,nx(d,0,98496,0)|0,191979)|0);c[b+160>>2]=0;eF(b,d);if(j&2|0)fF(b,d);e=Sy(d)|0;while(1){if(!e)break;a[(c[e+16>>2]|0)+116>>0]=0;e=Ty(d,e)|0}gF(b,k);while(1){if(!((hF(b)|0)<<24>>24))break;if((iF(b)|0)>1)DO(b);jF(b);while(1){if(!((kF(b)|0)<<24>>24))break;lF(b,d);mF(b)}if((iF(b)|0)>1)EO(b);nF(b,k)}oF(b);l=m;return}function eF(a,b){a=a|0;b=b|0;var d=0;d=NE(a)|0;c[d+4>>2]=0;c[d+8>>2]=b;c[d+12>>2]=0;nG(a,c[(c[b+16>>2]|0)+12>>2]|0,b);zO(a,b);return}function fF(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;WO(b,131718);d=xx(c,137895)|0;if(d|0?a[d>>0]|0:0)WO(b,d);d=xx(c,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);zG(b,c);g=Sy(c)|0;while(1){if(!g)break;d=xx(g,137741)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(g,134647)|0;if(d|0?a[d>>0]|0:0)WO(b,d);d=xx(g,98392)|0;do if(d|0?a[d>>0]|0:0){if(!(A$(d,58)|0)){UO(b,d);break}e=n1(d)|0;d=e;while(1){d=k1(d,104958)|0;if(!d)break;if(!(a[d>>0]|0)){d=0;continue}UO(b,d);d=0}D_(e)}while(0);d=xx(g,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);f=Ex(c,g)|0;while(1){if(!f)break;d=xx(f,137741)|0;do if(d|0?a[d>>0]|0:0){if(!(A$(d,58)|0)){UO(b,d);break}e=n1(d)|0;d=e;while(1){d=k1(d,104958)|0;if(!d)break;if(!(a[d>>0]|0)){d=0;continue}UO(b,d);d=0}D_(e)}while(0);d=xx(f,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);f=Gx(c,f)|0}g=Ty(c,g)|0}return}function gF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;g=i;h=c[a>>2]|0;d=c[h+312>>2]|0;f=a+156|0;c[f>>2]=d;h=c[h+316>>2]|0;if(!h)if((d|0)>1?(c[a+152>>2]&64|0)==0:0){c[e>>2]=c[a+52>>2];Pw(0,97541,e)|0;c[f>>2]=1;e=1;d=0}else{e=1;d=0}else{d=h+4|0;if((c[h>>2]|0)>1?(c[a+152>>2]&64|0)==0:0){c[g>>2]=c[a+52>>2];Pw(0,97541,g)|0;c[h+8>>2]=(c[f>>2]|0)+1}e=c[d>>2]|0;d=h+8|0}c[a+160>>2]=e;c[b>>2]=d;l=i;return}function hF(a){a=a|0;return (c[a+160>>2]|0)<=(c[a+156>>2]|0)|0}function iF(a){a=a|0;var b=0;b=c[(c[a>>2]|0)+316>>2]|0;return c[((b|0)==0?a+156|0:b)>>2]|0}function jF(a){a=a|0;var b=0,d=0;d=a+172|0;b=c[d+4>>2]|0;a=a+196|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kF(a){a=a|0;var b=0,d=0;d=c[a+196>>2]|0;if(((d|0)>-1?(d|0)<(c[a+164>>2]|0):0)?(b=c[a+200>>2]|0,(b|0)>-1):0)a=(b|0)<(c[a+168>>2]|0)&1;else a=0;return a|0}function lF(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+176|0;k=p;f=p+48|0;m=p+32|0;n=c[d+16>>2]|0;o=c[d+152>>2]|0;if((c[d+160>>2]|0)<=1?(c[d+196>>2]|0)<=0:0)h=0;else{Tw(m,128,f);g=n+212|0;h=c[g>>2]|0;RE(d,m);Ww(m,h)|0;i=m+4|0;f=c[i>>2]|0;if(f>>>0>=(c[m+8>>2]|0)>>>0){Uw(m,1)|0;f=c[i>>2]|0}a[f>>0]=0;f=c[m>>2]|0;c[i>>2]=f;c[g>>2]=f}qQ(xx(e,97006)|0);qF(d);BO(d);UO(d,134232);WO(d,131718);do if(o&4259840|0){if((c[n+208>>2]|0)==0?(b[n+260>>1]&1)==0:0)break;if(o&655360){i=o&131072;c[n+264>>2]=i>>>16^2;f=uH((i>>>12^32)+32|0)|0;g=d+288|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];g=f+16|0;q=d+304|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];if(!i){WG(f);g=4}else g=2}else{f=0;g=0}if(!(o&8192))yO(d,f,f,g)|0;c[n+272>>2]=f;c[n+268>>2]=g}while(0);if(o&32768|0?(j=c[(c[e+16>>2]|0)+12>>2]|0,j|0):0)c[n+192>>2]=c[j>>2];g=(o&4|0)!=0;do if(!g){f=n+208|0;if((c[f>>2]|0)==0?(b[n+260>>1]&1)==0:0)break;q=d+256|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[k+16>>2]=c[q+16>>2];c[k+20>>2]=c[q+20>>2];c[k+24>>2]=c[q+24>>2];c[k+28>>2]=c[q+28>>2];XE(d,k);PO(d,c[f>>2]|0,c[n+228>>2]|0,c[n+244>>2]|0,c[n+212>>2]|0)}while(0);rF(d,e);f=c[(c[e+16>>2]|0)+12>>2]|0;if(f|0)oH(d,4,f);do if(!g){if((c[n+208>>2]|0)==0?(b[n+260>>1]&1)==0:0)break;QO(d)}while(0);sF(d,e,o);CO(d);if(h|0){Xw(m);c[n+212>>2]=h}l=p;return}function mF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;d=h+24|0;b=h+16|0;j=h+8|0;f=h;g=a+196|0;i=a+188|0;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];pF(j,b,d);i=c[j+4>>2]|0;e=g;c[e>>2]=c[j>>2];c[e+4>>2]=i;if(!((kF(a)|0)<<24>>24)){e=a+180|0;if(!(c[a+184>>2]|0))c[a+200>>2]=c[a+176>>2];else c[g>>2]=c[a+172>>2];c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];pF(f,b,d);i=c[f+4>>2]|0;j=g;c[j>>2]=c[f>>2];c[j+4>>2]=i}l=h;return}function nF(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;if(!d){d=a+160|0;c[d>>2]=(c[d>>2]|0)+1}else{c[a+160>>2]=c[d>>2];c[b>>2]=d+4}return}function oF(a){a=a|0;AO(a);OE(a);return}function pF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[d+4>>2]|0)+(c[b+4>>2]|0)|0;c[a>>2]=(c[d>>2]|0)+(c[b>>2]|0);c[a+4>>2]=e;return}function qF(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+48|0;n=t+32|0;f=t+24|0;j=t+8|0;k=t+16|0;m=t;r=a+196|0;q=c[r>>2]|0;r=c[r+4>>2]|0;p=f;c[p>>2]=q;c[p+4>>2]=r;p=a+164|0;i=c[p>>2]|0;p=c[p+4>>2]|0;s=j;c[s>>2]=i;c[s+4>>2]=p;s=a+360|0;if(!(c[s>>2]|0)){k=q;j=r}else{c[n>>2]=c[f>>2];c[n+4>>2]=c[f+4>>2];yG(k,n);r=k;k=c[r>>2]|0;r=c[r+4>>2]|0;p=f;c[p>>2]=k;c[p+4>>2]=r;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];yG(m,n);p=m;i=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=i;c[j+4>>2]=p;j=r}d=+h[a+320>>3];g=d*+(k|0)-+h[a+240>>3];h[a+288>>3]=g;e=+h[a+328>>3];o=e*+(j|0)-+h[a+248>>3];h[a+296>>3]=o;h[a+304>>3]=d+g;h[a+312>>3]=e+o;f=a+472|0;if(!(c[(c[a+12>>2]|0)+28>>2]|0)){r=a+456|0;c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2]}else{q=a+456|0;c[f>>2]=c[((c[f>>2]|0)<(c[q>>2]|0)?f:q)>>2];r=a+476|0;c[r>>2]=c[((c[r>>2]|0)<(c[a+460>>2]|0)?f:q)+4>>2];r=a+480|0;c[r>>2]=c[((c[r>>2]|0)>(c[a+464>>2]|0)?f:q)+8>>2];r=a+484|0;c[r>>2]=c[((c[r>>2]|0)>(c[a+468>>2]|0)?f:q)+12>>2]}m=c[a+152>>2]|0;b=+h[a+336>>3];if(!(m&128)){b=(+(k|0)-+(i|0)*.5)*d+b;h[a+256>>3]=b;g=(+(j|0)-+(p|0)*.5)*e+ +h[a+344>>3];o=g;d=d+b;g=g+e}else{d=+h[a+368>>3]*.5;e=b-d;h[a+256>>3]=e;g=+h[a+344>>3];u=+h[a+376>>3]*.5;o=g-u;d=d+b;g=u+g;b=e}h[a+264>>3]=o;h[a+272>>3]=d;h[a+280>>3]=g;if(!(c[s>>2]|0)){e=+h[a+352>>3];h[a+504>>3]=+h[a+384>>3]/e-b;if(!(m&4096|c[46369])){d=+h[a+392>>3]/e;b=o}else{d=-g;b=+h[a+392>>3]/e}h[a+512>>3]=d-b}else{f=a+384|0;e=+h[a+352>>3];h[a+512>>3]=-g-+h[a+392>>3]/e;if(!(m&4096|c[46369]))d=+h[f>>3]/e;else{d=-d;b=+h[f>>3]/e}h[a+504>>3]=d-b}l=t;return}function rF(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;q=s;o=s+40|0;p=s+36|0;r=s+32|0;e=xx(d,137895)|0;if(!e){j=1;e=134116}else{i=(a[e>>0]|0)==0;j=i&1;e=i?134116:e}h=c[b+152>>2]|0;i=(a[e>>0]|0)==116;if(!(h&256))if(i){m=(b$(e,134297)|0)==0;k=m?134116:e;m=m?1:j;n=8}else{k=e;m=j;n=8}else if(!(i?!(b$(e,134297)|0):0)){k=e;m=j;n=8}if((n|0)==8?!((m|0)!=0&(h&33554432|0)!=0):0)if(!((uG(k,o,p)|0)<<24>>24)){WO(b,k);UO(b,134297);r=b+256|0;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[q+16>>2]=c[r+16>>2];c[q+20>>2]=c[r+20>>2];c[q+24>>2]=c[r+24>>2];c[q+28>>2]=c[r+28>>2];$O(b,q,1)}else{c[r>>2]=0;i=c[o>>2]|0;WO(b,i);UO(b,134297);tG(d,r)|0;e=c[o+4>>2]|0;h=KL(d,c[46373]|0,0,0)|0;f=+g[p>>2];if(!e)XO(b,134232,h,f);else XO(b,e,h,f);r=(c[r>>2]|0)>>>1&1|2;p=b+256|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];c[q+16>>2]=c[p+16>>2];c[q+20>>2]=c[p+20>>2];c[q+24>>2]=c[p+24>>2];c[q+28>>2]=c[p+28>>2];$O(b,q,r);D_(i)}e=c[(c[(c[d+16>>2]|0)+8>>2]|0)+88>>2]|0;if(e|0)wG(b,e);l=s;return}function sF(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=(c[a>>2]|0)+28|0;c[g>>2]=(c[g>>2]|0)+1;g=(d&4|0)!=0;if(!g)tF(a,b,d);a:do if(!(d&1)){if(d&16|0){JO(a);f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}KO(a);HO(a);e=Sy(b)|0;while(1){if(!e)break;uF(a,e);e=Ty(b,e)|0}IO(a);break}if(!(d&8)){f=Sy(b)|0;while(1){if(!f)break a;uF(a,f);e=Ex(b,f)|0;while(1){if(!e)break;uF(a,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0);vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}}HO(a);e=Sy(b)|0;while(1){if(!e)break;if((wF(b,e)|0)<<24>>24)uF(a,e);e=Ty(b,e)|0}IO(a);JO(a);f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;if((xF(b,e)|0)<<24>>24)vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}KO(a)}else{HO(a);e=Sy(b)|0;while(1){if(!e)break;uF(a,e);e=Ty(b,e)|0}IO(a);JO(a);f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;vF(a,e);e=Gx(b,e)|0}f=Ty(b,f)|0}KO(a)}while(0);if(g)tF(a,b,d);return}function tF(e,f,i){e=e|0;f=f|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;P=l;l=l+128|0;w=P+72|0;N=P+64|0;H=P+112|0;I=P;J=P+104|0;K=f+16|0;L=(i&4|0)!=0;M=e+16|0;x=I+32|0;y=I+16|0;A=I+8|0;B=I+24|0;C=I+48|0;D=I+40|0;E=I+56|0;F=(i&8|0)==0;G=J+4|0;v=1;while(1){j=c[K>>2]|0;if((v|0)>(c[j+180>>2]|0))break;u=c[(c[j+184>>2]|0)+(v<<2)>>2]|0;if((rG(e,u)|0)<<24>>24){if(L)tF(e,u,i);sG(e,u);r=c[M>>2]|0;s=r+208|0;if(!(c[s>>2]|0))t=(b[r+260>>1]&1)!=0;else t=1;qQ(xx(u,97006)|0);if(!(L|t^1)){q=(c[u+16>>2]|0)+16|0;c[w>>2]=c[q>>2];c[w+4>>2]=c[q+4>>2];c[w+8>>2]=c[q+8>>2];c[w+12>>2]=c[q+12>>2];c[w+16>>2]=c[q+16>>2];c[w+20>>2]=c[q+20>>2];c[w+24>>2]=c[q+24>>2];c[w+28>>2]=c[q+28>>2];XE(e,w);PO(e,c[s>>2]|0,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0)}c[H>>2]=0;j=tG(u,H)|0;if(!j)p=0;else{YO(e,j);p=c[H>>2]&1}q=u+16|0;j=d[(c[q>>2]|0)+112>>0]|0;do if(!(j&1)){if(j&2|0){j=OL(u,0,103230)|0;k=OL(u,0,103238)|0;O=29;break}if(j&8|0){j=OL(u,0,103246)|0;k=OL(u,0,103254)|0;O=29;break}if(j&4|0){j=OL(u,0,103262)|0;k=OL(u,0,103270)|0;O=29;break}j=xx(u,137741)|0;if(!j)k=0;else k=(a[j>>0]|0)==0?0:j;j=xx(u,134647)|0;if(!j)j=k;else j=(a[j>>0]|0)==0?k:j;m=xx(u,98392)|0;if(m)k=(a[m>>0]|0)==0?k:m;if(!((p|0)!=0&(k|0)!=0)){m=xx(u,137895)|0;if(m|0?a[m>>0]|0:0){k=m;O=29;break}j=(j|0)==0?134232:j;n=(k|0)==0?131718:k;c[J>>2]=0;if(!p)k=0;else O=31}else O=29}else{j=OL(u,0,103214)|0;k=OL(u,0,103222)|0;O=29}while(0);if((O|0)==29){c[J>>2]=0;j=(j|0)==0?134232:j;n=(k|0)==0?131718:k;O=31}if((O|0)==31){O=0;if(!((uG(n,J,w)|0)<<24>>24)){WO(e,n);k=1}else{WO(e,c[J>>2]|0);k=c[G>>2]|0;m=KL(u,c[46373]|0,0,0)|0;o=+g[w>>2];if(!k)XO(e,134232,m,o);else XO(e,k,m,o);k=(c[H>>2]|0)>>>1&1|2}}m=c[46372]|0;if((m|0?(z=yx(u,m)|0,z|0):0)?a[z>>0]|0:0)fP(e,+LL(u,c[46372]|0,1.0,0.0));p=c[H>>2]|0;do if(p&4){m=KL(u,c[46371]|0,1,0)|0;if(m|k|0){n=c[q>>2]|0;Q=n+16|0;c[I>>2]=c[Q>>2];c[I+4>>2]=c[Q+4>>2];c[I+8>>2]=c[Q+8>>2];c[I+12>>2]=c[Q+12>>2];n=n+32|0;c[x>>2]=c[n>>2];c[x+4>>2]=c[n+4>>2];c[x+8>>2]=c[n+8>>2];c[x+12>>2]=c[n+12>>2];h[y>>3]=+h[x>>3];h[B>>3]=+h[A>>3];h[C>>3]=+h[I>>3];h[E>>3]=+h[D>>3];if(!m)UO(e,134297);else UO(e,j);EJ(e,I,4,p,k)}}else{if(!(p&64)){if(KL(u,c[46371]|0,1,0)|0){UO(e,j);Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];$O(e,w,k);break}if(!k)break;UO(e,134297);Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];$O(e,w,k);break}Q=c[q>>2]|0;p=Q+16|0;c[I>>2]=c[p>>2];c[I+4>>2]=c[p+4>>2];c[I+8>>2]=c[p+8>>2];c[I+12>>2]=c[p+12>>2];Q=Q+32|0;c[x>>2]=c[Q>>2];c[x+4>>2]=c[Q+4>>2];c[x+8>>2]=c[Q+8>>2];c[x+12>>2]=c[Q+12>>2];h[y>>3]=+h[x>>3];h[B>>3]=+h[A>>3];h[C>>3]=+h[I>>3];h[E>>3]=+h[D>>3];if(!(KL(u,c[46371]|0,1,0)|0))UO(e,134297);else UO(e,j);if((WE(e,I,n,0)|0)>1){c[N>>2]=ry(u)|0;Pw(3,97374,N)|0}Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];$O(e,w,0)}while(0);D_(c[J>>2]|0);j=c[(c[q>>2]|0)+12>>2]|0;if(j|0)oH(e,5,j);if(t){if(L){Q=(c[q>>2]|0)+16|0;c[w>>2]=c[Q>>2];c[w+4>>2]=c[Q+4>>2];c[w+8>>2]=c[Q+8>>2];c[w+12>>2]=c[Q+12>>2];c[w+16>>2]=c[Q+16>>2];c[w+20>>2]=c[Q+20>>2];c[w+24>>2]=c[Q+24>>2];c[w+28>>2]=c[Q+28>>2];XE(e,w);PO(e,c[s>>2]|0,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0)}QO(e)}a:do if(!F){k=Sy(u)|0;while(1){if(!k)break a;uF(e,k);j=Ex(u,k)|0;while(1){if(!j)break;vF(e,j);j=Gx(u,j)|0}k=Ty(u,k)|0}}while(0);vG(e,f);if(!L)tF(e,u,i)}v=v+1|0}l=P;return}function uF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;e=j;h=c[b>>2]|0;i=d+16|0;a:do if(((c[(c[i>>2]|0)+8>>2]|0?(jG(b,ez(d)|0,d)|0)<<24>>24:0)?(k=b+256|0,c[e>>2]=c[k>>2],c[e+4>>2]=c[k+4>>2],c[e+8>>2]=c[k+8>>2],c[e+12>>2]=c[k+12>>2],c[e+16>>2]=c[k+16>>2],c[e+20>>2]=c[k+20>>2],c[e+24>>2]=c[k+24>>2],c[e+28>>2]=c[k+28>>2],(kG(d,e)|0)<<24>>24):0)?(f=(c[i>>2]|0)+116|0,g=c[h+28>>2]|0,(g|0)!=(a[f>>0]|0)):0){a[f>>0]=g;cP(b,ry(d)|0);e=NL(d,c[46399]|0,191979)|0;if(a[e>>0]|0)cP(b,e);e=NL(d,c[46387]|0,191979)|0;b:do if(a[e>>0]|0){AF(e)|0;e=185144;while(1){f=e;e=e+4|0;f=c[f>>2]|0;if(!f)break b;if((a[f>>0]|0)!=105)continue;if(!(b$(f,131253)|0))break a}}while(0);lG(b,d);ub[c[(c[(c[(c[i>>2]|0)+8>>2]|0)+4>>2]|0)+20>>2]&63](b,d);e=c[(c[i>>2]|0)+108>>2]|0;if(e|0?a[e+81>>0]|0:0)oH(b,10,e);mG(b)}while(0);l=j;return}function vF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;g=h;e=b+256|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[g+28>>2]=c[e+28>>2];a:do if((yF(d,g)|0)<<24>>24?(f=d+-48|0,(zF(b,d)|0)<<24>>24):0){i=d+48|0;e=W_(ry(c[((c[d>>2]&3|0)==3?d:i)+40>>2]|0)|0)|0;e=C_(e+3+(W_(ry(c[((c[d>>2]&3|0)==2?d:f)+40>>2]|0)|0)|0)|0)|0;b0(e,ry(c[((c[d>>2]&3|0)==3?d:i)+40>>2]|0)|0)|0;i=(ey(ez(c[((c[d>>2]&3|0)==2?d:f)+40>>2]|0)|0)|0)==0;g=e+(W_(e)|0)|0;if(i){a[g>>0]=a[138665]|0;a[g+1>>0]=a[138666]|0;a[g+2>>0]=a[138667]|0}else{a[g>>0]=a[134656]|0;a[g+1>>0]=a[134657]|0;a[g+2>>0]=a[134658]|0}p1(e,ry(c[((c[d>>2]&3|0)==2?d:f)+40>>2]|0)|0)|0;cP(b,e);D_(e);e=NL(d,c[46421]|0,191979)|0;if(a[e>>0]|0)cP(b,e);e=NL(d,c[46415]|0,191979)|0;b:do if(!(a[e>>0]|0))e=0;else{AF(e)|0;e=185144;while(1){f=e;e=e+4|0;f=c[f>>2]|0;if(!f){e=185144;break b}if((a[f>>0]|0)!=105)continue;if(!(b$(f,131253)|0))break a}}while(0);BF(b,d,e);CF(b,d,e);DF(b)}while(0);l=h;return}function wF(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0)){a=1;break}if(!(oz(c[(c[e+184>>2]|0)+(a<<2)>>2]|0,b)|0))a=a+1|0;else{a=0;break}}return a|0}function xF(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0)){a=1;break}if(!(oz(c[(c[e+184>>2]|0)+(a<<2)>>2]|0,b)|0))a=a+1|0;else{a=0;break}}return a|0}function yF(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;i=j+32|0;f=j;g=b+16|0;b=c[g>>2]|0;e=c[b+8>>2]|0;if((e|0)!=0?(e=e+8|0,c[f>>2]=c[e>>2],c[f+4>>2]=c[e+4>>2],c[f+8>>2]=c[e+8>>2],c[f+12>>2]=c[e+12>>2],c[f+16>>2]=c[e+16>>2],c[f+20>>2]=c[e+20>>2],c[f+24>>2]=c[e+24>>2],c[f+28>>2]=c[e+28>>2],c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[i+16>>2]=c[d+16>>2],c[i+20>>2]=c[d+20>>2],c[i+24>>2]=c[d+24>>2],c[i+28>>2]=c[d+28>>2],(iG(f,i)|0)!=0):0)b=1;else h=3;do if((h|0)==3){e=c[b+96>>2]|0;if(e){c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[i+16>>2]=c[d+16>>2];c[i+20>>2]=c[d+20>>2];c[i+24>>2]=c[d+24>>2];c[i+28>>2]=c[d+28>>2];if((VM(e,i)|0)<<24>>24){b=1;break}b=c[g>>2]|0}b=c[b+108>>2]|0;if((b|0?a[b+81>>0]|0:0)?(c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],c[i+16>>2]=c[d+16>>2],c[i+20>>2]=c[d+20>>2],c[i+24>>2]=c[d+24>>2],c[i+28>>2]=c[d+28>>2],(VM(b,i)|0)<<24>>24):0){b=1;break}b=0}while(0);l=j;return b|0}function zF(b,d){b=b|0;d=d|0;var e=0,f=0;a:do if((c[b+156>>2]|0)>=2?(e=NL(d,c[46420]|0,191979)|0,(eG(b,e)|0)<<24>>24==0):0)if(!(a[e>>0]|0)){e=0;while(1){if((e|0)>=2){e=0;break a}f=(e|0)==1;f=NL(c[((c[d>>2]&3|0)==((f?2:3)|0)?d:d+((f?-1:1)*48|0)|0)+40>>2]|0,c[46397]|0,191979)|0;if(!(a[f>>0]|0)){e=1;break a}if(!((eG(b,f)|0)<<24>>24))e=e+1|0;else{e=1;break}}}else e=0;else e=1;while(0);return e|0}function AF(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+192|0;o=p+24|0;n=p+16|0;m=p+8|0;k=p;g=p+48|0;j=p+32|0;if(a[97256]|0){Tw(185408,128,191746);a[97256]=0}Tw(j,128,p+56|0);c[g>>2]=b;h=j+4|0;i=j+8|0;d=0;e=0;a:while(1){f=d;b:while(1)switch(cG(g,j)|0){case 0:{d=21;break a}case 40:if(!(f<<24>>24)){f=1;continue b}else{d=7;break a}case 41:if(!(f<<24>>24)){d=9;break a}else{f=0;continue b}default:break b}if(!(f<<24>>24)){if((e|0)==63){d=12;break}d=c[46353]|0;if(d>>>0>=(c[46354]|0)>>>0){Uw(185408,1)|0;d=c[46353]|0}c[46353]=d+1;a[d>>0]=0;c[185144+(e<<2)>>2]=c[46353];e=e+1|0}d=c[h>>2]|0;if(d>>>0>=(c[i>>2]|0)>>>0){Uw(j,1)|0;d=c[h>>2]|0}a[d>>0]=0;d=c[j>>2]|0;c[h>>2]=d;Ww(185408,d)|0;d=c[46353]|0;if(d>>>0>=(c[46354]|0)>>>0){Uw(185408,1)|0;d=c[46353]|0}c[46353]=d+1;a[d>>0]=0;d=f}do if((d|0)==7){c[k>>2]=b;Pw(1,97257,k)|0;c[46286]=0;Xw(j)}else if((d|0)==9){c[m>>2]=b;Pw(1,97291,m)|0;c[46286]=0;Xw(j)}else if((d|0)==12){c[n>>2]=b;Pw(0,97319,n)|0;c[46349]=0;Xw(j)}else if((d|0)==21){if(f<<24>>24){c[o>>2]=b;Pw(1,97342,o)|0;c[46286]=0;Xw(j);break}c[185144+(e<<2)>>2]=0;Xw(j);d=c[46353]|0;if(d>>>0>=(c[46354]|0)>>>0){Uw(185408,1)|0;d=c[46353]|0}a[d>>0]=0;c[46353]=c[46352]}while(0);l=p;return 185144}function BF(d,f,g){d=d|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+160|0;y=A+24|0;w=A+20|0;v=A+16|0;o=A;p=A+32|0;x=c[d+152>>2]|0;c[y>>2]=0;c[w>>2]=0;c[v>>2]=0;z=NE(d)|0;c[z+4>>2]=3;c[z+8>>2]=f;c[z+12>>2]=9;t=f+16|0;n=c[(c[t>>2]|0)+96>>2]|0;if((n|0?(a[n+82>>0]|0)==0:0)?(RL(xx(f,97079)|0,0)|0)<<24>>24:0){n=z+260|0;b[n>>1]=b[n>>1]|512}if(g|0?c[(c[t>>2]|0)+8>>2]|0:0)YO(d,g);g=c[46436]|0;if((g|0?(i=yx(f,g)|0,i|0):0)?a[i>>0]|0:0)fP(d,+LL(f,c[46436]|0,1.0,0.0));do if(x&16777216|0){g=f+48|0;if((e[(c[(ez(c[((c[f>>2]&3|0)==3?f:g)+40>>2]|0)|0)+16>>2]|0)+178>>1]|0)>2){m=+h[(c[(c[(c[((c[f>>2]&3|0)==3?f:g)+40>>2]|0)+16>>2]|0)+132>>2]|0)+16>>3]*72.0;h[z+176>>3]=+(~~(m+(m>=0.0?.5:-.5))|0);m=+h[(c[(c[(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0)+16>>3]*72.0;h[z+184>>3]=+(~~(m+(m>=0.0?.5:-.5))|0);break}else{n=z+176|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;break}}while(0);if(x&32768|0){n=c[t>>2]|0;g=c[n+96>>2]|0;if(!g)g=c[z+192>>2]|0;else{g=c[g>>2]|0;c[z+192>>2]=g}i=z+196|0;c[i>>2]=g;k=z+204|0;c[k>>2]=g;j=z+200|0;c[j>>2]=g;g=c[n+108>>2]|0;if(g|0)c[i>>2]=c[g>>2];g=c[n+104>>2]|0;if(g|0)c[j>>2]=c[g>>2];g=c[n+100>>2]|0;if(g|0)c[k>>2]=c[g>>2]}if(!(x&65536))j=0;else{Tw(o,128,p);c[z+212>>2]=pH(QE(d,f,o)|0,f)|0;Xw(o);g=xx(f,137973)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=31;else{g=xx(f,108395)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=31;else i=0}if((q|0)==31)i=pH(g,f)|0;g=xx(f,97092)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=36;else q=34;do if((q|0)==34){g=xx(f,97101)|0;if(g|0?a[g>>0]|0:0){q=36;break}if(i|0){g=n1(i)|0;q=39}}while(0);if((q|0)==36){g=pH(g,f)|0;q=39}if((q|0)==39)c[z+208>>2]=g;g=xx(f,97109)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=44;else q=42;do if((q|0)==42){g=xx(f,97119)|0;if(g|0?a[g>>0]|0:0){q=44;break}if(i|0){g=n1(i)|0;q=47}}while(0);if((q|0)==44){g=pH(g,f)|0;q=47}if((q|0)==47)c[z+216>>2]=g;g=xx(f,97128)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=52;else q=50;do if((q|0)==50){g=xx(f,97137)|0;if(g|0?a[g>>0]|0:0){q=52;break}if(i|0)c[z+220>>2]=n1(i)|0}while(0);if((q|0)==52){c[z+220>>2]=pH(g,f)|0;q=z+260|0;b[q>>1]=b[q>>1]|128}g=xx(f,97145)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=59;else q=57;do if((q|0)==57){g=xx(f,97154)|0;if(g|0?a[g>>0]|0:0){q=59;break}if(i|0)c[z+224>>2]=n1(i)|0}while(0);if((q|0)==59){c[z+224>>2]=pH(g,f)|0;q=z+260|0;b[q>>1]=b[q>>1]|256}j=i}do if(x&8388608){g=xx(f,138006)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)i=pH(g,f)|0;else i=0;g=xx(f,97162)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){q=z+260|0;b[q>>1]=b[q>>1]|64;g=pH(g,f)|0;q=72}else q=70;if((q|0)==70?i|0:0){g=n1(i)|0;q=72}if((q|0)==72)c[z+244>>2]=g;g=xx(f,97173)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){g=pH(g,f)|0;q=78}else q=76;if((q|0)==76?i|0:0){g=n1(i)|0;q=78}if((q|0)==78)c[z+248>>2]=g;g=xx(f,97185)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){c[z+252>>2]=pH(g,f)|0;p=z+260|0;b[p>>1]=b[p>>1]|16}else q=82;if((q|0)==82?i|0:0)c[z+252>>2]=n1(i)|0;g=xx(f,97196)|0;if(g|0?a[g>>0]|0:0){q=z+260|0;b[q>>1]=b[q>>1]|32;c[z+256>>2]=pH(g,f)|0;break}if(i)c[z+256>>2]=n1(i)|0;else i=0}else i=0;while(0);do if(x&4194304|0){g=xx(f,138019)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0)q=94;else q=92;do if((q|0)==92){g=xx(f,97207)|0;if(g|0?a[g>>0]|0:0){q=94;break}g=c[z+192>>2]|0;if(g|0)c[z+228>>2]=n1(g)|0}while(0);if((q|0)==94){p=WF(g,f)|0;c[z+228>>2]=pH(p,f)|0;D_(p);p=z+260|0;b[p>>1]=b[p>>1]|1}g=xx(f,97219)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){p=WF(g,f)|0;c[z+232>>2]=pH(p,f)|0;D_(p);p=z+260|0;b[p>>1]=b[p>>1]|8}else q=100;if((q|0)==100?(r=c[z+192>>2]|0,r|0):0)c[z+232>>2]=n1(r)|0;g=xx(f,97232)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){r=WF(g,f)|0;c[z+236>>2]=pH(r,f)|0;D_(r);r=z+260|0;b[r>>1]=b[r>>1]|2}else q=105;if((q|0)==105?(s=c[z+200>>2]|0,s|0):0)c[z+236>>2]=n1(s)|0;g=xx(f,97244)|0;if(g|0?a[g>>0]|0:0){s=WF(g,f)|0;c[z+240>>2]=pH(s,f)|0;D_(s);s=z+260|0;b[s>>1]=b[s>>1]|4;break}g=c[z+204>>2]|0;if(g|0)c[z+240>>2]=n1(g)|0}while(0);D_(j);D_(i);do if(x&4259840|0?(u=c[(c[t>>2]|0)+8>>2]|0,u|0):0){if(!(c[z+208>>2]|0)){if((x&524288|0)==0|(c[z+228>>2]|0)==0)break}else if(!(x&524288))break;m=+h[(c[d+16>>2]|0)+152>>3]*.5;m=m>2.0?m:2.0;i=c[u+4>>2]|0;g=0;while(1){if((g|0)>=(i|0))break;XF(y,w,v,(c[u>>2]|0)+(g*48|0)|0,m);g=g+1|0}j=c[v>>2]|0;c[z+276>>2]=j;k=c[w>>2]|0;c[z+280>>2]=k;if(!(x&8192)){g=0;i=0;while(1){if((i|0)>=(j|0))break;g=(c[k+(i<<2)>>2]|0)+g|0;i=i+1|0}y=c[y>>2]|0;yO(d,y,y,g)|0;g=y}else g=c[y>>2]|0;c[z+284>>2]=g;c[z+264>>2]=2;c[z+272>>2]=g;c[z+268>>2]=c[k>>2]}while(0);NO(d,f);g=c[z+208>>2]|0;if(!((g|0)==0?!(b[z+260>>1]&1):0))PO(d,g,c[z+228>>2]|0,c[z+244>>2]|0,c[z+212>>2]|0);l=A;return}function CF(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0,R=0,S=0;P=l;l=l+240|0;L=P+224|0;K=P+208|0;x=P+128|0;w=P+112|0;O=P+64|0;C=P+48|0;D=P+32|0;E=P+16|0;F=P;G=P+192|0;H=P+176|0;y=P+160|0;B=P+144|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;M=+h[(c[b+16>>2]|0)+152>>3];qQ(xx(e,97006)|0);J=e+16|0;a:do if(c[(c[J>>2]|0)+8>>2]|0){N=+LL(e,c[46418]|0,1.0,0.0);k=NL(e,c[46406]|0,191979)|0;v=(f|0)!=0;b:do if(v){g=f;while(1){i=g;g=g+4|0;i=c[i>>2]|0;if(!i){o=0;break b}if((a[i>>0]|0)!=116)continue;if(!(b$(i,108091)|0)){o=1;break}}}else o=0;while(0);j=k;q=0;i=0;c:while(1){switch(a[j>>0]|0){case 0:break c;case 58:{g=q+1|0;break}case 59:{g=q;i=i+1|0;break}default:g=q}j=j+1|0;q=g}n=(q|0)!=0;if((i|0)!=0&n)if(!(KF(b,e,f,k,q+1|0,N,M)|0))break;else m=134232;else m=k;g=d[(c[J>>2]|0)+115>>0]|0;if(!(g&1))if(!(g&2))if(!(g&8))if(!(g&4)){i=m;j=OL(e,c[46407]|0,m)|0}else{j=103270;g=103262;k=185632;i=185632;p=18}else{j=103254;g=103246;k=185632;i=185632;p=18}else{j=103238;g=103230;k=185632;i=185632;p=18}else{j=103222;g=103214;k=185632;i=185632;p=18}if((p|0)==18){i=c[i>>2]|0;i=OL(e,i,LF(m,g)|0)|0;g=OL(e,c[k>>2]|0,j)|0;if((i|0)==(m|0)){i=m;j=g}else{UO(b,i);j=g}}if((j|0)!=(m|0))WO(b,j);if(o<<24>>24){i=(a[i>>0]|0)==0?134232:i;g=(a[j>>0]|0)==0?134232:j;UO(b,134297);WO(b,i);u=O;r=c[c[(c[J>>2]|0)+8>>2]>>2]|0;s=u+48|0;do{c[u>>2]=c[r>>2];u=u+4|0;r=r+4|0}while((u|0)<(s|0));J=kL(O,MF(e)|0,M,0,0)|0;_O(b,c[J+8>>2]|0,c[J>>2]|0,1);NF(J);UO(b,i);if((g|0)!=(i|0))WO(b,g);g=c[O+8>>2]|0;if(g|0){I=O+16|0;J=c[O>>2]|0;c[K>>2]=c[I>>2];c[K+4>>2]=c[I+4>>2];c[K+8>>2]=c[I+8>>2];c[K+12>>2]=c[I+12>>2];c[L>>2]=c[J>>2];c[L+4>>2]=c[J+4>>2];c[L+8>>2]=c[J+8>>2];c[L+12>>2]=c[J+12>>2];KE(b,2,K,L,N,M,g)}g=c[O+12>>2]|0;if(!g)break;J=O+32|0;O=(c[O>>2]|0)+((c[O+4>>2]|0)+-1<<4)|0;c[K>>2]=c[J>>2];c[K+4>>2]=c[J+4>>2];c[K+8>>2]=c[J+8>>2];c[K+12>>2]=c[J+12>>2];c[L>>2]=c[O>>2];c[L+4>>2]=c[O+4>>2];c[L+8>>2]=c[O+8>>2];c[L+12>>2]=c[O+12>>2];KE(b,3,K,L,N,M,g);break}g=c[J>>2]|0;if(!n){do if(!(a[g+115>>0]&3)){if(a[i>>0]|0){UO(b,i);WO(b,j);break}UO(b,134232);if(!(a[j>>0]|0)){WO(b,134232);break}else{WO(b,j);break}}while(0);k=b+152|0;m=O+4|0;n=O+8|0;o=O+12|0;p=O+32|0;q=O+16|0;j=0;while(1){g=c[(c[J>>2]|0)+8>>2]|0;if((j|0)>=(c[g+4>>2]|0))break a;u=O;r=(c[g>>2]|0)+(j*48|0)|0;s=u+48|0;do{c[u>>2]=c[r>>2];u=u+4|0;r=r+4|0}while((u|0)<(s|0));g=c[O>>2]|0;i=c[m>>2]|0;do if(!(c[k>>2]&16384)){aP(b,g,i,0,0,0);g=c[n>>2]|0;if(g|0){I=c[O>>2]|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>>2];c[K+12>>2]=c[q+12>>2];c[L>>2]=c[I>>2];c[L+4>>2]=c[I+4>>2];c[L+8>>2]=c[I+8>>2];c[L+12>>2]=c[I+12>>2];KE(b,2,K,L,N,M,g)}g=c[o>>2]|0;if(g|0){I=(c[O>>2]|0)+((c[m>>2]|0)+-1<<4)|0;c[K>>2]=c[p>>2];c[K+4>>2]=c[p+4>>2];c[K+8>>2]=c[p+8>>2];c[K+12>>2]=c[p+12>>2];c[L>>2]=c[I>>2];c[L+4>>2]=c[I+4>>2];c[L+8>>2]=c[I+8>>2];c[L+12>>2]=c[I+12>>2];KE(b,3,K,L,N,M,g)}if((c[(c[(c[J>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(!(c[n>>2]|0)){if(!(v&(c[o>>2]|0)!=0))break}else if(!v)break;YO(b,f)}}else aP(b,g,i,c[n>>2]|0,c[o>>2]|0,0);while(0);j=j+1|0}}I=c[(c[g+8>>2]|0)+4>>2]|0;A=I*48|0;z=C_(A)|0;A=C_(A)|0;t=+(q+2|0)*.5;v=O+4|0;p=C+8|0;q=D+8|0;e=E+8|0;f=F+8|0;o=0;while(1){if((o|0)>=(I|0))break;u=O;r=(c[c[(c[J>>2]|0)+8>>2]>>2]|0)+(o*48|0)|0;s=u+48|0;do{c[u>>2]=c[r>>2];u=u+4|0;r=r+4|0}while((u|0)<(s|0));g=c[v>>2]|0;c[z+(o*48|0)+4>>2]=g;c[A+(o*48|0)+4>>2]=g;n=g<<4;m=C_(n)|0;c[z+(o*48|0)>>2]=m;n=C_(n)|0;c[A+(o*48|0)>>2]=n;k=c[O>>2]|0;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];c[F+8>>2]=c[k+8>>2];c[F+12>>2]=c[k+12>>2];k=0;while(1){if((k|0)>=(g+-1|0))break;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];c[C+8>>2]=c[F+8>>2];c[C+12>>2]=c[F+12>>2];g=k+1|0;j=(c[O>>2]|0)+(g<<4)|0;c[D>>2]=c[j>>2];c[D+4>>2]=c[j+4>>2];c[D+8>>2]=c[j+8>>2];c[D+12>>2]=c[j+12>>2];j=m+(k<<4)|0;if(!k){c[K>>2]=c[C>>2];c[K+4>>2]=c[C+4>>2];c[K+8>>2]=c[C+8>>2];c[K+12>>2]=c[C+12>>2];c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[L+8>>2]=c[D+8>>2];c[L+12>>2]=c[D+12>>2];OF(G,K,L);c[j>>2]=c[G>>2];c[j+4>>2]=c[G+4>>2];c[j+8>>2]=c[G+8>>2];c[j+12>>2]=c[G+12>>2]}else{c[K>>2]=c[E>>2];c[K+4>>2]=c[E+4>>2];c[K+8>>2]=c[E+8>>2];c[K+12>>2]=c[E+12>>2];c[L>>2]=c[D>>2];c[L+4>>2]=c[D+4>>2];c[L+8>>2]=c[D+8>>2];c[L+12>>2]=c[D+12>>2];OF(H,K,L);c[j>>2]=c[H>>2];c[j+4>>2]=c[H+4>>2];c[j+8>>2]=c[H+8>>2];c[j+12>>2]=c[H+12>>2]}R=c[O>>2]|0;s=k+2|0;S=R+(s<<4)|0;c[E>>2]=c[S>>2];c[E+4>>2]=c[S+4>>2];c[E+8>>2]=c[S+8>>2];c[E+12>>2]=c[S+12>>2];u=k+3|0;R=R+(u<<4)|0;c[F>>2]=c[R>>2];c[F+4>>2]=c[R+4>>2];c[F+8>>2]=c[R+8>>2];c[F+12>>2]=c[R+12>>2];Q=m+(g<<4)|0;r=m+(s<<4)|0;c[w>>2]=c[C>>2];c[w+4>>2]=c[C+4>>2];c[w+8>>2]=c[C+8>>2];c[w+12>>2]=c[C+12>>2];c[x>>2]=c[D>>2];c[x+4>>2]=c[D+4>>2];c[x+8>>2]=c[D+8>>2];c[x+12>>2]=c[D+12>>2];c[K>>2]=c[S>>2];c[K+4>>2]=c[S+4>>2];c[K+8>>2]=c[S+8>>2];c[K+12>>2]=c[S+12>>2];c[L>>2]=c[R>>2];c[L+4>>2]=c[R+4>>2];c[L+8>>2]=c[R+8>>2];c[L+12>>2]=c[R+12>>2];PF(y,w,x,K,L);c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];c[Q>>2]=c[y>>2];c[Q+4>>2]=c[y+4>>2];c[Q+8>>2]=c[y+8>>2];c[Q+12>>2]=c[y+12>>2];h[n+(k<<4)>>3]=+h[C>>3]-+h[j>>3]*t;h[n+(k<<4)+8>>3]=+h[p>>3]-+h[m+(k<<4)+8>>3]*t;h[n+(g<<4)>>3]=+h[D>>3]-+h[Q>>3]*t;h[n+(g<<4)+8>>3]=+h[q>>3]-+h[m+(g<<4)+8>>3]*t;h[n+(s<<4)>>3]=+h[E>>3]-+h[r>>3]*t;h[n+(s<<4)+8>>3]=+h[e>>3]-+h[m+(s<<4)+8>>3]*t;k=u;g=c[v>>2]|0}S=m+(k<<4)|0;c[K>>2]=c[E>>2];c[K+4>>2]=c[E+4>>2];c[K+8>>2]=c[E+8>>2];c[K+12>>2]=c[E+12>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];c[L+8>>2]=c[F+8>>2];c[L+12>>2]=c[F+12>>2];OF(B,K,L);c[S>>2]=c[B>>2];c[S+4>>2]=c[B+4>>2];c[S+8>>2]=c[B+8>>2];c[S+12>>2]=c[B+12>>2];h[n+(k<<4)>>3]=+h[F>>3]-+h[S>>3]*t;h[n+(k<<4)+8>>3]=+h[f>>3]-+h[m+(k<<4)+8>>3]*t;o=o+1|0}s=n1(i)|0;f=0;r=i;g=i;j=i;i=s;while(1){i=k1(i,104958)|0;if(!i)break;e=(a[i>>0]|0)==0?134232:i;if((e|0)!=(j|0))if(!(a[(c[J>>2]|0)+115>>0]&3)){UO(b,e);WO(b,e);j=e}else j=e;m=(f|0)==0;n=f>>>0<2;i=0;while(1){if((i|0)>=(I|0))break;o=c[A+(i*48|0)>>2]|0;p=c[z+(i*48|0)>>2]|0;q=c[A+(i*48|0)+4>>2]|0;k=0;while(1){if((k|0)>=(q|0))break;S=o+(k<<4)|0;h[S>>3]=+h[S>>3]+ +h[p+(k<<4)>>3];S=o+(k<<4)+8|0;h[S>>3]=+h[S>>3]+ +h[p+(k<<4)+8>>3];k=k+1|0}aP(b,o,q,0,0,0);i=i+1|0}f=f+1|0;r=m?e:r;g=n?e:g;i=0}i=c[O+8>>2]|0;if(!i)i=0;else{if(g){if(!(a[(c[J>>2]|0)+115>>0]&3)){UO(b,g);WO(b,g)}}else g=0;R=O+16|0;S=c[O>>2]|0;c[K>>2]=c[R>>2];c[K+4>>2]=c[R+4>>2];c[K+8>>2]=c[R+8>>2];c[K+12>>2]=c[R+12>>2];c[L>>2]=c[S>>2];c[L+4>>2]=c[S+4>>2];c[L+8>>2]=c[S+8>>2];c[L+12>>2]=c[S+12>>2];KE(b,2,K,L,N,M,i);i=g}j=O+12|0;g=c[j>>2]|0;if(g|0){if((i|0)!=(r|0)?(a[(c[J>>2]|0)+115>>0]&3)==0:0){UO(b,r);WO(b,r);g=c[j>>2]|0}R=O+32|0;S=(c[O>>2]|0)+((c[v>>2]|0)+-1<<4)|0;c[K>>2]=c[R>>2];c[K+4>>2]=c[R+4>>2];c[K+8>>2]=c[R+8>>2];c[K+12>>2]=c[R+12>>2];c[L>>2]=c[S>>2];c[L+4>>2]=c[S+4>>2];c[L+8>>2]=c[S+8>>2];c[L+12>>2]=c[S+12>>2];KE(b,3,K,L,N,M,g)}D_(s);g=0;while(1){if((g|0)>=(I|0))break;D_(c[z+(g*48|0)>>2]|0);D_(c[A+(g*48|0)>>2]|0);g=g+1|0}D_(z);D_(A)}while(0);l=P;return}function DF(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=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;x=l;l=l+64|0;r=x+48|0;u=x+32|0;t=x+16|0;s=x;w=c[a+16>>2]|0;v=c[w+8>>2]|0;q=w+208|0;if(!((c[q>>2]|0)==0?!(b[w+260>>1]&1):0))d=3;a:do if((d|0)==3?(QO(a),p=w+276|0,e=c[p>>2]|0,e|0):0){h=w+280|0;d=c[h>>2]|0;i=w+268|0;j=w+284|0;k=w+272|0;m=w+228|0;n=w+244|0;o=w+212|0;f=c[d>>2]|0;g=1;while(1){if((g|0)>=(e|0))break a;c[i>>2]=c[d+(g<<2)>>2];c[k>>2]=(c[j>>2]|0)+(f<<4);PO(a,c[q>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);QO(a);y=c[h>>2]|0;f=(c[y+(g<<2)>>2]|0)+f|0;g=g+1|0;e=c[p>>2]|0;d=y}}while(0);c[w+268>>2]=0;c[w+272>>2]=0;q=v+16|0;d=c[q>>2]|0;e=c[d+8>>2]|0;if(!e)f=w+260|0;else{p=c[e>>2]|0;d=c[p>>2]|0;y=c[p+8>>2]|0;o=p+16|0;c[t>>2]=c[o>>2];c[t+4>>2]=c[o+4>>2];c[t+8>>2]=c[o+8>>2];c[t+12>>2]=c[o+12>>2];p=p+32|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];if(!y){c[u>>2]=c[d>>2];c[u+4>>2]=c[d+4>>2];c[u+8>>2]=c[d+8>>2];c[u+12>>2]=c[d+12>>2]}else{c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2]}f=w+260|0;p=b[f>>1]|0;o=c[w+220>>2]|0;c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];EF(a,r,(p<<8&65535)<<16>>16>>15&255,o,(p<<14&65535)<<16>>16>>15&255);p=c[(c[q>>2]|0)+8>>2]|0;o=c[p>>2]|0;p=(c[p+4>>2]|0)+-1|0;d=c[o+(p*48|0)>>2]|0;e=c[o+(p*48|0)+4>>2]|0;y=c[o+(p*48|0)+12>>2]|0;n=o+(p*48|0)+16|0;c[t>>2]=c[n>>2];c[t+4>>2]=c[n+4>>2];c[t+8>>2]=c[n+8>>2];c[t+12>>2]=c[n+12>>2];t=o+(p*48|0)+32|0;c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];c[s+12>>2]=c[t+12>>2];if(!y){y=d+(e+-1<<4)|0;c[u>>2]=c[y>>2];c[u+4>>2]=c[y+4>>2];c[u+8>>2]=c[y+8>>2];c[u+12>>2]=c[y+12>>2]}else{c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];c[u+8>>2]=c[s+8>>2];c[u+12>>2]=c[s+12>>2]}d=b[f>>1]|0;y=c[w+224>>2]|0;c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];EF(a,r,(d<<7&65535)<<16>>16>>15&255,y,(d<<13&65535)<<16>>16>>15&255);d=c[q>>2]|0}e=c[d+96>>2]|0;g=(b[f>>1]<<12&65535)<<16>>16>>15<<16>>16;m=w+216|0;h=c[m>>2]|0;n=w+232|0;i=c[n>>2]|0;o=w+248|0;j=c[o>>2]|0;p=w+212|0;k=c[p>>2]|0;if(!((QL(NL(v,c[46416]|0,134226)|0)|0)<<24>>24))d=0;else d=c[(c[q>>2]|0)+8>>2]|0;FF(a,e,11,g,h,i,j,k,d);j=c[(c[q>>2]|0)+108>>2]|0;k=(b[f>>1]<<12&65535)<<16>>16>>15<<16>>16;i=c[m>>2]|0;h=c[n>>2]|0;e=c[o>>2]|0;g=c[p>>2]|0;if(!((QL(NL(v,c[46416]|0,134226)|0)|0)<<24>>24))d=0;else d=c[(c[q>>2]|0)+8>>2]|0;FF(a,j,11,k,i,h,e,g,d);FF(a,c[(c[q>>2]|0)+100>>2]|0,7,(b[f>>1]<<13&65535)<<16>>16>>15<<16>>16,c[w+224>>2]|0,c[w+240>>2]|0,c[w+256>>2]|0,c[p>>2]|0,0);FF(a,c[(c[q>>2]|0)+104>>2]|0,6,(b[f>>1]<<14&65535)<<16>>16>>15<<16>>16,c[w+220>>2]|0,c[w+236>>2]|0,c[w+252>>2]|0,c[p>>2]|0,0);OO(a);OE(a);l=x;return}function EF(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j;i=c[a+16>>2]|0;if(!(e<<24>>24))f=c[i+208>>2]|0;if(!(g<<24>>24==0?((f|0)==0?(b[i+260>>1]&1)==0:0):0)){c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];JF(a,h)}l=j;return}function FF(b,d,e,f,g,h,i,j,k){b=b|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;var m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;o=r;q=c[b+152>>2]|0;if(d|0?a[d+81>>0]|0:0){if(!j)n=0;else{n=uH((W_(j)|0)+11|0)|0;switch(e|0){case 11:{m=105198;break}case 7:{m=98557;break}case 6:{m=98567;break}default:qa(135312,96880,2730,97018)}c[o>>2]=j;c[o+4>>2]=m;Y0(n,97034,o)|0}o=b+16|0;j=(c[o>>2]|0)+12|0;p=c[j>>2]|0;c[j>>2]=e;j=(f|0)!=0|(g|0)!=0;m=(q&4|0)==0;if(j&m){GF(b,d);PO(b,g,h,i,n)}oH(b,e,d);if(k|0)HF(b,d,k);if(j){if(!m){GF(b,d);PO(b,g,h,i,n)}QO(b)}D_(n);c[(c[o>>2]|0)+12>>2]=p}l=r;return}function GF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;d=c[a+16>>2]|0;e=c[a+152>>2]|0;if(e&4259840|0){f=e&131072;i=f>>>16^2;c[d+264>>2]=i;j=d+268|0;c[j>>2]=i+2;i=d+272|0;D_(c[i>>2]|0);d=uH(c[j>>2]<<4)|0;c[i>>2]=d;i=b+56|0;j=b+24|0;h[d>>3]=+h[i>>3]-+h[j>>3]*.5;g=b+64|0;b=b+32|0;h[d+8>>3]=+h[g>>3]-+h[b>>3]*.5;h[d+16>>3]=+h[j>>3]*.5+ +h[i>>3];h[d+24>>3]=+h[b>>3]*.5+ +h[g>>3];if(!(e&8192))yO(a,d,d,2)|0;if(!f)WG(d)}return}function HF(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+96|0;g=o+80|0;i=o+32|0;j=o+16|0;k=o;f=c[d>>2]|0;while(1){m=a[f>>0]|0;if(!(m<<24>>24))break;if(!(B$(m&255)|0)){n=4;break}else f=f+1|0}if((n|0)==4){p=+h[d+24>>3];m=d+56|0;IF(i,+h[m>>3]+p*.5,+h[d+64>>3]-+h[d+32>>3]*.5);n=i+16|0;IF(j,+h[i>>3]-p,+h[i+8>>3]);c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];n=i+32|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];bM(k,e,g);c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];YO(b,c[(c[b>>2]|0)+336>>2]|0);UO(b,c[d+8>>2]|0);bP(b,i,3)}l=o;return}function IF(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function JF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0;d=c[a+16>>2]|0;e=c[a+152>>2]|0;if(e&4259840|0){f=e&131072;j=f>>>16^2;c[d+264>>2]=j;k=d+268|0;c[k>>2]=j+2;j=d+272|0;D_(c[j>>2]|0);d=uH(c[k>>2]<<4)|0;c[j>>2]=d;i=+h[b>>3];h[d>>3]=i+-3.0;g=+h[b+8>>3];h[d+8>>3]=g+-3.0;h[d+16>>3]=i+3.0;h[d+24>>3]=g+3.0;if(!(e&8192))yO(a,d,d,2)|0;if(!f)WG(d)}return}function KF(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=+h;i=+i;var j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+256|0;D=J+224|0;C=J+208|0;j=J+192|0;F=J+144|0;G=J+96|0;H=J+48|0;E=J;k=J+240|0;e=TE(e,f,k)|0;if((e|0)>1){z=b+48|0;A=ez(c[((c[b>>2]&3|0)==3?b:z)+40>>2]|0)|0;z=ry(c[((c[b>>2]&3|0)==3?b:z)+40>>2]|0)|0;A=(ey(A)|0)!=0;B=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[j>>2]=z;c[j+4>>2]=A?97053:97058;c[j+8>>2]=B;Pw(3,97063,j)|0;if((e|0)==2)e=1;else I=4}else if((e|0)==1)e=1;else I=4;if((I|0)==4){B=b+16|0;r=c[k>>2]|0;s=r+8|0;t=H+4|0;u=F+8|0;v=F+12|0;w=(d|0)!=0;q=(d|0)==0;x=F+32|0;y=F+4|0;z=F+16|0;A=E+4|0;e=0;p=0;while(1){f=c[(c[B>>2]|0)+8>>2]|0;if((p|0)>=(c[f+4>>2]|0))break;j=F;f=(c[f>>2]|0)+(p*48|0)|0;b=j+48|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(b|0));b=1;m=1.0;o=c[s>>2]|0;a:while(1){f=c[o>>2]|0;if(!f)break;k=o+4|0;n=+g[k>>2];do if(n<1.0e-05&n>-1.0e-05)f=b;else{UO(a,f);n=+g[k>>2];m=m-n;e=c[o>>2]|0;if(b|0){UF(F,n,H,E);k=c[H>>2]|0;aP(a,k,c[t>>2]|0,0,0,0);D_(k);if(m<1.0e-05&m>-1.0e-05){I=11;break a}else{f=0;break}}if(m<1.0e-05&m>-1.0e-05){I=13;break a}j=G;f=E;b=j+48|0;do{c[j>>2]=c[f>>2];j=j+4|0;f=f+4|0}while((j|0)<(b|0));n=+g[k>>2];UF(G,n/(m+n),H,E);D_(c[G>>2]|0);f=c[H>>2]|0;aP(a,f,c[t>>2]|0,0,0,0);D_(f);f=0}while(0);b=f;o=o+12|0}if((I|0)==11){I=0;D_(c[E>>2]|0)}else if((I|0)==13){I=0;o=c[E>>2]|0;aP(a,o,c[A>>2]|0,0,0,0);D_(o)}if(c[u>>2]|0){UO(a,c[c[s>>2]>>2]|0);WO(a,c[c[s>>2]>>2]|0);k=c[F>>2]|0;o=c[u>>2]|0;c[C>>2]=c[z>>2];c[C+4>>2]=c[z+4>>2];c[C+8>>2]=c[z+8>>2];c[C+12>>2]=c[z+12>>2];c[D>>2]=c[k>>2];c[D+4>>2]=c[k+4>>2];c[D+8>>2]=c[k+8>>2];c[D+12>>2]=c[k+12>>2];KE(a,2,C,D,h,i,o)}if(c[v>>2]|0){UO(a,e);WO(a,e);k=(c[F>>2]|0)+((c[y>>2]|0)+-1<<4)|0;o=c[v>>2]|0;c[C>>2]=c[x>>2];c[C+4>>2]=c[x+4>>2];c[C+8>>2]=c[x+8>>2];c[C+12>>2]=c[x+12>>2];c[D>>2]=c[k>>2];c[D+4>>2]=c[k+4>>2];c[D+8>>2]=c[k+8>>2];c[D+12>>2]=c[k+12>>2];KE(a,3,C,D,h,i,o)}do if((c[(c[(c[B>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(!(c[u>>2]|0)){if(!(w&(c[v>>2]|0)!=0))break}else if(q)break;YO(a,d)}while(0);p=p+1|0}UE(r);e=0}l=J;return e|0}function LF(b,d){b=b|0;d=d|0;var e=0,f=0;e=1;a:while(1){switch(a[b>>0]|0){case 0:break a;case 58:{e=e+1|0;break}default:{}}b=b+1|0}f=O((W_(d)|0)+1|0,e)|0;b=f+10|0;if((c[46350]|0)<(f|0)){c[46350]=b;b=F_(c[46351]|0,b)|0;c[46351]=b}else b=c[46351]|0;b0(b,d)|0;while(1){e=e+-1|0;b=c[46351]|0;if(!e)break;f=b+(W_(b)|0)|0;a[f>>0]=58;a[f+1>>0]=0;p1(b,d)|0}return b|0}function MF(b){b=b|0;var d=0,e=0;d=c[46414]|0;a:do if(!d)e=7;else{d=yx(b,d)|0;switch(a[d>>0]|0){case 110:if(!(b$(d,132627)|0)){d=1;break a}else{e=7;break a}case 102:if(!(b$(d,97040)|0)){d=2;break a}else{e=7;break a}case 98:{if(!(b$(d,97048)|0)){d=3;break a}if(!(b$(d,108195)|0)){d=4;break a}else{e=7;break a}}default:{e=7;break a}}}while(0);if((e|0)==7){d=(ey(ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)|0)!=0;d=d?2:1}return d|0}function NF(a){a=a|0;if(a|0){D_(c[a+8>>2]|0);D_(a)}return}function OF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;e=+h[b>>3]-+h[c>>3];f=+h[b+8>>3]-+h[c+8>>3];d=2.0/+C(+(e*e+.0001+f*f));h[a>>3]=d*f;h[a+8>>3]=-(e*d);return}function PF(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0;g=+h[c>>3]-+h[d>>3];i=+h[c+8>>3]-+h[d+8>>3];f=+C(+(i*i+g*g));if(f<.0001){j=+h[b>>3]-+h[e>>3];f=+h[b+8>>3]-+h[e+8>>3];i=f;g=j;f=+C(+(j*j+.0001+f*f))}j=2.0/f;h[a>>3]=i*j;h[a+8>>3]=-(j*g);return}function QF(a,b,c){a=+a;b=+b;c=+c;return +(c*.5*(1.0-a/b))}function RF(a,b,c){a=+a;b=+b;c=+c;return +(c*.5)}function SF(a,b,c){a=+a;b=+b;c=+c;return +(c*.5*(a/b))}function TF(a,b,c){a=+a;b=+b;c=+c;b=a/b;return +((!(b<=.5)?1.0-b:b)*c)}function UF(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0;p=l;l=l+16|0;o=p;n=c[a+4>>2]|0;j=(n+-1|0)/3|0;if((n+-4|0)>>>0<3){c[d+4>>2]=4;c[d>>2]=uH(64)|0;c[e+4>>2]=4;n=uH(64)|0;c[e>>2]=n;XL(o,c[a>>2]|0,3,b,c[d>>2]|0,n)}else{n=uH(j<<3)|0;g=0;i=c[a>>2]|0;f=0.0;while(1){if((g|0)>=(j|0))break;q=+VF(i);h[n+(g<<3)>>3]=q;g=g+1|0;i=i+48|0;f=q+f}b=f*b;m=0;f=0.0;while(1){if((j|0)<=(m|0))break;f=+h[n+(m<<3)>>3]+f;if(f>=b)break;m=m+1|0}k=m*3|0;g=k+4|0;i=d+4|0;c[i>>2]=g;c[d>>2]=uH(g<<4)|0;g=((j-m|0)*3|0)+1|0;j=e+4|0;c[j>>2]=g;c[e>>2]=uH(g<<4)|0;g=0;while(1){if((g|0)>=(c[i>>2]|0))break;r=(c[d>>2]|0)+(g<<4)|0;s=(c[a>>2]|0)+(g<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];g=g+1|0}g=g+-4|0;i=0;while(1){if((i|0)>=(c[j>>2]|0))break;s=(c[e>>2]|0)+(i<<4)|0;r=(c[a>>2]|0)+(g<<4)|0;c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];g=g+1|0;i=i+1|0}q=+h[n+(m<<3)>>3];XL(o,(c[a>>2]|0)+(k<<4)|0,3,(b-f+q)/q,(c[d>>2]|0)+(k<<4)|0,c[e>>2]|0);D_(n)}l=p;return}function VF(a){a=a|0;var b=0.0,c=0.0,d=0.0,e=0.0,f=0.0;e=+h[a+16>>3];d=+h[a>>3]-e;f=+h[a+24>>3];b=+h[a+8>>3]-f;d=+C(+(b*b+d*d));b=+h[a+32>>3];e=e-b;c=+h[a+40>>3];f=f-c;d=+C(+(f*f+e*e))+d;b=b-+h[a+48>>3];c=c-+h[a+56>>3];return +(d+ +C(+(c*c+b*b)))}function WF(b,d){b=b|0;d=d|0;d=fz(d)|0;if((a[(c[d+16>>2]|0)+115>>0]|0)==1)d=RM(b)|0;else d=OM(b,d)|0;return bG(d)|0}function XF(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+1664|0;m=q+1600|0;n=q+800|0;o=q;p=vH(24)|0;c[p+16>>2]=1;j=((c[e+4>>2]|0)+-1|0)/3|0;h=0;i=p;while(1){if((h|0)>=(j|0))break;k=h*3|0;g=0;while(1){if((g|0)==4)break;r=m+(g<<4)|0;s=(c[e>>2]|0)+(g+k<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];g=g+1|0}h=h+1|0;i=YF(m,i)|0}g=0;h=0;i=p;while(1){if(!i){h=p;g=p;break}j=c[i+16>>2]|0;k=n+(g<<4)|0;e=o+(g<<4)|0;ZF(h,i,j,k,e,f);g=g+1|0;if(!((g|0)==50|(j|0)==0)){h=i;i=j;continue}_F(a,b,d,g,n,o);c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];h=i;g=1;i=j}while(1){if(!h)break;s=c[h+16>>2]|0;D_(g);h=s;g=s}l=q;return}function YF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+144|0;f=g+128|0;d=g+64|0;e=g;if(!(ZE(a)|0)){XL(f,a,3,.5,d,e);d=YF(e,YF(d,b)|0)|0}else{d=b+16|0;if((c[d>>2]|0)==1){c[d>>2]=0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2]}d=a+48|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];d=aG(f,b)|0}l=g;return d|0}function ZF(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0;r=l;l=l+96|0;n=r+80|0;m=r+64|0;k=r+48|0;o=r+32|0;p=r+16|0;q=r;c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];do if(a){c[p>>2]=c[a>>2];c[p+4>>2]=c[a+4>>2];c[p+8>>2]=c[a+8>>2];c[p+12>>2]=c[a+12>>2];if(!d){i=+h[o>>3];h[q>>3]=i*2.0-+h[p>>3];j=+h[o+8>>3];h[q+8>>3]=j*2.0-+h[p+8>>3];break}else{c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];i=+h[o>>3];j=+h[o+8>>3];break}}else{c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];i=+h[o>>3];h[p>>3]=i*2.0-+h[q>>3];j=+h[o+8>>3];h[p+8>>3]=j*2.0-+h[q+8>>3]}while(0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];c[k+12>>2]=c[p+12>>2];c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[n>>2]=c[q>>2];c[n+4>>2]=c[q+4>>2];c[n+8>>2]=c[q+8>>2];c[n+12>>2]=c[q+12>>2];t=+$F(k,m,n);s=+E(+t)*g;g=+F(+t)*g;h[e>>3]=i+s;h[e+8>>3]=j+g;h[f>>3]=i-s;h[f+8>>3]=j-g;l=r;return}function _F(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=e<<1;j=c[d>>2]|0;h=0;k=0;while(1){if((h|0)>=(j|0))break;l=(c[(c[b>>2]|0)+(h<<2)>>2]|0)+k|0;h=h+1|0;k=l}l=j+1|0;c[d>>2]=l;l=xH(c[b>>2]|0,l<<2)|0;c[b>>2]=l;c[l+(h<<2)>>2]=i;c[a>>2]=xH(c[a>>2]|0,k+i<<4)|0;b=i+-1+k|0;h=0;while(1){if((h|0)>=(e|0))break;l=(c[a>>2]|0)+(h+k<<4)|0;j=f+(h<<4)|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];l=(c[a>>2]|0)+(b-h<<4)|0;j=g+(h<<4)|0;c[l>>2]=c[j>>2];c[l+4>>2]=c[j+4>>2];c[l+8>>2]=c[j+8>>2];c[l+12>>2]=c[j+12>>2];h=h+1|0}return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;f=+h[b+8>>3];d=+h[b>>3];e=+K(+(+h[c+8>>3]-f),+(+h[c>>3]-d));d=+K(+(+h[a+8>>3]-f),+(+h[a>>3]-d));e=e-d;return +((e>0.0?e+-6.283185307179586:e)*.5+d)}function aG(a,b){a=a|0;b=b|0;var d=0;d=vH(24)|0;c[d+16>>2]=0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[b+16>>2]=d;return d|0}function bG(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;c=b;f=b;a:while(1){e=0;while(1){d=c;c=c+1|0;d=a[d>>0]|0;if(!(d<<24>>24))break a;if(e<<24>>24){g=5;break}if(d<<24>>24!=92)break;else e=1}b:do if((g|0)==5){g=0;switch(d<<24>>24|0){case 114:{d=13;break b}case 108:case 110:{d=10;break b}default:break b}}while(0);a[f>>0]=d;f=f+1|0}a[f>>0]=0;return b|0}function cG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=c[b>>2]|0;while(1){g=a[e>>0]|0;if(!(g<<24>>24)){f=0;break}f=g<<24>>24;if(!(g<<24>>24==44|(B$(f)|0)!=0)){h=5;break}e=e+1|0}a:do if((h|0)==5){switch(f|0){case 0:{f=0;break a}case 41:case 40:{e=e+1|0;break a}default:{}}h=d+4|0;i=d+8|0;while(1){if((dG(g<<24>>24)|0)<<24>>24){f=1;break a}f=c[h>>2]|0;if(f>>>0>=(c[i>>2]|0)>>>0){Uw(d,1)|0;f=c[h>>2]|0}c[h>>2]=f+1;a[f>>0]=g;f=e+1|0;e=f;g=a[f>>0]|0}}while(0);c[b>>2]=e;return f|0}function dG(a){a=a|0;switch(a|0){case 0:case 44:case 41:case 40:{a=1;break}default:a=0}return a|0}function eG(a,b){a=a|0;b=b|0;return fG(c[a>>2]|0,c[a+160>>2]|0,c[a+156>>2]|0,b)|0}function fG(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+160|0;k=o+20|0;m=o+16|0;n=o;c[k>>2]=0;c[m>>2]=0;Tw(n,128,o+24|0);Ww(n,f)|0;g=n+4|0;f=c[g>>2]|0;if(f>>>0>=(c[n+8>>2]|0)>>>0){Uw(n,1)|0;f=c[g>>2]|0}a[f>>0]=0;h=c[n>>2]|0;c[g>>2]=h;i=b+300|0;j=b+296|0;f=0;g=h;a:while(1){if(f){f=1;break}f=m1(g,c[i>>2]|0,k)|0;if(!f){f=0;break}g=m1(f,c[j>>2]|0,m)|0;h=(g|0)!=0;if(h)f=m1(0,c[j>>2]|0,m)|0;else f=0;switch(((f|0)!=0&1)+(h&1)&3){case 2:{g=gG(b,g,0)|0;f=gG(b,f,e)|0;h=(g|0)>(f|0);f=(f&g|0)>-1&(((h?g:f)|0)>=(d|0)&((h?f:g)|0)<=(d|0));g=0;continue a}case 1:{f=(gG(b,g,d)|0)==(d|0);g=0;continue a}default:{f=0;g=0;continue a}}}Xw(n);l=o;return f|0}function gG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=a[d>>0]|0;if(!(h<<24>>24==97?(b$(d,97370)|0)==0:0))f=3;a:do if((f|0)==3){if((hG(d)|0)<<24>>24){e=a2(d)|0;break}g=c[b+308>>2]|0;if(!g)e=-1;else{b=c[b+312>>2]|0;e=1;while(1){if((e|0)>(b|0)){e=-1;break a}f=c[g+(e<<2)>>2]|0;if(h<<24>>24==(a[f>>0]|0)?(b$(d,f)|0)==0:0)break a;e=e+1|0}}}while(0);return e|0}function hG(b){b=b|0;var c=0;while(1){c=a[b>>0]|0;if(!(c<<24>>24)){b=1;break}if(((c&255)+-48|0)>>>0<10)b=b+1|0;else{b=0;break}}return b|0}function iG(a,b){a=a|0;b=b|0;if((+h[a+16>>3]>=+h[b>>3]?+h[b+16>>3]>=+h[a>>3]:0)?+h[a+24>>3]>=+h[b+8>>3]:0)a=+h[b+24>>3]>=+h[a+8>>3]&1;else a=0;return a|0}function jG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;a:do if((c[b+156>>2]|0)>=2?(f=NL(e,c[46397]|0,191979)|0,(eG(b,f)|0)<<24>>24==0):0)if(!(a[f>>0]|0))if(!(Jx(d,e)|0))f=1;else{f=Jx(d,e)|0;while(1){if(!f){f=0;break a}g=NL(f,c[46420]|0,191979)|0;if(!(a[g>>0]|0)){f=1;break a}if((eG(b,g)|0)<<24>>24){f=1;break a}f=Kx(d,f,e)|0}}else f=0;else f=1;while(0);return f|0}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+64|0;e=d+32|0;f=d;a=(c[a+16>>2]|0)+48|0;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[f+16>>2]=c[a+16>>2];c[f+20>>2]=c[a+20>>2];c[f+24>>2]=c[a+24>>2];c[f+28>>2]=c[a+28>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2];c[e+20>>2]=c[b+20>>2];c[e+24>>2]=c[b+24>>2];c[e+28>>2]=c[b+28>>2];b=(iG(f,e)|0)&255;l=d;return b|0}function lG(a,d){a=a|0;d=d|0;var f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0.0,v=0.0;r=c[a+152>>2]|0;s=NE(a)|0;c[s+4>>2]=2;c[s+8>>2]=d;c[s+12>>2]=8;if(r&16777216|0){if((e[(c[(ez(d)|0)+16>>2]|0)+178>>1]|0)>2){f=+h[(c[(c[d+16>>2]|0)+132>>2]|0)+16>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0)}else f=0.0;h[s+168>>3]=f}k=d+16|0;nG(a,c[(c[k>>2]|0)+104>>2]|0,d);do if(r&4259840|0){if((c[s+208>>2]|0)==0?(b[s+260>>1]&1)==0:0)break;p=HJ(d)|0;l=c[k>>2]|0;f=+h[l+16>>3];q=+h[l+24>>3];l=oG(d)|0;a:do if((p|2|0)==3){n=c[(c[k>>2]|0)+12>>2]|0;if(!((pG(n)|0)<<24>>24))g=0;else g=(c[n+4>>2]|l|0)!=0;if(!((r&524288|0)==0|((n|0)==0|g))){i=n+8|0;o=c[i>>2]|0;o=(o|0)<3?1:o;j=n+4|0;m=c[j>>2]|0;m=(m|0)>1?m:1;p=c[n+44>>2]|0;g=xx(d,99679)|0;if(!g)g=0;else g=a2(g)|0;g=(g+-4|0)>>>0>56?20:g;if(!(c[j>>2]|l)){c[s+264>>2]=0;i=uH(32)|0;g=c[k>>2]|0;v=+h[g+88>>3];h[i>>3]=f-v;u=+h[g+80>>3]*.5;h[i+8>>3]=q-u;h[i+16>>3]=v+f;h[i+24>>3]=u+q;g=2;break}i=c[i>>2]|0;if(((i|0)<3?+h[n+32>>3]==0.0:0)?+h[n+24>>3]==0.0:0){i=s+264|0;if(c[n>>2]|0){c[i>>2]=1;i=uH(32)|0;h[i>>3]=f;h[i+8>>3]=q;g=(m<<1)+-1|0;h[i+16>>3]=+h[p+(g<<4)>>3]+f;h[i+24>>3]=+h[p+(g<<4)+8>>3]+q;g=2;break}c[i>>2]=2;i=(m<<1)+-1|0;i=qG(+h[p+(i<<4)>>3],+h[p+(i<<4)+8>>3],g)|0;j=0;while(1){if((j|0)>=(g|0))break a;p=i+(j<<4)|0;h[p>>3]=+h[p>>3]+f;p=i+(j<<4)+8|0;h[p>>3]=+h[p>>3]+q;j=j+1|0}}m=O(i,m+-1|0)|0;c[s+264>>2]=2;if((i|0)<(g|0)){i=uH(o<<4)|0;g=0;while(1){if((g|0)>=(o|0)){g=o;break a}n=g+m|0;h[i+(g<<4)>>3]=+h[p+(n<<4)>>3]+f;h[i+(g<<4)+8>>3]=+h[p+(n<<4)+8>>3]+q;g=g+1|0}}else{l=(i|0)/(g|0)|0;i=uH(g<<4)|0;j=0;k=0;while(1){if((j|0)>=(g|0))break a;o=k+m|0;h[i+(j<<4)>>3]=+h[p+(o<<4)>>3]+f;h[i+(j<<4)+8>>3]=+h[p+(o<<4)+8>>3]+q;j=j+1|0;k=k+l|0}}}else t=31}else t=31;while(0);if((t|0)==31){c[s+264>>2]=0;i=uH(32)|0;g=c[k>>2]|0;h[i>>3]=f-+h[g+88>>3];v=+h[g+80>>3]*.5;h[i+8>>3]=q-v;h[i+16>>3]=+h[g+96>>3]+f;h[i+24>>3]=v+q;g=2}if(!(r&8192))yO(a,i,i,g)|0;c[s+272>>2]=i;c[s+268>>2]=g}while(0);qQ(xx(d,97006)|0);LO(a,d);return}function mG(a){a=a|0;MO(a);OE(a);return}function nG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+144|0;j=m;f=xx(e,137973)|0;i=xx(e,138019)|0;k=xx(e,138006)|0;Tw(j,128,m+16|0);if(!d)h=0;else h=c[d>>2]|0;if(!((f|0)!=0?(a[f>>0]|0)!=0:0))f=xx(e,108395)|0;g=QE(b,e,j)|0;if(!i)d=0;else d=WF(i,e)|0;PE(b,h,f,d,k,g,e)|0;D_(d);Xw(j);l=m;return}function oG(b){b=b|0;var d=0,e=0;b=OL(b,c[46387]|0,191979)|0;a:do if(!(a[b>>0]|0))b=0;else{AF(b)|0;b=0;d=185144;while(1){e=c[d>>2]|0;if(!e)break a;e=(b$(e,108075)|0)==0;b=e?1:b;d=d+4|0}}while(0);return b|0}function pG(a){a=a|0;var b=0.0;if(((c[a+8>>2]|0)==4?(b=+h[a+16>>3],((~~(b+(b>=0.0?.5:-.5))|0)%90|0|0)==0):0)?+h[a+24>>3]==0.0:0)a=+h[a+32>>3]==0.0&1;else a=0;return a|0}function qG(a,b,c){a=+a;b=+b;c=c|0;var d=0.0,e=0,f=0.0,g=0;f=6.283185307179586/+(c|0);g=uH(c<<4)|0;d=0.0;e=0;while(1){if((e|0)>=(c|0))break;h[g+(e<<4)>>3]=+E(+d)*a;h[g+(e<<4)+8>>3]=+F(+d)*b;d=d+f;e=e+1|0}return g|0}function rG(b,d){b=b|0;d=d|0;var e=0;a:do if((c[b+156>>2]|0)>=2?(e=NL(d,nx(d,0,98484,0)|0,191979)|0,(eG(b,e)|0)<<24>>24==0):0)if(!(a[e>>0]|0)){e=Sy(d)|0;while(1){if(!e){e=0;break a}if((jG(b,d,e)|0)<<24>>24){e=1;break a}e=Ty(d,e)|0}}else e=0;else e=1;while(0);return e|0}function sG(a,b){a=a|0;b=b|0;var d=0;d=NE(a)|0;c[d+4>>2]=1;c[d+8>>2]=b;c[d+12>>2]=1;nG(a,c[(c[b+16>>2]|0)+12>>2]|0,b);FO(a,b);return}function tG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;b=xx(b,138e3)|0;a:do if((b|0)!=0?(a[b>>0]|0)!=0:0){AF(b)|0;e=185144;b=0;while(1){while(1){f=c[e>>2]|0;if(!f){e=185144;break a}if(!(b$(f,108075)|0)){g=10;break}if(!(b$(f,103308)|0)){f=e;g=12;break}if(!(b$(f,103315)|0)){f=e;g=14;break}if(!(b$(f,103290)|0)){f=e;g=16;break}e=e+4|0}if((g|0)==10){e=e+4|0;b=b|1;continue}else if((g|0)==12){while(1){h=f;f=f+4|0;g=c[f>>2]|0;c[h>>2]=g;if(!g)break;else g=12}b=b|3;continue}else if((g|0)==14){while(1){g=f;f=f+4|0;h=c[f>>2]|0;c[g>>2]=h;if(!h)break;else g=14}b=b|64;continue}else if((g|0)==16){while(1){g=f;f=f+4|0;h=c[f>>2]|0;c[g>>2]=h;if(!h)break;else g=16}b=b|4;continue}}}else{e=0;b=0}while(0);c[d>>2]=b;return e|0}function uG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;i=k;j=k+4|0;c[j>>2]=0;m=(TE(b,0,j)|0)==0;j=c[j>>2]|0;if((m?(f=c[j>>2]|0,(f|0)>=2):0)?(h=j+8|0,(c[c[h>>2]>>2]|0)!=0):0){if((f|0)>2)Pw(0,97389,i)|0;m=vH((W_(b)|0)+1|0)|0;c[d>>2]=m;b0(m,c[c[h>>2]>>2]|0)|0;if(!(c[(c[h>>2]|0)+12>>2]|0))c[d+4>>2]=0;else{m=c[d>>2]|0;m=m+((W_(m)|0)+1)|0;c[d+4>>2]=m;b0(m,c[(c[h>>2]|0)+12>>2]|0)|0}b=c[h>>2]|0;do if(!(a[b+8>>0]|0))if(!(a[b+20>>0]|0)){g[e>>2]=0.0;break}else{g[e>>2]=1.0-+g[b+16>>2];break}else c[e>>2]=c[b+4>>2];while(0);UE(j);b=1}else{c[d>>2]=0;UE(j);b=0}l=k;return b|0}function vG(a,b){a=a|0;b=b|0;GO(a,b);OE(a);return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;p=x+48|0;s=x+16|0;w=x+8|0;v=x;t=x+80|0;c[t>>2]=1e3;f=vH(16e3)|0;u=a+256|0;e=1;j=1;i=0;q=0;r=c[b+8>>2]|0;while(1){if((q|0)>=(c[b>>2]|0))break;d=c[r>>2]|0;a:do switch(d|0){case 1:case 0:{n=r+80|0;c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];c[s+16>>2]=c[n+16>>2];c[s+20>>2]=c[n+20>>2];c[s+24>>2]=c[n+24>>2];c[s+28>>2]=c[n+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{z=r+8|0;A=r+24|0;h[f>>3]=+h[z>>3]-+h[A>>3];n=r+16|0;y=r+32|0;h[f+8>>3]=+h[n>>3]-+h[y>>3];h[f+16>>3]=+h[A>>3]+ +h[z>>3];h[f+24>>3]=+h[y>>3]+ +h[n>>3];ZO(a,f,2,(d|0)==0?j:0);d=j}break}case 3:case 2:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{d=r+8|0;f=xG(f,t,c[d+4>>2]|0,c[d>>2]|0)|0;_O(a,f,c[d>>2]|0,(c[r>>2]|0)==2?j:0);d=j}break}case 5:case 4:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{d=r+8|0;f=xG(f,t,c[d+4>>2]|0,c[d>>2]|0)|0;aP(a,f,c[d>>2]|0,0,0,(c[r>>2]|0)==4?j&255:0);d=j}break}case 6:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{d=r+8|0;f=xG(f,t,c[d+4>>2]|0,c[d>>2]|0)|0;bP(a,f,c[d>>2]|0);d=j}break}case 7:{A=r+80|0;c[s>>2]=c[A>>2];c[s+4>>2]=c[A+4>>2];c[s+8>>2]=c[A+8>>2];c[s+12>>2]=c[A+12>>2];c[s+16>>2]=c[A+16>>2];c[s+20>>2]=c[A+20>>2];c[s+24>>2]=c[A+24>>2];c[s+28>>2]=c[A+28>>2];c[p>>2]=c[u>>2];c[p+4>>2]=c[u+4>>2];c[p+8>>2]=c[u+8>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[u+16>>2];c[p+20>>2]=c[u+20>>2];c[p+24>>2]=c[u+24>>2];c[p+28>>2]=c[u+28>>2];if(!(iG(s,p)|0))d=j;else{h[f>>3]=+h[r+8>>3];h[f+8>>3]=+h[r+16>>3];d=c[r+112>>2]|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];TO(a,p,d);d=j}break}case 8:{WO(a,c[r+8>>2]|0);d=1;break}case 9:{UO(a,c[r+8>>2]|0);d=1;break}case 13:{if((c[r+8>>2]|0)!=2){d=r+16|0;z=c[d+36>>2]|0;A=c[z+12>>2]|0;o=+g[z+8>>2];d=~~(+K(+(+h[r+40>>3]-+h[r+24>>3]),+(+h[r+32>>3]-+h[d>>3]))*57.29577951308232);WO(a,c[z+4>>2]|0);XO(a,A,d,o);d=2;break a}A=c[r+68>>2]|0;j=c[A+4>>2]|0;n=c[A+12>>2]|0;o=+g[A+8>>2];k=+h[r+40>>3];m=+h[r+16>>3];if(k==m?+h[r+48>>3]==+h[r+24>>3]:0)d=0;else d=~~(+H(+((m-k)/+h[r+32>>3]))*57.29577951308232);WO(a,j);XO(a,n,d,o);d=3;break}case 14:{Pw(0,97455,v)|0;d=j;break}case 12:{if(!e){e=0;d=j}else{Pw(0,97495,w)|0;e=0;d=j}break}case 11:{AF(c[r+8>>2]|0)|0;YO(a,185144);i=185144;d=j;break}default:d=j}while(0);j=d;q=q+1|0;r=r+120|0}if(i|0)YO(a,c[(c[a>>2]|0)+336>>2]|0);D_(f);l=x;return}function xG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[b>>2]|0;f=g<<1;f=(f|0)>(e|0)?f:e;if((g|0)<(e|0)){a=xH(a,f<<4)|0;c[b>>2]=f}b=0;while(1){if((b|0)>=(e|0))break;h[a+(b<<4)>>3]=+h[d+(b*24|0)>>3];h[a+(b<<4)+8>>3]=+h[d+(b*24|0)+8>>3];b=b+1|0}return a|0}function yG(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;c[a>>2]=c[b+4>>2];c[a+4>>2]=d;return}function zG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=d+16|0;f=1;while(1){d=c[g>>2]|0;if((f|0)>(c[d+180>>2]|0))break;e=c[(c[d+184>>2]|0)+(f<<2)>>2]|0;zG(b,e);d=xx(e,137741)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(e,134647)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(e,137895)|0;if(d|0?a[d>>0]|0:0)UO(b,d);d=xx(e,98392)|0;if(d|0?a[d>>0]|0:0)WO(b,d);d=xx(e,98420)|0;if(d|0?a[d>>0]|0:0)UO(b,d);f=f+1|0}return}function AG(a){a=a|0;var b=0,d=0,e=0;b=c[46356]|0;if(!b){b=Cw(20524,c[4555]|0)|0;c[46356]=b}if(!(nb[c[b>>2]&63](b,a,4)|0)){d=c[46356]|0;e=c[d>>2]|0;b=n1(a)|0;nb[e&63](d,b,1)|0;b=1}else b=0;return b|0}function BG(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function CG(a){a=a|0;var b=0;b=c[46357]|0;if(!a){if((b|0)>0?(b=b+-1|0,c[46357]=b,(b|0)==0):0){J0(1,c[46358]|0)|0;D_(c[46358]|0)}}else{c[46357]=b+1;if(!b){c[46358]=n1(J0(1,0)|0)|0;J0(1,150481)|0}}return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0;u=l;l=l+96|0;r=u+72|0;q=u+56|0;p=u+48|0;t=u+32|0;s=u+24|0;e=u+8|0;d=u;if(0)EL();do if((Az(b,134401,0,1)|0)!=0?(o=b+16|0,(c[(c[o>>2]|0)+8>>2]|0)!=0):0){EG(b);FG(a,b);GG(a,b);CG(1);j=a+56|0;k=a+184|0;m=a+192|0;n=a+28|0;i=pC(a)|0;a:while(1){if(!i){g=33;break}d=c[j>>2]|0;if(!d){c[i+20>>2]=0;d=0}else{c[i+20>>2]=c[d+8>>2];d=c[d+12>>2]|0}c[i+24>>2]=d;c[i+12>>2]=a;c[i+28>>2]=c[k>>2];c[i+620>>2]=25660;c[i+624>>2]=14;if(!(c[(c[o>>2]|0)+8>>2]|0)){g=13;break}e=i+52|0;g=uO(i,c[e>>2]|0)|0;c[i+56>>2]=g;switch(g|0){case 999:{g=16;break a}case 21:{d=1;break}case 24:{d=520;break}default:d=HG(b)|0}f=i+152|0;c[f>>2]=c[f>>2]|d;d=c[m>>2]|0;do if(!d)g=24;else{if(c[d+152>>2]&32|0?(b$(c[e>>2]|0,c[d+52>>2]|0)|0)==0:0){d=c[46359]|0;if(!d){g=27;break}c[d+8>>2]=i;c[i+36>>2]=c[d+36>>2];g=29;break}wO(d);c[m>>2]=0;c[n>>2]=0;g=24}while(0);if((g|0)==24){c[46359]=0;g=27}if((g|0)==27?(g=0,(vO(i)|0)==0):0){c[m>>2]=i;g=29}if((g|0)==29){c[i+8>>2]=0;c[i+104>>2]=25772;IG(i);JG(i);KG(i,b);LG(i,b);MG(i,b);if(!(c[f>>2]&128))dF(i,b);c[46359]=i}i=qC(a)|0}if((g|0)==13){Pw(1,97653,s)|0;CG(0);if(!0){d=-1;break}d=c[15686]|0;s=ry(b)|0;v=+FL();c[t>>2]=s;h[t+8>>3]=v;g1(d,97624,t)|0;d=-1;break}else if((g|0)==16){c[p>>2]=c[e>>2];Pw(1,97674,p)|0;CG(0);if(!0){d=-1;break}d=c[15686]|0;t=ry(b)|0;v=+FL();c[q>>2]=t;h[q+8>>3]=v;g1(d,97624,q)|0;d=-1;break}else if((g|0)==33){CG(0);if(!0){d=0;break}d=c[15686]|0;t=ry(b)|0;v=+FL();c[r>>2]=t;h[r+8>>3]=v;g1(d,97624,r)|0;d=0;break}}else g=5;while(0);if((g|0)==5){Pw(1,97576,d)|0;if(!0)d=-1;else{d=c[15686]|0;t=ry(b)|0;v=+FL();c[e>>2]=t;h[e+8>>3]=v;g1(d,97624,e)|0;d=-1}}l=u;return d|0}function EG(a){a=a|0;var b=0;b=Sy(a)|0;while(1){if(!b)break;RG(a,b);b=Ty(a,b)|0}return}function FG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+24|0;f=o+16|0;j=o+8|0;n=o;c[b+168>>2]=d;g=b+293|0;a[g>>0]=0;e=xx(d,102470)|0;if(e|0?(c[f>>2]=j,c[f+4>>2]=n,i=N1(e,102477,f)|0,(i|0)>0):0){p=+h[j>>3]*72.0;e=b+208|0;h[e>>3]=p;h[b+200>>3]=p;if((i|0)!=1)h[e>>3]=+h[n>>3]*72.0;a[g>>0]=1}f=b+292|0;a[f>>0]=0;e=xx(d,98076)|0;if(e|0?(c[k>>2]=j,c[k+4>>2]=n,m=N1(e,102477,k)|0,(m|0)>0):0){p=+h[j>>3]*72.0;e=b+224|0;h[e>>3]=p;h[b+216>>3]=p;if((m|0)!=1)h[e>>3]=+h[n>>3]*72.0;a[f>>0]=1}e=b+294|0;a[e>>0]=0;f=b+232|0;g=d+16|0;n=(c[(c[g>>2]|0)+8>>2]|0)+48|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[f+12>>2]=c[n+12>>2];f=c[(c[g>>2]|0)+8>>2]|0;if(+h[f+48>>3]>.001?+h[f+56>>3]>.001:0)a[e>>0]=1;c[b+288>>2]=a[f+81>>0]|0?90:0;e=b+196|0;c[e>>2]=98080;f=xx(d,98083)|0;if(f|0?a[f>>0]|0:0)c[e>>2]=f;n=b+256|0;m=(c[g>>2]|0)+16|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];c[n+16>>2]=c[m+16>>2];c[n+20>>2]=c[m+20>>2];c[n+24>>2]=c[m+24>>2];c[n+28>>2]=c[m+28>>2];c[46371]=nx(d,0,98446,0)|0;c[46372]=nx(d,0,98437,0)|0;c[b+320>>2]=OL(0,c[46381]|0,104968)|0;h[b+328>>3]=+LL(0,c[46380]|0,14.0,1.0);c[b+336>>2]=20560;c[b+188>>2]=ry(d)|0;l=o;return}function GG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b+304|0;f=c[e>>2]|0;if(f|0){D_(f);c[e>>2]=0}f=b+308|0;e=c[f>>2]|0;if(e|0){D_(e);c[f>>2]=0}g=b+316|0;e=c[g>>2]|0;if(e|0){D_(e);c[g>>2]=0}e=xx(d,97827)|0;if(e){c[b+312>>2]=PG(b,d,e)|0;e=xx(d,97834)|0;if(e|0?a[e>>0]|0:0)c[g>>2]=QG(b,e)|0}else{c[f>>2]=0;c[b+312>>2]=1}return}function HG(b){b=b|0;b=xx(b,97795)|0;a:do if(!b)b=0;else switch(a[b>>0]|0){case 110:{if(!(b$(b+1|0,97807)|0))b=1;else{b=0;break a}break}case 101:{if(!(b$(b+1|0,97817)|0))b=16;else{b=0;break a}break}default:{b=0;break a}}while(0);return b|0}function IG(b){b=b|0;var d=0.0,e=0;e=c[b>>2]|0;if(!(a[e+292>>0]|0)){if((c[b+56>>2]|0)==300)d=+h[(c[b+68>>2]|0)+8>>3];else d=4.0;h[b+248>>3]=d;h[b+240>>3]=d}else{b=b+240|0;e=e+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2]}return}function JG(b){b=b|0;var d=0;d=c[b>>2]|0;a:do if(!(a[d+293>>0]|0))switch(c[b+56>>2]|0){case 300:{d=b+416|0;b=(c[b+84>>2]|0)+8|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];break a}case 30:case 21:case 22:case 4:case 3:case 2:{h[b+424>>3]=36.0;h[b+416>>3]=36.0;break a}default:{d=b+416|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;break a}}else{b=b+416|0;d=d+200|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2]}while(0);return}function KG(b,d){b=b|0;d=d|0;var e=0.0,f=0;f=c[(c[b>>2]|0)+192>>2]|0;e=+h[(c[(c[d+16>>2]|0)+8>>2]|0)+24>>3];do if(!(e!=0.0)){if(f|0?a[f+128>>0]|0:0){b=b+432|0;f=f+112|0;c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];break}d=b+432|0;if((c[b+56>>2]|0)==300){b=(c[b+84>>2]|0)+40|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];break}else{h[b+440>>3]=96.0;h[d>>3]=96.0;break}}else{h[b+440>>3]=e;h[b+432>>3]=e}while(0);return}function LG(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+112|0;t=A+80|0;u=A+56|0;s=A+40|0;v=A+32|0;w=A+24|0;x=A+16|0;y=A+8|0;z=A;m=c[b>>2]|0;o=+h[m+272>>3];q=+h[m+280>>3];p=+h[m+256>>3];r=+h[m+264>>3];f=+h[b+240>>3];e=p-f;h[b+208>>3]=e;i=+h[b+248>>3];j=r-i;h[b+216>>3]=j;f=f+o;h[b+224>>3]=f;i=i+q;h[b+232>>3]=i;e=f-e;j=i-j;h[x>>3]=1.0;g=c[(c[d+16>>2]|0)+8>>2]|0;i=+h[g+64>>3];do if(i>.001?(k=+h[g+72>>3],k>.001):0){e=e==0.0?i:e;f=j==0.0?k:j;if(!(if&(i>e&(a[g+80>>0]|0)!=0)):0){k=e;j=f;i=1.0;break}n=i/e>3]=i;k=e;j=f}else{k=e;i=1.0}while(0);f=(p+o)*.5;h[y>>3]=f;e=(r+q)*.5;h[z>>3]=e;c[b+360>>2]=c[m+288>>2];k=i*k;h[v>>3]=k;j=i*j;h[w>>3]=j;g=xx(d,97726)|0;if(g){m=C_((W_(g)|0)+1|0)|0;n=C_((W_(g)|0)+1|0)|0;c[s>>2]=v;c[s+4>>2]=w;c[s+8>>2]=x;c[s+12>>2]=m;do if((N1(g,97735,s)|0)==4){g=az(c[d+60>>2]|0,m,0)|0;if(g|0){u=c[g+16>>2]|0;h[y>>3]=+h[u+16>>3];h[z>>3]=+h[u+24>>3]}}else{c[u>>2]=v;c[u+4>>2]=w;c[u+8>>2]=x;c[u+12>>2]=m;c[u+16>>2]=n;if((N1(g,97755,u)|0)!=4){c[t>>2]=v;c[t+4>>2]=w;c[t+8>>2]=x;c[t+12>>2]=y;c[t+16>>2]=z;N1(g,97775,t)|0;break}g=az(c[d+60>>2]|0,m,0)|0;if(g|0){u=c[g+16>>2]|0;h[y>>3]=+h[u+16>>3];h[z>>3]=+h[u+24>>3]}}while(0);D_(m);D_(n);k=+h[v>>3];j=+h[w>>3];i=+h[x>>3];f=+h[y>>3];e=+h[z>>3]}h[b+368>>3]=k;h[b+376>>3]=j;h[b+352>>3]=i;h[b+336>>3]=f;h[b+344>>3]=e;l=A;return}function MG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,P=0.0,Q=0.0;M=l;l=l+224|0;J=M+200|0;z=M+168|0;E=M+144|0;I=M+120|0;F=M+96|0;G=M+64|0;e=M+184|0;v=M+176|0;w=M+160|0;y=M+136|0;x=M+112|0;A=M+80|0;B=M+48|0;C=M+32|0;D=M+16|0;K=M+8|0;L=M;u=c[b>>2]|0;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[G+12>>2]=0;H=b+368|0;c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];H=b+360|0;if(c[H>>2]|0){c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2];NG(e,J);c[I>>2]=c[e>>2];c[I+4>>2]=c[e+4>>2];c[I+8>>2]=c[e+8>>2];c[I+12>>2]=c[e+12>>2]}t=b+416|0;c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];c[F+8>>2]=c[t+8>>2];c[F+12>>2]=c[t+12>>2];if((a[u+294>>0]|0)!=0?(c[b+152>>2]&32|0)!=0:0){i=+h[u+232>>3]-+h[F>>3]*2.0;h[E>>3]=i;k=+h[u+240>>3]-+h[F+8>>3]*2.0;p=E+8|0;h[p>>3]=k;if(!(i<.0001)){o=+h[I>>3];e=~~(o/i);f=b+164|0;c[f>>2]=e;if(o-i*+(e|0)>.0001){e=e+1|0;c[f>>2]=e}}else{c[b+164>>2]=1;e=1}if(!(k<.0001)){g=+h[I+8>>3];f=~~(g/k);j=b+168|0;c[j>>2]=f;if(g-k*+(f|0)>.0001){f=f+1|0;c[j>>2]=f}}else{c[b+168>>2]=1;f=1;g=+h[I+8>>3]}c[b+204>>2]=O(f,e)|0;o=+h[(+h[I>>3]>3];h[I>>3]=o;e=p;f=I;m=+h[(g>3];g=o;j=21}else{if(c[b+68>>2]|0){e=c[b+84>>2]|0;i=+h[e+24>>3]-+h[F>>3]*2.0;i=i<0.0?0.0:i;h[E>>3]=i;o=+h[e+32>>3]-+h[F+8>>3]*2.0;e=E+8|0;h[e>>3]=o;if(o<0.0){f=E;j=17}else e=E}else{h[E+8>>3]=0.0;f=E;e=E;j=17}if((j|0)==17){h[e>>3]=0.0;e=f;i=+h[f>>3]}c[b+204>>2]=1;c[b+168>>2]=1;c[b+164>>2]=1;g=+h[I>>3];if(i>3]=g;i=g}e=E+8|0;k=+h[e>>3];m=+h[I+8>>3];if(k>3]=m;r=e;m=+h[e>>3]}n=+h[F>>3];s=b+432|0;k=+h[s>>3]*.013888888888888888*(n*2.0+i);c[b+448>>2]=~~(k+(k>=0.0?.5:-.5));q=F+8|0;k=+h[q>>3];t=b+440|0;o=+h[t>>3]*.013888888888888888*(k*2.0+m);c[b+452>>2]=~~(o+(o>=0.0?.5:-.5));j=b+188|0;p=b+180|0;e=b+172|0;f=u+196|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;OG(v,b,a[c[f>>2]>>0]|0);u=v;v=c[u+4>>2]|0;e=p;c[e>>2]=c[u>>2];c[e+4>>2]=v;OG(w,b,a[(c[f>>2]|0)+1>>0]|0);e=w;w=c[e>>2]|0;e=c[e+4>>2]|0;v=j;c[v>>2]=w;c[v+4>>2]=e;w=(c[p>>2]|0)+w|0;if(!((((w|0)>-1?w:0-w|0)|0)==1?(w=(c[b+184>>2]|0)+e|0,(((w|0)>-1?w:0-w|0)|0)==1):0)){OG(y,b,66);v=y;y=c[v+4>>2]|0;w=p;c[w>>2]=c[v>>2];c[w+4>>2]=y;OG(x,b,76);w=x;x=c[w+4>>2]|0;y=j;c[y>>2]=c[w>>2];c[y+4>>2]=x;c[z>>2]=c[f>>2];Pw(0,97706,z)|0}if(a[(c[(c[d+16>>2]|0)+8>>2]|0)+82>>0]|0){if(i>g){m=(i-g)*.5;h[G>>3]=m}else m=0.0;i=+h[r>>3];o=+h[I+8>>3];if(i>o){i=(i-o)*.5;h[G+8>>3]=i}else i=0.0}else{i=0.0;m=0.0}if(!(c[H>>2]|0))j=1;else{c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2];NG(A,J);c[I>>2]=c[A>>2];c[I+4>>2]=c[A+4>>2];c[I+8>>2]=c[A+8>>2];c[I+12>>2]=c[A+12>>2];c[J>>2]=c[E>>2];c[J+4>>2]=c[E+4>>2];c[J+8>>2]=c[E+8>>2];c[J+12>>2]=c[E+12>>2];NG(B,J);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];c[J>>2]=c[F>>2];c[J+4>>2]=c[F+4>>2];c[J+8>>2]=c[F+8>>2];c[J+12>>2]=c[F+12>>2];NG(C,J);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];c[F+8>>2]=c[C+8>>2];c[F+12>>2]=c[C+12>>2];c[J>>2]=c[G>>2];c[J+4>>2]=c[G+4>>2];c[J+8>>2]=c[G+8>>2];c[J+12>>2]=c[G+12>>2];NG(D,J);c[G>>2]=c[D>>2];c[G+4>>2]=c[D+4>>2];c[G+8>>2]=c[D+8>>2];c[G+12>>2]=c[D+12>>2];n=+h[F>>3];m=+h[G>>3];k=+h[q>>3];i=+h[G+8>>3];g=+h[I>>3];j=(c[H>>2]|0)==0}o=m+n;h[b+384>>3]=o;P=i+k;h[b+392>>3]=P;N=m+n+g;h[b+400>>3]=N;Q=+h[I+8>>3];n=i+k+Q;h[b+408>>3]=n;m=+h[b+352>>3];h[b+320>>3]=g/m;h[b+328>>3]=Q/m;m=+h[s>>3];o=o*.013888888888888888*m;f=b+456|0;c[f>>2]=~~(o+(o>=0.0?.5:-.5));o=+h[t>>3];k=P*.013888888888888888*o;c[b+460>>2]=~~(k+(k>=0.0?.5:-.5));m=N*.013888888888888888*m;e=b+464|0;c[e>>2]=~~(m+(m>=0.0?.5:-.5));o=n*.013888888888888888*o;c[b+468>>2]=~~(o+(o>=0.0?.5:-.5));if(!j){c[J>>2]=c[f>>2];c[J+4>>2]=c[f+4>>2];yG(K,J);I=K;K=c[I+4>>2]|0;b=f;c[b>>2]=c[I>>2];c[b+4>>2]=K;c[J>>2]=c[e>>2];c[J+4>>2]=c[e+4>>2];yG(L,J);b=L;K=c[b+4>>2]|0;L=e;c[L>>2]=c[b>>2];c[L+4>>2]=K}l=M;return}function NG(a,b){a=a|0;b=b|0;var c=0.0;c=+h[b>>3];h[a>>3]=+h[b+8>>3];h[a+8>>3]=c;return}function OG(a,b,d){a=a|0;b=b|0;d=d|0;d=(d<<24>>24)+-66|0;switch(d>>>1|d<<31|0){case 9:{c[b+176>>2]=(c[b+168>>2]|0)+-1;b=0;d=-1;break}case 0:{b=0;d=1;break}case 5:{b=1;d=0;break}case 8:{c[b+172>>2]=(c[b+164>>2]|0)+-1;b=-1;d=0;break}default:{b=0;d=0}}c[a>>2]=b;c[a+4>>2]=d;return}function PG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;f=xx(d,97947)|0;i=b+296|0;c[i>>2]=(f|0)==0?97956:f;d=xx(d,97960)|0;f=b+300|0;d=(d|0)==0?97973:d;c[f>>2]=d;d=q1(c[i>>2]|0,d)|0;if(d|0){c[g>>2]=a[d>>0];Pw(0,97975,g)|0;c[f>>2]=191979}d=n1(e)|0;c[b+304>>2]=d;h=b+308|0;f=0;b=0;while(1){e=k1(d,c[i>>2]|0)|0;if(!e)break;g=b+1|0;if((b|0)<(f|0))d=c[h>>2]|0;else{f=f+128|0;d=c[h>>2]|0;if(!d)d=vH(f<<2)|0;else d=xH(d,f<<2)|0;c[h>>2]=d}c[d+(g<<2)>>2]=e;b=g;d=0}if(b|0){i=xH(c[h>>2]|0,(b<<2)+8|0)|0;c[h>>2]=i;c[i>>2]=0;c[(c[h>>2]|0)+(b+1<<2)>>2]=0}l=j;return b|0}function QG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=a+312|0;d=vH((c[i>>2]<<2)+8|0)|0;e=0;h=1;while(1){g=c[i>>2]|0;if((h|0)>(g|0))break;f=e+1|0;if((fG(a,h,g,b)|0)<<24>>24){c[d+(f<<2)>>2]=h;e=f}h=h+1|0}if(!e){c[j>>2]=b;Pw(0,97846,j)|0;D_(d);d=0}else{c[d>>2]=e;c[d+(e+1<<2)>>2]=(c[i>>2]|0)+1}l=k;return d|0}function RG(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0;d=c[b+16>>2]|0;g=+h[d+16>>3];h[d+48>>3]=g-+h[d+88>>3];e=+h[d+24>>3];f=+h[d+80>>3]*.5;h[d+56>>3]=e-f;h[d+64>>3]=+h[d+96>>3]+g;h[d+72>>3]=f+e;b=Ex(a,b)|0;while(1){if(!b)break;SG(b);b=Gx(a,b)|0}return}function SG(a){a=a|0;a=c[(c[a+16>>2]|0)+8>>2]|0;if(a|0)TG(a);return}function TG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+240|0;v=C+192|0;u=C+176|0;w=C+64|0;x=C+32|0;y=C;z=C+144|0;A=C+112|0;B=a+4|0;if((c[B>>2]|0)<=0)qa(98114,96880,3994,98128);b=c[a>>2]|0;d=w;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));d=v;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));UG(x,v);i=x+8|0;j=y+8|0;k=x+16|0;m=y+16|0;n=x+24|0;o=y+24|0;p=w+8|0;q=w+12|0;r=w+32|0;s=w+4|0;t=w+16|0;g=0;while(1){if((g|0)>=(c[B>>2]|0))break;if((g|0)>0){b=(c[a>>2]|0)+(g*48|0)|0;d=w;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));d=v;e=b;f=d+48|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));UG(y,v);h[x>>3]=+h[(+h[x>>3]<+h[y>>3]?x:y)>>3];h[i>>3]=+h[(+h[i>>3]<+h[j>>3]?x:y)+8>>3];h[k>>3]=+h[(+h[k>>3]>+h[m>>3]?x:y)+16>>3];h[n>>3]=+h[(+h[n>>3]>+h[o>>3]?x:y)+24>>3]}b=c[p>>2]|0;if(b|0){f=c[w>>2]|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];JE(z,u,v,1.0,b);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[y+16>>2]=c[z+16>>2];c[y+20>>2]=c[z+20>>2];c[y+24>>2]=c[z+24>>2];c[y+28>>2]=c[z+28>>2];h[x>>3]=+h[(+h[x>>3]<+h[y>>3]?x:y)>>3];h[i>>3]=+h[(+h[i>>3]<+h[j>>3]?x:y)+8>>3];h[k>>3]=+h[(+h[k>>3]>+h[m>>3]?x:y)+16>>3];h[n>>3]=+h[(+h[n>>3]>+h[o>>3]?x:y)+24>>3]}b=c[q>>2]|0;if(b|0){f=(c[w>>2]|0)+((c[s>>2]|0)+-1<<4)|0;c[u>>2]=c[r>>2];c[u+4>>2]=c[r+4>>2];c[u+8>>2]=c[r+8>>2];c[u+12>>2]=c[r+12>>2];c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];JE(A,u,v,1.0,b);c[y>>2]=c[A>>2];c[y+4>>2]=c[A+4>>2];c[y+8>>2]=c[A+8>>2];c[y+12>>2]=c[A+12>>2];c[y+16>>2]=c[A+16>>2];c[y+20>>2]=c[A+20>>2];c[y+24>>2]=c[A+24>>2];c[y+28>>2]=c[A+28>>2];h[x>>3]=+h[(+h[x>>3]<+h[y>>3]?x:y)>>3];h[i>>3]=+h[(+h[i>>3]<+h[j>>3]?x:y)+8>>3];h[k>>3]=+h[(+h[k>>3]>+h[m>>3]?x:y)+16>>3];h[n>>3]=+h[(+h[n>>3]>+h[o>>3]?x:y)+24>>3]}g=g+1|0}B=a+8|0;c[B>>2]=c[x>>2];c[B+4>>2]=c[x+4>>2];c[B+8>>2]=c[x+8>>2];c[B+12>>2]=c[x+12>>2];c[B+16>>2]=c[x+16>>2];c[B+20>>2]=c[x+20>>2];c[B+24>>2]=c[x+24>>2];c[B+28>>2]=c[x+28>>2];l=C;return}function UG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0;n=l;l=l+48|0;i=n+32|0;j=n;k=c[b+4>>2]|0;if((k|0)<=0)qa(98144,96880,3968,98156);if(((k>>>0)%3|0|0)!=1)qa(98166,96880,3969,98156);m=j+16|0;d=c[b>>2]|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];e=i+8|0;f=j+8|0;g=j+24|0;b=1;while(1){if((b|0)>=(k|0))break;p=+h[d+(b<<4)+8>>3];t=b+1|0;o=+h[d+(t<<4)+8>>3];r=(+h[d+(t<<4)>>3]+ +h[d+(b<<4)>>3])*.5;h[i>>3]=r;p=(o+p)*.5;h[e>>3]=p;o=+h[(+h[j>>3]>3];h[j>>3]=o;s=+h[(+h[f>>3]>3];h[f>>3]=s;r=+h[(+h[m>>3]>r?m:i)>>3];h[m>>3]=r;p=+h[(+h[g>>3]>p?m:i)+8>>3];h[g>>3]=p;t=d+(b+2<<4)|0;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];q=+h[i>>3];h[j>>3]=+h[(o>3];o=+h[e>>3];h[f>>3]=+h[(s>3];h[m>>3]=+h[(r>q?m:i)>>3];h[g>>3]=+h[(p>o?m:i)+8>>3];b=b+3|0}c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];c[a+16>>2]=c[j+16>>2];c[a+20>>2]=c[j+20>>2];c[a+24>>2]=c[j+24>>2];c[a+28>>2]=c[j+28>>2];l=n;return}function VG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0;q=+h[a>>3];r=+h[c>>3];k=!(q>=r);if((!k?q<=+h[c+16>>3]:0)?(e=+h[a+8>>3],e>=+h[c+8>>3]):0)i=e<=+h[c+24>>3];else i=0;e=+h[b>>3];if((e>=r?e<=+h[c+16>>3]:0)?(f=+h[b+8>>3],f>=+h[c+8>>3]):0){d=f<=+h[c+24>>3];if(!(i^d))if(i&d)d=1;else l=11;else d=0}else if(i)d=0;else l=11;a:do if((l|0)==11){p=+h[a+8>>3];do if(q==e){r=+h[c+8>>3];if(!(k|p>=r^+h[b+8>>3]>=r^1)?q<=+h[c+16>>3]:0){d=0;break a}}else{j=+h[b+8>>3];if(p==j){if(!(q>=r^e>=r))break;if(!(p>=+h[c+8>>3]))break;if(!(p<=+h[c+24>>3]))break;else{d=0;break a}}o=(j-p)/(e-q);l=q>3];if(!(!(r>=g)|!(r<=e)|!(f>=m))?f<=+h[c+24>>3]:0){d=0;break a}n=+h[c+16>>3];f=(n-r)*o+f;if(f>=m?!(!(n<=e)|(n>=g?!(f<=+h[c+24>>3]):1)):0){d=0;break a}l=p=r?!(!(m<=f)|(!(m>=g)|!(e<=n))):0){d=0;break a}p=+h[c+24>>3];q=(p-m)/o+e;if(q>=r?!(!(p<=f)|(!(p>=g)|!(q<=n))):0){d=0;break a}}while(0);d=-1}while(0);return d|0}function WG(a){a=a|0;var b=0,c=0.0;b=a+16|0;c=+h[b>>3];h[a+32>>3]=c;h[a+48>>3]=c;h[a+40>>3]=+h[a+24>>3];h[a+56>>3]=+h[a+8>>3];h[b>>3]=+h[a>>3];return}function XG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0;if((c[46360]|0)!=(d|0)){w$(+(d|0)*.15915494309189535,183248,183256);c[46360]=d}g=+h[b>>3];e=+h[22907];f=+h[b+8>>3];i=+h[22906];h[a>>3]=e*g-i*f;h[a+8>>3]=i*g+f*e;return}function YG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;f=k;e=+h[b>>3];i=b+8|0;g=+h[i>>3];a:do switch(d|0){case 0:{j=11;break}case 90:{h[b>>3]=g;e=-e;j=10;break}case 180:{e=-g;j=10;break}case 270:{h[b>>3]=g;j=10;break}default:{if((d|0)<0){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];ZG(a,f,0-d|0);break a}if((d|0)>360){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];YG(a,f,(d>>>0)%360|0);break a}else{c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];XG(a,f,d);break a}}}while(0);if((j|0)==10){h[i>>3]=e;j=11}if((j|0)==11){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}l=k;return}function ZG(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;f=k;e=+h[b>>3];i=b+8|0;g=+h[i>>3];a:do switch(d|0){case 0:{j=11;break}case 90:{h[b>>3]=-g;j=10;break}case 180:{e=-g;j=10;break}case 270:{h[b>>3]=g;j=10;break}default:{if((d|0)<0){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];YG(a,f,0-d|0);break a}if((d|0)>360){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];ZG(a,f,(d>>>0)%360|0);break a}else{c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];XG(a,f,360-d|0);break a}}}while(0);if((j|0)==10){h[i>>3]=e;j=11}if((j|0)==11){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2]}l=k;return}function _G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;g=+h[c>>3];d=+h[c+8>>3];f=d+ +h[b>>3];e=g+ +h[b+24>>3];d=d+ +h[b+16>>3];h[a>>3]=g+ +h[b+8>>3];h[a+8>>3]=f;h[a+16>>3]=e;h[a+24>>3]=d;return}function $G(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0;f=+h[a>>3];d=+h[b>>3]-f;g=+h[a+8>>3];e=+h[b+8>>3]-g;f=(+h[c+8>>3]-g)*d-(+h[c>>3]-f)*e;f=f*f;return +(f<1.0e-10?0.0:f/(e*e+d*d))}function aH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g+8|0;e=g;a=xx(a,b)|0;if(a|0?(c[f>>2]=e,(N1(a,98183,f)|0)>0):0)h[d>>3]=+h[e>>3];l=g;return}function bH(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;g=n+8|0;i=n;e=uH(96)|0;m=b+16|0;c[(c[m>>2]|0)+8>>2]=e;e=xx(b,98187)|0;if(!e){e=Ta(98196)|0;if(e|0)k=3}else k=3;if((k|0)==3)cb(98208,e|0,1)|0;e=(cH(b)|0)&255;a[(c[m>>2]|0)+115>>0]=e;if(0==0?(e=xx(b,98219)|0,c[46362]=e,(e|0)==0):0)c[46362]=c[46361];f=+LL(b,nx(b,0,98229,0)|0,0.0,0.0);h[c[(c[m>>2]|0)+8>>2]>>3]=f;e=xx(b,98237)|0;a:do if(!e)e=0;else{switch(a[e>>0]|0){case 76:{if(!(b$(e,98245)|0)){e=1;break a}break}case 66:{if(!(b$(e,98248)|0)){e=2;break a}break}case 82:{e=(b$(e,98251)|0)==0;e=e?3:0;break a}default:{e=0;break a}}e=0}while(0);c[(c[m>>2]|0)+116>>2]=e<<2|(d<<24>>24==0?0:e);f=+LL(b,nx(b,0,98254,0)|0,.25,.02);h[i>>3]=f;f=f*72.0;c[(c[m>>2]|0)+248>>2]=~~(f+(f>=0.0?.5:-.5));e=NL(b,nx(b,0,98262,0)|0,0)|0;if(e){c[g>>2]=i;if(N1(e,98183,g)|0){f=+h[i>>3];if(f<.02){h[i>>3]=.02;f=.02}}else{h[i>>3]=.5;f=.5}if(P0(e,98270)|0)a[(c[m>>2]|0)+276>>0]=1}else{h[i>>3]=.5;f=.5}f=f*72.0;c[(c[m>>2]|0)+252>>2]=~~(f+(f>=0.0?.5:-.5));i=(KL(b,nx(b,0,98278,0)|0,0,0)|0)&255;a[(c[m>>2]|0)+243>>0]=i;i=aM(NL(b,nx(b,0,98288,0)|0,0)|0,20572,20588)|0;c[(c[m>>2]|0)+244>>2]=i;dH(b);i=eH(b,98298,(c[(c[m>>2]|0)+8>>2]|0)+64|0)|0;e=c[(c[m>>2]|0)+8>>2]|0;a[e+80>>0]=i;eH(b,98303,e+48|0)|0;e=QL(xx(b,98308)|0)|0;a[(c[(c[m>>2]|0)+8>>2]|0)+82>>0]=e;e=xx(b,98315)|0;do if(!e){e=xx(b,98322)|0;if(e|0){e=(a[e>>0]|32)<<24>>24==108&1;k=27;break}e=xx(b,98334)|0;if(e|0){e=QL(e)|0;k=27}}else{e=(a2(e)|0)==90&1;k=27}while(0);if((k|0)==27)a[(c[(c[m>>2]|0)+8>>2]|0)+81>>0]=e;c[46364]=aM(xx(b,98344)|0,20604,20620)|0;a[191874]=QL(xx(b,98356)|0)|0;c[46367]=0;c[46368]=0;h[(c[(c[m>>2]|0)+8>>2]|0)+24>>3]=0.0;e=xx(b,98368)|0;if((e|0)!=0?(a[e>>0]|0)!=0:0)k=32;else k=30;if(((k|0)==30?(j=xx(b,98372)|0,j|0):0)?a[j>>0]|0:0){e=j;k=32}if((k|0)==32){f=+b2(e);h[(c[(c[m>>2]|0)+8>>2]|0)+24>>3]=f}fH(b);h[22910]=1.e+37;c[46370]=nx(b,0,98383,0)|0;c[46373]=nx(b,0,137952,0)|0;c[46374]=nx(b,0,102470,0)|0;c[46375]=nx(b,1,137966,0)|0;c[46376]=nx(b,1,138034,0)|0;c[46377]=nx(b,1,105204,0)|0;c[46378]=nx(b,1,137741,0)|0;c[46379]=nx(b,1,98392,0)|0;c[46387]=nx(b,1,138e3,0)|0;c[46380]=nx(b,1,98402,0)|0;c[46381]=nx(b,1,98411,0)|0;c[46382]=nx(b,1,98420,0)|0;k=nx(b,1,105198,0)|0;c[46384]=k;if(!k)c[46384]=nx(b,1,105198,102467)|0;c[46385]=nx(b,1,98430,0)|0;c[46388]=nx(b,1,98278,0)|0;c[46402]=nx(b,1,98437,0)|0;c[46391]=nx(b,1,98383,0)|0;c[46383]=nx(b,1,102470,0)|0;c[46389]=nx(b,1,137994,0)|0;c[46390]=nx(b,1,98446,0)|0;c[46393]=nx(b,1,98458,0)|0;c[46392]=nx(b,1,98322,0)|0;c[46394]=nx(b,1,98463,0)|0;c[46395]=nx(b,1,137942,0)|0;c[46396]=nx(b,1,134215,0)|0;c[46386]=nx(b,1,98474,0)|0;c[46397]=nx(b,1,98484,0)|0;c[46398]=nx(b,1,98490,0)|0;c[46399]=nx(b,1,98496,0)|0;c[46400]=nx(b,1,98504,0)|0;c[46401]=nx(b,1,98513,0)|0;c[46403]=nx(b,1,137952,0)|0;c[46404]=nx(b,2,98515,0)|0;c[46406]=nx(b,2,137741,0)|0;c[46407]=nx(b,2,98392,0)|0;c[46409]=nx(b,2,98402,0)|0;c[46410]=nx(b,2,98411,0)|0;c[46411]=nx(b,2,98420,0)|0;c[46412]=nx(b,2,105198,0)|0;c[46413]=nx(b,2,98430,0)|0;c[46422]=nx(b,2,98522,0)|0;c[46414]=nx(b,2,98533,0)|0;c[46425]=nx(b,2,98537,0)|0;c[46426]=nx(b,2,98547,0)|0;c[46427]=nx(b,2,98557,0)|0;c[46428]=nx(b,2,98567,0)|0;c[46429]=nx(b,2,98577,0)|0;c[46430]=nx(b,2,98591,0)|0;c[46431]=nx(b,2,98605,0)|0;c[46432]=nx(b,2,98620,0)|0;c[46433]=nx(b,2,98634,0)|0;c[46405]=nx(b,2,98645,0)|0;c[46417]=nx(b,2,98278,0)|0;c[46415]=nx(b,2,138e3,0)|0;c[46416]=nx(b,2,98652,0)|0;c[46418]=nx(b,2,98661,0)|0;c[46419]=nx(b,2,98671,0)|0;c[46420]=nx(b,2,98484,0)|0;c[46421]=nx(b,2,98496,0)|0;c[46434]=nx(b,2,98682,0)|0;c[46435]=nx(b,2,98691,0)|0;c[46436]=nx(b,2,98437,0)|0;e=ME(b)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+88>>2]=e;e=xx(b,137978)|0;if(e|0?a[e>>0]|0:0){b=pH(e,b)|0;c[(c[(c[m>>2]|0)+8>>2]|0)+92>>2]=b}l=n;return}function cH(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;a=OL(a,nx(a,0,98781,0)|0,98789)|0;if(((((((O$(a,98795)|0)!=0?(O$(a,98803)|0)!=0:0)?(O$(a,98810)|0)!=0:0)?(O$(a,98813)|0)!=0:0)?(O$(a,98824)|0)!=0:0)?(O$(a,98835)|0)!=0:0)?(O$(a,98845)|0)!=0:0)if((O$(a,98856)|0)!=0?(O$(a,98862)|0)!=0:0)if((O$(a,98789)|0)!=0?(O$(a,98867)|0)!=0:0){c[b>>2]=a;Pw(0,98872,b)|0;a=0}else a=0;else a=2;else a=1;l=d;return a|0}function dH(b){b=b|0;var d=0.0,e=0,f=0;e=xx(b,98739)|0;a:do if(e|0?(f=a[e>>0]|0,f<<24>>24):0)switch(f<<24>>24|0){case 97:{if(f<<24>>24!=97)break a;if(b$(e,98745)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=4;break a}case 99:{if(f<<24>>24!=99)break a;if(b$(e,98750)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=3;break a}case 101:{if(f<<24>>24!=101)break a;if(b$(e,98759)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=5;break a}case 102:{if(f<<24>>24!=102)break a;if(b$(e,98766)|0)break a;c[(c[(c[b+16>>2]|0)+8>>2]|0)+84>>2]=2;break a}default:{d=+b2(e);if(!(d>0.0))break a;b=c[(c[b+16>>2]|0)+8>>2]|0;c[b+84>>2]=1;h[b+16>>3]=d;break a}}while(0);return}function eH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;m=o+32|0;i=o+16|0;k=o+8|0;j=o;n=o+40|0;a[n>>0]=0;b=xx(b,d)|0;do if(b){c[i>>2]=k;c[i+4>>2]=j;c[i+8>>2]=n;i=(N1(b,98723,i)|0)>1;g=+h[k>>3];f=+h[j>>3];if(i&g>0.0&f>0.0){g=g*72.0;h[e>>3]=+(~~(g+(g>=0.0?.5:-.5))|0);g=f*72.0;h[e+8>>3]=+(~~(g+(g>=0.0?.5:-.5))|0);b=(a[n>>0]|0)==33;break}a[n>>0]=0;c[m>>2]=k;c[m+4>>2]=n;m=(N1(b,98733,m)|0)>0;f=+h[k>>3];if(m&f>0.0){g=f*72.0;g=+(~~(g+(g>=0.0?.5:-.5))|0);h[e>>3]=g;h[e+8>>3]=g;b=(a[n>>0]|0)==33}else b=0}else b=0;while(0);l=o;return b&1|0}function fH(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0;d=xx(b,105198)|0;do if(d|0?a[d>>0]|0:0){e=(c[(c[b+60>>2]|0)+16>>2]|0)+113|0;a[e>>0]=a[e>>0]|8;e=(Rz(d)|0)!=0;g=+LL(b,nx(b,0,98402,0)|0,14.0,1.0);i=OL(b,nx(b,0,98411,0)|0,104968)|0;d=kH(b,d,e?2:0,g,i,OL(b,nx(b,0,98420,0)|0,134232)|0)|0;i=b+16|0;c[(c[i>>2]|0)+12>>2]=d;d=xx(b,102602)|0;e=(d|0)!=0;do if((fz(b)|0)==(b|0)){if(e?(a[d>>0]|0)==116:0){d=1;break}d=0}else{if(e?(a[d>>0]|0)==98:0){d=0;break}d=1}while(0);e=xx(b,98700)|0;a:do if(e)switch(a[e>>0]|0){case 108:{d=d|2;break a}case 114:{d=d|4;break a}default:break a}while(0);a[(c[i>>2]|0)+275>>0]=d;if((fz(b)|0)!=(b|0)){d=c[(c[i>>2]|0)+12>>2]|0;f=+h[d+24>>3]+16.0;g=+h[d+32>>3]+8.0;b=(c[(c[(fz(b)|0)+16>>2]|0)+116>>2]&1|0)==0;d=c[i>>2]|0;e=a[d+275>>0]<<1&2;if(b){b=e&255;h[d+48+(b<<4)>>3]=f;h[d+48+(b<<4)+8>>3]=g;break}else{b=(e^3)&255;h[d+48+(b<<4)>>3]=g;h[d+48+(b<<4)+8>>3]=f;break}}}while(0);return}function gH(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;d=c[e>>2]|0;b=c[d+8>>2]|0;do if(!b)b=d;else{d=c[b+88>>2]|0;if(d){pE(d);d=c[e>>2]|0;b=c[d+8>>2]|0;if(!b){b=d;break}}D_(c[b+92>>2]|0);b=c[e>>2]|0}while(0);D_(c[b+8>>2]|0);e=c[e>>2]|0;c[e+8>>2]=0;nH(c[e+12>>2]|0);Gz(a,0,134401);return}function hH(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;switch(a|0){case 0:{a=98945;break}case 1:{a=98813;break}case 2:{a=98951;break}default:{c[b>>2]=a;Pw(1,98915,b)|0;a=98945}}l=d;return a|0}function iH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=c[d>>2]|0;l=d+24|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;if(a[f>>0]|0){i=vH((W_(f)|0)+1|0)|0;a[i>>0]=0;j=d+12|0;e=i;a:while(1){b:while(1){h=f+1|0;g=a[f>>0]|0;if(!(g<<24>>24))break a;if(!(g<<24>>24==-1|((g&255)<161|(c[j>>2]|0)!=2))){a[e>>0]=g;h=a[h>>0]|0;g=e+2|0;a[e+1>>0]=h;if(!(h<<24>>24)){e=g;break a}else{e=g;f=f+2|0;continue}}switch(g<<24>>24){case 92:break b;case 10:{k=12;break b}default:{}}a[e>>0]=g;e=e+1|0;f=h}if((k|0)==12){k=0;f=e+1|0;a[e>>0]=0;jH(b,d,i,110);e=f;i=f;f=h;continue}g=a[h>>0]|0;switch(g<<24>>24|0){case 114:case 108:case 110:{g=e+1|0;a[e>>0]=0;jH(b,d,i,a[h>>0]|0);e=g;break}default:{a[e>>0]=g;e=e+1|0;g=i}}i=g;f=(a[h>>0]|0)==0?h:f+2|0}if((i|0)!=(e|0)){a[e>>0]=0;jH(b,d,i,110)}d=d+40|0;c[d>>2]=c[l>>2];c[d+4>>2]=c[l+4>>2];c[d+8>>2]=c[l+8>>2];c[d+12>>2]=c[l+12>>2]}return}function jH(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;q=s+16|0;p=s;r=e+76|0;k=b[r>>1]|0;o=e+72|0;m=c[o>>2]|0;if(!m)n=uH((k*56|0)+112|0)|0;else n=wH(m,k+2|0,56,k+1|0)|0;c[o>>2]=n;k=b[r>>1]|0;m=n+(k*56|0)|0;c[m>>2]=f;a[n+(k*56|0)+48>>0]=g;if((f|0)!=0?(a[f>>0]|0)!=0:0){c[45824]=c[e+4>>2];h[22914]=+h[e+16>>3];g=c[d+144>>2]|0;c[n+(k*56|0)+4>>2]=nb[c[g>>2]&63](g,183296,1)|0;wL(p,d,m);j=+h[p>>3];h[q>>3]=j;i=+h[p+8>>3]}else{h[q>>3]=0.0;i=+(~~(+h[e+16>>3]*1.2)|0);h[n+(k*56|0)+40>>3]=i;j=0.0}b[r>>1]=(b[r>>1]|0)+1<<16>>16;r=e+24|0;h[r>>3]=+h[(+h[r>>3]>j?r:q)>>3];r=e+32|0;h[r>>3]=+h[r>>3]+i;l=s;return}function kH(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;r=u+16|0;q=u+8|0;p=u;t=uH(88)|0;switch(pz(b)|0){case 0:{m=0;s=c[b+60>>2]|0;n=b;o=0;break}case 1:{m=0;s=fz(ez(b)|0)|0;n=0;o=b;break}case 2:{m=b;s=fz(ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)|0;n=0;o=0;break}default:{m=0;s=0;n=0;o=0}}c[t+4>>2]=i;c[t+8>>2]=j;h[t+16>>3]=g;k=s+16|0;j=t+12|0;c[j>>2]=d[(c[k>>2]|0)+115>>0];a:do if(f&4){c[t>>2]=n1(e)|0;if(f&2|0)a[t+82>>0]=1}else switch(f|0){case 2:{c[t>>2]=n1(e)|0;a[t+82>>0]=1;if(!(kR(b,t)|0))break a;switch(pz(b)|0){case 0:{c[p>>2]=ry(n)|0;Pw(3,98957,p)|0;break a}case 1:{c[q>>2]=ry(o)|0;Pw(3,98979,q)|0;break a}case 2:{p=ry(c[((c[m>>2]&3|0)==3?m:m+48|0)+40>>2]|0)|0;q=(ey(s)|0)!=0;s=ry(c[((c[m>>2]&3|0)==2?m:m+-48|0)+40>>2]|0)|0;c[r>>2]=p;c[r+4>>2]=q?134656:138665;c[r+8>>2]=s;Pw(3,99e3,r)|0;break a}default:break a}}case 0:{i=lH(e,b,0)|0;c[t>>2]=i;if((c[j>>2]|0)==1)i=RM(i)|0;else i=OM(i,s)|0;D_(c[t>>2]|0);c[t>>2]=i;iH(c[(c[k>>2]|0)+144>>2]|0,t);break a}default:qa(99027,99043,166,99052)}while(0);l=u;return t|0}function lH(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;switch(pz(d)|0){case 0:{i=ry(d)|0;g=W_(i)|0;f=c[(c[d+16>>2]|0)+12>>2]|0;if(f){f=c[f>>2]|0;if(!b){v=0;t=2;u=2;s=2;h=2;y=99075;m=99072;j=102467;o=191979;q=191979;p=0;r=0;n=2;w=f;x=99069}else{v=0;t=2;u=2;s=2;h=2;y=99075;m=99072;j=102467;o=191979;q=191979;p=0;r=0;n=W_(f)|0;w=f;x=99069}}else{v=0;t=2;u=2;s=2;h=2;y=99075;m=99072;j=102467;o=191979;q=191979;p=0;r=0;n=2;w=99063;x=99069}break}case 1:{i=ry(ez(d)|0)|0;g=W_(i)|0;j=ry(d)|0;h=W_(j)|0;f=c[(c[d+16>>2]|0)+104>>2]|0;if(f){f=c[f>>2]|0;if(!b){v=0;t=2;u=2;s=2;y=99075;m=99072;o=191979;q=191979;p=0;r=0;n=2;w=f;x=99069}else{v=0;t=2;u=2;s=2;y=99075;m=99072;o=191979;q=191979;p=0;r=0;n=W_(f)|0;w=f;x=99069}}else{v=0;t=2;u=2;s=2;y=99075;m=99072;o=191979;q=191979;p=0;r=0;n=2;w=99063;x=99069}break}case 2:{h=d+48|0;i=ry(fz(ez(c[((c[d>>2]&3|0)==3?d:h)+40>>2]|0)|0)|0)|0;g=W_(i)|0;l=ry(c[((c[d>>2]&3|0)==3?d:h)+40>>2]|0)|0;k=W_(l)|0;f=d+16|0;q=c[(c[f>>2]|0)+52>>2]|0;if(!q)r=0;else r=W_(q)|0;m=ry(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;f=c[f>>2]|0;o=c[f+92>>2]|0;if(!o)p=0;else p=W_(o)|0;j=W_(m)|0;f=c[f+96>>2]|0;if(f){f=c[f>>2]|0;if(!b)n=2;else n=W_(f)|0}else{n=2;f=99063}x=(ey(fz(ez(c[((c[d>>2]&3|0)==3?d:h)+40>>2]|0)|0)|0)|0)==0;v=1;t=k;u=j;s=k+2+(r|0?r+1|0:0)+j+(p|0?p+1|0:0)|0;h=2;y=l;j=102467;w=f;x=x?138665:134656;break}default:{v=0;t=2;u=2;s=2;h=2;g=2;y=99075;m=99072;j=102467;i=99066;o=191979;q=191979;p=0;r=0;n=2;w=99063;x=99069}}e=(e|0)==0;l=0;f=b;a:while(1){d=f+1|0;b:do switch(a[f>>0]|0){case 0:break a;case 92:{f=f+2|0;switch(a[d>>0]|0){case 78:{k=h;break b}case 71:{k=g;break b}case 69:{k=s;break b}case 72:{k=u;break b}case 84:{k=t;break b}case 76:{k=n;break b}case 92:{if(!e){k=1;break b}break}default:{}}k=2;break}default:{k=1;f=d}}while(0);l=l+k|0}s=vH(l+1|0)|0;n=(v|0)==0;l=(r|0)==0;d=(p|0)==0;f=s;g=b;c:while(1){k=g+1|0;h=a[g>>0]|0;switch(h<<24>>24){case 0:break c;case 92:break;default:{a[f>>0]=h;f=f+1|0;g=k;continue c}}h=g+2|0;g=a[k>>0]|0;switch(g<<24>>24|0){case 71:{g=i;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}g=g+1|0;f=f+1|0}}case 78:{g=j;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}g=g+1|0;f=f+1|0}}case 69:{if(n){g=h;continue c}else g=y;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24))break;g=g+1|0;f=f+1|0}if(l)g=x;else{a[f>>0]=58;g=q;while(1){f=f+1|0;b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=x;break}else g=g+1|0}}while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=m;break}g=g+1|0;f=f+1|0}while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24))break;g=g+1|0;f=f+1|0}if(d){g=h;continue c}a[f>>0]=58;g=o;while(1){f=f+1|0;b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}else g=g+1|0}}case 84:{g=y;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}g=g+1|0;f=f+1|0}}case 72:{g=m;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}f=f+1|0;g=g+1|0}}case 76:{g=w;while(1){b=a[g>>0]|0;a[f>>0]=b;if(!(b<<24>>24)){g=h;continue c}f=f+1|0;g=g+1|0}}case 92:{if(!e){a[f>>0]=92;f=f+1|0;g=h;continue c}break}default:{}}a[f>>0]=92;a[f+1>>0]=g;f=f+2|0;g=h}a[f>>0]=0;return s|0}function mH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(a|0){d=a;e=0;while(1){if((e|0)>=(b|0))break;if(!e)D_(c[d>>2]|0);g=c[d+8>>2]|0;if(g|0?(f=c[d+12>>2]|0,f|0):0)tb[f&127](g);d=d+56|0;e=e+1|0}D_(a)}return}function nH(d){d=d|0;var e=0;if(d|0){D_(c[d>>2]|0);e=d+72|0;if(a[d+82>>0]|0){e=c[e>>2]|0;if(e|0)XQ(e,1)}else mH(c[e>>2]|0,b[d+76>>1]|0);D_(d)}return}function oH(d,e,f){d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;q=u+16|0;r=u;k=c[d+16>>2]|0;s=k+12|0;t=c[s>>2]|0;c[s>>2]=e;if(!(a[f+82>>0]|0)){p=f+76|0;if((b[p>>1]|0)>=1){RO(d,0);UO(d,c[f+8>>2]|0);switch(a[f+80>>0]|0){case 116:{j=+h[f+64>>3];g=+h[f+48>>3]*.5+j;break}case 98:{j=+h[f+64>>3];g=+h[f+48>>3]*-.5+j+ +h[f+32>>3];break}default:{j=+h[f+64>>3];g=+h[f+32>>3]*.5+j}}g=g-+h[f+16>>3];o=r+8|0;h[o>>3]=g;if(b[k+260>>1]&512)h[o>>3]=g-j;m=f+72|0;n=f+56|0;i=f+40|0;e=0;while(1){if((e|0)>=(b[p>>1]|0))break;k=c[m>>2]|0;switch(a[k+(e*56|0)+48>>0]|0){case 108:{g=+h[n>>3]-+h[i>>3]*.5;break}case 114:{g=+h[i>>3]*.5+ +h[n>>3];break}default:g=+h[n>>3]}h[r>>3]=g;c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];TO(d,q,k+(e*56|0)|0);h[o>>3]=+h[o>>3]-+h[(c[m>>2]|0)+(e*56|0)+40>>3];e=e+1|0}SO(d);i=18}}else{CQ(d,c[f+72>>2]|0,f);i=18}if((i|0)==18)c[s>>2]=t;l=u;return}function pH(a,b){a=a|0;b=b|0;return lH(a,b,1)|0}function qH(a){a=a|0;return rH(a,0)|0}function rH(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=c[46437]|0;if(!e){c[46438]=64;e=vH(64)|0;c[46437]=e}j=d<<24>>24==0;i=0;f=0;h=b;while(1){if(!h)break;d=a[h>>0]|0;if(!(d<<24>>24))break;b=c[46438]|0;if((i|0)>(b+-8|0)){e=b<<1;c[46438]=e;e=xH(c[46437]|0,e)|0;c[46437]=e;e=e+i|0;d=a[h>>0]|0}a:do switch(d<<24>>24){case 38:{if(j?(sH(h)|0)!=0:0)k=18;else{f=5;d=99104}break}case 60:{f=4;d=99127;break}case 62:{f=4;d=99110;break}case 45:{f=5;d=99121;break}default:{if((f|0)!=0&d<<24>>24==32)if((a[f>>0]|0)==32){f=6;d=99097;break a}else{k=18;break a}switch(d<<24>>24){case 34:{f=6;d=99090;break a}case 39:{f=5;d=99115;break a}case 10:if(j){k=18;break a}else{f=5;d=99084;break a}default:{k=18;break a}}}}while(0);if((k|0)==18){k=0;d=j|d<<24>>24!=13;f=d?1:5;d=d?h:99078}g=e+f|0;b=f;while(1){if(!b)break;a[e>>0]=a[d>>0]|0;b=b+-1|0;d=d+1|0;e=e+1|0}b=h;i=f+i|0;e=g;h=h+1|0;f=b}a[e>>0]=0;return c[46437]|0}function sH(b){b=b|0;var c=0,d=0;d=b+1|0;c=a[d>>0]|0;a:do if(c<<24>>24==35){d=b+2|0;c=a[d>>0]|0;switch(c<<24>>24){case 88:case 120:break;default:{b=d;while(1){d=b+1|0;if((c+-48&255)>=10)break a;b=d;c=a[d>>0]|0}}}d=b+3|0;while(1){c=a[d>>0]|0;if((c+-48&255)>=10)switch(c<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:break a}d=d+1|0}}else while(1){b=d+1|0;if(((c&-33)+-65&255)>=26)break a;d=b;c=a[b>>0]|0}while(0);return c<<24>>24==59|0}function tH(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[46439]|0;if(!d){c[46440]=64;d=vH(64)|0;c[46439]=d;i=0}else i=0;while(1){if(!b)break;e=a[b>>0]|0;if(!(e<<24>>24))break;f=c[46440]|0;if((i|0)>(f+-8|0)){d=f<<1;c[46440]=d;d=xH(c[46439]|0,d)|0;c[46439]=d;d=d+i|0;e=a[b>>0]|0}switch(e<<24>>24){case 38:{if(!(sH(b)|0)){g=5;e=99104}else j=12;break}case 60:{g=4;e=99127;break}case 62:{g=4;e=99110;break}case 34:{g=6;e=99090;break}case 39:{g=5;e=99115;break}default:j=12}if((j|0)==12){j=0;g=1;e=b}h=d+g|0;f=g;while(1){if(!f)break;a[d>>0]=a[e>>0]|0;f=f+-1|0;e=e+1|0;d=d+1|0}i=g+i|0;d=h;b=b+1|0}a[d>>0]=0;return c[46439]|0}function uH(a){a=a|0;var b=0;if(!a)a=0;else{b=vH(a)|0;H3(b|0,0,a|0)|0;a=b}return a|0}function vH(a){a=a|0;if(a){a=C_(a)|0;if(!a){E1(108658,14,1,c[15686]|0)|0;a=0}}else a=0;return a|0}function wH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=F_(a,O(d,b)|0)|0;if(!((b|0)!=0&(a|0)==0)){if(b>>>0>e>>>0)H3(a+(O(e,d)|0)|0,0,O(b-e|0,d)|0)|0}else E1(108658,14,1,c[15686]|0)|0;return a|0}function xH(a,b){a=a|0;b=b|0;a=F_(a,b)|0;if((b|0)!=0&(a|0)==0)E1(108658,14,1,c[15686]|0)|0;return a|0} +function ol(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=l;l=l+320|0;H=M+296|0;G=M+280|0;x=M+136|0;w=M+120|0;n=M+104|0;i=M+88|0;f=M+80|0;E=M+16|0;z=M;j=M+264|0;k=M+248|0;m=M+232|0;o=M+216|0;A=M+200|0;B=M+184|0;y=M+168|0;D=M+152|0;g=pl(xx(a,87703)|0,b)|0;q=pl(xx(a,87709)|0,b)|0;r=(q|0)!=0;b=(g|0)!=0;do if(b|r?(L=a+16|0,e=c[(c[L>>2]|0)+8>>2]|0,e|0):0){if((c[e+4>>2]|0)>1){K=ry(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)|0;L=ry(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)|0;c[f>>2]=K;c[f+4>>2]=L;Pw(0,87715,f)|0;break}I=c[e>>2]|0;e=c[I+4>>2]|0;p=c[a>>2]&3;s=a+-48|0;t=c[((p|0)==2?a:s)+40>>2]|0;u=a+48|0;p=c[((p|0)==3?a:u)+40>>2]|0;J=vH(48)|0;v=I+12|0;c[J+12>>2]=c[v>>2];C=I+8|0;c[J+8>>2]=c[C>>2];do if(b){h=(c[g+16>>2]|0)+16|0;g=(c[t+16>>2]|0)+16|0;c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[H+12>>2]=c[g+12>>2];if(!(ql(H,h)|0)){o=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;F=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87703)|0;c[i>>2]=o;c[i+4>>2]=F;c[i+8>>2]=K;Pw(0,87756,i)|0;K=26;break}b=c[I>>2]|0;c[H>>2]=c[b>>2];c[H+4>>2]=c[b+4>>2];c[H+8>>2]=c[b+8>>2];c[H+12>>2]=c[b+12>>2];if(ql(H,h)|0){F=(c[p+16>>2]|0)+16|0;c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[H+8>>2]=c[F+8>>2];c[H+12>>2]=c[F+12>>2];if(ql(H,h)|0){o=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;F=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87703)|0;c[n>>2]=o;c[n+4>>2]=F;c[n+8>>2]=K;Pw(0,87799,n)|0;K=26;break}if(!(c[C>>2]|0))qa(87841,87852,369,87863);o=I+16|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[o>>2];c[H+4>>2]=c[o+4>>2];c[H+8>>2]=c[o+8>>2];c[H+12>>2]=c[o+12>>2];rl(z,G,H,h);F=(c[I>>2]|0)+48|0;c[F>>2]=c[z>>2];c[F+4>>2]=c[z+4>>2];c[F+8>>2]=c[z+8>>2];c[F+12>>2]=c[z+12>>2];F=(c[I>>2]|0)+16|0;c[G>>2]=c[z>>2];c[G+4>>2]=c[z+4>>2];c[G+8>>2]=c[z+8>>2];c[G+12>>2]=c[z+12>>2];c[H>>2]=c[o>>2];c[H+4>>2]=c[o+4>>2];c[H+8>>2]=c[o+8>>2];c[H+12>>2]=c[o+12>>2];sl(j,G,H);c[F>>2]=c[j>>2];c[F+4>>2]=c[j+4>>2];c[F+8>>2]=c[j+8>>2];c[F+12>>2]=c[j+12>>2];F=c[I>>2]|0;b=F+16|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[o>>2];c[H+4>>2]=c[o+4>>2];c[H+8>>2]=c[o+8>>2];c[H+12>>2]=c[o+12>>2];sl(k,G,H);c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];c[F+8>>2]=c[k+8>>2];c[F+12>>2]=c[k+12>>2];F=c[I>>2]|0;b=F+32|0;F=F+16|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];c[H>>2]=c[z>>2];c[H+4>>2]=c[z+4>>2];c[H+8>>2]=c[z+8>>2];c[H+12>>2]=c[z+12>>2];sl(m,G,H);c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];b=c[v>>2]|0;if(!b){F=3;break}F=(FE(a,c[I>>2]|0,0,0,J,b)|0)+3|0;break}g=e+-1|0;b=0;while(1){if((b|0)>=(g|0))break;if(tl((c[I>>2]|0)+(b<<4)|0,h)|0)break;b=b+3|0}e=c[v>>2]|0;f=(e|0)!=0;if((b|0)==(g|0))if(f){F=J+32|0;m=I+32|0;n=(c[I>>2]|0)+(g<<4)|0;c[G>>2]=c[m>>2];c[G+4>>2]=c[m+4>>2];c[G+8>>2]=c[m+8>>2];c[G+12>>2]=c[m+12>>2];c[H>>2]=c[n>>2];c[H+4>>2]=c[n+4>>2];c[H+8>>2]=c[n+8>>2];c[H+12>>2]=c[n+12>>2];rl(o,G,H,h);c[F>>2]=c[o>>2];c[F+4>>2]=c[o+4>>2];c[F+8>>2]=c[o+8>>2];c[F+12>>2]=c[o+12>>2];F=g;break}else qa(87880,87852,387,87863);else{if(f)b=FE(a,c[I>>2]|0,0,b,J,e)|0;F=b+3|0;break}}else K=26;while(0);if((K|0)==26){b=e+-1|0;if(!(c[v>>2]|0))F=b;else{F=J+32|0;o=I+32|0;c[F>>2]=c[o>>2];c[F+4>>2]=c[o+4>>2];c[F+8>>2]=c[o+8>>2];c[F+12>>2]=c[o+12>>2];F=b}}do if(r){f=(c[q+16>>2]|0)+16|0;r=(c[p+16>>2]|0)+16|0;c[H>>2]=c[r>>2];c[H+4>>2]=c[r+4>>2];c[H+8>>2]=c[r+8>>2];c[H+12>>2]=c[r+12>>2];if(!(ql(H,f)|0)){G=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;H=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87709)|0;c[w>>2]=G;c[w+4>>2]=H;c[w+8>>2]=K;Pw(0,87891,w)|0;K=52;break}b=(c[I>>2]|0)+(F<<4)|0;c[H>>2]=c[b>>2];c[H+4>>2]=c[b+4>>2];c[H+8>>2]=c[b+8>>2];c[H+12>>2]=c[b+12>>2];if(ql(H,f)|0){E=(c[t+16>>2]|0)+16|0;c[H>>2]=c[E>>2];c[H+4>>2]=c[E+4>>2];c[H+8>>2]=c[E+8>>2];c[H+12>>2]=c[E+12>>2];if(ql(H,f)|0){G=ry(c[((c[a>>2]&3|0)==3?a:u)+40>>2]|0)|0;H=ry(c[((c[a>>2]&3|0)==2?a:s)+40>>2]|0)|0;K=xx(a,87709)|0;c[x>>2]=G;c[x+4>>2]=H;c[x+8>>2]=K;Pw(0,87934,x)|0;K=52;break}if(!(c[v>>2]|0))qa(87880,87852,429,87863);x=J+32|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];rl(z,G,H,f);d=F+-3|0;E=(c[I>>2]|0)+(d<<4)|0;c[E>>2]=c[z>>2];c[E+4>>2]=c[z+4>>2];c[E+8>>2]=c[z+8>>2];c[E+12>>2]=c[z+12>>2];E=F+-1|0;b=(c[I>>2]|0)+(E<<4)|0;c[G>>2]=c[z>>2];c[G+4>>2]=c[z+4>>2];c[G+8>>2]=c[z+8>>2];c[G+12>>2]=c[z+12>>2];c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];sl(A,G,H);c[b>>2]=c[A>>2];c[b+4>>2]=c[A+4>>2];c[b+8>>2]=c[A+8>>2];c[b+12>>2]=c[A+12>>2];b=c[I>>2]|0;D=b+(F<<4)|0;b=b+(E<<4)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];c[H>>2]=c[x>>2];c[H+4>>2]=c[x+4>>2];c[H+8>>2]=c[x+8>>2];c[H+12>>2]=c[x+12>>2];sl(B,G,H);c[D>>2]=c[B>>2];c[D+4>>2]=c[B+4>>2];c[D+8>>2]=c[B+8>>2];c[D+12>>2]=c[B+12>>2];D=c[I>>2]|0;b=D+(F+-2<<4)|0;E=D+(E<<4)|0;c[G>>2]=c[E>>2];c[G+4>>2]=c[E+4>>2];c[G+8>>2]=c[E+8>>2];c[G+12>>2]=c[E+12>>2];c[H>>2]=c[z>>2];c[H+4>>2]=c[z+4>>2];c[H+8>>2]=c[z+8>>2];c[H+12>>2]=c[z+12>>2];sl(y,G,H);c[b>>2]=c[y>>2];c[b+4>>2]=c[y+4>>2];c[b+8>>2]=c[y+8>>2];c[b+12>>2]=c[y+12>>2];b=c[C>>2]|0;if(!b)break;d=HE(a,c[I>>2]|0,d,d,J,b)|0;break}e=F;while(1){if((e|0)>0)b=0;else break;while(1){if((b|0)==4)break;B=E+(b<<4)|0;A=(c[I>>2]|0)+(e-b<<4)|0;c[B>>2]=c[A>>2];c[B+4>>2]=c[A+4>>2];c[B+8>>2]=c[A+8>>2];c[B+12>>2]=c[A+12>>2];b=b+1|0}if(tl(E,f)|0){b=0;K=43;break}e=e+-3|0}a:do if((K|0)==43)while(1){K=0;if((b|0)==4)break a;K=(c[I>>2]|0)+(e-b<<4)|0;B=E+(b<<4)|0;c[K>>2]=c[B>>2];c[K+4>>2]=c[B+4>>2];c[K+8>>2]=c[B+8>>2];c[K+12>>2]=c[B+12>>2];b=b+1|0;K=43}while(0);if(e|0){d=e+-3|0;b=c[C>>2]|0;if(!b)break;d=HE(a,c[I>>2]|0,d,F+-3|0,J,b)|0;break}if(!(c[C>>2]|0))qa(87841,87852,452,87863);else{d=J+16|0;E=I+16|0;a=c[I>>2]|0;c[G>>2]=c[E>>2];c[G+4>>2]=c[E+4>>2];c[G+8>>2]=c[E+8>>2];c[G+12>>2]=c[E+12>>2];c[H>>2]=c[a>>2];c[H+4>>2]=c[a+4>>2];c[H+8>>2]=c[a+8>>2];c[H+12>>2]=c[a+12>>2];rl(D,G,H,f);c[d>>2]=c[D>>2];c[d+4>>2]=c[D+4>>2];c[d+8>>2]=c[D+8>>2];c[d+12>>2]=c[D+12>>2];d=0;break}}else K=52;while(0);if((K|0)==52)if(!(c[C>>2]|0))d=0;else{d=J+16|0;K=I+16|0;c[d>>2]=c[K>>2];c[d+4>>2]=c[K+4>>2];c[d+8>>2]=c[K+8>>2];c[d+12>>2]=c[K+12>>2];d=0}b=F-d+1|0;e=J+4|0;c[e>>2]=b;c[J>>2]=vH(b<<4)|0;b=0;while(1){if((b|0)>=(c[e>>2]|0))break;K=(c[J>>2]|0)+(b<<4)|0;a=(c[I>>2]|0)+(d<<4)|0;c[K>>2]=c[a>>2];c[K+4>>2]=c[a+4>>2];c[K+8>>2]=c[a+8>>2];c[K+12>>2]=c[a+12>>2];d=d+1|0;b=b+1|0}D_(c[I>>2]|0);D_(I);c[c[(c[L>>2]|0)+8>>2]>>2]=J}while(0);l=M;return}function pl(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((b|0)!=0?(a[b>>0]|0)!=0:0){d=vM(d,b)|0;if(!d){c[e>>2]=b;Pw(0,88054,e)|0;d=0}}else d=0;l=f;return d|0}function ql(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[a>>3];if((+h[b>>3]<=d?d<=+h[b+16>>3]:0)?(c=+h[a+8>>3],+h[b+8>>3]<=c):0)a=c<=+h[b+24>>3]&1;else a=0;return a|0}function rl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0.0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0;C=l;l=l+464|0;n=C+48|0;B=C+32|0;u=C+16|0;v=C;w=C+364|0;x=C+264|0;z=C+164|0;A=C+64|0;q=+h[b>>3];r=+h[b+8>>3];s=+h[d>>3];t=+h[d+8>>3];c[u>>2]=c[e>>2];c[u+4>>2]=c[e+4>>2];c[u+8>>2]=c[e+8>>2];c[u+12>>2]=c[e+12>>2];e=e+16|0;c[v>>2]=c[e>>2];c[v+4>>2]=c[e+4>>2];c[v+8>>2]=c[e+8>>2];c[v+12>>2]=c[e+12>>2];k=+h[u>>3];if((s=+h[u+8>>3]):0)?f<=+h[v+8>>3]:0){o=f;p=k}else i=4;do if((i|0)==4){j=+h[v>>3];if(s>j){g=r+ +(~~((j-q)*(r-t)/(q-s))|0);f=+h[u+8>>3];if(g>=f?g<=+h[v+8>>3]:0){o=g;p=j;break}}else f=+h[u+8>>3];if(t=k)|!(m<=j))):0){o=f;p=m;break}f=+h[v+8>>3];if(t>f?(y=q+ +(~~((f-r)*(q-s)/(r-t))|0),!(!(y>=k)|!(y<=j))):0){o=f;p=y;break};c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];w=yl(n,w)|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];x=yl(n,x)|0;c[n>>2]=c[u>>2];c[n+4>>2]=c[u+4>>2];c[n+8>>2]=c[u+8>>2];c[n+12>>2]=c[u+12>>2];z=yl(n,z)|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];A=yl(n,A)|0;c[B>>2]=w;c[B+4>>2]=x;c[B+8>>2]=z;c[B+12>>2]=A;Pw(1,87976,B)|0;qa(135312,87852,78,88028)}while(0);h[a>>3]=p;h[a+8>>3]=o;l=C;return}function sl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function tl(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+80|0;j=m+16|0;k=m;e=0;while(1){if((e|0)==4)break;i=j+(e<<4)|0;g=a+(e<<4)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];e=e+1|0}e=b+8|0;i=b+24|0;d=+ul(a,0.0,1.0,+h[b>>3],+h[e>>3],+h[i>>3]);if(d>=0.0&d<2.0)XL(k,j,3,d,a,0);else d=2.0;g=b+16|0;f=+ul(a,0.0,d>1.0?1.0:d,+h[g>>3],+h[e>>3],+h[i>>3]);if(f>=0.0&f1.0?1.0:d,+h[e>>3],+h[b>>3],+h[g>>3]);if(f>=0.0&f1.0?1.0:d,+h[i>>3],+h[b>>3],+h[g>>3]);if(f>=0.0&f>3]-d))<=.005){b=+h[a+56>>3];b=!(b>=e)|!(b<=f)?-1.0:c;break a}break}default:{}}XL(i,a,3,.5,j,k);g=(c+b)*.5;b=+ul(j,b,g,d,e,f);if(!(b>=0.0))b=+ul(k,g,c,d,e,f)}while(0);l=m;return +b}function vl(a,b,c,d,e,f){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;var g=0.0,i=0,j=0,k=0,m=0;m=l;l=l+144|0;j=m+80|0;k=m+16|0;i=m;a:do if(!(b==c)){switch(wl(a,d)|0){case 0:{b=-1.0;break a}case 1:{if(+B(+(+h[a+56>>3]-d))<=.005){b=+h[a+48>>3];b=!(b>=e)|!(b<=f)?-1.0:c;break a}break}default:{}}XL(i,a,3,.5,j,k);g=(c+b)*.5;b=+vl(j,b,g,d,e,f);if(!(b>=0.0))b=+vl(k,g,c,d,e,f)}while(0);l=m;return +b}function wl(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0.0,g=0,i=0;f=+h[a+8>>3];e=fb&1;c=1;d=e;e=(e|0)==0&1;while(1){if((c|0)==4)break;f=+h[a+(c<<4)+8>>3];i=fb&1;g=e+((d|0)!=0&(i|0)!=(d|0)&1)|0;c=c+1|0;d=i;e=g}return e|0}function xl(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0.0,g=0,i=0;f=+h[a>>3];e=fb&1;c=1;d=e;e=(e|0)==0&1;while(1){if((c|0)==4)break;f=+h[a+(c<<4)>>3];i=fb&1;g=e+((d|0)!=0&(i|0)!=(d|0)&1)|0;c=c+1|0;d=i;e=g}return e|0}function yl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=l;l=l+16|0;d=c;e=+h[a+8>>3];h[d>>3]=+h[a>>3];h[d+8>>3]=e;Y0(b,88042,d)|0;l=c;return b|0}function zl(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;s=v;u=4;t=C_(40)|0;c[t>>2]=0;r=a+16|0;e=c[r>>2]|0;a:do if(((b[e+238>>1]|0)-(b[e+236>>1]|0)|0)>=2){m=1;d=e;e=c[e+196>>2]|0;b:while(1){n=m+1|0;if(!(c[e+(n<<6)>>2]|0)){q=15;break}else k=0;while(1){h=c[e+(m<<6)>>2]|0;if((k|0)>=(h|0)){m=n;continue b}j=c[(c[e+(m<<6)+4>>2]|0)+(k<<2)>>2]|0;o=0;d=$(20,j|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,u|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;break b}if(d<<24>>24){i=k;d=h;while(1){g=i+1|0;if((g|0)>=(d|0))break;o=0;d=aa(65,j|0,c[(c[e+(m<<6)+4>>2]|0)+(g<<2)>>2]|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,t|0,u|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){d=z;break b}if(!(d<<24>>24))break;d=c[(c[r>>2]|0)+196>>2]|0;i=g;e=d;d=c[d+(m<<6)>>2]|0}if((g-k|0)>1){o=0;na(6,a|0,m|0,k|0,i|0,1);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;break b}}}e=c[r>>2]|0;k=k+1|0;d=e;e=c[e+196>>2]|0}}c:do if((q|0)==15){while(1){if((m|0)>0)k=0;else break;while(1){e=c[d+196>>2]|0;h=c[e+(m<<6)>>2]|0;if((k|0)>=(h|0))break;j=c[(c[e+(m<<6)+4>>2]|0)+(k<<2)>>2]|0;o=0;d=$(21,j|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,u|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){d=z;break c}if(d<<24>>24){i=k;d=h;while(1){g=i+1|0;if((g|0)>=(d|0))break;o=0;d=aa(66,j|0,c[(c[e+(m<<6)+4>>2]|0)+(g<<2)>>2]|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,t|0,u|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){d=z;break c}if(!(d<<24>>24))break;d=c[(c[r>>2]|0)+196>>2]|0;i=g;e=d;d=c[d+(m<<6)>>2]|0}if((g-k|0)>1){o=0;na(6,a|0,m|0,k|0,i|0,0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;break c}}}k=k+1|0;d=c[r>>2]|0}m=m+-1|0;q=15}t=D3(183936,1,t|0,u|0)|0;u=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1)d=z;else d=0}while(0);d:while(1){if(d){o=0;ca(20,3,88082,s|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}else break}else f=1;while(1){d=c[r>>2]|0;if((f|0)>(c[d+180>>2]|0))break a;o=0;ia(99,c[(c[d+184>>2]|0)+(f<<2)>>2]|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,t|0,u|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue d}f=f+1|0}}}while(0);D_(t|0);l=v;return}function Al(b){b=b|0;b=c[b+16>>2]|0;if(((a[b+156>>0]|0)==1?(c[b+176>>2]|0)==1:0)?(c[b+184>>2]|0)==1:0)b=(c[b+104>>2]|0)==0&1;else b=0;return b|0}function Bl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;h=i+40|0;g=i;e=c[c[(c[a+16>>2]|0)+172>>2]>>2]|0;a=c[c[(c[b+16>>2]|0)+172>>2]>>2]|0;if(((Al(b)|0)<<24>>24!=0?(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)==(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0):0)?(Hl(e,a)|0)<<24>>24!=0:0){d=(c[a+16>>2]|0)+16|0;f=g;a=(c[e+16>>2]|0)+16|0;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));f=h;a=d;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));a=(jg(g,h)|0)==0&1}else a=0;l=i;return a|0}function Cl(a,b,d,e,f){a=a|0;b=b|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;t=a+16|0;q=c[(c[(c[(c[t>>2]|0)+196>>2]|0)+(b<<6)+4>>2]|0)+(d<<2)>>2]|0;p=d+1|0;m=(f|0)==1;n=q+16|0;l=p;while(1){if((l|0)>(e|0)){g=e;s=p;break}o=c[(c[(c[(c[t>>2]|0)+196>>2]|0)+(b<<6)+4>>2]|0)+(l<<2)>>2]|0;k=o+16|0;a:do if(m)while(1){d=c[k>>2]|0;j=c[c[d+180>>2]>>2]|0;if(!j)break a;h=c[(c[n>>2]|0)+180>>2]|0;i=j+-48|0;f=0;while(1){d=c[h+(f<<2)>>2]|0;if(!d){r=8;break}if((c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)==(c[((c[j>>2]&3|0)==2?j:i)+40>>2]|0))break;else f=f+1|0}if((r|0)==8){r=0;d=ph(q,c[((c[j>>2]&3|0)==2?j:i)+40>>2]|0,j)|0}while(1){f=c[c[(c[k>>2]|0)+172>>2]>>2]|0;if(!f)break;xh(f,d);kh(f)}kh(j)}else while(1){d=c[k>>2]|0;j=c[c[d+172>>2]>>2]|0;if(!j)break a;h=c[(c[n>>2]|0)+172>>2]|0;i=j+48|0;f=0;while(1){d=c[h+(f<<2)>>2]|0;if(!d){r=17;break}if((c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)==(c[((c[j>>2]&3|0)==3?j:i)+40>>2]|0))break;else f=f+1|0}if((r|0)==17){r=0;d=ph(c[((c[j>>2]&3|0)==3?j:i)+40>>2]|0,q,j)|0}while(1){f=c[c[(c[k>>2]|0)+180>>2]>>2]|0;if(!f)break;xh(f,d);kh(f)}kh(j)}while(0);if((c[d+176>>2]|0)!=(0-(c[d+184>>2]|0)|0)){r=23;break}sh(a,o);l=l+1|0}if((r|0)==23)qa(88218,88262,115,88269);while(1){g=g+1|0;d=c[(c[t>>2]|0)+196>>2]|0;f=d+(b<<6)|0;if((g|0)>=(c[f>>2]|0))break;e=c[d+(b<<6)+4>>2]|0;r=c[e+(g<<2)>>2]|0;c[e+(s<<2)>>2]=r;c[(c[r+16>>2]|0)+236>>2]=s;s=s+1|0}c[f>>2]=s;c[(c[d+(b<<6)+4>>2]|0)+(s<<2)>>2]=0;return}function Dl(b){b=b|0;b=c[b+16>>2]|0;if(((a[b+156>>0]|0)==1?(c[b+184>>2]|0)==1:0)?(c[b+176>>2]|0)==1:0)b=(c[b+104>>2]|0)==0&1;else b=0;return b|0}function El(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;h=i+40|0;g=i;e=c[c[(c[a+16>>2]|0)+180>>2]>>2]|0;a=c[c[(c[b+16>>2]|0)+180>>2]>>2]|0;if(((Dl(b)|0)<<24>>24!=0?(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)==(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0):0)?(Hl(e,a)|0)<<24>>24!=0:0){d=(c[a+16>>2]|0)+56|0;f=g;a=(c[e+16>>2]|0)+56|0;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));f=h;a=d;b=f+40|0;do{c[f>>2]=c[a>>2];f=f+4|0;a=a+4|0}while((f|0)<(b|0));a=(jg(g,h)|0)==0&1}else a=0;l=i;return a|0}function Fl(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;p=r+16|0;o=r;m=d+16|0;f=c[m>>2]|0;e=b[f+236>>1]|0;while(1){if((e|0)>(b[f+238>>1]|0))break;c[(c[f+268>>2]|0)+(e<<2)>>2]=0;e=e+1|0;f=c[m>>2]|0}xj(d);j=Sy(d)|0;while(1){if(!j)break;Gl(d,j);i=Ex(d,j)|0;while(1){if(!i)break;else f=i;while(1){e=c[(c[f+16>>2]|0)+172>>2]|0;if(!e)break;else f=e}h=i+-48|0;while(1){e=f+-48|0;g=c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0;if((c[(c[g+16>>2]|0)+232>>2]|0)>=(c[(c[(c[((c[i>>2]&3|0)==2?i:h)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;Gl(d,g);f=c[c[(c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}i=Gx(d,i)|0}j=Ty(d,j)|0}e=c[m>>2]|0;i=b[e+236>>1]|0;while(1){if((i|0)>(b[e+238>>1]|0)){k=1;n=e;break}e=c[(c[e+268>>2]|0)+(i<<2)>>2]|0;j=c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(i<<6)+4>>2]|0;f=e+16|0;if((c[j+(c[(c[f>>2]|0)+236>>2]<<2)>>2]|0)!=(e|0)){q=17;break}h=c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(i<<6)+4>>2]|0;e=c[m>>2]|0;f=c[e+196>>2]|0;c[f+(i<<6)+4>>2]=h+(c[(c[(c[(c[e+268>>2]|0)+(i<<2)>>2]|0)+16>>2]|0)+236>>2]<<2);e=-1;h=0;a:while(1){if((h|0)>=(c[f+(i<<6)>>2]|0))break;f=c[(c[f+(i<<6)+4>>2]|0)+(h<<2)>>2]|0;if(!f)break;g=c[f+16>>2]|0;b:do if(!(a[g+156>>0]|0))if(!(oz(d,f)|0))break a;else e=h;else{f=c[c[g+172>>2]>>2]|0;while(1){if(!f)break b;g=c[(c[f+16>>2]|0)+116>>2]|0;if(!g)break;else f=g}if(oz(d,c[((c[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0)|0){j=(oz(d,c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)|0)==0;e=j?e:h}}while(0);h=h+1|0;f=c[(c[m>>2]|0)+196>>2]|0}if((e|0)==-1){c[p>>2]=ry(d)|0;c[p+4>>2]=i;Pw(0,88182,p)|0}j=c[m>>2]|0;c[(c[j+196>>2]|0)+(i<<6)>>2]=e+1;i=i+1|0;e=j}if((q|0)==17){p=ry(e)|0;q=c[(c[f>>2]|0)+236>>2]|0;c[o>>2]=p;c[o+4>>2]=q;c[o+8>>2]=i;Pw(1,88124,o)|0;bb(183936,1)}while(1){if((k|0)>(c[n+180>>2]|0))break;Fl(c[(c[n+184>>2]|0)+(k<<2)>>2]|0);k=k+1|0;n=c[m>>2]|0}l=r;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[b+16>>2]|0;a=(c[(c[a+16>>2]|0)+268>>2]|0)+(c[d+232>>2]<<2)|0;e=c[a>>2]|0;if(!((e|0)!=0?(c[(c[e+16>>2]|0)+236>>2]|0)<=(c[d+236>>2]|0):0))c[a>>2]=b;return}function Hl(b,d){b=b|0;d=d|0;var e=0,f=0;while(1){f=c[b+16>>2]|0;if(!(a[f+112>>0]|0))break;b=c[f+116>>2]|0}while(1){e=c[d+16>>2]|0;if(!(a[e+112>>0]|0))break;d=c[e+116>>2]|0}if((a[f+153>>0]|0)==0?(a[e+153>>0]|0)==0:0){f=c[d>>2]&3;e=c[b>>2]&3;b=(O((c[(c[(c[((e|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((e|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0,(c[(c[(c[((f|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((f|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)|0)>0&1}else b=0;return b|0}function Il(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+544|0;j=k+528|0;Jl(j,k+512|0,k);e=(a[190690]|0)+1<<24>>24;a[190690]=e<<24>>24==0?1:e;e=c[b+16>>2]|0;c[e+220>>2]=0;c[e+232>>2]=0;e=(d|0)>0;d=Sy(b)|0;while(1){if(!d)break;if(e?(h=c[d+16>>2]|0,i=c[h+212>>2]|0,(i|0)!=0):0){g=c[(c[(c[i+16>>2]|0)+268>>2]|0)+(c[h+232>>2]<<2)>>2]|0;f=7}else f=6;if((f|0)==6?(f=0,(d|0)==(SL(d)|0)):0){g=d;f=7}if((f|0)==7?(0,(a[(c[g+16>>2]|0)+157>>0]|0)!=(a[190690]|0)):0){Kl(b);Ll(j,b,g);Ml(b)}d=Ty(b,d)|0}Nl(j);l=k;return}function Jl(a,b,d){a=a|0;b=b|0;d=d|0;c[b>>2]=d;c[b+4>>2]=d+512;c[b+12>>2]=0;c[b+8>>2]=0;c[a>>2]=b;c[a+4>>2]=b;c[a+8>>2]=d;return}function Kl(a){a=a|0;c[(c[a+16>>2]|0)+192>>2]=0;c[46023]=0;return}function Ll(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;p=q;Ol(b,e);k=p+8|0;m=p+16|0;n=p+24|0;a:while(1){o=Pl(b)|0;if(!o)break;e=o+16|0;if((a[(c[e>>2]|0)+157>>0]|0)==(a[190690]|0))continue;Ql(d,o);h=c[e>>2]|0;g=h+180|0;j=c[g+4>>2]|0;i=p;c[i>>2]=c[g>>2];c[i+4>>2]=j;i=h+172|0;j=c[i+4>>2]|0;g=k;c[g>>2]=c[i>>2];c[g+4>>2]=j;g=h+188|0;j=c[g+4>>2]|0;i=m;c[i>>2]=c[g>>2];c[i+4>>2]=j;h=h+196|0;i=c[h+4>>2]|0;j=n;c[j>>2]=c[h>>2];c[j+4>>2]=i;j=3;while(1){if((j|0)<=-1)continue a;e=c[p+(j<<3)>>2]|0;b:do if(e|0){i=(c[p+(j<<3)+4>>2]|0)+-1|0;h=e+(i<<2)|0;while(1){if((i|0)<=-1)break b;f=c[h>>2]|0;g=c[f>>2]&3;e=c[((g|0)==2?f:f+-48|0)+40>>2]|0;if((e|0)==(o|0))e=c[((g|0)==3?f:f+48|0)+40>>2]|0;if((a[(c[e+16>>2]|0)+157>>0]|0)!=(a[190690]|0)?(e|0)==(SL(e)|0):0)Ol(b,e);h=h+-4|0;i=i+-1|0}}while(0);j=j+-1|0}}l=q;return}function Ml(a){a=a|0;var b=0,d=0,e=0,f=0;d=a+16|0;b=c[d>>2]|0;f=b+220|0;e=c[f>>2]|0;a=e+1|0;c[f>>2]=a;b=c[b+216>>2]|0;if(!b)a=vH(a<<2)|0;else a=xH(b,a<<2)|0;f=c[d>>2]|0;c[f+216>>2]=a;c[a+(e<<2)>>2]=c[f+192>>2];return}function Nl(a){a=a|0;var b=0;a=c[(c[a>>2]|0)+12>>2]|0;while(1){if(!a)break;b=c[a+12>>2]|0;D_(c[a>>2]|0);D_(a);a=b}return}function Ol(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;g=k;j=b+8|0;f=c[j>>2]|0;i=b+4|0;b=c[i>>2]|0;if((f|0)==(c[b+4>>2]|0)){f=c[b+12>>2]|0;if(!f){f=uH(16)|0;if(!f)Pw(1,95943,g)|0;c[f+8>>2]=c[i>>2];c[f+12>>2]=0;b=uH(4e6)|0;c[f>>2]=b;if(!b){Pw(1,88282,h)|0;b=c[f>>2]|0}c[f+4>>2]=b+4e6;c[(c[i>>2]|0)+12>>2]=f}c[i>>2]=f;f=c[f>>2]|0;c[j>>2]=f}a[(c[e+16>>2]|0)+157>>0]=(d[190690]|0)+1;c[j>>2]=f+4;c[f>>2]=e;l=k;return}function Pl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+8|0;b=c[f>>2]|0;d=a+4|0;e=c[d>>2]|0;if((b|0)==(c[e>>2]|0))if((e|0)==(c[a>>2]|0))b=0;else{b=c[e+8>>2]|0;c[d>>2]=b;b=c[b+4>>2]|0;c[f>>2]=b;g=4}else g=4;if((g|0)==4){b=b+-4|0;c[f>>2]=b;b=c[b>>2]|0}return b|0}function Ql(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[b+16>>2]|0;g=f+232|0;c[g>>2]=(c[g>>2]|0)+1;g=c[d+16>>2]|0;a[g+157>>0]=a[190690]|0;b=c[46023]|0;e=g+168|0;if(!b){c[e>>2]=0;c[f+192>>2]=d}else{c[e>>2]=b;c[(c[b+16>>2]|0)+164>>2]=d}c[46023]=d;c[g+164>>2]=0;return}function Rl(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0;m=b+16|0;d=(c[m>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;g=d+16|0;d=c[g>>2]|0;e=c[d+188>>2]|0;a:do if(!e)f=0;else{f=0;while(1){e=c[e+(f<<2)>>2]|0;if(!e){f=0;break a}Sl(e);d=c[g>>2]|0;f=f+1|0;e=c[d+188>>2]|0}}while(0);while(1){if((f|0)>=(c[d+208>>2]|0))break;e=c[(c[d+204>>2]|0)+(f<<2)>>2]|0;l=c[e>>2]&3;if((c[(c[(c[((l|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)==(c[(c[(c[((l|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)){Sl(e);d=c[g>>2]|0}f=f+1|0}d=d+164|0}l=c[m>>2]|0;d=c[l+196>>2]|0;if(!((c[d+56>>2]|0)==0?(c[l+180>>2]|0)<=0:0))i=13;b:do if((i|0)==13){i=c[d+4>>2]|0;g=0;c:while(1){d=c[i+(g<<2)>>2]|0;if(!d)break b;e=c[(c[d+16>>2]|0)+196>>2]|0;d=0;while(1){f=c[e+(d<<2)>>2]|0;if(!f)break;l=c[f+16>>2]|0;if(c[l+96>>2]|0?(a[l+113>>0]|0)==0:0)break c;d=d+1|0}g=g+1|0}Tl(b)}while(0);Ji(b);e=0;d=(c[m>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;l=d+16|0;d=c[l>>2]|0;f=c[d+188>>2]|0;d:do if(f){k=0;while(1){g=c[f+(k<<2)>>2]|0;if(!g){k=0;break}i=c[g+16>>2]|0;j=c[i+96>>2]|0;do if(j)if(!(a[i+113>>0]|0)){Ul(g);f=c[l>>2]|0;e=1;d=f;f=c[f+188>>2]|0;break}else{h[i+136>>3]=+h[((c[(c[m>>2]|0)+116>>2]&1|0)==0?j+24|0:j+32|0)>>3];break}while(0);k=k+1|0}while(1){if((k|0)>=(c[d+208>>2]|0))break d;i=c[(c[d+204>>2]|0)+(k<<2)>>2]|0;j=c[i>>2]&3;g=c[((j|0)==3?i:i+48|0)+40>>2]|0;j=c[((j|0)==2?i:i+-48|0)+40>>2]|0;do if(!((g|0)==(j|0)?1:(c[(c[g+16>>2]|0)+232>>2]|0)!=(c[(c[j+16>>2]|0)+232>>2]|0))){f=i;do{j=c[f+16>>2]|0;f=c[j+172>>2]|0}while((f|0)!=0);f=a[j+113>>0]|0;g=c[i+16>>2]|0;a[g+113>>0]=f;g=c[g+96>>2]|0;if(g)if(!(f<<24>>24)){Ul(i);e=1;d=c[l>>2]|0;break}else{o=+h[((c[(c[m>>2]|0)+116>>2]&1|0)==0?g+24|0:g+32|0)>>3];j=j+136|0;n=+h[j>>3];h[j>>3]=o>n?o:n;break}}while(0);k=k+1|0}}while(0);d=d+164|0}if(e|0){Ch(b);Qh(b)}return e|0}function Sl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[b>>2]&3;i=c[((d|0)==3?b:b+48|0)+40>>2]|0;f=i+16|0;g=c[(c[f>>2]|0)+236>>2]|0;d=c[(c[(c[((d|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;h=(g|0)<(d|0);e=h?d:g;i=c[(c[(ig(i)|0)+16>>2]|0)+196>>2]|0;f=i+(c[(c[f>>2]|0)+232>>2]<<6)+4|0;d=h?g:d;a:while(1){d=d+1|0;if((d|0)>=(e|0))break;g=c[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;switch(a[g+156>>0]|0){case 0:break a;case 1:break;default:continue a}if(c[g+104>>2]|0)break}if((d|0)==(e|0))do{i=c[b+16>>2]|0;a[i+113>>0]=1;b=c[i+172>>2]|0}while((b|0)!=0);return}function Tl(a){a=a|0;var d=0,e=0,f=0,g=0;g=a+16|0;a=c[g>>2]|0;if(b[a+236>>1]|0)qa(88339,88322,190,88358);d=(b[a+238>>1]|0)+3|0;a=c[a+196>>2]|0;if(!a)a=vH(d<<6)|0;else a=xH(a,d<<6)|0;d=a+64|0;a=c[g>>2]|0;c[a+196>>2]=d;a=b[a+238>>1]|0;while(1){if((a|0)<=-1)break;f=a+-1|0;e=d+(a<<6)|0;a=d+(f<<6)|0;d=e+64|0;do{c[e>>2]=c[a>>2];e=e+4|0;a=a+4|0}while((e|0)<(d|0));a=f;d=c[(c[g>>2]|0)+196>>2]|0}c[d+(a<<6)+8>>2]=0;c[d+(a<<6)>>2]=0;e=uH(8)|0;g=c[g>>2]|0;f=c[g+196>>2]|0;c[f+(a<<6)+12>>2]=e;c[f+(a<<6)+4>>2]=e;c[f+(a<<6)+56>>2]=0;h[f+(a<<6)+24>>3]=1.0;h[f+(a<<6)+16>>3]=1.0;h[f+(a<<6)+40>>3]=1.0;h[f+(a<<6)+32>>3]=1.0;g=g+236|0;b[g>>1]=(b[g>>1]|0)+-1<<16>>16;return}function Ul(b){b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0;j=b+16|0;if(c[(c[j>>2]|0)+96>>2]|0){m=b+48|0;k=ig(c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0)|0;d=c[(c[(c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0)+16>>2]|0)+232>>2]|0;l=Vl(k,b)|0;n=k+16|0;e=c[n>>2]|0;g=c[e+196>>2]|0;o=d+-1|0;i=c[c[g+(o<<6)+4>>2]>>2]|0;if(!i)f=+h[g+(d<<6)+24>>3]+ +h[(c[(c[c[g+(d<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+ +(c[e+252>>2]|0);else f=+h[(c[i+16>>2]|0)+24>>3]-+h[g+(o<<6)+16>>3];d=Wl(k,o,l)|0;k=c[(c[j>>2]|0)+96>>2]|0;q=+h[k+24>>3];p=+h[k+32>>3];j=(c[(c[n>>2]|0)+116>>2]&1|0)==0;r=j?p:q;g=d+16|0;e=c[g>>2]|0;h[e+80>>3]=r;l=~~(r*.5);p=(j?q:p)*.5;h[e+96>>3]=p;h[e+88>>3]=p;c[e+104>>2]=k;h[e+24>>3]=+(l+~~f|0);e=ph(d,c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0,b)|0;e=c[e+16>>2]|0;h[e+16>>3]=-+h[(c[g>>2]|0)+88>>3];h[e+56>>3]=+h[(c[(c[((c[b>>2]&3|0)==3?b:m)+40>>2]|0)+16>>2]|0)+96>>3];a[e+112>>0]=4;e=b+-48|0;d=ph(d,c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0,b)|0;g=c[g>>2]|0;d=c[d+16>>2]|0;h[d+16>>3]=+h[g+96>>3];h[d+56>>3]=+h[(c[(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)+16>>2]|0)+88>>3];a[d+112>>0]=4;d=c[(c[n>>2]|0)+196>>2]|0;e=d+(o<<6)+16|0;f=+(l|0);if(+h[e>>3]>3]=f;d=d+(o<<6)+24|0;if(+h[d>>3]>3]=f;c[g+112>>2]=b}return}function Vl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;j=n+8|0;f=n+4|0;g=n;d=c[b>>2]&3;e=c[((d|0)==3?b:b+48|0)+40>>2]|0;k=(c[(c[e+16>>2]|0)+232>>2]|0)+-1|0;a=c[(c[a+16>>2]|0)+196>>2]|0;h=c[a+(k<<6)+4>>2]|0;a=c[a+(k<<6)>>2]|0;k=j+8|0;c[k>>2]=-1;c[j>>2]=-1;m=j+12|0;c[m>>2]=a;i=j+4|0;c[i>>2]=a;Xl(e,c[((d|0)==2?b:b+-48|0)+40>>2]|0,f,g);f=c[f>>2]|0;g=c[g>>2]|0;d=0;e=a;b=-1;while(1){if((d|0)>=(e|0))break;e=e+-1|0;Yl(c[h+(d<<2)>>2]|0,j,f,g);if((d|0)!=(e|0))Yl(c[h+(e<<2)>>2]|0,j,f,g);a=c[i>>2]|0;b=c[j>>2]|0;if((a-b|0)<2)break;else d=d+1|0}if((b|0)>(a|0))a=(c[m>>2]|0)+(c[k>>2]|0)|0;else a=a+b|0;l=n;return (a+1|0)/2|0|0}function Wl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=a+16|0;f=c[(c[g>>2]|0)+196>>2]|0;e=f+(b<<6)|0;f=c[f+(b<<6)+4>>2]|0;if(!f)f=vH((c[e>>2]<<2)+8|0)|0;else f=xH(f,(c[e>>2]<<2)+8|0)|0;e=c[(c[g>>2]|0)+196>>2]|0;c[e+(b<<6)+4>>2]=f;e=c[e+(b<<6)>>2]|0;while(1){if((e|0)<=(d|0))break;h=e+-1|0;i=c[f+(h<<2)>>2]|0;c[f+(e<<2)>>2]=i;i=(c[i+16>>2]|0)+236|0;c[i>>2]=(c[i>>2]|0)+1;e=h}h=uh(a)|0;i=f+(d<<2)|0;c[i>>2]=h;h=c[h+16>>2]|0;c[h+236>>2]=d;c[h+232>>2]=b;g=(c[(c[g>>2]|0)+196>>2]|0)+(b<<6)|0;h=(c[g>>2]|0)+1|0;c[g>>2]=h;c[f+(h<<2)>>2]=0;return c[i>>2]|0}function Xl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a=c[(c[a+16>>2]|0)+236>>2]|0;b=c[(c[b+16>>2]|0)+236>>2]|0;f=(a|0)>(b|0);c[d>>2]=f?b:a;c[e>>2]=f?a:b;return}function Yl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;h=m+4|0;g=m;b=c[b+16>>2]|0;do if((a[b+156>>0]|0)==1){k=c[b+236>>2]|0;if(c[b+176>>2]|0){i=c[b+180>>2]|0;b=0;g=0;h=0;while(1){j=c[i+(h<<2)>>2]|0;if(!j)break;n=c[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;j=(n|0)>(e|0);b=j?((n|0)<(f|0)?b:1):b;g=j?g:1;h=h+1|0}if(g<<24>>24!=0&b<<24>>24==0){c[d>>2]=k+1;break}if(!(g<<24>>24==0&b<<24>>24!=0))break;c[d+4>>2]=k+-1;break}if((c[b+184>>2]|0)!=2)qa(88302,88322,63,88329);i=c[b+180>>2]|0;n=c[i>>2]|0;i=c[i+4>>2]|0;Xl(c[((c[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0,c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0,h,g);i=c[g>>2]|0;if((i|0)<=(e|0)){c[d>>2]=k;c[d+8>>2]=k;break}b=c[h>>2]|0;if((b|0)>=(f|0)){c[d+4>>2]=k;c[d+12>>2]=k;break}g=(b|0)<(e|0);h=(i|0)>(f|0);if(!(h&g)){if(!(!g?!((i|0)<(f|0)&(b|0)==(e|0)):0))c[d+8>>2]=k;if(!h?!((i|0)==(f|0)&(b|0)>(e|0)):0)break;c[d+12>>2]=k}}while(0);l=m;return}function Zl(a){a=a|0;c[46363]=1;rm(a);c[46363]=0;return}function _l(a){a=a|0;c[46363]=2;rm(a);c[46363]=0;return}function $l(a){a=a|0;var b=0;Az(a,134365,304,1)|0;dM(a);b=uH((e[(c[(ez(a)|0)+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[a+16>>2]|0)+132>>2]=b;bN(a,c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&1);return}function am(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0;s=l;l=l+64|0;j=s+48|0;o=s+40|0;k=s+24|0;i=s+8|0;q=s+56|0;m=s;do if((b|0)!=0?(r=e+16|0,p=c[(c[r>>2]|0)+132>>2]|0,g=yx(e,b)|0,(a[g>>0]|0)!=0):0){a[q>>0]=0;b=p+8|0;if((c[46366]|0)>2?(c[i>>2]=p,c[i+4>>2]=b,c[i+8>>2]=p+16,c[i+12>>2]=q,(N1(g,88435,i)|0)>2):0){a[(c[r>>2]|0)+119>>0]=1;g=c[46366]|0;a:do if(+h[22908]>0.0){b=0;while(1){if((b|0)>=(g|0))break a;o=p+(b<<3)|0;h[o>>3]=+h[o>>3]/+h[22908];b=b+1|0}}while(0);if((g|0)>3)Hn(e,f,3);if((a[q>>0]|0)!=33){if(!d){b=1;break}if(!((QL(yx(e,d)|0)|0)<<24>>24)){b=1;break}}a[(c[r>>2]|0)+119>>0]=3;b=1;break}c[k>>2]=p;c[k+4>>2]=b;c[k+8>>2]=q;if((N1(g,98723,k)|0)<=1){c[j>>2]=ry(e)|0;c[j+4>>2]=g;Pw(1,88449,j)|0;b=0;break}a[(c[r>>2]|0)+119>>0]=1;g=c[46366]|0;b:do if(+h[22908]>0.0){b=0;while(1){if((b|0)>=(g|0))break b;k=p+(b<<3)|0;h[k>>3]=+h[k>>3]/+h[22908];b=b+1|0}}while(0);do if((g|0)>2){b=c[46401]|0;if((b|0?(n=yx(e,b)|0,n|0):0)?(c[o>>2]=m,(N1(n,98183,o)|0)==1):0){u=+h[22908];t=+h[m>>3];h[p+16>>3]=u>0.0?t/u:t;Hn(e,f,3);break}In(e,f)}while(0);if((a[q>>0]|0)!=33){if(!d){b=1;break}if(!((QL(yx(e,d)|0)|0)<<24>>24)){b=1;break}}a[(c[r>>2]|0)+119>>0]=3;b=1}else b=0;while(0);l=s;return b|0}function bm(a){a=a|0;var b=0,c=0;c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;JM(b);b=Gx(a,b)|0}HM(c);c=Ty(a,c)|0}cm(a);return}function cm(a){a=a|0;if((c[46363]|0)!=0|(c[46025]|0)<0)Fn(a);if((fz(a)|0)!=(a|0))Gz(a,0,134401);return}function dm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;m=q+32|0;o=q;k=nx(b,0,99611,0)|0;e=nx(b,0,99645,0)|0;p=(RL(xx(b,88493)|0,0)|0)<<24>>24!=0;if(!e)e=nx(b,0,99645,191979)|0;En(b)|0;n=b+16|0;i=0;while(1){j=c[(c[(c[n>>2]|0)+152>>2]|0)+(i<<2)>>2]|0;if(!j){f=12;break}g=j+16|0;f=c[g>>2]|0;if(!(a[f+119>>0]|0)){if(z$(ry(j)|0,104980,7)|0){f=8;break}f=c[g>>2]|0}f=c[f+108>>2]|0;if(f|0)em(j,f,99607);i=i+1|0}a:do if((f|0)==8){p=ry(j)|0;e=ry(b)|0;c[m>>2]=p;c[m+4>>2]=e;Pw(1,88505,m)|0;e=-1}else if((f|0)==12){fm(b,k,e);j=gm(b)|0;e=c[(c[n>>2]|0)+8>>2]|0;if(!(c[e+88>>2]|0))e=0;else{c[e+84>>2]=0;e=1}g=(d|0)!=0;i=(e|0)!=0;if(!(i|g&(c[46363]|0)==1^1)?(tq(b)|0)!=0:0){f=c[(c[n>>2]|0)+12>>2]|0;if(!f)f=1;else{a[f+81>>0]=0;f=1}}else f=0;mM(b);if(i){d=(c[n>>2]|0)+16|0;_E(o,b);c[d>>2]=c[o>>2];c[d+4>>2]=c[o+4>>2];c[d+8>>2]=c[o+8>>2];c[d+12>>2]=c[o+12>>2];c[d+16>>2]=c[o+16>>2];c[d+20>>2]=c[o+20>>2];c[d+24>>2]=c[o+24>>2];c[d+28>>2]=c[o+28>>2]}if(!g){c[46367]=1;f=Sy(b)|0;while(1){if(!f)break a;p=c[f+16>>2]|0;o=c[p+132>>2]|0;h[p+16>>3]=+h[o>>3]*72.0;h[p+24>>3]=+h[o+8>>3]*72.0;f=Ty(b,f)|0}}do if(!(p|i)){p=c[n>>2]|0;if(!(+h[p+16>>3]!=0.0)?!(+h[p+24>>3]!=0.0):0)break;cn(b)}while(0);if(!((j|0)!=0&(f|(an(b)|0)<<24>>24!=0))){if((j|0)==2){c[46367]=1;break}}else hm(b);$m(b,0)}while(0);l=q;return e|0}function em(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k+32|0;f=k+24|0;g=k+16|0;i=k;b=xx(b,e)|0;if(b|0?(c[j>>2]=f,c[j+4>>2]=g,(N1(b,102477,j)|0)==2):0){j=d+56|0;km(i,+h[f>>3],+h[g>>3]);c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];a[d+81>>0]=1}l=k;return}function fm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+32|0;f=m+24|0;g=m+16|0;i=m;j=b+16|0;if((d|0?(c[(c[j>>2]|0)+12>>2]|0)!=0:0)?(n=yx(b,d)|0,c[k>>2]=f,c[k+4>>2]=g,(N1(n,102477,k)|0)==2):0){n=(c[(c[j>>2]|0)+12>>2]|0)+56|0;km(i,+h[f>>3],+h[g>>3]);c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];a[(c[(c[j>>2]|0)+12>>2]|0)+81>>0]=1}a:do if(e|0){f=wA(b)|0;while(1){if(!f)break a;lm(f,b,d,e);f=xA(f)|0}}while(0);l=m;return}function gm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(by(a)|0){f=nx(a,2,99597,0)|0;if(!((f|0)==0|(c[46363]|0)<2)){b=0;e=Sy(a)|0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;g=b+((im(f,d)|0)!=0&1)|0;d=Gx(a,d)|0;b=g}e=Ty(a,e)|0}if(b){b=(b|0)==(by(a)|0);b=b?2:1}else b=0}else b=0}else b=2;return b|0}function hm(a){a=a|0;var b=0,d=0,e=0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;KM(b);e=b+16|0;nH(c[(c[e>>2]|0)+96>>2]|0);nH(c[(c[e>>2]|0)+108>>2]|0);nH(c[(c[e>>2]|0)+100>>2]|0);nH(c[(c[e>>2]|0)+104>>2]|0);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function im(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;B=l;l=l+96|0;z=B+72|0;x=B+56|0;A=B+48|0;y=B+32|0;w=B+16|0;r=B+88|0;s=B+8|0;t=B;u=B+84|0;v=B+80|0;b=yx(d,b)|0;do if(a[b>>0]|0){sE(d,u,v);q=1;f=0;e=0;j=0.0;i=0.0;k=0.0;g=0.0;a:while(1){c[w>>2]=s;c[w+4>>2]=t;c[w+8>>2]=r;if((N1(b,88542,w)|0)==2){p=1;b=b+(c[r>>2]|0)|0;i=+h[s>>3];g=+h[t>>3]}else p=e;c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=r;if((N1(b,88554,y)|0)==2){o=1;b=b+(c[r>>2]|0)|0;j=+h[s>>3];k=+h[t>>3]}else o=f;m=jm(b)|0;if(!((m|0)>3&((m|0)%3|0|0)==1)){e=8;break}n=vH(m<<4)|0;e=n;f=m;while(1){if(!f)break;c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=r;if((N1(b,88624,x)|0)<2){e=13;break a}C=b+(c[r>>2]|0)|0;h[e>>3]=+h[s>>3];h[e+8>>3]=+h[t>>3];e=e+16|0;f=f+-1|0;b=C}while(1){e=a[b>>0]|0;f=b+1|0;if(!(B$(e<<24>>24)|0))break;else b=f}C=e<<24>>24==0;b=C?b:f;q=C?0:q;f=PK(d,m)|0;if(p|0){c[f+8>>2]=c[u>>2];h[f+16>>3]=i;h[f+24>>3]=g}if(o|0){c[f+12>>2]=c[v>>2];h[f+32>>3]=j;h[f+40>>3]=k}e=0;while(1){if((e|0)>=(m|0))break;C=(c[f>>2]|0)+(e<<4)|0;D=n+(e<<4)|0;c[C>>2]=c[D>>2];c[C+4>>2]=c[D+4>>2];c[C+8>>2]=c[D+8>>2];c[C+12>>2]=c[D+12>>2];e=e+1|0}D_(n);if(!q){e=26;break}else{f=o;e=p}}if((e|0)==8){KM(d);if(a[190691]|0){b=0;break}a[190691]=1;D=ry(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;b=ry(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;c[A>>2]=D;c[A+4>>2]=b;Pw(0,88567,A)|0;b=0;break}else if((e|0)==13){if(!(a[190691]|0)){a[190691]=1;C=ry(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;D=ry(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;c[z>>2]=C;c[z+4>>2]=D;Pw(0,88634,z)|0}D_(n);KM(d);b=0;break}else if((e|0)==26){f=d+16|0;b=c[f>>2]|0;e=c[b+96>>2]|0;if(e){em(d,e,99611);b=c[f>>2]|0}e=c[b+108>>2]|0;if(e){em(d,e,99607);b=c[f>>2]|0}e=c[b+100>>2]|0;if(e){em(d,e,99614);b=c[f>>2]|0}b=c[b+104>>2]|0;if(!b){b=1;break}em(d,b,99622);b=1;break}}else b=0;while(0);l=B;return b|0}function jm(b){b=b|0;var c=0,d=0;d=0;do{while(1){c=a[b>>0]|0;if(!(B$(c&255)|0))break;else b=b+1|0}a:do if(!(c<<24>>24))c=0;else{d=d+1|0;while(1){if(!(c<<24>>24)){c=0;break a}if(c<<24>>24==59|(B$(c&255)|0)!=0)break a;c=b+1|0;b=c;c=a[c>>0]|0}}while(0)}while((B$(c&255)|0)!=0);return d|0}function km(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function lm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h;if((z$(ry(a)|0,104980,7)|0)==0?(mm(a,e,f)|0)!=0:0){Az(a,134401,280,1)|0;i=(c[a+16>>2]|0)+16|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];nm(b,a);fm(a,d,e)}else g=4;a:do if((g|0)==4){a=wA(a)|0;while(1){if(!a)break a;lm(a,b,d,e);a=xA(a)|0}}while(0);l=h;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;i=l;l=l+48|0;j=i+32|0;g=i;k=yx(a,b)|0;a=g+8|0;b=g+24|0;c[j>>2]=g;c[j+4>>2]=a;c[j+8>>2]=g+16;c[j+12>>2]=b;if((N1(k,88682,j)|0)==4){e=+h[a>>3];f=+h[b>>3];if(e>f){h[a>>3]=f;h[b>>3]=e};c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[d+16>>2]=c[g+16>>2];c[d+20>>2]=c[g+20>>2];c[d+24>>2]=c[g+24>>2];c[d+28>>2]=c[g+28>>2];a=1}else a=0;l=i;return a|0}function nm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+16|0;d=c[e>>2]|0;g=d+180|0;a=c[g>>2]|0;f=a+1|0;c[g>>2]=f;d=c[d+184>>2]|0;if(!d)a=uH((a<<2)+8|0)|0;else a=wH(d,a+2|0,4,f)|0;c[(c[e>>2]|0)+184>>2]=a;c[a+(f<<2)>>2]=b;fH(b);return}function om(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+8|0;k=n;i=n+16|0;j=n+12|0;h=xx(b,88698)|0;do if((h|0)!=0?(g=a[h>>0]|0,g<<24>>24!=0):0){g=g&255;if(!(N$(g)|0))if((e|0)==2|(g+-48|0)>>>0<10)e=h;else break;else{if(!(z$(h,88704,4)|0)){e=0;break}if(!(z$(h,102485,7)|0)){e=1;break}if(z$(h,88709,6)|0)if((e|0)==2)e=h;else break;else e=h+6|0}if(!(((d[e>>0]|0)+-48|0)>>>0<10?(c[k>>2]=j,(N1(e,96907,k)|0)>=1):0)){k=H1()|0;k=(db(0)|0)^k;c[j>>2]=k;c[m>>2]=k;Y0(i,96907,m)|0;zx(b,88698,i)|0}c[f>>2]=c[j>>2];e=2}while(0);l=n;return e|0}function pm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f+4|0;c[e>>2]=1;d=om(a,d,e)|0;if((d|0)!=2&(c[46026]|0)!=0)Pw(0,88716,f)|0;if((d|0)==1)qm(a,b);i2(c[e>>2]|0);l=f;return d|0}function qm(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0.0;g=+(d|0);i=6.283185307179586/g;e=Sy(b)|0;f=0.0;while(1){if(!e)break;l=+E(+f)*g;j=c[e+16>>2]|0;k=c[j+132>>2]|0;h[k>>3]=l;h[k+8>>3]=+F(+f)*g;a[j+119>>0]=1;if((c[46366]|0)>2)In(e,d);e=Ty(b,e)|0;f=f+i}return}function rm(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0;r=l;l=l+80|0;d=r+24|0;n=r+32|0;k=r;p=r+28|0;m=r+64|0;q=+h[22908];do if(c[46363]|0){h[22908]=72.0;sm(b);tm(b);if((dm(b,1)|0)<0){Pw(3,88764,d)|0;break}else{PI(b,0);f=32;break}}else{o=RL(xx(b,88493)|0,0)|0;h[22908]=+ML(b);sm(b);g=um(b)|0;Sp(b,k,0)|0;i=vm(b)|0;j=ZD(b,0,n)|0;d=YD(b,-1,8)|0;c[46025]=d;e=(d|0)<0;do if(!j){if((g|0)!=0&e){c[46025]=8;c[n+16>>2]=2;f=11;break}c[n+16>>2]=2;if((d|0)<=-1){wm(b,g,i);Vp(b,k)|0;tm(b);if(!(o<<24>>24)){hn(b);break}else{xm(b);break}}else f=11}else if(e){c[46025]=8;f=11}else f=11;while(0);if((f|0)==11){j=dD(b,p,88792,m)|0;d=c[p>>2]|0;do if((d|0)<=1){wm(b,g,i);Vp(b,k)|0;if(!(o<<24>>24)){hn(b);break}else{xm(b);break}}else{f=o<<24>>24==0;e=0;while(1){if((e|0)>=(d|0))break;d=c[j+(e<<2)>>2]|0;vD(d)|0;wm(d,g,i);Vp(d,k)|0;$M(d,2);if(f)hn(d);else xm(d);e=e+1|0;d=c[p>>2]|0}if(!(a[m>>0]|0))e=0;else{e=uH(d)|0;a[e>>0]=1;d=c[p>>2]|0}c[n+8>>2]=c[46025];c[n+20>>2]=e;c[n+12>>2]=1;VD(d,j,b,n)|0;D_(e)}while(0);mM(b);tm(b);d=0;while(1){if((d|0)>=(c[p>>2]|0))break;n=c[j+(d<<2)>>2]|0;Fn(n);Cz(n,134401)|0;dz(b,n)|0;d=d+1|0}D_(j)}PI(b,o<<24>>24==0&1);f=32}while(0);if((f|0)==32)h[22908]=q;l=r;return}function sm(a){a=a|0;var d=0,e=0,f=0,g=0;$M(a,2);f=KL(a,nx(a,0,89557,0)|0,2,2)|0;d=(KL(a,nx(a,0,90633,0)|0,f,2)|0)&65535;b[(c[(fz(a)|0)+16>>2]|0)+176>>1]=d;d=c[(c[a+60>>2]|0)+16>>2]|0;g=d+176|0;e=b[g>>1]|0;e=(e&65535)<10?e:10;b[g>>1]=e;e=e&65535;c[46366]=e;b[d+178>>1]=(f|0)<(e|0)?f:e;Hm(a);return}function tm(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+1040|0;e=f;d=f+8|0;a:do if((c[46366]|0)>2&(c[46401]|0)!=0){b=Sy(a)|0;while(1){if(!b)break a;h[e>>3]=+h[(c[(c[b+16>>2]|0)+132>>2]|0)+16>>3]*72.0;Y0(d,98183,e)|0;rx(b,c[46401]|0,d)|0;b=Ty(a,b)|0}}while(0);l=f;return}function um(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=xx(b,89477)|0;a:do if(!d)b=1;else{switch(a[d>>0]|0){case 0:{b=1;break a}case 75:{if(!(b$(d,89482)|0)){b=0;break a}break}case 109:{if(!(b$(d,89485)|0)){b=1;break a}break}case 104:{if(!(b$(d,89491)|0)){b=2;break a}break}default:{}}b=ry(b)|0;c[e>>2]=d;c[e+4>>2]=b;Pw(0,89496,e)|0;b=1}while(0);l=f;return b|0}function vm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;e=h;d=xx(b,89260)|0;a:do if(!d)b=0;else{switch(a[d>>0]|0){case 0:{b=0;break a}case 99:{if(!(b$(d,89266)|0)){b=1;break a}break}case 115:{if(!(b$(d,89274)|0)){b=2;break a}if(!(b$(d,89281)|0)){b=0;break a}break}case 109:{if(!(b$(d,89291)|0)){if(nx(b,2,90566,0)|0){b=3;break a}c[e>>2]=ry(b)|0;Pw(0,89295,e)|0;Pw(3,89358,f)|0;b=0;break a}break}default:{}}b=ry(b)|0;c[g>>2]=d;c[g+4>>2]=b;Pw(0,89415,g)|0;b=0}while(0);l=h;return b|0}function wm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=xx(a,90975)|0;if(!e)if((b|0)==1)e=200;else e=(ay(a)|0)*100|0;else e=a2(e)|0;c[46365]=e;e=yn(a,b)|0;do if(!((e|0)<2|(c[46365]|0)<0))if(!b){zm(a,e,d);break}else{ym(a,e,b,d,c[46366]|0);break}while(0);return}function xm(a){a=a|0;mM(a);$m(a,1);return}function ym(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;r=u+40|0;o=u+24|0;n=u;p=u+48|0;t=u+44|0;q=(d|0)==2;i=pm(a,b,q?0:2)|0;j=Gm(a)|0;k=j|4;s=vH(f<<2)|0;c[s>>2]=vH(O(b<<3,f)|0)|0;g=c[46366]|0;f=1;while(1){if((f|0)>=(g|0))break;c[s+(f<<2)>>2]=(c[s>>2]|0)+((O(f,b)|0)<<3);f=f+1|0}g=(i|0)==0;f=g?k:j;if(0){k=c[15686]|0;j=c[46365]|0;m=+h[22909];c[n>>2]=e;c[n+4>>2]=g&1;c[n+8>>2]=f&3;c[n+12>>2]=j;h[n+16>>3]=m;g1(k,89073,n)|0;E1(89130,15,1,k)|0;EL();E1(89146,13,1,k)|0}n=Cm(a,b,p,d,e,t)|0;if(0){k=c[15686]|0;m=+FL();c[o>>2]=b;h[o+8>>3]=m;g1(k,89160,o)|0}if((d|0)!=1){m=+LL(a,nx(a,0,89179,0)|0,0.0,-1797693134862315708145274.0e284);if(q){f=Gq(n,b,c[p>>2]|0,s,c[t>>2]|0,c[46366]|0,f,e,c[46365]|0,m)|0;g=12}else g=14}else{f=qn(n,b,c[p>>2]|0,s,c[t>>2]|0,c[46366]|0,f,e,c[46365]|0)|0;g=12}if((g|0)==12)if((f|0)<0)Pw(3,89189,r)|0;else g=14;a:do if((g|0)==14){g=Sy(a)|0;while(1){if(!g)break a;k=c[g+16>>2]|0;i=c[k+120>>2]|0;j=c[46366]|0;k=k+132|0;f=0;while(1){if((f|0)>=(j|0))break;h[(c[k>>2]|0)+(f<<3)>>3]=+h[(c[s+(f<<2)>>2]|0)+(i<<3)>>3];f=f+1|0}g=Ty(a,g)|0}}while(0);br(n);D_(c[s>>2]|0);D_(s);D_(c[t>>2]|0);l=u;return}function zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0;g=l;l=l+48|0;f=g+32|0;e=g;switch(d|0){case 2:{Am(a,b);break}case 1:{if(!(Cq(a,b)|0)){c[e>>2]=ry(a)|0;Pw(0,88802,e)|0;Pw(3,91952,g+8|0)|0;Pw(3,88854,g+16|0)|0;Pw(3,88926,g+24|0)|0;Wn(a,b)}break}default:{Wn(a,b);if((d|0)==3)Bm(a)}}Kn(a,b);Ln(a,b);if(0){e=c[15686]|0;j=c[46365]|0;i=+h[22909];c[f>>2]=d;c[f+4>>2]=j;h[f+8>>3]=i;g1(e,88964,f)|0;EL()}Mn(a,b);l=g;return}function Am(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+16|0;g=Cm(a,b,j,0,2,0)|0;i=ds(g,b)|0;e=a+16|0;a=0;while(1){if((a|0)>=(b|0))break;f=i+(a<<2)|0;d=0;while(1){if((d|0)==(b|0))break;h[(c[(c[(c[e>>2]|0)+160>>2]|0)+(a<<2)>>2]|0)+(d<<3)>>3]=+(c[(c[f>>2]|0)+(d<<2)>>2]|0);d=d+1|0}a=a+1|0}D_(c[i>>2]|0);D_(i);br(g);l=j;return}function Bm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;f=a+16|0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;g=c[b>>2]&3;e=(c[c[((g|0)==3?b:b+48|0)+40>>2]>>2]|0)>>>4;g=(c[c[((g|0)==2?b:b+-48|0)+40>>2]>>2]|0)>>>4;if((e|0)!=(g|0)){j=+h[(c[b+16>>2]|0)+136>>3];i=c[(c[f>>2]|0)+160>>2]|0;h[(c[i+(g<<2)>>2]|0)+(e<<3)>>3]=j;h[(c[i+(e<<2)>>2]|0)+(g<<3)>>3]=j}b=Gx(a,b)|0}d=Ty(a,d)|0}return}function Cm(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0;j=by(a)|0;G=GI()|0;if((f|0)==2){k=0;D=0}else{D=nx(a,2,90566,0)|0;k=(c[46404]|0)!=0&1;D=(D|0)!=0}A=(e|1|0)==3;E=vH(b*20|0)|0;F=vH(b<<2)|0;l=(j<<1)+b<<2;m=vH(l)|0;z=A|D;if(z)f=vH(l)|0;else f=0;C=(k|0)!=0;if(C)j=vH(l)|0;else j=0;if(A)k=vH(l)|0;else k=0;l=0;x=Sy(a)|0;y=0;while(1){if(!x)break;JI(G);if((c[(c[x+16>>2]|0)+120>>2]|0)!=(y|0)){B=12;break}c[F+(y<<2)>>2]=x;u=E+(y*20|0)+4|0;c[u>>2]=m;v=E+(y*20|0)+8|0;c[v>>2]=z?f:0;w=E+(y*20|0)+12|0;c[w>>2]=C?j:0;c[E+(y*20|0)+16>>2]=A?k:0;r=1;t=Jx(a,x)|0;s=1;q=l;m=m+4|0;f=z?f+4|0:f;j=C?j+4|0:j;k=A?k+4|0:k;while(1){if(!t)break;n=c[t>>2]&3;p=t+-48|0;l=t+48|0;do if((c[((n|0)==2?t:p)+40>>2]|0)==(c[((n|0)==3?t:l)+40>>2]|0)){n=r;p=s;l=q}else{n=Dm(G,t,r)|0;if((n|0)!=(r|0)){if(C){p=(c[w>>2]|0)+(n<<2)|0;g[p>>2]=+h[(c[t+16>>2]|0)+128>>3]+ +g[p>>2]}if(!D){n=r;p=s;l=q;break}n=(c[v>>2]|0)+(n<<2)|0;H=+h[(c[t+16>>2]|0)+136>>3];o=+(~~+g[n>>2]|0);g[n>>2]=H>o?H:o;n=r;p=s;l=q;break}I=c[t>>2]&3;l=(I|0)==3?t:l;q=q+1|0;n=r+1|0;r=m+4|0;c[m>>2]=c[(c[(c[((c[l+40>>2]|0)==(x|0)?((I|0)==2?t:p):l)+40>>2]|0)+16>>2]|0)+120>>2];if(C){g[j>>2]=+h[(c[t+16>>2]|0)+128>>3];j=j+4|0}if(D){l=f+4|0;g[f>>2]=+h[(c[t+16>>2]|0)+136>>3];if(A){f=l;B=27}else f=l}else if(A){g[f>>2]=1.0;f=f+4|0;B=27}if((B|0)==27){B=0;l=xx(t,98533)|0;if((l|0)!=0?(z$(l,132627,4)|0)==0:0)o=0.0;else o=(x|0)==(c[((c[t>>2]&3|0)==2?t:p)+40>>2]|0)?1.0:-1.0;g[k>>2]=o;k=k+4|0}p=s+1|0;l=q;m=r}while(0);r=n;t=Kx(a,t,x)|0;s=p;q=l}c[E+(y*20|0)>>2]=s;c[c[u>>2]>>2]=y;l=q;x=Ty(a,x)|0;y=y+1|0}if((B|0)==12)qa(89003,89018,819,89030);if(A)Em(E,b,e,F);n=(l|0)/2|0;a:do if((n|0)!=(by(a)|0)){l=(n<<1)+b<<2;k=xH(c[E+4>>2]|0,l)|0;if(D)f=xH(c[E+8>>2]|0,l)|0;if(C){m=0;j=xH(c[E+12>>2]|0,l)|0}else m=0;while(1){if((m|0)>=(b|0))break a;l=c[E+(m*20|0)>>2]|0;c[E+(m*20|0)+4>>2]=k;if(D){c[E+(m*20|0)+8>>2]=f;f=f+(l<<2)|0}if(C){c[E+(m*20|0)+12>>2]=j;j=j+(l<<2)|0}m=m+1|0;k=k+(l<<2)|0}}while(0);c[d>>2]=n;if(!i)D_(F);else c[i>>2]=F;KI(G);return E|0}function Dm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=c[b>>2]&3;e=c[(c[(c[((f|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;b=c[(c[(c[((f|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;f=(e|0)>(b|0);return LI(a,f?b:e,f?e:b,d)|0}function Em(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(d|0)){g=0;break}h=c[(c[f+(g<<2)>>2]|0)+16>>2]|0;a[h+157>>0]=0;a[h+158>>0]=0;g=g+1|0}while(1){if((g|0)>=(d|0))break;if(!(a[(c[(c[f+(g<<2)>>2]|0)+16>>2]|0)+157>>0]|0))Fm(b,g,e,f);g=g+1|0}return}function Fm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0;q=(c[f+(d<<2)>>2]|0)+16|0;l=c[q>>2]|0;a[l+157>>0]=1;a[l+158>>0]=1;l=b+(d*20|0)|0;m=b+(d*20|0)+16|0;n=b+(d*20|0)+4|0;o=(e|0)==3?-1.0:1.0;k=1;a:while(1){if((k|0)>=(c[l>>2]|0)){h=14;break}h=(c[m>>2]|0)+(k<<2)|0;do if(!(+g[h>>2]==1.0)){p=c[(c[n>>2]|0)+(k<<2)>>2]|0;i=c[(c[f+(p<<2)>>2]|0)+16>>2]|0;if(!(a[i+158>>0]|0)){if(a[i+157>>0]|0)break;Fm(b,p,e,f);break}g[h>>2]=o;i=b+(p*20|0)+4|0;j=c[b+(p*20|0)>>2]|0;h=1;while(1){if((h|0)>=(j|0)){h=9;break a}if((c[(c[i>>2]|0)+(h<<2)>>2]|0)==(d|0))break;h=h+1|0}g[(c[b+(p*20|0)+16>>2]|0)+(h<<2)>>2]=-1.0}while(0);k=k+1|0}if((h|0)==9)qa(89044,89018,721,89064);else if((h|0)==14){a[(c[q>>2]|0)+158>>0]=0;return}}function Gm(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;a=KL(a,nx(a,0,89205,0)|0,2,0)|0;if((a|0)==0|(a|0)>2){c[b>>2]=89205;Pw(0,89214,b)|0;a=2}l=d;return a|0}function Hm(a){a=a|0;var b=0,d=0,e=0;d=ay(a)|0;c[46026]=nx(a,1,99597,0)|0;e=nx(a,1,90570,0)|0;b=Sy(a)|0;while(1){if(!b)break;$l(b);am(c[46026]|0,e,b,d)|0;b=Ty(a,b)|0}d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;Im(b);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function Im(a){a=a|0;var b=0.0;Az(a,134378,176,1)|0;eM(a)|0;b=+LL(a,c[46404]|0,1.0,1.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function Jm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;a=uH(64)|0;e=a+8|0;f=d+8|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));d=c[d+56>>2]|0;c[a+56>>2]=d;b[(c[d+16>>2]|0)+168>>1]=1;return a|0}function Km(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function Lm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if(a>>>0<=e>>>0)if(a>>>0>=e>>>0){e=c[b+24>>2]|0;a=c[d+24>>2]|0;if(e>>>0<=a>>>0)if(e>>>0>=a>>>0){a=~~(+h[b+8>>3]-+h[d+8>>3]);if(!a){a=~~(+h[b+16>>3]-+h[d+16>>3]);if(!a){a=~~(+h[b+32>>3]-+h[d+32>>3]);if(!a)a=~~(+h[b+40>>3]-+h[d+40>>3])}}}else a=-1;else a=1}else a=-1;else a=1;return a|0}function Mm(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;g=k;h=e+16|0;i=b[(c[h>>2]|0)+168>>1]|0;j=i<<16>>16;if(i<<16>>16!=1&(a[191874]|0)==0){i=vH(j<<2)|0;g=0;while(1){if((g|0)>=(j|0))break;c[i+(g<<2)>>2]=e;e=c[(c[e+16>>2]|0)+172>>2]|0;g=g+1|0}m=+(f|0);YK(d,i,0,j,m,m,17764);e=0;while(1){if((e|0)>=(j|0))break;g=c[i+(e<<2)>>2]|0;h=g+16|0;if(c[(c[h>>2]|0)+96>>2]|0){f=ez(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)|0;kM(f,c[(c[h>>2]|0)+96>>2]|0)}dL(g);e=e+1|0}D_(i)}else{c[g>>2]=e;m=+(f|0);YK(d,g,0,1,m,m,17764);if(c[(c[h>>2]|0)+96>>2]|0){j=ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;kM(j,c[(c[h>>2]|0)+96>>2]|0)}dL(e)}l=k;return}function Nm(a){a=a|0;return 0}function Om(a){a=a|0;return 0}function Pm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+384|0;O=Q+368|0;P=Q+112|0;j=Q+32|0;r=Q+336|0;K=Q+320|0;L=Q+304|0;M=Q+288|0;N=Q+272|0;i=Q+256|0;H=Q+240|0;I=Q+224|0;J=Q+208|0;t=Q+192|0;u=Q+176|0;v=Q+160|0;z=Q+144|0;A=Q+128|0;B=Q+96|0;D=Q+16|0;G=Q;a:do switch(HJ(b)|0){case 3:case 1:{f=uH(8)|0;z=b+16|0;b=c[z>>2]|0;i=c[b+12>>2]|0;do if(!(e<<24>>24)){b=c[i+8>>2]|0;if((b|0)>2){y=0.0;j=c[i+44>>2]|0;e=0;p=+g[d>>2];q=+g[d+4>>2];break}else{y=+k2()*.01;b=8;j=0;e=1;p=0.0;q=0.0;break}}else if(!(c[i+40>>2]&2048)){q=+h[b+88>>3];p=-q;y=+h[b+80>>3];x=y*-.5;h[j>>3]=p;h[j+8>>3]=x;h[j+16>>3]=q;h[j+24>>3]=x;y=y*.5;h[j+32>>3]=q;h[j+40>>3]=y;h[j+48>>3]=p;h[j+56>>3]=y;y=0.0;b=4;e=0;p=0.0;q=0.0;break}else{jM(r,i);p=+h[r>>3];x=+h[r+8>>3];q=+h[r+16>>3];y=+h[r+24>>3];h[j>>3]=p;h[j+8>>3]=x;h[j+16>>3]=q;h[j+24>>3]=x;h[j+32>>3]=q;h[j+40>>3]=y;h[j+48>>3]=p;h[j+56>>3]=y;y=0.0;b=4;e=0;p=0.0;q=0.0;break}while(0);c[f+4>>2]=b;r=uH(b<<4)|0;c[f>>2]=r;s=1.0/+(b|0);t=d+8|0;u=d+4|0;v=(b|0)==4;w=-p;x=-q;i=0;while(1){if((b|0)<=(i|0))break a;do if(e){k=+(i|0)*6.283185307179586*s+y;m=+E(+k);k=+F(+k);if(!(a[t>>0]|0)){P=c[z>>2]|0;n=k*+g[u>>2]*+h[P+80>>3];k=m*+g[d>>2]*(+h[P+96>>3]+ +h[P+88>>3])}else{P=c[z>>2]|0;n=(+h[P+80>>3]+ +g[u>>2])*k;k=(+h[P+96>>3]+ +h[P+88>>3]+ +g[d>>2])*m}o=k*.5;k=n*.5}else{if(!(a[t>>0]|0)){o=+h[j+(i<<4)>>3]*p;k=+h[j+(i<<4)+8>>3]*q;break}if(!v){o=+h[j+(i<<4)>>3];k=+h[j+(i<<4)+8>>3];n=+C(+(k*k+o*o));o=(p/n+1.0)*o;k=(q/n+1.0)*k;break}switch(i|0){case 0:{m=q;k=p;break}case 1:{m=q;k=w;break}case 2:{m=x;k=w;break}case 3:{m=x;k=p;break}default:{m=0.0;k=0.0}}o=+h[j+(i<<4)>>3]+k;k=+h[j+(i<<4)+8>>3]+m}while(0);O=c[z>>2]|0;P=b-i+-1|0;h[r+(P<<4)>>3]=+h[O+16>>3]+o;h[r+(P<<4)+8>>3]=+h[O+24>>3]+k;i=i+1|0}}case 2:{G=b+16|0;f=c[(c[G>>2]|0)+12>>2]|0;k=+h[f+16>>3];o=+h[f+24>>3];m=+h[f+32>>3];n=+h[f+40>>3];f=uH(8)|0;c[f+4>>2]=4;b=uH(64)|0;c[f>>2]=b;G=(c[G>>2]|0)+16|0;c[P>>2]=c[G>>2];c[P+4>>2]=c[G+4>>2];c[P+8>>2]=c[G+8>>2];c[P+12>>2]=c[G+12>>2];if(!(a[d+8>>0]|0)){c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(i,k,o,O,d);c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];N=(c[f>>2]|0)+16|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(H,k,n,O,d);c[N>>2]=c[H>>2];c[N+4>>2]=c[H+4>>2];c[N+8>>2]=c[H+8>>2];c[N+12>>2]=c[H+12>>2];N=(c[f>>2]|0)+32|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(I,m,n,O,d);c[N>>2]=c[I>>2];c[N+4>>2]=c[I+4>>2];c[N+8>>2]=c[I+8>>2];c[N+12>>2]=c[I+12>>2];N=(c[f>>2]|0)+48|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(J,m,o,O,d);c[N>>2]=c[J>>2];c[N+4>>2]=c[J+4>>2];c[N+8>>2]=c[J+8>>2];c[N+12>>2]=c[J+12>>2];break a}else{y=k-+g[d>>2];J=d+4|0;x=o-+g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(K,y,x,O);c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2];K=(c[f>>2]|0)+16|0;x=k-+g[d>>2];y=n+ +g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(L,x,y,O);c[K>>2]=c[L>>2];c[K+4>>2]=c[L+4>>2];c[K+8>>2]=c[L+8>>2];c[K+12>>2]=c[L+12>>2];L=(c[f>>2]|0)+32|0;y=m+ +g[d>>2];x=n+ +g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(M,y,x,O);c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];M=(c[f>>2]|0)+48|0;x=m+ +g[d>>2];y=o-+g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(N,x,y,O);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];break a}}case 4:{b=b+16|0;f=uH(8)|0;c[f+4>>2]=4;i=uH(64)|0;c[f>>2]=i;j=c[b>>2]|0;N=j+16|0;c[P>>2]=c[N>>2];c[P+4>>2]=c[N+4>>2];c[P+8>>2]=c[N+8>>2];c[P+12>>2]=c[N+12>>2];k=-+h[j+88>>3];if(!(a[d+8>>0]|0)){x=-+h[j+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(A,k,x,O,d);c[i>>2]=c[A>>2];c[i+4>>2]=c[A+4>>2];c[i+8>>2]=c[A+8>>2];c[i+12>>2]=c[A+12>>2];N=(c[f>>2]|0)+16|0;M=c[b>>2]|0;x=-+h[M+88>>3];y=+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(B,x,y,O,d);c[N>>2]=c[B>>2];c[N+4>>2]=c[B+4>>2];c[N+8>>2]=c[B+8>>2];c[N+12>>2]=c[B+12>>2];N=(c[f>>2]|0)+32|0;M=c[b>>2]|0;y=+h[M+96>>3];x=+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(D,y,x,O,d);c[N>>2]=c[D>>2];c[N+4>>2]=c[D+4>>2];c[N+8>>2]=c[D+8>>2];c[N+12>>2]=c[D+12>>2];N=(c[f>>2]|0)+48|0;M=c[b>>2]|0;x=+h[M+96>>3];y=-+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Rm(G,x,y,O,d);c[N>>2]=c[G>>2];c[N+4>>2]=c[G+4>>2];c[N+8>>2]=c[G+8>>2];c[N+12>>2]=c[G+12>>2];break a}else{y=k-+g[d>>2];M=d+4|0;x=-+h[j+80>>3]-+g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(t,y,x,O);c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];N=(c[f>>2]|0)+16|0;L=c[b>>2]|0;x=-+h[L+88>>3]-+g[d>>2];y=+h[L+80>>3]+ +g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(u,x,y,O);c[N>>2]=c[u>>2];c[N+4>>2]=c[u+4>>2];c[N+8>>2]=c[u+8>>2];c[N+12>>2]=c[u+12>>2];N=(c[f>>2]|0)+32|0;L=c[b>>2]|0;y=+h[L+96>>3]+ +g[d>>2];x=+h[L+80>>3]+ +g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(v,y,x,O);c[N>>2]=c[v>>2];c[N+4>>2]=c[v+4>>2];c[N+8>>2]=c[v+8>>2];c[N+12>>2]=c[v+12>>2];N=(c[f>>2]|0)+48|0;L=c[b>>2]|0;x=+h[L+96>>3]+ +g[d>>2];y=-+h[L+80>>3]-+g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Qm(z,x,y,O);c[N>>2]=c[z>>2];c[N+4>>2]=c[z+4>>2];c[N+8>>2]=c[z+8>>2];c[N+12>>2]=c[z+12>>2];break a}}default:f=0}while(0);l=Q;return f|0}function Qm(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;c=+h[d+8>>3]+c;h[a>>3]=+h[d>>3]+b;h[a+8>>3]=c;return}function Rm(a,b,c,d,e){a=a|0;b=+b;c=+c;d=d|0;e=e|0;c=+g[e+4>>2]*c+ +h[d+8>>3];h[a>>3]=+g[e>>2]*b+ +h[d>>3];h[a+8>>3]=c;return}function Sm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+112|0;j=o+88|0;i=o+72|0;k=o+32|0;m=o+16|0;n=o;f=o+56|0;g=o+40|0;h=b+48|0;r=(c[(c[((c[b>>2]&3|0)==3?b:h)+40>>2]|0)+16>>2]|0)+16|0;p=b+16|0;q=(c[p>>2]|0)+16|0;c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];c[i+8>>2]=c[r+8>>2];c[i+12>>2]=c[r+12>>2];c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];Tm(f,i,j);c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];f=b+-48|0;q=(c[(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)+16>>2]|0)+16|0;p=(c[p>>2]|0)+56|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];Tm(g,i,j);c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];if(!e){g=-1111;f=-1111}else{r=c[b>>2]&3;g=c[(c[(c[((r|0)==2?b:f)+40>>2]|0)+16>>2]|0)+288>>2]|0;f=c[(c[(c[((r|0)==3?b:h)+40>>2]|0)+16>>2]|0)+288>>2]|0};c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];vU(d,i,f,j,g,k)|0;p=k;q=c[p+4>>2]|0;r=a;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=o;return}function Tm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function Um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+144|0;p=u+104|0;q=u+88|0;o=u+80|0;n=u+72|0;j=u+64|0;s=u+128|0;k=u+32|0;m=u+124|0;t=u+16|0;r=u;i=u+120|0;h=(c[b+16>>2]|0)+144|0;g=c[h>>2]|0;h=c[h+4>>2]|0;v=j;c[v>>2]=g;c[v+4>>2]=h;v=g;c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];h=g+(h+-1<<4)|0;c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[r+12>>2]=c[h+12>>2];a:do if(!(f<<24>>24)){g=-1111;f=-1111}else{g=-1111;f=-1111;h=0;while(1){if((h|0)>=(e|0))break a;if((f|0)==-1111){f=c[d+(h<<2)>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];f=(wU(q,p)|0)==0;f=f?-1111:h}if((g|0)==-1111){g=c[d+(h<<2)>>2]|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];g=(wU(q,p)|0)==0;g=g?-1111:h}h=h+1|0}}while(0);Vm(d,e,f,g,i,m);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;h=c[i>>2]|0;v=c[m>>2]|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];if((xU(h,v,p,k,s)|0)<0){t=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;v=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[n>>2]=t;c[n+4>>2]=v;Pw(1,89563,n)|0}else{if(0>1){g=c[15686]|0;n=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;f=b+-48|0;v=ry(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)|0;c[o>>2]=n;c[o+4>>2]=v;g1(g,89611,o)|0;g=b}else{f=b+-48|0;g=b}QK(b,c[((c[g>>2]&3|0)==2?b:f)+40>>2]|0,c[s>>2]|0,c[s+4>>2]|0,17764);D_(h);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];jL(a,b,q,p)}l=u;return}function Vm(a,b,d,e,f,g){a=a|0;b=b|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;i=0;h=0;while(1){if((i|0)>=(b|0))break;if(!((i|0)==(d|0)|(i|0)==(e|0)))h=(c[(c[a+(i<<2)>>2]|0)+4>>2]|0)+h|0;i=i+1|0}o=vH(h<<5)|0;i=0;n=0;while(1){if((n|0)>=(b|0))break;a:do if(!((n|0)==(d|0)|(n|0)==(e|0))){m=a+(n<<2)|0;l=0;while(1){j=c[m>>2]|0;k=c[j+4>>2]|0;if((l|0)>=(k|0))break a;p=l+1|0;q=o+(i<<5)|0;j=(c[j>>2]|0)+(l<<4)|0;c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[q+12>>2]=c[j+12>>2];j=o+(i<<5)+16|0;k=(c[c[m>>2]>>2]|0)+(((p|0)<(k|0)?p:0)<<4)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];l=p;i=i+1|0}}while(0);n=n+1|0}if((i|0)==(h|0)){c[f>>2]=o;c[g>>2]=h;return}else qa(89625,89632,77,89647)}function Wm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;k=n+12|0;f=n;uq(f,a);c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];f=Sy(a)|0;while(1){if(!f)break;g=Ex(a,f)|0;while(1){if(!g)break;KK(g);g=Gx(a,g)|0}f=Ty(a,f)|0}h=Cw(17728,c[4555]|0)|0;f=Sy(a)|0;while(1){if(!f)break;g=Ex(a,f)|0;while(1){if(!g)break;if((c[46363]|0)>1?(i=c[g+16>>2]|0,(c[i+8>>2]|0)!=0):0){o=i+168|0;b[o>>1]=(b[o>>1]|0)+1<<16>>16}else m=14;if((m|0)==14?(m=0,j=Xm(h,g)|0,(j|0)!=(g|0)):0){o=c[j+16>>2]|0;p=o+168|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16;o=o+172|0;c[(c[g+16>>2]|0)+172>>2]=c[o>>2];c[o>>2]=g}g=Gx(a,g)|0}f=Ty(a,f)|0}yw(h)|0;if(!(nb[d&63](a,k,e)|0)){c[46367]=1;f=0}else f=1;l=n;return f|0}function Xm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+64|0;p=q;e=c[b>>2]&3;i=c[((e|0)==3?b:b+48|0)+40>>2]|0;e=c[((e|0)==2?b:b+-48|0)+40>>2]|0;do if(i>>>0>=e>>>0){d=b+16|0;if(i>>>0>e>>>0){d=c[d>>2]|0;o=e;e=i;k=+h[d+16>>3];m=+h[d+24>>3];g=+h[d+56>>3];f=+h[d+64>>3];break}o=c[d>>2]|0;j=+h[o+56>>3];n=+h[o+64>>3];g=+h[o+16>>3];f=+h[o+24>>3];if(!(gj)){d=f>n;if(f>2]|0;o=i;k=+h[d+56>>3];m=+h[d+64>>3];g=+h[d+16>>3];f=+h[d+24>>3]}while(0);c[p+8>>2]=o;h[p+16>>3]=g;h[p+24>>3]=f;c[p+32>>2]=e;h[p+40>>3]=k;h[p+48>>3]=m;c[p+56>>2]=b;p=c[(nb[c[a>>2]&63](a,p,1)|0)+56>>2]|0;l=q;return p|0}function Ym(a,b){a=a|0;b=b|0;return Wm(a,21,b)|0}function Zm(d,e,f){d=d|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0;F=l;l=l+112|0;B=F+88|0;A=F+72|0;t=F+40|0;q=F+8|0;p=F;u=F+64|0;C=F+48|0;D=F+24|0;i=(c[46363]|0)>1&1;do if((f|0)>5){s=uH((ay(d)|0)<<2)|0;o=(f|0)==8;n=o&1;m=Sy(d)|0;r=0;while(1){if(!m)break;j=Pm(m,e,n)|0;k=(c[m+16>>2]|0)+288|0;if(!j){c[k>>2]=-1111;j=r}else{c[k>>2]=r;c[s+(r<<2)>>2]=j;j=r+1|0}m=Ty(d,m)|0;r=j}if(s){j=ms(s,r)|0;if(j|0){if(o){y=0;z=s;x=s;w=1;break}y=sU(s,r)|0;z=s;x=s;w=1;break}if(o){Pw(0,89661,p)|0;j=0;y=0;z=s;x=s;w=1;break}else{G=+g[e+4>>2];h[q>>3]=+g[e>>2];h[q+8>>3]=G;Pw(0,89739,q)|0;j=0;y=0;z=s;x=s;w=1;break}}else{j=0;y=0;z=0;x=0;w=0}}else{j=0;y=0;z=0;r=0;x=0;w=0}while(0);if(0){k=c[15686]|0;if((f|0)==8&(j|0)!=0)m=89845;else m=(y|0)==0?89831:(f|0)==10?107030:89821;c[t>>2]=m;g1(k,89862,t)|0}v=(y|0)!=0;a:do if(!v){if((f|0)==8&(j|0)!=0){cN(d,0);i=1}}else{k=Sy(d)|0;while(1){if(!k)break a;j=Ex(d,k)|0;while(1){if(!j)break;t=(c[j+16>>2]|0)+144|0;Sm(u,j,y,1,0,0);q=u;s=c[q+4>>2]|0;c[t>>2]=c[q>>2];c[t+4>>2]=s;j=Gx(d,j)|0}k=Ty(d,k)|0}}while(0);p=(i|0)==0;q=d+60|0;s=(f|0)==10;i=0;o=Sy(d)|0;j=0;while(1){if(!o)break;t=o+16|0;e=Ex(d,o)|0;while(1){if(!e)break;n=c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;k=e+16|0;m=c[k>>2]|0;if(!p?(c[m+8>>2]|0)!=0:0){H=(c[t>>2]|0)+16|0;u=m+16|0;c[A>>2]=c[H>>2];c[A+4>>2]=c[H+4>>2];c[A+8>>2]=c[H+8>>2];c[A+12>>2]=c[H+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];Tm(C,A,B);n=(c[n+16>>2]|0)+16|0;u=(c[k>>2]|0)+56|0;c[A>>2]=c[n>>2];c[A+4>>2]=c[n+4>>2];c[A+8>>2]=c[n+8>>2];c[A+12>>2]=c[n+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];Tm(D,A,B);c[A>>2]=c[C>>2];c[A+4>>2]=c[C+4>>2];c[A+8>>2]=c[C+8>>2];c[A+12>>2]=c[C+12>>2];c[B>>2]=c[D>>2];c[B+4>>2]=c[D+4>>2];c[B+8>>2]=c[D+8>>2];c[B+12>>2]=c[D+12>>2];jL(d,e,A,B)}else E=35;b:do if((E|0)==35){E=0;H=b[m+168>>1]|0;k=H<<16>>16;if(H<<16>>16){if((o|0)==(n|0)){if(!i){j=uH(96)|0;c[j+84>>2]=uH(((ay(d)|0)<<5)+11520|0)|0;i=j}Mm(i,e,c[(c[(c[q>>2]|0)+16>>2]|0)+248>>2]|0);break}if(!v){zJ(d,e,f,17764);break}k=a[191874]|0?1:k;m=e;n=0;while(1){if((n|0)>=(k|0))break b;if(s)Um(d,m,z,r,1);else _m(d,m);m=c[(c[m+16>>2]|0)+172>>2]|0;n=n+1|0}}}while(0);e=Gx(d,e)|0}o=Ty(d,o)|0}if(v)uU(y);if(i|0){D_(c[i+84>>2]|0);D_(j)}if(w){i=0;while(1){if((i|0)>=(r|0))break;D_(c[z+(i<<2)>>2]|0);i=i+1|0}D_(x)}l=F;return 0}function _m(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+96|0;g=k+64|0;f=k+48|0;d=k+40|0;h=k+80|0;e=k+32|0;i=k+16|0;j=k;m=(c[b+16>>2]|0)+144|0;n=c[m>>2]|0;m=c[m+4>>2]|0;o=e;c[o>>2]=n;c[o+4>>2]=m;o=n;c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];m=n+(m+-1<<4)|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];oV(g,h);if(0>1){o=c[15686]|0;m=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;e=b+-48|0;n=ry(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0;c[d>>2]=m;c[d+4>>2]=n;g1(o,89887,d)|0;d=e;e=b}else{d=b+-48|0;e=b}QK(b,c[((c[e>>2]&3|0)==2?b:d)+40>>2]|0,c[h>>2]|0,c[h+4>>2]|0,17764);c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];jL(a,b,f,g);l=k;return}function $m(a,d){a=a|0;d=d|0;var e=0;e=b[(c[a+16>>2]|0)+136>>1]&14;if(d<<24>>24)an(a)|0;if(e<<16>>16)Ym(a,e&65535)|0;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0;d=bn(a)|0;b=Sy(a)|0;while(1){if(!b)break;e=c[b+16>>2]|0;f=c[e+132>>2]|0;h[e+16>>3]=+h[f>>3]*72.0;h[e+24>>3]=+h[f+8>>3]*72.0;b=Ty(a,b)|0}return d|0}function bn(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0.0,j=0,k=0;a:do if((c[a+60>>2]|0)==(a|0)?(d=a+16|0,e=c[d>>2]|0,(c[(c[e+8>>2]|0)+84>>2]|0)!=0):0){if(!(+h[e+16>>3]!=0.0)?!(+h[e+24>>3]!=0.0):0)b=0;else{cn(a);b=1;e=c[d>>2]|0}j=(c[e+116>>2]&1|0)==0;if(!j){k=e+32|0;i=+h[k>>3];d=e+40|0;h[k>>3]=+h[d>>3];h[d>>3]=i}d=c[e+8>>2]|0;b:do switch(c[d+84>>2]|0){case 2:{f=+h[d+64>>3];if(f<=0.0)break a;g=f/+h[e+32>>3];f=+h[d+72>>3]/+h[e+40>>3];if(g<1.0|f<1.0)if(g>3];if(f<=0.0)break a;g=f/+h[e+32>>3];f=+h[d+72>>3]/+h[e+40>>3];if(!(g>1.0&f>1.0))break a;f=g>3];f=+h[e+40>>3]/+h[e+32>>3];if(f1){d=Sy(a)|0;while(1){if(!d)break c;b=Ex(a,d)|0;while(1){if(!b)break;if(c[(c[b+16>>2]|0)+8>>2]|0)dn(b,f,g);b=Gx(a,b)|0}d=Ty(a,d)|0}}while(0);b=Sy(a)|0;while(1){if(!b)break;k=c[(c[b+16>>2]|0)+132>>2]|0;h[k>>3]=+h[k>>3]*f;k=k+8|0;h[k>>3]=+h[k>>3]*g;b=Ty(a,b)|0}en(a,f,g);b=1}else b=0;while(0);return b|0}function cn(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;k=n+16|0;m=n;d=(c[b+16>>2]|0)+16|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];f=+h[m>>3];g=f*.013888888888888888;i=+h[m+8>>3];j=i*.013888888888888888;d=Sy(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;o=c[e+132>>2]|0;h[o>>3]=+h[o>>3]-g;o=o+8|0;h[o>>3]=+h[o>>3]-j;e=c[e+108>>2]|0;if(e|0?a[e+81>>0]|0:0){o=e+56|0;h[o>>3]=+h[o>>3]-f;o=e+64|0;h[o>>3]=+h[o>>3]-i}d=Ty(b,d)|0}e=Sy(b)|0;while(1){if(!e)break;d=Ex(b,e)|0;while(1){if(!d)break;if(c[(c[d+16>>2]|0)+8>>2]|0){c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];fn(d,k)}d=Gx(b,d)|0}e=Ty(b,e)|0}c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];gn(b,k);l=n;return}function dn(b,d,e){b=b|0;d=+d;e=+e;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0;p=c[b>>2]&3;i=c[(c[(c[((p|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;s=(d+-1.0)*72.0;q=s*+h[i>>3];t=(e+-1.0)*72.0;r=t*+h[i+8>>3];p=c[(c[(c[((p|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;s=s*+h[p>>3];t=t*+h[p+8>>3];p=c[b+16>>2]|0;i=c[p+8>>2]|0;j=c[i+4>>2]|0;k=j+-1|0;b=0;i=c[i>>2]|0;while(1){if((b|0)>=(j|0))break;l=c[i+4>>2]|0;m=l+-1|0;n=(b|0)==(k|0);f=0;g=c[i>>2]|0;while(1){if((f|0)>=(l|0))break;do if(f|b){o=+h[g>>3];if((f|0)==(m|0)&n){h[g>>3]=o+q;u=g+8|0;h[u>>3]=+h[u>>3]+r;break}else{h[g>>3]=o*d;u=g+8|0;h[u>>3]=+h[u>>3]*e;break}}else{h[g>>3]=+h[g>>3]+s;u=g+8|0;h[u>>3]=+h[u>>3]+t}while(0);f=f+1|0;g=g+16|0}if(c[i+8>>2]|0){u=i+16|0;h[u>>3]=+h[u>>3]+s;u=i+24|0;h[u>>3]=+h[u>>3]+t}if(c[i+12>>2]|0){u=i+32|0;h[u>>3]=+h[u>>3]+q;u=i+40|0;h[u>>3]=+h[u>>3]+r}b=b+1|0;i=i+48|0}b=c[p+96>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]*d;u=b+64|0;h[u>>3]=+h[u>>3]*e}b=c[p+100>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]+q;u=b+64|0;h[u>>3]=+h[u>>3]+r}b=c[p+104>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]+s;u=b+64|0;h[u>>3]=+h[u>>3]+t}return}function en(b,d,e){b=b|0;d=+d;e=+e;var f=0,g=0,i=0;i=b+16|0;g=c[i>>2]|0;b=g+32|0;h[b>>3]=+h[b>>3]*d;b=g+40|0;h[b>>3]=+h[b>>3]*e;b=g+16|0;h[b>>3]=+h[b>>3]*d;b=g+24|0;h[b>>3]=+h[b>>3]*e;b=c[g+12>>2]|0;if((b|0)!=0?(a[b+81>>0]|0)!=0:0){f=b+56|0;h[f>>3]=+h[f>>3]*d;f=b+64|0;h[f>>3]=+h[f>>3]*e;f=1;b=g}else{f=1;b=g}while(1){if((f|0)>(c[b+180>>2]|0))break;en(c[(c[b+184>>2]|0)+(f<<2)>>2]|0,d,e);f=f+1|0;b=c[i>>2]|0}return}function fn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;k=c[b+16>>2]|0;b=c[k+8>>2]|0;j=c[b+4>>2]|0;l=d+8|0;b=c[b>>2]|0;g=0;while(1){if((g|0)>=(j|0))break;i=c[b+4>>2]|0;e=c[b>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;h[e>>3]=+h[e>>3]-+h[d>>3];m=e+8|0;h[m>>3]=+h[m>>3]-+h[l>>3];e=e+16|0;f=f+1|0}if(c[b+8>>2]|0){m=b+16|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+24|0;h[m>>3]=+h[m>>3]-+h[l>>3]}if(c[b+12>>2]|0){m=b+32|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+40|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=b+48|0;g=g+1|0}b=c[k+96>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+108>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+100>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+104>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}return}function gn(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;j=k;g=+h[d>>3];i=b+16|0;b=c[i>>2]|0;e=b+32|0;h[e>>3]=+h[e>>3]-g;f=+h[d+8>>3];e=b+40|0;h[e>>3]=+h[e>>3]-f;e=b+16|0;h[e>>3]=+h[e>>3]-g;e=b+24|0;h[e>>3]=+h[e>>3]-f;e=c[b+12>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){m=e+56|0;h[m>>3]=+h[m>>3]-g;e=e+64|0;h[e>>3]=+h[e>>3]-f;e=1}else e=1;while(1){if((e|0)>(c[b+180>>2]|0))break;m=c[(c[b+184>>2]|0)+(e<<2)>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];gn(m,j);e=e+1|0;b=c[i>>2]|0}l=k;return}function hn(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0,j=0;i=l;l=l+16|0;d=i;mM(a);e=a+16|0;b=c[e>>2]|0;f=+h[b+16>>3]*.013888888888888888;g=+h[b+24>>3]*.013888888888888888;b=Sy(a)|0;while(1){if(!b)break;j=c[(c[b+16>>2]|0)+132>>2]|0;h[j>>3]=+h[j>>3]-f;j=j+8|0;h[j>>3]=+h[j>>3]-g;b=Ty(a,b)|0}j=(c[e>>2]|0)+16|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];jn(a,d);$m(a,1);l=i;return}function jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0;g=l;l=l+16|0;f=g;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[(c[e+184>>2]|0)+(a<<2)>>2]|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];jn(e,f);a=a+1|0}j=+h[b>>3];f=e+32|0;h[f>>3]=+h[f>>3]-j;i=+h[b+8>>3];b=e+40|0;h[b>>3]=+h[b>>3]-i;b=e+16|0;h[b>>3]=+h[b>>3]-j;b=e+24|0;h[b>>3]=+h[b>>3]-i;l=g;return}function kn(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;p=(e|0)>2;n=0;o=0;j=c[f+4>>2]|0;b=c[f>>2]|0;while(1){if((o|0)>=(d|0)){b=0;break}i=c[(c[g+(o<<2)>>2]|0)+16>>2]|0;l=a[i+119>>0]|0;a:do if(!(l<<24>>24)){k=b+8|0;h[b>>3]=+k2();i=j+8|0;h[j>>3]=+k2();if(p){b=2;while(1){if((b|0)==(e|0)){j=n;b=k;break a}q=+k2();h[(c[f+(b<<2)>>2]|0)+(o<<3)>>3]=q;b=b+1|0}}else{j=n;b=k}}else{k=c[i+132>>2]|0;m=b+8|0;h[b>>3]=+h[k>>3];i=j+8|0;h[j>>3]=+h[k+8>>3];b:do if(p){j=2;b=k+16|0;while(1){if((j|0)==(e|0))break b;h[(c[f+(j<<2)>>2]|0)+(o<<3)>>3]=+h[b>>3];j=j+1|0;b=b+8|0}}while(0);j=(l&255)>1?1:n;b=m}while(0);n=j;o=o+1|0;j=i}while(1){if((b|0)>=(e|0))break;Is(d,c[f+(b<<2)>>2]|0);b=b+1|0}return n|0}function ln(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0;d=uH(((O(b+1|0,b)|0)/2|0)<<2)|0;n=wn(b,b,0.0)|0;o=wn(b,b,0.0)|0;a:do if(!(c[a+8>>2]|0)){e=0;while(1){if((e|0)>=(b|0))break a;i=c[a+(e*20|0)>>2]|0;j=a+(e*20|0)+4|0;k=n+(e<<2)|0;f=1;while(1){if((f|0)>=(i|0))break;m=c[(c[j>>2]|0)+(f<<2)>>2]|0;h[(c[n+(m<<2)>>2]|0)+(e<<3)>>3]=-1.0;h[(c[k>>2]|0)+(m<<3)>>3]=-1.0;f=f+1|0}e=e+1|0}}else{e=0;while(1){if((e|0)>=(b|0))break a;i=c[a+(e*20|0)>>2]|0;j=a+(e*20|0)+4|0;k=a+(e*20|0)+8|0;m=n+(e<<2)|0;f=1;while(1){if((f|0)>=(i|0))break;p=c[(c[j>>2]|0)+(f<<2)>>2]|0;l=-1.0/+g[(c[k>>2]|0)+(f<<2)>>2];h[(c[n+(p<<2)>>2]|0)+(e<<3)>>3]=l;h[(c[m>>2]|0)+(p<<3)>>3]=l;f=f+1|0}e=e+1|0}}while(0);b:do if(!(Bq(b,n,o)|0)){D_(d);d=0}else{f=0;j=0;m=b;while(1){if((j|0)>=(b|0))break b;k=o+(j<<2)|0;e=j;i=f;while(1){if((e|0)==(b|0))break;if((j|0)==(e|0))l=0.0;else{p=c[k>>2]|0;l=+h[(c[o+(e<<2)>>2]|0)+(e<<3)>>3]+ +h[p+(j<<3)>>3]+ +h[p+(e<<3)>>3]*-2.0}g[d+(i<<2)>>2]=l;e=e+1|0;i=i+1|0}f=f+m|0;j=j+1|0;m=m+-1|0}}while(0);xn(n);xn(o);return d|0}function mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;if(c[a+8>>2]|0){d=nn(a,b)|0;f=0.0;e=0;p=0;while(1){if((p|0)>=(b|0))break;e=e+p|0;o=c[a+(p*20|0)>>2]|0;k=a+(p*20|0)+4|0;m=(O(p,b)|0)-e|0;n=a+(p*20|0)+8|0;j=1;while(1){if((j|0)>=(o|0))break;i=c[(c[k>>2]|0)+(j<<2)>>2]|0;if((i|0)>=(p|0)){i=d+(m+i<<2)|0;s=+g[(c[n>>2]|0)+(j<<2)>>2];f=f+ +B(+(+g[i>>2]-s));g[i>>2]=s}j=j+1|0}p=p+1|0}if(0){b=c[15686]|0;h[q>>3]=f;g1(b,89903,q)|0}}else d=0;l=r;return d|0}function nn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;h=m;i=uH(((O(b+1|0,b)|0)/2|0)<<2)|0;j=uH(b<<2)|0;zq(h,b);d=0;f=0;k=b;while(1){if((d|0)>=(b|0))break;ir(d,a,b,j);e=d;g=f;while(1){if((e|0)==(b|0))break;c[i+(g<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0;g=g+1|0}d=d+1|0;f=f+k|0;k=k+-1|0}D_(j);Aq(h);l=m;return i|0}function on(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;j=uH(((O(b+1|0,b)|0)/2|0)<<2)|0;k=uH(b<<2)|0;zq(i,b);d=0;f=0;m=b;while(1){if((d|0)>=(b|0))break;vq(d,a,b,k,i);e=d;h=f;while(1){if((e|0)==(b|0))break;g[j+(h<<2)>>2]=+(c[k+(e<<2)>>2]|0);e=e+1|0;h=h+1|0}d=d+1|0;f=f+m|0;m=m+-1|0}D_(k);Aq(i);l=n;return j|0}function pn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=a+8|0;d=c[r>>2]|0;e=0;f=0;while(1){if((f|0)>=(b|0))break;e=(c[a+(f*20|0)>>2]|0)+e|0;f=f+1|0}f=uH(e<<2)|0;q=uH(b<<2)|0;e=0;while(1){if((e|0)>=(b|0))break;c[q+(e<<2)>>2]=0;e=e+1|0}if(!(c[r>>2]|0)){h=0;while(1){if((h|0)>=(b|0))break;c[a+(h*20|0)+8>>2]=f;_r(a,h,q);i=a+(h*20|0)|0;j=c[i>>2]|0;k=a+(h*20|0)+4|0;l=+(j+-1|0);e=1;while(1){if((e|0)>=(j|0))break;p=c[(c[k>>2]|0)+(e<<2)>>2]|0;s=+((c[a+(p*20|0)>>2]|0)+-1|0)+l;g[f+(e<<2)>>2]=s-+((Zr(a,h,p,q)|0)<<1|0);e=e+1|0}$r(a,h,q);f=f+(c[i>>2]<<2)|0;h=h+1|0}f=on(a,b)|0}else{j=0;while(1){if((j|0)>=(b|0))break;_r(a,j,q);k=a+(j*20|0)|0;m=c[k>>2]|0;n=a+(j*20|0)+4|0;o=m+-2|0;p=a+(j*20|0)+8|0;i=1;while(1){if((i|0)>=(m|0))break;e=c[(c[n>>2]|0)+(i<<2)>>2]|0;h=o+(c[a+(e*20|0)>>2]|0)|0;s=+(h-((Zr(a,j,e,q)|0)<<1)|0);l=+g[(c[p>>2]|0)+(i<<2)>>2];if(l>2]=l;i=i+1|0}$r(a,j,q);c[p>>2]=f;f=f+(c[k>>2]<<2)|0;j=j+1|0}f=nn(a,b)|0}D_(q);D_(c[r>>2]|0);c[r>>2]=0;a:do if(d|0){e=0;while(1){if((e|0)>=(b|0))break a;c[a+(e*20|0)+8>>2]=d;d=d+(c[a+(e*20|0)>>2]<<2)|0;e=e+1|0}}while(0);return f|0}function qn(a,b,e,f,i,j,k,m,n){a=a|0;b=b|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0.0,w=0,x=0.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.0,P=0.0;M=l;l=l+80|0;L=M+56|0;K=M+48|0;A=M+40|0;u=M+32|0;t=M+24|0;s=M+16|0;p=M+8|0;o=M;q=k&4;J=k&3;a:do if((n|0)<0)e=0;else{if(0)EL();k=(m|0)==2;b:do if(k){if(0)E1(91878,24,1,c[15686]|0)|0;e=pn(a,b)|0;w=14}else{switch(m|0){case 1:{e=ln(a,b)|0;if(e|0){I=e;break b}Pw(0,91903,o)|0;Pw(3,91952,p)|0;w=15;break b}case 3:break;default:{w=15;break b}}if(0)E1(92005,21,1,c[15686]|0)|0;e=mn(a,b)|0;w=14}while(0);if((w|0)==14)if(!e)w=15;else I=e;do if((w|0)==15){if(0)E1(92027,26,1,c[15686]|0)|0;if(!(c[a+8>>2]|0)){I=on(a,b)|0;break}else{I=nn(a,b)|0;break}}while(0);if(0){H=c[15686]|0;h[s>>3]=+FL();g1(H,92054,s)|0;E1(92066,25,1,H)|0;EL()}c:do if((b|0)>1&(q|0)!=0)if((rn(a,b,f,j,q,J,k&1)|0)<0){u=0;t=0;e=-1;a=0;s=0;q=0;p=0;o=0;m=0;k=0}else{k=0;while(1){if((k|0)>=(j|0)){y=0;w=35;break c}m=f+(k<<2)|0;r=1.0;e=0;while(1){if((e|0)==(b|0))break;x=+B(+(+h[(c[m>>2]|0)+(e<<3)>>3]));r=x>r?x:r;e=e+1|0}r=1.0/r;e=0;while(1){if((e|0)==(b|0)){e=0;break}H=(c[m>>2]|0)+(e<<3)|0;h[H>>3]=+h[H>>3]*r;e=e+1|0}while(1){if((e|0)==(b|0))break;x=(+k2()+-.5)*1.0e-06;H=(c[m>>2]|0)+(e<<3)|0;h[H>>3]=+h[H>>3]+x;e=e+1|0}Is(b,c[m>>2]|0);k=k+1|0}}else{y=kn(0,b,j,f,i)|0;w=35}while(0);d:do if((w|0)==35){if(0){H=c[15686]|0;h[t>>3]=+FL();g1(H,92092,t)|0}if((b|0)==1|(n|0)==0){e=0;break a}if(0){H=c[15686]|0;h[u>>3]=+FL();g1(H,92054,u)|0;E1(89925,26,1,H)|0;EL()}s=j<<2;H=uH(s)|0;t=b<<2;a=O(t,j)|0;G=uH(a)|0;e=0;while(1){if((e|0)>=(j|0))break;m=G+((O(e,b)|0)<<2)|0;c[H+(e<<2)>>2]=m;o=f+(e<<2)|0;k=0;while(1){if((k|0)>=(b|0))break;g[m+(k<<2)>>2]=+h[(c[o>>2]|0)+(k<<3)>>3];k=k+1|0}e=e+1|0}e:do if(!J){p=b+-1|0;e=0;r=0.0;o=0;while(1){if((o|0)>=(p|0))break e;q=b-o|0;m=e;k=1;while(1){e=m+1|0;if((k|0)>=(q|0))break;m=e;r=+g[I+(e<<2)>>2]+r;k=k+1|0}o=o+1|0}}else r=+(b|0)*.5*+(b+-1|0);while(0);C=(O(b+1|0,b)|0)/2|0;D=(J|0)==2;if(D)ct(C,I);dt(C,I);E=b<<3;m=uH(E)|0;H3(m|0,0,E|0)|0;F=b+-1|0;e=0;o=0;while(1){if((o|0)>=(F|0)){e=b;k=0;o=0;break}p=b-o|0;v=0.0;k=1;while(1){e=e+1|0;if((k|0)>=(p|0))break;x=+g[I+(e<<2)>>2];z=m+(k+o<<3)|0;h[z>>3]=+h[z>>3]-x;v=v+x;k=k+1|0}z=m+(o<<3)|0;h[z>>3]=+h[z>>3]-v;o=o+1|0}while(1){if((k|0)>=(b|0))break;g[I+(o<<2)>>2]=+h[m+(k<<3)>>3];z=e+o|0;e=e+-1|0;k=k+1|0;o=z}z=uH(s)|0;c[z>>2]=uH(a)|0;e=1;while(1){if((e|0)>=(j|0))break;c[z+(e<<2)>>2]=(c[z>>2]|0)+((O(e,b)|0)<<2);e=e+1|0}p=uH(t)|0;o=uH(t)|0;k=uH(C<<2)|0;if(0){w=c[15686]|0;h[A>>3]=+FL();g1(w,92054,A)|0;E1(89952,15,1,w)|0;EL()}w=(y|0)==0;y=c[15686]|0;e=0;q=0;x=1797693134862315708145274.0e284;while(1){if(!(q<<24>>24==0&(e|0)<(n|0)))break;H3(m|0,0,E|0)|0;if(D){et(C,I,k);u=0;a=0}else{u=0;a=0}while(1){if((u|0)>=(F|0)){q=b;s=0;a=0;break}t=b-u+-1|0;at(t,0.0,o);q=0;while(1){if((q|0)>=(j|0))break;A=H+(q<<2)|0;at(t,+g[(c[A>>2]|0)+(u<<2)>>2],p);Xs(t,p,-1.0,(c[A>>2]|0)+(u<<2)+4|0);ct(t,p);Ws(t,p,o,o);q=q+1|0}ft(t,o);q=0;while(1){if((q|0)>=(t|0))break;s=o+(q<<2)|0;v=+g[s>>2];if(v>=3402823466385288598117041.0e14|v<0.0)g[s>>2]=0.0;q=q+1|0}q=a+1|0;a=u+1|0;f:do if(D){v=0.0;s=0;while(1){if((s|0)>=(t|0))break f;A=k+(q<<2)|0;N=+g[A>>2]*+g[o+(s<<2)>>2];g[A>>2]=N;A=m+(a+s<<3)|0;h[A>>3]=+h[A>>3]-N;v=v+N;q=q+1|0;s=s+1|0}}else{v=0.0;s=0;while(1){if((s|0)>=(t|0))break f;N=+g[o+(s<<2)>>2];g[k+(q<<2)>>2]=N;A=m+(a+s<<3)|0;h[A>>3]=+h[A>>3]-N;v=v+N;q=q+1|0;s=s+1|0}}while(0);A=m+(u<<3)|0;h[A>>3]=+h[A>>3]-v;u=a;a=q}while(1){if((s|0)>=(b|0)){q=0;break}g[k+(a<<2)>>2]=+h[m+(s<<3)>>3];A=q+a|0;q=q+-1|0;s=s+1|0;a=A}while(1){if((q|0)>=(j|0)){v=0.0;q=0;break}Us(k,b,c[H+(q<<2)>>2]|0,c[z+(q<<2)>>2]|0);q=q+1|0}while(1){if((q|0)>=(j|0))break;v=+_s(b,c[H+(q<<2)>>2]|0,c[z+(q<<2)>>2]|0)+v;q=q+1|0}v=v*2.0+r;q=0;while(1){if((q|0)>=(j|0))break;A=H+(q<<2)|0;Us(I,b,c[A>>2]|0,p);v=v-+_s(b,c[A>>2]|0,p);q=q+1|0}P=x-v;N=+h[22909];q=(v=0.0?P:-P)/x=(j|0))break;t=H+(a<<2)|0;s=c[t>>2]|0;g:do if(w){if((Fq(I,s,c[z+(a<<2)>>2]|0,b,.001,b)|0)<0){u=z;t=I;e=-1;a=G;s=H;q=z;break d}}else{Zs(b,s,p);if((Fq(I,p,c[z+(a<<2)>>2]|0,b,.001,b)|0)<0){u=z;t=I;e=-1;a=G;s=H;q=z;break d}else s=0;while(1){if((s|0)>=(b|0))break g;if((d[(c[(c[i+(s<<2)>>2]|0)+16>>2]|0)+119>>0]|0)<=1)c[(c[t>>2]|0)+(s<<2)>>2]=c[p+(s<<2)>>2];s=s+1|0}}while(0);a=a+1|0}if(((e|0)%5|0|0)==0&0!=0?(h[K>>3]=v,g1(y,90277,K)|0,((e+5|0)%50|0|0)==0):0)n3(10,y)|0;e=e+1|0;x=v}if(!0)q=0;else{N=+sn(H,I,j,b,J);P=+FL();h[L>>3]=N;c[L+8>>2]=e;h[L+16>>3]=P;g1(y,89968,L)|0;q=0}while(1){if((q|0)>=(j|0)){u=z;t=I;a=G;s=H;q=z;break d}a=H+(q<<2)|0;t=f+(q<<2)|0;s=0;while(1){if((s|0)>=(b|0))break;h[(c[t>>2]|0)+(s<<3)>>3]=+g[(c[a>>2]|0)+(s<<2)>>2];s=s+1|0}q=q+1|0}}while(0);D_(a);D_(s);D_(t);if(u|0){D_(c[u>>2]|0);D_(q)}D_(p);D_(o);D_(m);D_(k)}while(0);l=M;return e|0}function rn(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0.0,q=0,r=0,s=0.0,t=0,u=0.0,v=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,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0;R=l;l=l+32|0;o=R+24|0;Q=R+8|0;H=R+4|0;N=R;M=(d|0)<50?d:50;P=vH(M<<2)|0;G=d<<3;n=vH(O(G,M)|0)|0;m=0;while(1){if((m|0)>=(M|0))break;c[P+(m<<2)>>2]=n+((O(m,d)|0)<<3);m=m+1|0}E=M<<1;E=(E|0)>50?E:50;E=(E|0)>(d|0)?d:E;c[o>>2]=0;sr(b,d,E,o,k);tr(c[o>>2]|0,d,E);mt(c[o>>2]|0,E,d,P,M);D_(c[c[o>>2]>>2]|0);D_(c[o>>2]|0);E=d<<2;L=vH(E)|0;m=0;while(1){if((m|0)>=(d|0))break;c[L+(m<<2)>>2]=-1;m=m+1|0}zq(Q,d);J=c[b+8>>2]|0;I=(k|0)!=0;if(I)es(b,d);C=vH(E)|0;K=vH(160)|0;n=vH(d*160|0)|0;D=vH(160)|0;m=0;while(1){if((m|0)==40)break;c[D+(m<<2)>>2]=n+((O(m,d)|0)<<2);m=m+1|0}m=(g2()|0)%(d|0)|0;c[L+(m<<2)>>2]=0;c[K>>2]=m;n=c[D>>2]|0;if(I){cr(m,b,d,n);n=0;o=0}else{vq(m,b,d,n,Q);n=0;o=0}while(1){if((o|0)>=(d|0)){r=1;break}F=c[(c[D>>2]|0)+(o<<2)>>2]|0;c[C+(o<<2)>>2]=F;A=(F|0)>(n|0);m=A?o:m;n=A?F:n;o=o+1|0}while(1){if((r|0)==40){m=0;break}c[L+(m<<2)>>2]=r;c[K+(r<<2)>>2]=m;t=D+(r<<2)|0;n=c[t>>2]|0;if(I){cr(m,b,d,n);q=0;n=0}else{vq(m,b,d,n,Q);q=0;n=0}while(1){if((q|0)>=(d|0))break;o=C+(q<<2)|0;F=c[o>>2]|0;k=c[(c[t>>2]|0)+(q<<2)>>2]|0;k=(F|0)<(k|0)?F:k;c[o>>2]=k;if((k|0)<=(n|0)){if((k|0)==(n|0)?((g2()|0)%(q+1|0)|0|0)==0:0){n=c[o>>2]|0;m=q}}else{n=k;m=q}q=q+1|0}r=r+1|0}while(1){if((m|0)>=(d|0))break;c[C+(m<<2)>>2]=-1;m=m+1|0}w=vH(E)|0;F=vH(d<<4)|0;x=d+-1|0;y=x<<2;A=0;o=0;k=0;n=0;z=0;while(1){if((z|0)>=(d|0))break;m=L+(z<<2)|0;a:do if((c[m>>2]|0)>-1){t=F+(z<<4)+4|0;c[t>>2]=vH(y)|0;v=vH(y)|0;c[F+(z<<4)+8>>2]=v;c[F+(z<<4)>>2]=x;a[F+(z<<4)+12>>0]=1;r=D+(c[m>>2]<<2)|0;m=0;while(1){if((m|0)==(z|0)){q=z;break}c[(c[t>>2]|0)+(m<<2)>>2]=m;c[v+(m<<2)>>2]=c[(c[r>>2]|0)+(m<<2)>>2];m=m+1|0}while(1){m=q+1|0;if((q|0)==(x|0)){m=x;break a}c[(c[t>>2]|0)+(q<<2)>>2]=m;c[v+(q<<2)>>2]=c[(c[r>>2]|0)+(m<<2)>>2];q=m}}else{if((n|0)<40){k=vH(E)|0;o=vH(E)|0;n=d;m=1}else m=0;a[F+(z<<4)+12>>0]=m;c[F+(z<<4)+4>>2]=k;c[F+(z<<4)+8>>2]=o;c[F+(z<<4)>>2]=40;m=0;while(1){if((m|0)==40)break;c[k+(m<<2)>>2]=c[K+(m<<2)>>2];c[o+(m<<2)>>2]=c[(c[D+(m<<2)>>2]|0)+(z<<2)>>2];m=m+1|0}o=o+160|0;k=k+160|0;n=n+-40|0;m=40}while(0);A=m+A|0;z=z+1|0}D_(C);D_(w);if(D|0){D_(c[D>>2]|0);D_(D)}D=vH(d*20|0)|0;q=A+d<<2;r=vH(q)|0;v=(j|0)==2;q=vH(q)|0;t=0;while(1){if((t|0)>=(d|0))break;c[D+(t*20|0)+4>>2]=r;c[D+(t*20|0)+8>>2]=q;m=(c[F+(t<<4)>>2]|0)+1|0;w=D+(t*20|0)|0;c[w>>2]=m;o=(c[F+(t<<4)+8>>2]|0)+-4|0;k=F+(t<<4)+4|0;b:do if(v){p=0.0;n=1;while(1){if((n|0)>=(m|0))break b;c[r+(n<<2)>>2]=c[(c[k>>2]|0)+(n+-1<<2)>>2];u=+(c[o+(n<<2)>>2]|0);u=-1.0/(u*u);g[q+(n<<2)>>2]=u;p=p-u;n=n+1|0;m=c[w>>2]|0}}else{p=0.0;n=1;while(1){if((n|0)>=(m|0))break b;c[r+(n<<2)>>2]=c[(c[k>>2]|0)+(n+-1<<2)>>2];u=-1.0/+(c[o+(n<<2)>>2]|0);g[q+(n<<2)>>2]=u;p=p-u;n=n+1|0;m=c[w>>2]|0}}while(0);c[r>>2]=t;g[q>>2]=p;E=c[w>>2]|0;q=q+(E<<2)|0;r=r+(E<<2)|0;t=t+1|0}C=vH(f<<2)|0;c[C>>2]=vH(O(f<<3,M)|0)|0;m=1;while(1){if((m|0)>=(f|0))break;c[C+(m<<2)>>2]=(c[C>>2]|0)+((O(m,M)|0)<<3);m=m+1|0}c:do if(i){m=0;while(1){if((m|0)>=(f|0))break;o=C+(m<<2)|0;n=0;while(1){if((n|0)>=(M|0))break;h[(c[o>>2]|0)+(n<<3)>>3]=0.0;n=n+1|0}m=m+1|0}if((f|0)!=2){m=0;while(1){if((m|0)>=(f|0)){m=0;break c}h[(c[C+(m<<2)>>2]|0)+(m<<3)>>3]=1.0;m=m+1|0}}h[c[C>>2]>>3]=1.0;m=C+4|0;if(!((nt(P,M,d,c[m>>2]|0)|0)<<24>>24)){n=c[m>>2]|0;m=0;while(1){if((m|0)>=(M|0))break;h[n+(m<<3)>>3]=0.0;m=m+1|0}h[n+8>>3]=1.0;m=0}else m=0}else{n=0;while(1){if((n|0)>=(f|0)){m=0;break c}o=C+(n<<2)|0;m=0;while(1){if((m|0)>=(M|0))break;u=+(g2()|0)*4.656612875245797e-10;h[(c[o>>2]|0)+(m<<3)>>3]=u;m=m+1|0}n=n+1|0}}while(0);while(1){if((m|0)>=(f|0))break;Ss(P,d,M,c[C+(m<<2)>>2]|0,c[e+(m<<2)>>2]|0);m=m+1|0}c[H>>2]=0;c[N>>2]=0;Hs(D,P,d,M,H);Fs(P,c[H>>2]|0,M,d,M,N);D_(c[c[H>>2]>>2]|0);D_(c[H>>2]|0);z=vH(G)|0;A=vH(M<<3)|0;m=0;n=0;p=+tn(e,F,f,d,j);d:while(1){if((n|0)<50&m<<24>>24==0)x=0;else break;while(1){if((x|0)>=(f|0))break;y=e+(x<<2)|0;o=0;while(1){if((o|0)>=(d|0))break;q=z+(o<<3)|0;h[q>>3]=0.0;r=(c[F+(o<<4)+8>>2]|0)+-4|0;t=c[D+(o*20|0)+4>>2]|0;v=c[D+(o*20|0)+8>>2]|0;w=D+(o*20|0)|0;s=0.0;k=1;while(1){if((k|0)>=(c[w>>2]|0))break;m=c[t+(k<<2)>>2]|0;u=+gs(e,f,o,m);if(u>1.0e-30){u=-(+g[v+(k<<2)>>2]*+(c[r+(k<<2)>>2]|0))/u;h[q>>3]=u*+h[(c[y>>2]|0)+(m<<3)>>3]+ +h[q>>3];s=s-u}k=k+1|0}h[q>>3]=+h[q>>3]+ +h[(c[y>>2]|0)+(o<<3)>>3]*s;o=o+1|0}Es(P,M,d,z,A);m=C+(x<<2)|0;if(Eq(c[N>>2]|0,c[m>>2]|0,A,M,.001,M,0)|0){n=-1;break d}Ss(P,d,M,c[m>>2]|0,c[y>>2]|0);x=x+1|0}if(!(n&1)){u=+tn(e,F,f,d,j);p=+B(+(u-p))/(u+1.0e-10);m=p<+h[22909]&1;p=u}else m=0;n=n+1|0}D_(A);D_(z);if(I){fs(b,d,J);m=0}else m=0;while(1){if((m|0)>=(d|0))break;if(a[F+(m<<4)+12>>0]|0){D_(c[F+(m<<4)+4>>2]|0);D_(c[F+(m<<4)+8>>2]|0)}m=m+1|0}D_(F);D_(c[D+4>>2]|0);D_(c[D+8>>2]|0);D_(D);D_(L);D_(K);D_(c[C>>2]|0);D_(C);m=c[N>>2]|0;if(m|0){D_(c[m>>2]|0);D_(c[N>>2]|0)}D_(c[P>>2]|0);D_(P);Aq(Q);l=R;return n|0}function sn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0;q=e+-1|0;o=(f|0)==2;h=0.0;f=0;m=0;while(1){if((m|0)>=(q|0))break;p=e-m|0;n=1;while(1){f=f+1|0;if((n|0)>=(p|0))break;k=n+m|0;i=0.0;j=0;while(1){if((j|0)>=(d|0))break;r=c[a+(j<<2)>>2]|0;l=+g[r+(m<<2)>>2]-+g[r+(k<<2)>>2];i=i+l*l;j=j+1|0}i=+C(+i);l=+g[b+(f<<2)>>2];if(o){i=1.0/+C(+l)-i;i=i*i}else{i=1.0/l-i;i=i*i}n=n+1|0;h=i*l+h}m=m+1|0}return +h}function tn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;a:do if((f|0)==2){g=0.0;l=0;while(1){if((l|0)>=(e|0))break a;n=c[b+(l<<4)>>2]|0;o=b+(l<<4)+4|0;m=b+(l<<4)+8|0;k=0;while(1){if((k|0)>=(n|0))break;j=c[(c[o>>2]|0)+(k<<2)>>2]|0;if((j|0)>(l|0)){i=0.0;f=0;while(1){if((f|0)>=(d|0))break;q=c[a+(f<<2)>>2]|0;p=+h[q+(l<<3)>>3]-+h[q+(j<<3)>>3];i=p*p+i;f=f+1|0}i=+C(+i);p=+(c[(c[m>>2]|0)+(k<<2)>>2]|0);i=p-i;g=i*i/(p*p)+g}k=k+1|0}l=l+1|0}}else{l=0;g=0.0;while(1){if((l|0)>=(e|0))break a;m=c[b+(l<<4)>>2]|0;n=b+(l<<4)+4|0;o=b+(l<<4)+8|0;k=0;while(1){if((k|0)>=(m|0))break;j=c[(c[n>>2]|0)+(k<<2)>>2]|0;if((j|0)>(l|0)){i=0.0;f=0;while(1){if((f|0)>=(d|0))break;q=c[a+(f<<2)>>2]|0;p=+h[q+(l<<3)>>3]-+h[q+(j<<3)>>3];i=p*p+i;f=f+1|0}i=+C(+i);p=+(c[(c[o>>2]|0)+(k<<2)>>2]|0);i=p-i;g=i*i/p+g}k=k+1|0}l=l+1|0}}while(0);return +g}function un(a){a=+a;return +(+C(+a)*a)}function vn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0;g=c[46366]|0;e=0.0;f=0;while(1){if((f|0)>=(g|0))break;i=+h[a+(f<<3)>>3]-+h[b+(f<<3)>>3];h[d+(f<<3)>>3]=i;e=i*i+e;f=f+1|0}return +(+C(+e))}function wn(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;i=uH(a<<2)|0;f=0;g=uH(O(a<<3,b)|0)|0;while(1){if((f|0)>=(a|0))break;c[i+(f<<2)>>2]=g;e=0;while(1){if((e|0)>=(b|0))break;h[g+(e<<3)>>3]=d;e=e+1|0}f=f+1|0;g=g+(b<<3)|0}return i|0}function xn(a){a=a|0;if(a|0){D_(c[a>>2]|0);D_(a)}return}function yn(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+16|0;n=ay(b)|0;m=by(b)|0;k=nx(b,2,90566,0)|0;a:do if(!d){h[22909]=+(n|0)*.0001;aH(b,105860,183272);g=xx(c[b+60>>2]|0,90006)|0;if(!g)e=.99;else e=+b2(g);h[22911]=e;g=uH((n<<2)+4|0)|0;j=b+16|0;c[(c[j>>2]|0)+152>>2]=g;g=0;e=0.0;i=Sy(b)|0;while(1){if(!i)break a;c[(c[(c[j>>2]|0)+152>>2]|0)+(g<<2)>>2]=i;p=c[i+16>>2]|0;c[p+120>>2]=g;c[p+124>>2]=-1;f=+Bn(b,i,k)+e;g=g+1|0;e=f;i=Ty(b,i)|0}}else{h[22909]=.0001;aH(b,105860,183272);g=0;e=0.0;i=Sy(b)|0;while(1){if(!i)break a;c[(c[i+16>>2]|0)+120>>2]=g;f=+Bn(b,i,k)+e;g=g+1|0;e=f;i=Ty(b,i)|0}}while(0);g=xx(b,90014)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){e=+h[22909];f=+b2(g);if(!(e>f))e=f}else e=e/+(((m|0)>1?m:1)|0)*+C(+(+(n|0)))+1.0;h[22910]=e;if(!(c[46363]|d)){d=wn(n,n,e)|0;p=b+16|0;c[(c[p>>2]|0)+160>>2]=d;d=wn(n,n,1.0)|0;c[(c[p>>2]|0)+164>>2]=d;d=wn(n,c[46366]|0,1.0)|0;c[(c[p>>2]|0)+168>>2]=d;d=Cn(n,n,c[46366]|0)|0;c[(c[p>>2]|0)+172>>2]=d}l=o;return n|0}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=0;e=0;j=Jx(a,b)|0;a:while(1){if(!j)break;h=c[j>>2]&3;g=c[((h|0)==2?j:j+-48|0)+40>>2]|0;h=c[((h|0)==3?j:j+48|0)+40>>2]|0;do if((g|0)!=(h|0)){i=(h|0)==(b|0);if((e|0)!=1){f=i?g:h;c[d>>2]=f;e=e+1|0;break}if(!((g|0)==(f|0)&i)?!((g|0)==(b|0)&(h|0)==(f|0)):0){e=2;break a}else e=1}while(0);j=Kx(a,j,b)|0}return e|0}function An(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=a+60|0;a:while(1){b:while(1){if(!b)break a;switch(zn(a,b,f)|0){case 0:{e=5;break b}case 1:{e=8;break b}default:b=0}}if((e|0)==5){if((d|0)==(b|0))d=Ty(a,d)|0;dz(c[g>>2]|0,b)|0;b=0;continue}else if((e|0)==8){if((d|0)==(b|0))d=Ty(a,d)|0;dz(c[g>>2]|0,b)|0;b=c[f>>2]|0;continue}}l=h;return d|0}function Bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;k=l;l=l+32|0;i=k+8|0;g=k;b=Ex(a,b)|0;e=0.0;while(1){if(!b)break;switch(Dn(b,d,g)|0){case 0:{f=+h[g>>3];break}case 2:{c[i>>2]=ry(a)|0;h[i+8>>3]=1.0;Pw(3,90026,i)|0;j=6;break}default:j=6}if((j|0)==6){j=0;h[g>>3]=1.0;f=1.0}h[(c[b+16>>2]|0)+136>>3]=f;b=Gx(a,b)|0;e=f+e}l=k;return +e}function Cn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0;j=uH((a<<2)+4|0)|0;k=(b<<2)+4|0;l=d<<3;g=0;while(1){if((g|0)>=(a|0))break;i=j+(g<<2)|0;c[i>>2]=uH(k)|0;f=0;while(1){if((f|0)>=(b|0))break;e=uH(l)|0;c[(c[i>>2]|0)+(f<<2)>>2]=e;e=0;while(1){if((e|0)>=(d|0))break;h[(c[(c[i>>2]|0)+(f<<2)>>2]|0)+(e<<3)>>3]=0.0;e=e+1|0}f=f+1|0}c[(c[i>>2]|0)+(f<<2)>>2]=0;g=g+1|0}c[j+(g<<2)>>2]=0;return j|0}function Dn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;do if((d|0)!=0?(f=yx(b,d)|0,(a[f>>0]|0)!=0):0){c[i>>2]=e;if(((N1(f,98183,i)|0)>=1?(g=+h[e>>3],!(g<0.0)):0)?g!=0.0|(c[46363]|0)!=0:0){b=0;break}c[j>>2]=f;Pw(0,90053,j)|0;b=2}else b=1;while(0);l=k;return b|0}function En(a){a=a|0;return yn(a,0)|0}function Fn(a){a=a|0;a=a+16|0;D_(c[(c[a>>2]|0)+152>>2]|0);if(!(c[46363]|0)){xn(c[(c[a>>2]|0)+160>>2]|0);xn(c[(c[a>>2]|0)+164>>2]|0);xn(c[(c[a>>2]|0)+168>>2]|0);Gn(c[(c[a>>2]|0)+172>>2]|0);c[(c[a>>2]|0)+172>>2]=0}return}function Gn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0){f=0;while(1){g=a+(f<<2)|0;b=c[g>>2]|0;if(!b)break;else e=0;while(1){d=c[b+(e<<2)>>2]|0;if(!d)break;D_(d);e=e+1|0;b=c[g>>2]|0}D_(b);f=f+1|0}D_(a)}return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+(b|0);b=a+16|0;while(1){if((d|0)>=(c[46366]|0))break;f=+k2()*e;h[(c[(c[b>>2]|0)+132>>2]|0)+(d<<3)>>3]=f;d=d+1|0}return}function In(a,b){a=a|0;b=b|0;Hn(a,b,2);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0;e=+(b|0);f=+k2()*e;d=a+16|0;h[c[(c[d>>2]|0)+132>>2]>>3]=f;e=+k2()*e;h[(c[(c[d>>2]|0)+132>>2]|0)+8>>3]=e;if((c[46366]|0)>2)In(a,b);return}function Kn(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(0)E1(90071,26,1,c[15686]|0)|0;d=pm(b,d,2)|0;a:do if((d|0)!=1){if(!(c[46027]|d)){Pw(0,90098,e)|0;c[46027]=1}e=b+16|0;d=0;while(1){b=c[(c[(c[e>>2]|0)+152>>2]|0)+(d<<2)>>2]|0;if(!b)break a;if(!(a[(c[b+16>>2]|0)+119>>0]|0))Jn(b,1);d=d+1|0}}while(0);l=f;return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+96|0;p=q+80|0;n=q;if(0){E1(90147,25,1,c[15686]|0)|0;EL()}o=a+16|0;f=c[o>>2]|0;k=c[f+164>>2]|0;f=c[f+160>>2]|0;m=0;while(1){if((m|0)>=(b|0))break;i=f+(m<<2)|0;j=k+(m<<2)|0;e=0;while(1){if((e|0)==(m|0))break;g=+h[(c[i>>2]|0)+(e<<3)>>3];g=1.0/(g*g);d=c[(c[o>>2]|0)+152>>2]|0;d=Rx(a,c[d+(m<<2)>>2]|0,c[d+(e<<2)>>2]|0,0,0)|0;if(d)g=+h[(c[d+16>>2]|0)+128>>3]*g;h[(c[k+(e<<2)>>2]|0)+(m<<3)>>3]=g;h[(c[j>>2]|0)+(e<<3)>>3]=g;e=e+1|0}m=m+1|0}a=c[46366]|0;e=0;while(1){if((e|0)<(b|0))d=0;else break;while(1){if((d|0)>=(a|0))break;h[(c[(c[(c[o>>2]|0)+168>>2]|0)+(e<<2)>>2]|0)+(d<<3)>>3]=0.0;d=d+1|0}e=e+1|0}i=0;while(1){d=c[(c[(c[o>>2]|0)+152>>2]|0)+(i<<2)>>2]|0;if(!d)break;a=d+16|0;d=0;while(1){if((d|0)>=(b|0))break;a:do if((i|0)!=(d|0)){g=+vn(c[(c[a>>2]|0)+132>>2]|0,c[(c[(c[(c[(c[o>>2]|0)+152>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+132>>2]|0,n);f=c[46366]|0;g=1.0/g;e=0;while(1){if((e|0)>=(f|0))break a;m=c[o>>2]|0;r=+h[n+(e<<3)>>3];r=(r-+h[(c[(c[m+160>>2]|0)+(i<<2)>>2]|0)+(d<<3)>>3]*r*g)*+h[(c[(c[m+164>>2]|0)+(i<<2)>>2]|0)+(d<<3)>>3];h[(c[(c[(c[m+172>>2]|0)+(i<<2)>>2]|0)+(d<<2)>>2]|0)+(e<<3)>>3]=r;m=(c[(c[m+168>>2]|0)+(i<<2)>>2]|0)+(e<<3)|0;h[m>>3]=+h[m>>3]+r;e=e+1|0}}while(0);d=d+1|0}i=i+1|0}if(0){o=c[15686]|0;h[p>>3]=+FL();g1(o,90173,p)|0}l=q;return}function Mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0;i=l;l=l+32|0;g=i+24|0;f=i+8|0;e=i;j=+h[22909];h[22831]=j*j;while(1){d=Nn(a,b)|0;if(!d)break;On(a,b,d)}if(!0)b=a+16|0;else{d=c[15686]|0;h[e>>3]=+Pn(a,b);g1(d,90183,e)|0;b=a+16|0;k=c[(c[b>>2]|0)+156>>2]|0;e=(k|0)==(c[46365]|0)?90197:191979;j=+FL();c[f>>2]=k;c[f+4>>2]=e;h[f+8>>3]=j;g1(d,90199,f)|0}b=c[(c[b>>2]|0)+156>>2]|0;if((b|0)==(c[46365]|0)){k=ry(a)|0;c[g>>2]=b;c[g+4>>2]=k;Pw(0,90226,g)|0}l=i;return}function Nn(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;o=(c[46029]|0)+1|0;c[46029]=o;a=c[a+16>>2]|0;if((c[a+156>>2]|0)<(c[46365]|0)){m=c[46366]|0;n=a+152|0;k=a+168|0;a=0;e=0.0;j=0;while(1){if((j|0)>=(b|0))break;g=c[(c[n>>2]|0)+(j<<2)>>2]|0;if((d[(c[g+16>>2]|0)+119>>0]|0)<=1){i=0.0;f=0;while(1){if((f|0)>=(m|0))break;s=+h[(c[(c[k>>2]|0)+(j<<2)>>2]|0)+(f<<3)>>3];i=s*s+i;f=f+1|0}if(i>e){a=g;e=i}}j=j+1|0}if(!(e<+h[22831])){if(0!=0&((o|0)%100|0|0)==0?(p=c[15686]|0,h[q>>3]=+C(+e),g1(p,90277,q)|0,((c[46029]|0)%1e3|0|0)==0):0)n3(10,p)|0}else a=0}else a=0;l=r;return a|0}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;k=d+16|0;m=c[(c[k>>2]|0)+120>>2]|0;f=c[46028]|0;if(!f){g=c[46366]|0;g=vH(O(g<<3,g)|0)|0}else{g=c[46366]|0;g=xH(f,O(g<<3,g)|0)|0}c[46028]=g;Qn(a,b,m,g);i=c[46366]|0;j=a+16|0;f=0;while(1){if((f|0)>=(i|0))break;h[182656+(f<<3)>>3]=-+h[(c[(c[(c[j>>2]|0)+168>>2]|0)+(m<<2)>>2]|0)+(f<<3)>>3];f=f+1|0}Xt(g,182736,182656,i);f=0;while(1){if((f|0)>=(c[46366]|0))break;e=+h[22911];e=(1.0-e)*2.0*+k2()+e;i=182736+(f<<3)|0;e=e*+h[i>>3];h[i>>3]=e;i=(c[(c[k>>2]|0)+132>>2]|0)+(f<<3)|0;h[i>>3]=+h[i>>3]+e;f=f+1|0}k=(c[j>>2]|0)+156|0;c[k>>2]=(c[k>>2]|0)+1;Rn(a,b,m);if(cM()|0){g=c[46366]|0;e=0.0;f=0;while(1){if((f|0)>=(g|0))break;e=+B(+(+h[182736+(f<<3)>>3]))+e;f=f+1|0}e=+C(+e);m=c[15686]|0;c[n>>2]=ry(d)|0;h[n+8>>3]=e;g1(m,90268,n)|0}l=o;return}function Pn(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=b+-1|0;n=a+16|0;o=c[46366]|0;g=0;d=0.0;a:while(1){if((g|0)>=(q|0))break;m=c[n>>2]|0;p=c[m+152>>2]|0;j=g+1|0;k=(c[p+(g<<2)>>2]|0)+16|0;l=m+164|0;m=m+160|0;i=j;while(1){if((i|0)>=(b|0)){g=j;continue a}f=(c[p+(i<<2)>>2]|0)+16|0;a=0;e=0.0;while(1){if((a|0)>=(o|0))break;r=+h[(c[(c[k>>2]|0)+132>>2]|0)+(a<<3)>>3]-+h[(c[(c[f>>2]|0)+132>>2]|0)+(a<<3)>>3];a=a+1|0;e=r*r+e}r=+h[(c[(c[m>>2]|0)+(g<<2)>>2]|0)+(i<<3)>>3];r=((+C(+e)*-2.0+r)*r+e)*+h[(c[(c[l>>2]|0)+(g<<2)>>2]|0)+(i<<3)>>3]+d;i=i+1|0;d=r}}return +d}function Qn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+80|0;w=x;v=c[a+16>>2]|0;k=c[v+164>>2]|0;m=c[v+160>>2]|0;v=c[v+152>>2]|0;j=c[v+(d<<2)>>2]|0;g=c[46366]|0;a=0;while(1){if((a|0)>=(g|0))break;i=O(g,a)|0;f=0;while(1){if((f|0)==(g|0))break;h[e+(i+f<<3)>>3]=0.0;f=f+1|0}a=a+1|0}u=c[46366]|0;t=j+16|0;s=k+(d<<2)|0;k=m+(d<<2)|0;j=0;while(1){if((j|0)>=(b|0))break;a:do if((j|0)!=(d|0)){f=(c[v+(j<<2)>>2]|0)+16|0;r=0.0;a=0;while(1){if((a|0)>=(u|0))break;q=+h[(c[(c[t>>2]|0)+132>>2]|0)+(a<<3)>>3]-+h[(c[(c[f>>2]|0)+132>>2]|0)+(a<<3)>>3];h[w+(a<<3)>>3]=q;r=q*q+r;a=a+1|0}n=1.0/+un(r);i=0;while(1){if((i|0)>=(u|0))break a;f=(c[s>>2]|0)+(j<<3)|0;g=(c[k>>2]|0)+(j<<3)|0;o=+h[w+(i<<3)>>3];a=0;while(1){p=+h[f>>3];q=+h[g>>3];if((a|0)==(i|0))break;m=e+((O(u,a)|0)+i<<3)|0;h[m>>3]=+h[m>>3]+p*n*q*o*+h[w+(a<<3)>>3];a=a+1|0}m=e+((O(u,i)|0)+i<<3)|0;h[m>>3]=(1.0-q*n*(r-o*o))*p+ +h[m>>3];i=i+1|0}}while(0);j=j+1|0}f=c[46366]|0;i=1;while(1){if((i|0)>=(f|0))break;g=O(f,i)|0;a=0;while(1){if((a|0)==(i|0))break;h[e+(g+a<<3)>>3]=+h[e+((O(f,a)|0)+i<<3)>>3];a=a+1|0}i=i+1|0}l=x;return}function Rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;m=l;l=l+80|0;k=m;j=a+16|0;f=c[j>>2]|0;g=c[(c[f+152>>2]|0)+(d<<2)>>2]|0;e=c[46366]|0;f=f+168|0;a=0;while(1){if((a|0)>=(e|0))break;h[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3]=0.0;a=a+1|0}f=g+16|0;a=0;while(1){if((a|0)>=(b|0))break;a:do if((a|0)!=(d|0)){i=+vn(c[(c[f>>2]|0)+132>>2]|0,c[(c[(c[(c[(c[j>>2]|0)+152>>2]|0)+(a<<2)>>2]|0)+16>>2]|0)+132>>2]|0,k);g=c[46366]|0;i=1.0/i;e=0;while(1){if((e|0)>=(g|0))break a;n=c[j>>2]|0;q=c[n+172>>2]|0;r=(c[(c[q+(d<<2)>>2]|0)+(a<<2)>>2]|0)+(e<<3)|0;o=+h[k+(e<<3)>>3];o=(o-+h[(c[(c[n+160>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3]*o*i)*+h[(c[(c[n+164>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3];h[r>>3]=o;n=c[n+168>>2]|0;s=(c[n+(d<<2)>>2]|0)+(e<<3)|0;h[s>>3]=+h[s>>3]+o;q=(c[(c[q+(a<<2)>>2]|0)+(d<<2)>>2]|0)+(e<<3)|0;o=+h[q>>3];p=-+h[r>>3];h[q>>3]=p;n=(c[n+(a<<2)>>2]|0)+(e<<3)|0;h[n>>3]=p-o+ +h[n>>3];e=e+1|0}}while(0);a=a+1|0}l=m;return}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;d=a+16|0;g=c[46030]|0;b=c[(c[d>>2]|0)+124>>2]|0;while(1){if((b|0)<=0)break;i=(b+-1|0)/2|0;j=g+(i<<2)|0;e=c[j>>2]|0;f=e+16|0;if(+h[(c[f>>2]|0)+136>>3]<=+h[(c[d>>2]|0)+136>>3])break;c[j>>2]=a;c[(c[d>>2]|0)+124>>2]=i;c[g+(b<<2)>>2]=e;c[(c[f>>2]|0)+124>>2]=b;b=i}return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;i=a+16|0;j=c[46031]|0;k=c[46030]|0;g=c[(c[i>>2]|0)+124>>2]|0;while(1){e=g<<1|1;if((e|0)>=(j|0))break;d=e+1|0;if((d|0)<(j|0)){f=c[k+(d<<2)>>2]|0;b=c[k+(e<<2)>>2]|0;if(+h[(c[f+16>>2]|0)+136>>3]<+h[(c[b+16>>2]|0)+136>>3]){e=d;b=f}else l=6}else{b=c[k+(e<<2)>>2]|0;l=6}if((l|0)==6)l=0;d=b+16|0;if(+h[(c[i>>2]|0)+136>>3]<=+h[(c[d>>2]|0)+136>>3])break;c[k+(e<<2)>>2]=a;c[(c[i>>2]|0)+124>>2]=e;c[k+(g<<2)>>2]=b;c[(c[d>>2]|0)+124>>2]=g;g=e}return}function Un(a){a=a|0;var b=0,d=0;b=(c[a+16>>2]|0)+124|0;if((c[b>>2]|0)>=0)qa(90283,90303,643,90311);d=c[46031]|0;c[46031]=d+1;c[b>>2]=d;c[(c[46030]|0)+(d<<2)>>2]=a;if((d|0)>0)Sn(a);return}function Vn(){var a=0,b=0,d=0,e=0;b=c[46031]|0;if(!b)a=0;else{e=c[46030]|0;a=c[e>>2]|0;d=b+-1|0;c[46031]=d;d=c[e+(d<<2)>>2]|0;c[e>>2]=d;c[(c[d+16>>2]|0)+124>>2]=0;if((b|0)>2)Tn(d);c[(c[a+16>>2]|0)+124>>2]=-1}return a|0}function Wn(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;c[46030]=uH((b<<2)+4|0)|0;if(0){E1(90325,28,1,c[15686]|0)|0;EL()}b=Sy(a)|0;while(1){if(!b)break;Xn(a,b);b=Ty(a,b)|0}if(0){a=c[15686]|0;h[d>>3]=+FL();g1(a,90173,d)|0}D_(c[46030]|0);l=e;return}function Xn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0;e=c[(c[a+16>>2]|0)+152>>2]|0;f=+h[22910];d=0;while(1){g=c[e+(d<<2)>>2]|0;if(!g)break;h[(c[g+16>>2]|0)+136>>3]=f;d=d+1|0}c[46032]=b;k=c[b+16>>2]|0;h[k+136>>3]=0.0;c[k+128>>2]=0;Un(b);a:while(1){k=Vn()|0;if(!k)break;d=c[46032]|0;j=k+16|0;if((k|0)!=(d|0))Yn(a,d,k,+h[(c[j>>2]|0)+136>>3]);i=Jx(a,k)|0;while(1){if(!i)continue a;d=c[i>>2]&3;b=c[((d|0)==3?i:i+48|0)+40>>2]|0;if((b|0)==(k|0))b=c[((d|0)==2?i:i+-48|0)+40>>2]|0;d=c[j>>2]|0;f=+h[(c[i+16>>2]|0)+136>>3]+ +h[d+136>>3];e=c[b+16>>2]|0;g=e+136|0;do if(+h[g>>3]>f){h[g>>3]=f;if((c[e+124>>2]|0)>-1){Sn(b);break}else{c[e+128>>2]=(c[d+128>>2]|0)+1;Un(b);break}}while(0);i=Kx(a,i,k)|0}}return}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;b=c[(c[b+16>>2]|0)+120>>2]|0;d=c[(c[d+16>>2]|0)+120>>2]|0;a=c[(c[a+16>>2]|0)+160>>2]|0;h[(c[a+(d<<2)>>2]|0)+(b<<3)>>3]=e;h[(c[a+(b<<2)>>2]|0)+(d<<3)>>3]=e;return}function Zn(a){a=a|0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;_n(a);return}function _n(a){a=a|0;var b=0,d=0,e=0,f=0;b=ay(a)|0;e=uH(b*56|0)|0;b=uH((b<<2)+4|0)|0;f=a+16|0;c[(c[f>>2]|0)+152>>2]=b;b=Sy(a)|0;d=0;while(1){if(!b)break;$l(b);c[(c[b+16>>2]|0)+112>>2]=e+(d*56|0);c[(c[(c[f>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;b=Ty(a,b)|0;d=d+1|0}d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;$n(b);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function $n(a){a=a|0;var b=0.0;Az(a,134378,176,1)|0;eM(a)|0;b=+LL(a,c[46404]|0,1.0,0.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;m=u+32|0;i=u+24|0;g=u+16|0;j=u;t=u+72|0;p=u+40|0;if(ay(b)|0){Zn(b);f=xx(b,93136)|0;if(f)if(a[f>>0]|0){d=az(b,f,0)|0;if(!d){c[g>>2]=f;Pw(0,90354,g)|0;Pw(3,90394,i)|0;d=0;s=1}else s=0}else{d=0;s=1}else{d=0;s=0}n=nx(b,1,93136,0)|0;o=(n|0)!=0;f=xx(b,137660)|0;if((f|0?a[f>>0]|0:0)?(k=j+8|0,c[m>>2]=j,c[m+4>>2]=k,(N1(f,102477,m)|0)==1):0)h[k>>3]=+h[j>>3];if(ay(b)|0){m=oD(b,t,0)|0;if((c[t>>2]|0)==1){g=(d|0)!=0;do if(g)e=d;else{if(o?(e=bo(b,n)|0,e|0):0)break;e=0}while(0);f=Zt(b,e)|0;if(!((e|0)!=0|o^1))rx(f,n,139381)|0;r=(Sy(b)|0)+16|0;D_(c[(c[r>>2]|0)+112>>2]|0);c[(c[r>>2]|0)+112>>2]=0;tq(b)|0;hn(b);d=(s|0)==0|g?d:f}else{XD(b,2,8,p)|0;c[p+12>>2]=0;k=(s|0)==0;j=0;while(1){if((j|0)>=(c[t>>2]|0))break;g=c[m+(j<<2)>>2]|0;e=(d|0)!=0;if(e?(oz(g,d)|0)!=0:0)f=d;else r=23;do if((r|0)==23){r=0;if(o?(q=bo(g,n)|0,q|0):0){f=q;break}f=0}while(0);vD(g)|0;i=Zt(g,f)|0;d=k|e?d:i;if(o?(f|0)==0|(f|0)==(d|0):0)rx(i,n,139381)|0;tq(g)|0;j=j+1|0}r=(Sy(b)|0)+16|0;D_(c[(c[r>>2]|0)+112>>2]|0);c[(c[r>>2]|0)+112>>2]=0;WD(c[t>>2]|0,m,b,p)|0;hn(b)}e=0;while(1){if((e|0)>=(c[t>>2]|0))break;dz(b,c[m+(e<<2)>>2]|0)|0;e=e+1|0}D_(m)}if(s|0)zx(b,93136,ry(d)|0)|0;eJ(b)}l=u;return}function bo(a,b){a=a|0;b=b|0;var c=0;c=Sy(a)|0;while(1){if(!c){c=0;break}if((QL(yx(c,b)|0)|0)<<24>>24)break;c=Ty(a,c)|0}return c|0}function co(a){a=a|0;var b=0,c=0;b=Sy(a)|0;if(b|0){while(1){if(!b)break;c=Ex(a,b)|0;while(1){if(!c)break;JM(c);c=Gx(a,c)|0}HM(b);b=Ty(a,b)|0}eo(a)}return}function eo(a){a=a|0;D_(c[(c[a+16>>2]|0)+152>>2]|0);if((fz(a)|0)!=(a|0))Gz(a,0,134401);return}function fo(a){a=a|0;go(a);if(!((ay(a)|0)==0?!(c[(c[a+16>>2]|0)+180>>2]|0):0)){nu(a);eJ(a)}return}function go(a){a=a|0;c[46377]=nx(a,1,105204,105210)|0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;ho(a,0);io(a);return}function ho(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(b|0)==0;if(h){lo(g);b=g}d=wA(a)|0;while(1){if(!d)break;if(!(z$(ry(d)|0,104980,7)|0)){Az(d,134401,280,1)|0;mo(b,d);ho(d,0)}else ho(d,b);d=xA(d)|0}if(h?(e=c[g+8>>2]|0,f=a+16|0,c[(c[f>>2]|0)+180>>2]=e,e|0):0){h=xH(c[g>>2]|0,(e<<2)+4|0)|0;c[(c[f>>2]|0)+184>>2]=h}l=i;return}function io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=uH((ay(a)|0)<<2)|0;b=uH(((ay(a)|0)<<2)+4|0)|0;g=a+16|0;c[(c[g>>2]|0)+152>>2]=b;b=Sy(a)|0;d=0;while(1){if(!b)break;Az(b,134365,304,1)|0;c[(c[b+16>>2]|0)+112>>2]=f+(d<<2);c[(c[(c[g>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;jo(b);e=Ex(a,b)|0;while(1){if(!e)break;ko(e);e=Gx(a,e)|0}b=Ty(a,b)|0;d=d+1|0}return}function jo(a){a=a|0;zx(a,105204,105210)|0;return}function ko(a){a=a|0;Az(a,134378,304,1)|0;return}function lo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function no(a){a=a|0;var b=0,d=0;b=Sy(a)|0;if(b|0){D_(c[(c[b+16>>2]|0)+112>>2]|0);while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;JM(d);d=Gx(a,d)|0}HM(b);b=Ty(a,b)|0}oo(a)}return}function oo(a){a=a|0;D_(c[(c[a+16>>2]|0)+152>>2]|0);if((fz(a)|0)!=(a|0))Gz(a,0,134401);return}function po(a){a=a|0;var d=0,e=0,f=0;qo(a);ro(a,0);so(a,0);to(a,0);d=c[a+16>>2]|0;if(!(c[(c[d+8>>2]|0)+84>>2]|0)){d=b[d+136>>1]&14;if(d<<16>>16)Ym(a,d&65535)|0}else{d=Sy(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;e=c[f+132>>2]|0;h[e>>3]=+h[f+16>>3]*.013888888888888888;h[e+8>>3]=+h[f+24>>3]*.013888888888888888;d=Ty(a,d)|0}$m(a,1)}eJ(a);return}function qo(a){a=a|0;var d=0,e=0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;d=Sy(a)|0;while(1){if(!d)break;$l(d);d=Ty(a,d)|0}e=Sy(a)|0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;Az(d,134378,176,1)|0;eM(d)|0;d=Gx(a,d)|0}e=Ty(a,e)|0}return}function ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(b|0)==0;if(h){yo(g);b=g}d=wA(a)|0;while(1){if(!d)break;if(!(z$(ry(d)|0,104980,7)|0)){Az(d,134401,280,1)|0;fH(d);zo(b,d);ro(d,0)}else ro(d,b);d=xA(d)|0}if(h?(e=c[g+8>>2]|0,f=a+16|0,c[(c[f>>2]|0)+180>>2]=e,e|0):0){h=xH(c[g>>2]|0,(e<<2)+4|0)|0;c[(c[f>>2]|0)+184>>2]=h}l=i;return}function so(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+448|0;G=Q+400|0;F=Q+384|0;P=Q+344|0;O=Q+304|0;N=Q+248|0;D=Q+192|0;x=Q+152|0;y=Q+96|0;o=Q+72|0;d=Q+64|0;I=Q+32|0;J=Q;B=Q+416|0;u=Q+328|0;w=Q+288|0;K=Q+232|0;L=Q+176|0;M=Q+136|0;H=Q+80|0;n=c[a+60>>2]|0;if(0>1){uo(b);E=c[15686]|0;c[d>>2]=ry(a)|0;g1(E,90637,d)|0}E=a+16|0;f=b+1|0;d=1;e=0;while(1){g=c[E>>2]|0;if((d|0)>(c[g+180>>2]|0))break;C=c[(c[g+184>>2]|0)+(d<<2)>>2]|0;so(C,f);d=d+1|0;e=(ay(C)|0)+e|0}p=(ay(a)|0)-e|0;d=c[E>>2]|0;C=(c[d+180>>2]|0)+p|0;v=(C|0)==0;if(v?(c[d+12>>2]|0)==0:0){P=d+16|0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;h[d+40>>3]=18.0;h[d+32>>3]=18.0}else{d=B+16|0;do if((XD(a,4,4,B)|0)>>>0>=3)if((c[d>>2]|0)==4?(c[B+28>>2]&2|0)!=0:0){e=nx(n,0,96164,0)|0;d=nx(n,1,96164,0)|0;if((e|0)!=0|(d|0)!=0){c[B+24>>2]=uH(C<<2)|0;break}else{c[o>>2]=ry(a)|0;Pw(0,90483,o)|0;d=0;e=0;break}}else{d=0;e=0}else{c[d>>2]=3;d=0;e=0}while(0);z=uH(C<<5)|0;A=uH(C<<2)|0;s=B+24|0;n=(e|0)!=0;r=0;g=1;while(1){f=c[E>>2]|0;if((g|0)>(c[f+180>>2]|0))break;f=c[(c[f+184>>2]|0)+(g<<2)>>2]|0;t=z+(r<<5)|0;q=(c[f+16>>2]|0)+16|0;c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[t+16>>2]=c[q+16>>2];c[t+20>>2]=c[q+20>>2];c[t+24>>2]=c[q+24>>2];c[t+28>>2]=c[q+28>>2];if(n&(c[s>>2]|0)!=0){t=KL(f,e,0,0)|0;c[(c[s>>2]|0)+(r<<2)>>2]=t}c[A+(r<<2)>>2]=f;r=r+1|0;g=g+1|0}a:do if((p|0)>0){o=I+16|0;p=I+24|0;q=(d|0)!=0;n=Sy(a)|0;e=r;while(1){if(!n)break a;f=c[n+16>>2]|0;g=f+112|0;if(!(c[g>>2]|0)){c[g>>2]=a;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;h[o>>3]=+h[f+96>>3]+ +h[f+88>>3];h[p>>3]=+h[f+80>>3];t=z+(e<<5)|0;c[t>>2]=c[I>>2];c[t+4>>2]=c[I+4>>2];c[t+8>>2]=c[I+8>>2];c[t+12>>2]=c[I+12>>2];c[t+16>>2]=c[I+16>>2];c[t+20>>2]=c[I+20>>2];c[t+24>>2]=c[I+24>>2];c[t+28>>2]=c[I+28>>2];if(q&(c[s>>2]|0)!=0){t=KL(n,d,0,0)|0;c[(c[s>>2]|0)+(e<<2)>>2]=t}c[A+(e<<2)>>2]=n;e=e+1|0}n=Ty(a,n)|0}}while(0);t=QD(C,z,B)|0;d=c[s>>2]|0;if(d|0)D_(d);vo(J,2147483647.0,2147483647.0);s=J+16|0;vo(u,-2147483647.0,-2147483647.0);c[s>>2]=c[u>>2];c[s+4>>2]=c[u+4>>2];c[s+8>>2]=c[u+8>>2];c[s+12>>2]=c[u+12>>2];g=I+16|0;n=I+8|0;o=I+24|0;p=J+8|0;q=J+24|0;r=c[15686]|0;d=0;while(1){if((d|0)>=(C|0))break;j=+(c[t+(d<<3)>>2]|0);m=+(c[t+(d<<3)+4>>2]|0);e=z+(d<<5)|0;c[I>>2]=c[e>>2];c[I+4>>2]=c[e+4>>2];c[I+8>>2]=c[e+8>>2];c[I+12>>2]=c[e+12>>2];c[I+16>>2]=c[e+16>>2];c[I+20>>2]=c[e+20>>2];c[I+24>>2]=c[e+24>>2];c[I+28>>2]=c[e+28>>2];i=+h[I>>3]+j;h[I>>3]=i;j=+h[g>>3]+j;h[g>>3]=j;k=+h[n>>3]+m;h[n>>3]=k;m=+h[o>>3]+m;h[o>>3]=m;h[J>>3]=+h[(+h[J>>3]>3];h[p>>3]=+h[(+h[p>>3]>3];h[s>>3]=+h[(+h[s>>3]>j?J:I)+16>>3];h[q>>3]=+h[(+h[q>>3]>m?J:I)+24>>3];e=c[A+(d<<2)>>2]|0;f=e+16|0;if((d|0)<(c[(c[E>>2]|0)+180>>2]|0)){u=(c[f>>2]|0)+16|0;c[u>>2]=c[I>>2];c[u+4>>2]=c[I+4>>2];c[u+8>>2]=c[I+8>>2];c[u+12>>2]=c[I+12>>2];c[u+16>>2]=c[I+16>>2];c[u+20>>2]=c[I+20>>2];c[u+24>>2]=c[I+24>>2];c[u+28>>2]=c[I+28>>2];if(0>1){uo(b);c[y>>2]=ry(e)|0;h[y+8>>3]=i;h[y+16>>3]=k;h[y+24>>3]=j;h[y+32>>3]=m;g1(r,90462,y)|0}}else{u=(c[f>>2]|0)+16|0;c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];c[F+8>>2]=c[I+8>>2];c[F+12>>2]=c[I+12>>2];c[G>>2]=c[g>>2];c[G+4>>2]=c[g+4>>2];c[G+8>>2]=c[g+8>>2];c[G+12>>2]=c[g+12>>2];wo(w,F,G);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];if(0>1){uo(b);u=ry(e)|0;f=c[f>>2]|0;k=+h[f+16>>3];m=+h[f+24>>3];c[x>>2]=u;h[x+8>>3]=k;h[x+16>>3]=m;g1(r,90450,x)|0}}d=d+1|0}e=c[E>>2]|0;d=c[e+12>>2]|0;if(d|0){i=+h[d+24>>3];if(v){j=+h[d+32>>3];c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=0;c[J+12>>2]=0;h[s>>3]=i;h[q>>3]=j;j=0.0;k=i}else{j=+h[J>>3];k=+h[s>>3]}m=i-(k-j);i=m*.5;if(m>0.0){h[J>>3]=j-i;h[s>>3]=k+i}}if((b|0)>0)i=+((c[B+8>>2]|0)>>>0)*.5;else i=0.0;j=+h[J>>3]-i;h[J>>3]=j;k=+h[s>>3]+i;h[s>>3]=k;m=-i-+h[e+56>>3]+ +h[p>>3];h[p>>3]=m;i=+h[e+88>>3]+i+ +h[q>>3];h[q>>3]=i;if(0>1){uo(b);c[D>>2]=ry(a)|0;h[D+8>>3]=j;h[D+16>>3]=m;h[D+24>>3]=k;h[D+32>>3]=i;g1(r,90462,D)|0}d=0;while(1){if((d|0)>=(C|0))break;e=c[A+(d<<2)>>2]|0;f=e+16|0;if((d|0)<(c[(c[E>>2]|0)+180>>2]|0)){D=(c[f>>2]|0)+16|0;c[I>>2]=c[D>>2];c[I+4>>2]=c[D+4>>2];c[I+8>>2]=c[D+8>>2];c[I+12>>2]=c[D+12>>2];c[I+16>>2]=c[D+16>>2];c[I+20>>2]=c[D+20>>2];c[I+24>>2]=c[D+24>>2];c[I+28>>2]=c[D+28>>2];c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4>>2];c[F+8>>2]=c[D+8>>2];c[F+12>>2]=c[D+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(I,F,G);c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(K,F,G);c[g>>2]=c[K>>2];c[g+4>>2]=c[K+4>>2];c[g+8>>2]=c[K+8>>2];c[g+12>>2]=c[K+12>>2];D=(c[f>>2]|0)+16|0;c[D>>2]=c[I>>2];c[D+4>>2]=c[I+4>>2];c[D+8>>2]=c[I+8>>2];c[D+12>>2]=c[I+12>>2];c[D+16>>2]=c[I+16>>2];c[D+20>>2]=c[I+20>>2];c[D+24>>2]=c[I+24>>2];c[D+28>>2]=c[I+28>>2];if(0>1){uo(b);D=ry(e)|0;i=+h[I>>3];j=+h[n>>3];k=+h[g>>3];m=+h[o>>3];c[N>>2]=D;h[N+8>>3]=i;h[N+16>>3]=j;h[N+24>>3]=k;h[N+32>>3]=m;g1(r,90462,N)|0}}else{D=(c[f>>2]|0)+16|0;c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4>>2];c[F+8>>2]=c[D+8>>2];c[F+12>>2]=c[D+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(L,F,G);c[D>>2]=c[L>>2];c[D+4>>2]=c[L+4>>2];c[D+8>>2]=c[L+8>>2];c[D+12>>2]=c[L+12>>2];if(0>1){uo(b);D=ry(e)|0;B=c[f>>2]|0;k=+h[B+16>>3];m=+h[B+24>>3];c[O>>2]=D;h[O+8>>3]=k;h[O+16>>3]=m;g1(r,90450,O)|0}}d=d+1|0}c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];c[F+8>>2]=c[s+8>>2];c[F+12>>2]=c[s+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(M,F,G);c[s>>2]=c[M>>2];c[s+4>>2]=c[M+4>>2];c[s+8>>2]=c[M+8>>2];c[s+12>>2]=c[M+12>>2];c[F>>2]=c[J>>2];c[F+4>>2]=c[J+4>>2];c[F+8>>2]=c[J+8>>2];c[F+12>>2]=c[J+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];xo(H,F,G);c[J>>2]=c[H>>2];c[J+4>>2]=c[H+4>>2];c[J+8>>2]=c[H+8>>2];c[J+12>>2]=c[H+12>>2];O=(c[E>>2]|0)+16|0;c[O>>2]=c[J>>2];c[O+4>>2]=c[J+4>>2];c[O+8>>2]=c[J+8>>2];c[O+12>>2]=c[J+12>>2];c[O+16>>2]=c[J+16>>2];c[O+20>>2]=c[J+20>>2];c[O+24>>2]=c[J+24>>2];c[O+28>>2]=c[J+28>>2];if(0>1){uo(b);O=ry(a)|0;i=+h[J>>3];j=+h[p>>3];k=+h[s>>3];m=+h[q>>3];c[P>>2]=O;h[P+8>>3]=i;h[P+16>>3]=j;h[P+24>>3]=k;h[P+32>>3]=m;g1(r,90462,P)|0}D_(z);D_(A);D_(t)}l=Q;return}function to(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+80|0;s=t+32|0;i=t+8|0;d=t;r=a+16|0;o=c[r>>2]|0;p=+h[o+16>>3];q=+h[o+24>>3];if(0>1){uo(b);o=c[15686]|0;c[d>>2]=ry(a)|0;g1(o,90435,d)|0}o=(b|0)!=0;a:do if(o){d=Sy(a)|0;e=c[15686]|0;while(1){if(!d)break a;f=d+16|0;g=c[f>>2]|0;if((c[g+112>>2]|0)==(a|0)?(u=g+16|0,h[u>>3]=+h[u>>3]+p,g=g+24|0,h[g>>3]=+h[g>>3]+q,0>1):0){uo(b);u=ry(d)|0;g=c[f>>2]|0;m=+h[g+16>>3];n=+h[g+24>>3];c[i>>2]=u;h[i+8>>3]=m;h[i+16>>3]=n;g1(e,90450,i)|0}d=Ty(a,d)|0}}else e=c[15686]|0;while(0);i=b+1|0;a=1;while(1){d=c[r>>2]|0;if((a|0)>(c[d+180>>2]|0))break;g=c[(c[d+184>>2]|0)+(a<<2)>>2]|0;if(o){f=g+16|0;d=c[f>>2]|0;j=+h[d+16>>3]+p;k=+h[d+24>>3]+q;m=+h[d+32>>3]+p;n=+h[d+40>>3]+q;if(0>1){uo(b);c[s>>2]=ry(g)|0;h[s+8>>3]=j;h[s+16>>3]=k;h[s+24>>3]=m;h[s+32>>3]=n;g1(e,90462,s)|0;d=c[f>>2]|0}h[d+16>>3]=j;h[d+24>>3]=k;h[d+32>>3]=m;h[d+40>>3]=n}to(g,i);a=a+1|0}l=t;return}function uo(a){a=a|0;var b=0;b=c[15686]|0;while(1){if((a|0)<=0)break;D1(90480,b)|0;a=a+-1|0}return}function vo(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function wo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function yo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function Ao(a){a=a|0;var b=0;b=Sy(a)|0;while(1){if(!b)break;HM(b);b=Ty(a,b)|0}Bo(a);return}function Bo(a){a=a|0;var b=0,d=0,e=0;b=a+16|0;a=1;while(1){e=c[b>>2]|0;d=c[e+184>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[d+(a<<2)>>2]|0;nH(c[(c[e+16>>2]|0)+12>>2]|0);Bo(e);a=a+1|0}D_(d);return}function Co(a){a=a|0;var b=0,d=0,e=0;Fz(a,1,134365,304,1);sM(a)|0;b=uH(((ay(a)|0)<<2)+4|0)|0;e=a+16|0;c[(c[e>>2]|0)+152>>2]=b;b=0;d=Sy(a)|0;while(1){if(!d)break;Do(d);c[(c[(c[e>>2]|0)+152>>2]|0)+(b<<2)>>2]=d;c[(c[d+16>>2]|0)+120>>2]=b;b=b+1|0;d=Ty(a,d)|0}e=nx(a,2,90566,0)|0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;Eo(b,e);b=Gx(a,b)|0}d=Ty(a,d)|0}Fo(a);return}function Do(a){a=a|0;var b=0;dM(a);b=uH((e[(c[(ez(a)|0)+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[a+16>>2]|0)+132>>2]=b;bN(a,c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&1);return}function Eo(a,b){a=a|0;b=b|0;var d=0,e=0.0;Az(a,134378,176,1)|0;e=+LL(a,c[46404]|0,1.0,0.0);d=a+16|0;h[(c[d>>2]|0)+128>>3]=e;e=+LL(a,b,+h[1371],0.0);h[(c[d>>2]|0)+136>>3]=e;eM(a)|0;return}function Fo(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;q=r+16|0;p=r;m=r+24|0;n=nx(b,1,99597,0)|0;a:do if(n|0){o=nx(b,1,90570,0)|0;i=b+16|0;j=(o|0)==0;k=c[15686]|0;g=0;while(1){e=c[(c[(c[i>>2]|0)+152>>2]|0)+(g<<2)>>2]|0;if(!e)break a;b=yx(e,n)|0;do if(a[b>>0]|0){f=e+16|0;d=c[(c[f>>2]|0)+132>>2]|0;a[m>>0]=0;c[p>>2]=d;c[p+4>>2]=d+8;c[p+8>>2]=m;if((N1(b,98723,p)|0)<=1){c[q>>2]=ry(e)|0;c[q+4>>2]=b;g1(k,90574,q)|0;break}b:do if(+h[22908]>0.0){b=0;while(1){if((b|0)==2)break b;s=d+(b<<3)|0;h[s>>3]=+h[s>>3]/+h[22908];b=b+1|0}}while(0);b=c[f>>2]|0;a[b+119>>0]=1;if((a[m>>0]|0)!=33){if(j)break;if(!((QL(yx(e,o)|0)|0)<<24>>24))break;b=c[f>>2]|0}a[b+119>>0]=3}while(0);g=g+1|0}}while(0);l=r;return}function Go(a){a=a|0;var b=0,c=0;c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;JM(b);b=Gx(a,b)|0}HM(c);c=Ty(a,c)|0}Ho(a);return}function Ho(a){a=a|0;Io(a);a=a+16|0;D_(c[(c[a>>2]|0)+152>>2]|0);D_(c[(c[a>>2]|0)+140>>2]|0);return}function Io(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+16|0;f=1;while(1){e=c[g>>2]|0;b=c[e+184>>2]|0;if((f|0)>(c[e+180>>2]|0))break;e=c[b+(f<<2)>>2]|0;b=e+16|0;nH(c[(c[b>>2]|0)+12>>2]|0);d=c[(c[b>>2]|0)+140>>2]|0;if(d|0){D_(c[d>>2]|0);D_(c[(c[b>>2]|0)+140>>2]|0)}Io(e);f=f+1|0}D_(b);if((fz(a)|0)!=(a|0))Cz(a,134401)|0;return}function Jo(a,b){a=a|0;b=b|0;c[b+4>>2]=nx(a,0,90626,0)|0;c[b+8>>2]=nx(a,0,138034,0)|0;c[b+12>>2]=nx(a,0,137966,0)|0;c[b>>2]=a;c[b+16>>2]=0;c[b+36>>2]=XD(a,2,4,b+20|0)|0;return}function Ko(a){a=a|0;var d=0,e=0;$M(a,2);d=uH(56)|0;e=a+16|0;c[(c[e>>2]|0)+140>>2]=d;d=(KL(a,nx(a,0,90633,0)|0,2,2)|0)&65535;d=(d&65535)<10?d:10;b[(c[e>>2]|0)+176>>1]=d;c[46366]=d&65535;Lo(a,0,a);hp(a);Co(a);return}function Lo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=(d|0)==0;if(k){Mo(j);d=j}g=e+16|0;f=wA(a)|0;while(1){if(!f)break;if(!(z$(ry(f)|0,104980,7)|0)){Az(f,134401,280,1)|0;n=uH(56)|0;p=c[f+16>>2]|0;c[p+140>>2]=n;o=c[g>>2]|0;b[p+176>>1]=b[o+176>>1]|0;c[n+44>>2]=(c[(c[o+140>>2]|0)+44>>2]|0)+1;c[n+48>>2]=e;No(d,f);Lo(f,0,f)}else Lo(f,d,e);f=xA(f)|0}if(k?(h=c[j+8>>2]|0,i=a+16|0,c[(c[i>>2]|0)+180>>2]=h,h|0):0){p=xH(c[j>>2]|0,(h<<2)+4|0)|0;c[(c[i>>2]|0)+184>>2]=p}l=m;return}function Mo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function No(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=xH(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function Oo(a){a=a|0;var b=0,c=0;b=l;l=l+64|0;c=b;Jo(a,c);Po(a,c);Qo(a);Ro(a,a);So(a);l=b;return}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0,w=0.0,x=0.0;s=l;l=l+64|0;r=s+48|0;e=s+40|0;o=s+56|0;n=s+52|0;m=s;if(0){q=c[15686]|0;c[e>>2]=ry(b)|0;g1(q,90637,e)|0}e=Sy(b)|0;while(1){if(!e)break;c[(c[e+16>>2]|0)+164>>2]=0;e=Ty(b,e)|0}p=To(b,d)|0;q=Iu(p,o,n)|0;e=q;while(1){k=e+4|0;f=c[e>>2]|0;if(!f)break;ip(f,m);e=Sy(f)|0;while(1){if(!e)break;g=Ty(f,e)|0;i=e+16|0;j=c[i>>2]|0;if(c[j+212>>2]|0){v=Uo(e,f)|0;Po(v,d);v=c[(c[v+16>>2]|0)+140>>2]|0;u=+h[v+24>>3];j=c[i>>2]|0;h[j+32>>3]=u;t=+h[v+32>>3];h[j+40>>3]=t;u=u*36.0;h[j+88>>3]=u;h[j+96>>3]=u;h[j+80>>3]=t*72.0;e=g;continue}if(c[(c[j+112>>2]|0)+8>>2]|0){e=g;continue}dz(f,e)|0;e=g}if((ay(f)|0)<=1){e=k;continue}if((c[d>>2]|0)==(b|0))Qp(f)|0;vp(f,m);e=k}e=c[o>>2]|0;if((e|0)<=1)if((e|0)==1){mM(c[q>>2]|0);e=0}else e=0;else{if(!(c[n>>2]|0))f=0;else{f=uH(e)|0;a[f>>0]=1;e=c[o>>2]|0}c[d+40>>2]=f;e=BD(e,q,0,d+20|0)|0;D_(f)}Vo(p,c[o>>2]|0,q,e,b,d);D_(e);f=Sy(p)|0;while(1){if(!f)break;g=c[f+16>>2]|0;e=c[g+212>>2]|0;if(!e){e=c[(c[g+112>>2]|0)+8>>2]|0;if(e|0){o=c[g+132>>2]|0;v=c[(c[e+16>>2]|0)+132>>2]|0;h[v>>3]=+h[o>>3];h[v+8>>3]=+h[o+8>>3]}}else{o=c[g+132>>2]|0;x=+h[g+32>>3];w=+h[o>>3]-x*.5;v=c[(c[e+16>>2]|0)+140>>2]|0;h[v+8>>3]=w;t=+h[g+40>>3];u=+h[o+8>>3]-t*.5;h[v+16>>3]=u;h[v+24>>3]=x+w;h[v+32>>3]=t+u}f=Ty(p,f)|0}v=(c[(c[b+16>>2]|0)+140>>2]|0)+8|0;o=(c[(c[p+16>>2]|0)+140>>2]|0)+8|0;c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];c[v+8>>2]=c[o+8>>2];c[v+12>>2]=c[o+12>>2];c[v+16>>2]=c[o+16>>2];c[v+20>>2]=c[o+20>>2];c[v+24>>2]=c[o+24>>2];c[v+28>>2]=c[o+28>>2];Wo(p,q);D_(q);if(0){v=c[15686]|0;c[r>>2]=ry(b)|0;g1(v,90648,r)|0}l=s;return}function Qo(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0;d=Sy(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;if(a[e+118>>0]|0){k=c[(c[(c[e+212>>2]|0)+16>>2]|0)+140>>2]|0;j=+h[k+24>>3]-+h[k+8>>3];i=+h[k+32>>3]-+h[k+16>>3];g=j*36.0;f=i*36.0;k=c[e+132>>2]|0;h[k>>3]=j*.5;h[k+8>>3]=i*.5;h[e+32>>3]=j;h[e+40>>3]=i;h[e+96>>3]=g;h[e+88>>3]=g;h[e+80>>3]=i*72.0;e=c[(c[e+12>>2]|0)+44>>2]|0;h[e>>3]=g;h[e+8>>3]=f;i=-g;h[e+16>>3]=i;h[e+24>>3]=f;h[e+32>>3]=i;f=-f;h[e+40>>3]=f;h[e+48>>3]=g;h[e+56>>3]=f}d=Ty(b,d)|0}return}function Ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0,k=0.0,l=0,m=0.0,n=0,o=0.0,p=0;i=a+16|0;j=c[(c[i>>2]|0)+140>>2]|0;f=+h[j+8>>3];g=+h[j+16>>3];j=(a|0)!=(b|0);a:do if(j){d=Sy(a)|0;while(1){if(!d){a=1;break a}e=c[d+16>>2]|0;if((c[e+212>>2]|0)==(a|0)){e=c[e+132>>2]|0;h[e>>3]=+h[e>>3]+f;e=e+8|0;h[e>>3]=+h[e>>3]+g}d=Ty(a,d)|0}}else a=1;while(0);while(1){d=c[i>>2]|0;if((a|0)>(c[d+180>>2]|0))break;d=c[(c[d+184>>2]|0)+(a<<2)>>2]|0;if(j){e=c[(c[d+16>>2]|0)+140>>2]|0;p=e+8|0;n=e+16|0;l=e+24|0;e=e+32|0;o=+h[n>>3]+g;m=+h[l>>3]+f;k=+h[e>>3]+g;h[p>>3]=+h[p>>3]+f;h[n>>3]=o;h[l>>3]=m;h[e>>3]=k}Ro(d,b);a=a+1|0}return}function So(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0;b=a+16|0;a=c[b>>2]|0;d=c[a+140>>2]|0;g=+h[d+16>>3]*72.0;f=+h[d+24>>3]*72.0;e=+h[d+32>>3]*72.0;h[a+16>>3]=+h[d+8>>3]*72.0;h[a+24>>3]=g;h[a+32>>3]=f;h[a+40>>3]=e;a=1;while(1){d=c[b>>2]|0;if((a|0)>(c[d+180>>2]|0))break;So(c[(c[d+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}return}function To(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=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;y=l;l=l+160|0;s=y+24|0;t=y+8|0;g=y;f=y+56|0;w=e+16|0;x=c[w>>2]|0;c[w>>2]=x+1;c[s>>2]=x;Y0(f,90710,s)|0;if(0>1){x=c[15686]|0;w=ry(d)|0;c[g>>2]=f;c[g+4>>2]=w;g1(x,90717,g)|0};a[s>>0]=a[18484]|0;a[s+1>>0]=a[18485]|0;a[s+2>>0]=a[18486]|0;a[s+3>>0]=a[18487]|0;x=Xx(91072,s,0)|0;Az(x,134401,280,1)|0;v=uH(56)|0;w=x+16|0;o=c[w>>2]|0;c[o+140>>2]=v;v=d+16|0;b[o+176>>1]=b[(c[v>>2]|0)+176>>1]|0;ap(d,x,91095);ap(d,x,91700);ap(d,x,90983);o=e+4|0;p=s+16|0;q=s+8|0;r=s+24|0;j=0;n=1;while(1){f=c[v>>2]|0;if((n|0)>(c[f+180>>2]|0))break;c[s>>2]=c[332];c[s+4>>2]=c[333];c[s+8>>2]=c[334];c[s+12>>2]=c[335];c[s+16>>2]=c[336];c[s+20>>2]=c[337];c[s+24>>2]=c[338];c[s+28>>2]=c[339];g=c[(c[f+184>>2]|0)+(n<<2)>>2]|0;fH(g);i=bp(x,ry(g)|0)|0;k=i+16|0;f=c[k>>2]|0;c[f+212>>2]=g;m=j+1|0;c[f+120>>2]=j;if(c[o>>2]|0)cp(g,i,e,s);f=Sy(g)|0;while(1){if(!f)break;c[(c[f+16>>2]|0)+164>>2]=i;f=Ty(g,f)|0}f=c[k>>2]|0;if(a[f+119>>0]|0){k=c[f+132>>2]|0;h[k>>3]=(+h[p>>3]+ +h[s>>3])*.5;h[k+8>>3]=(+h[r>>3]+ +h[q>>3])*.5}j=m;n=n+1|0}k=Sy(d)|0;while(1){if(!k)break;f=k+16|0;g=c[f>>2]|0;if(!(c[g+164>>2]|0)){i=g+212|0;s=c[i>>2]|0;if(s|0?(s|0)!=(c[(c[(c[v>>2]|0)+140>>2]|0)+48>>2]|0):0){u=18;break}c[i>>2]=d;if(!(a[g+118>>0]|0)){i=bp(x,ry(k)|0)|0;g=c[f>>2]|0;c[g+164>>2]=i;i=c[i+16>>2]|0;c[i+120>>2]=j;h[i+32>>3]=+h[g+32>>3];h[i+40>>3]=+h[g+40>>3];h[i+88>>3]=+h[g+88>>3];h[i+96>>3]=+h[g+96>>3];h[i+80>>3]=+h[g+80>>3];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];f=a[g+119>>0]|0;if(f<<24>>24){e=c[g+132>>2]|0;s=c[i+132>>2]|0;h[s>>3]=+h[e>>3];h[s+8>>3]=+h[e+8>>3];a[i+119>>0]=f}c[(c[i+112>>2]|0)+8>>2]=k;f=j+1|0}else f=j}else f=j;k=Ty(d,k)|0;j=f}if((u|0)==18){e=ry(k)|0;s=ry(d)|0;u=ry(c[(c[f>>2]|0)+212>>2]|0)|0;c[t>>2]=e;c[t+4>>2]=s;c[t+8>>2]=u;Pw(1,90740,t)|0;bb(184132,1)}m=Sy(d)|0;while(1){if(!m)break;n=c[(c[m+16>>2]|0)+164>>2]|0;o=n+16|0;i=Ex(d,m)|0;while(1){if(!i)break;f=c[(c[(c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+164>>2]|0;if((f|0)!=(n|0)){if(f>>>0>n>>>0)k=Rx(x,n,f,0,1)|0;else k=Rx(x,f,n,0,1)|0;Az(k,134378,176,1)|0;g=c[i+16>>2]|0;u=c[k+16>>2]|0;h[u+136>>3]=+h[g+136>>3];h[u+128>>3]=+h[g+128>>3];f=c[(c[f+16>>2]|0)+112>>2]|0;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[(c[o>>2]|0)+112>>2]|0;t=g+4|0;c[t>>2]=(c[t>>2]|0)+1;if(!(c[u+172>>2]|0)){c[f>>2]=(c[f>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}dp(k,i)}i=Gx(d,i)|0}m=Ty(d,m)|0}f=c[(c[v>>2]|0)+140>>2]|0;g=c[f>>2]|0;if(g|0){i=uH((c[f+4>>2]<<4)+16|0)|0;c[c[(c[w>>2]|0)+140>>2]>>2]=i;f=0;while(1){if(!(c[g>>2]|0))break;m=c[(c[(c[g+4>>2]|0)+16>>2]|0)+164>>2]|0;if(m){ep(d,g);n=bp(x,190692)|0;o=n+16|0;c[(c[o>>2]|0)+120>>2]=j;if(n>>>0>m>>>0)k=Rx(x,m,n,0,1)|0;else k=Rx(x,n,m,0,1)|0;Az(k,134378,176,1)|0;u=c[g>>2]|0;t=c[u+16>>2]|0;v=c[k+16>>2]|0;h[v+136>>3]=+h[t+136>>3];h[v+128>>3]=+h[t+128>>3];dp(k,u);u=c[(c[o>>2]|0)+112>>2]|0;v=u+4|0;c[v>>2]=(c[v>>2]|0)+1;v=c[(c[m+16>>2]|0)+112>>2]|0;t=v+4|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1;c[i+4>>2]=n;h[i+8>>3]=+h[g+8>>3];c[i>>2]=k;f=f+1|0;i=i+16|0;j=j+1|0}g=g+16|0}c[(c[(c[w>>2]|0)+140>>2]|0)+4>>2]=f}l=y;return x|0}function Uo(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;l=c[a+16>>2]|0;k=c[l+212>>2]|0;l=c[(c[l+112>>2]|0)+4>>2]|0;do if(l|0){j=uH((l<<4)+16|0)|0;f=Zo(a,b)|0;g=f+8|0;b=0;e=f;while(1){if(!(c[e>>2]|0))break;i=e+24|0;if(!(c[i>>2]|0))d=+h[g>>3]+6.283185307179586;else d=+h[e+32>>3];b=_o(a,e,j,b,d)|0;e=i}if((b|0)==(l|0)){a=c[(c[k+16>>2]|0)+140>>2]|0;c[a>>2]=j;c[a+4>>2]=l;D_(f);break}else qa(90656,90666,766,90675)}while(0);return k|0}function Vo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0;B=l;l=l+32|0;x=B+16|0;A=B;m=c[g+8>>2]|0;j=c[g+12>>2]|0;y=(c[g>>2]|0)==(f|0);z=(b|0)!=0;a:do if(z){p=c[(c[d>>2]|0)+16>>2]|0;k=+h[p+16>>3];m=~~(k+(k>=0.0?.5:-.5));c[A>>2]=m;k=+h[p+24>>3];g=~~(k+(k>=0.0?.5:-.5));u=A+4|0;c[u>>2]=g;k=+h[p+32>>3];n=~~(k+(k>=0.0?.5:-.5));v=A+8|0;c[v>>2]=n;k=+h[p+40>>3];p=~~(k+(k>=0.0?.5:-.5));w=A+12|0;c[w>>2]=p;if((b|0)>1){q=c[e>>2]|0;t=c[e+4>>2]|0;m=q+m|0;c[A>>2]=m;b=t+g|0;c[u>>2]=b;n=q+n|0;c[v>>2]=n;q=x+4|0;r=x+8|0;s=x+12|0;o=e;g=d;t=t+p|0;p=b;while(1){g=g+4|0;j=o+8|0;c[w>>2]=t;b=c[g>>2]|0;if(!b){j=0;r=p;s=t;break a}E=c[b+16>>2]|0;G=+h[E+16>>3];i=+h[E+24>>3];k=+h[E+32>>3];H=+h[E+40>>3];E=~~(H+(H>=0.0?.5:-.5));c[s>>2]=E;b=c[j>>2]|0;F=c[o+12>>2]|0;D=b+~~(G+(G>=0.0?.5:-.5))|0;c[x>>2]=D;C=F+~~(i+(i>=0.0?.5:-.5))|0;c[q>>2]=C;b=b+~~(k+(k>=0.0?.5:-.5))|0;c[r>>2]=b;E=F+E|0;c[s>>2]=E;D=c[((m|0)<(D|0)?A:x)>>2]|0;c[A>>2]=D;C=c[((p|0)<(C|0)?A:x)+4>>2]|0;c[u>>2]=C;b=c[((n|0)>(b|0)?A:x)+8>>2]|0;c[v>>2]=b;o=j;t=c[((t|0)>(E|0)?A:x)+12>>2]|0;m=D;p=C;n=b}}else{j=0;r=g;s=p}}else{c[A>>2]=0;c[A+4>>2]=0;n=KL(f,m,54,3)|0;c[A+8>>2]=n;s=KL(f,j,36,3)|0;c[A+12>>2]=s;j=1;m=0;r=0}while(0);b=f+16|0;o=c[b>>2]|0;g=c[o+12>>2]|0;if(g){H=+h[g+24>>3];g=m-n+~~(H+(H>=0.0?.5:-.5))|0;if((g|0)>0){g=g>>>1;m=m-g|0;c[A>>2]=m;n=n+g|0;c[A+8>>2]=n;g=0}else g=0}else g=j;if(y|(g|0)!=0){j=0;g=o}else{j=KL(a,c[46374]|0,8,0)|0;g=c[b>>2]|0}q=j-m|0;p=~~(+h[g+56>>3]+ +(j-r|0));c[A>>2]=0;c[A+4>>2]=0;o=q+j+n|0;c[A+8>>2]=o;b=~~(+h[g+88>>3]+ +(j+p|0)+ +(s|0));c[A+12>>2]=b;b:do if(z){g=e;c:while(1){n=d+4|0;j=c[d>>2]|0;if(!j)break b;if(!g){m=0;d=q;g=p}else{m=g+8|0;d=(c[g>>2]|0)+q|0;g=(c[g+4>>2]|0)+p|0}k=+(d|0)*.013888888888888888;i=+(g|0)*.013888888888888888;d=Sy(j)|0;while(1){if(!d){d=n;g=m;continue c}F=c[(c[d+16>>2]|0)+132>>2]|0;h[F>>3]=+h[F>>3]+k;F=F+8|0;h[F>>3]=+h[F>>3]+i;d=Ty(j,d)|0}}}while(0);F=c[(c[a+16>>2]|0)+140>>2]|0;E=F+8|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;h[F+24>>3]=+(o|0)*.013888888888888888;h[F+32>>3]=+(b|0)*.013888888888888888;l=B;return}function Wo(a,b){a=a|0;b=b|0;var d=0,e=0;while(1){d=c[b>>2]|0;if(!d)break;Xo(d);Cz(d,134401)|0;b=b+4|0}b=c[c[(c[a+16>>2]|0)+140>>2]>>2]|0;if(b|0)D_(b);Xo(a);Cz(a,134401)|0;d=Sy(a)|0;while(1){if(!d)break;e=Ty(a,d)|0;b=Ex(a,d)|0;while(1){if(!b)break;D_(c[(c[b+16>>2]|0)+172>>2]|0);Cz(b,134378)|0;b=Gx(a,b)|0}Yo(d);d=e}$x(a)|0;return}function Xo(a){a=a|0;D_(c[(c[a+16>>2]|0)+140>>2]|0);return}function Yo(a){a=a|0;var b=0;b=a+16|0;D_(c[(c[b>>2]|0)+112>>2]|0);D_(c[(c[b>>2]|0)+132>>2]|0);Cz(a,134365)|0;return}function Zo(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0;k=a+16|0;l=c[c[(c[k>>2]|0)+112>>2]>>2]|0;m=uH((l*24|0)+24|0)|0;i=0;j=Jx(b,a)|0;while(1){if(!j)break;f=c[j>>2]&3;e=c[((f|0)==2?j:j+-48|0)+40>>2]|0;if((e|0)==(a|0))e=c[((f|0)==3?j:j+48|0)+40>>2]|0;e=c[(c[e+16>>2]|0)+132>>2]|0;f=c[(c[k>>2]|0)+132>>2]|0;g=+h[e>>3]-+h[f>>3];d=+h[e+8>>3]-+h[f+8>>3];c[m+(i*24|0)>>2]=j;h[m+(i*24|0)+8>>3]=+K(+d,+g);h[m+(i*24|0)+16>>3]=d*d+g*g;i=i+1|0;j=Kx(b,j,a)|0}if((i|0)!=(l|0))qa(90689,90666,642,90698);_0(m,l,24,67);a:do if((l|0)>1){j=l+-1|0;e=0;b:while(1){if((e|0)>=(j|0))break a;g=+h[m+(e*24|0)+8>>3];f=e+1|0;i=f;while(1){if((i|0)>=(l|0))break;if(!(+h[m+(i*24|0)+8>>3]==g))break;i=i+1|0}if((i|0)==(f|0)){e=f;continue}if((i|0)==(l|0))d=3.141592653589793;else d=+h[m+(i*24|0)+8>>3];d=(d-g)/+(i-e|0);d=d>.03490658503988659?.03490658503988659:d;g=0.0;while(1){if((e|0)>=(i|0))continue b;k=m+(e*24|0)+8|0;h[k>>3]=+h[k>>3]+g;g=g+d;e=e+1|0}}}while(0);return m|0}function _o(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0.0,q=0;k=c[d>>2]|0;n=c[k+16>>2]|0;m=b[n+168>>1]|0;o=m<<16>>16;j=c[k>>2]&3;i=c[((j|0)==2?k:k+-48|0)+40>>2]|0;if((i|0)==(a|0))i=c[((j|0)==3?k:k+48|0)+40>>2]|0;p=+h[d+8>>3];g=(g-p)/+(m<<16>>16);g=g>.03490658503988659?.03490658503988659:g;m=i>>>0>a>>>0;l=m?g:-g;d=m?1:-1;k=0;i=c[n+172>>2]|0;j=m?f:f+-1+o|0;g=m?p:g*+(o+-1|0)+p;while(1){if((k|0)>=(o|0))break;n=c[i>>2]|0;c[e+(j<<4)>>2]=n;m=c[n>>2]&3;q=(m|0)==3?n:n+48|0;c[e+(j<<4)+4>>2]=c[((c[(c[(c[q+40>>2]|0)+16>>2]|0)+164>>2]|0)==(a|0)?q:(m|0)==2?n:n+-48|0)+40>>2];h[e+(j<<4)+8>>3]=g;k=k+1|0;i=i+4|0;j=j+d|0;g=g+l}return o+f|0}function $o(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(c>d))if(!(c>3];c=+h[b+16>>3];if(d>c)a=1;else a=(d>31}else a=-1;else a=1;return a|0}function ap(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=nx(a,0,c,0)|0;do if(d|0){a=yx(a,d)|0;d=nx(b,0,c,0)|0;if(!d){nx(b,0,c,a)|0;break}else{rx(b,d,a)|0;break}}while(0);return}function bp(a,b){a=a|0;b=b|0;var d=0,f=0;b=az(a,b,1)|0;Az(b,134365,304,1)|0;f=uH(32)|0;d=b+16|0;c[(c[d>>2]|0)+112>>2]=f;a=vH((e[(c[a+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[d>>2]|0)+132>>2]=a;return b|0}function cp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;n=q+56|0;m=q+32|0;p=q;o=q+64|0;i=c[e+4>>2]|0;k=yx(b,i)|0;do if(a[k>>0]|0){if((c[e>>2]|0)!=(b|0)){e=yx(yA(b)|0,i)|0;if((e|0)==(k|0))break;if(!(b$(k,e)|0))break}a[o>>0]=0;e=p+8|0;i=p+16|0;j=p+24|0;c[m>>2]=p;c[m+4>>2]=e;c[m+8>>2]=i;c[m+12>>2]=j;c[m+16>>2]=o;if((N1(k,90851,m)|0)<=3){c[n>>2]=ry(b)|0;c[n+4>>2]=k;Pw(0,90869,n)|0;break}g=+h[22908];if(g>0.0){h[p>>3]=+h[p>>3]/g;h[e>>3]=+h[e>>3]/g;h[i>>3]=+h[i>>3]/g;h[j>>3]=+h[j>>3]/g}e=a[o>>0]|0;if(e<<24>>24==33)a[(c[d+16>>2]|0)+119>>0]=3;else a[(c[d+16>>2]|0)+119>>0]=e<<24>>24==63?2:1;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];c[f+16>>2]=c[p+16>>2];c[f+20>>2]=c[p+20>>2];c[f+24>>2]=c[p+24>>2];c[f+28>>2]=c[p+28>>2]}while(0);l=q;return}function dp(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=a+16|0;f=c[g>>2]|0;a=b[f+168>>1]|0;f=c[f+172>>2]|0;if(!f){a=a<<16>>16;e=a;a=vH((a<<2)+4|0)|0}else{a=a<<16>>16;e=a;a=xH(f,(a<<2)+4|0)|0}c[a+(e<<2)>>2]=d;d=c[g>>2]|0;c[d+172>>2]=a;d=d+168|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;return}function ep(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;h=i+24|0;g=i;e=c[b>>2]|0;d=c[e>>2]&3;f=c[((d|0)==2?e:e+-48|0)+40>>2]|0;d=c[((d|0)==3?e:e+48|0)+40>>2]|0;b=W_(ry(a)|0)|0;j=W_(ry(f)|0)|0;j=(b+8+j+(W_(ry(d)|0)|0)|0)>999;b=ry(a)|0;if(j){d=ry(d)|0;j=ry(f)|0;h=(c[e>>2]|0)>>>4;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=j;j=g+16|0;c[j>>2]=h;c[j+4>>2]=0;Y0(190692,90809,g)|0}else{d=c[(c[d+16>>2]|0)+120>>2]|0;j=c[(c[f+16>>2]|0)+120>>2]|0;g=(c[e>>2]|0)>>>4;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=j;j=h+16|0;c[j>>2]=g;c[j+4>>2]=0;Y0(190692,90828,h)|0}l=i;return}function fp(a){a=a|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0,k=0;j=4;i=C_(40)|0;c[i>>2]=0;g=+h[22908];o=0;f=+Z(1,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){h[22908]=f;o=0;ia(100,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){i=D3(184132,1,i|0,j|0)|0;j=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=E3(c[e>>2]|0,i|0,j|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1)d=0;else d=z}else d=z}else d=z;while(1){if(d|0)break;o=0;ia(101,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}o=0;$(22,a|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}if(b[(c[a+16>>2]|0)+136>>1]&14){o=0;ia(102,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}}o=0;ja(22,a|0,0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1)d=z;else{k=12;break}}if((k|0)==12)h[22908]=g;D_(i|0);return}function gp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;e=a+16|0;f=b[(c[e>>2]|0)+136>>1]&14;d=f&65535;if((f&65535)>8){if(f<<16>>16==12){if(Wm(a,22,10)|0){c[46363]=2;h=5}}else h=5;do if((h|0)==5)if(!(b[(c[e>>2]|0)+136>>1]&1)){Ym(a,d)|0;break}else{Pw(0,90912,g)|0;d=2;break}while(0);c[46363]=0}if((c[46367]|0)<1)Ym(a,d)|0;l=i;return}function hp(a){a=a|0;var b=0.0,d=0.0,e=0;e=l;l=l+16|0;c[45704]=1;c[45705]=1;c[45707]=-1;c[45709]=50;h[22860]=0.0;h[22855]=0.0;h[22856]=1.0;c[45708]=KL(a,nx(a,0,90975,0)|0,600,0)|0;d=+LL(a,nx(a,0,90983,0)|0,.3,0.0);h[22857]=d;h[1371]=d;if(-1.0==-1.0)b=+LL(a,nx(a,0,90985,0)|0,-1.0,0.0);else b=-1.0;h[22858]=b;c[45706]=1;a=om(a,2,182824)|0;c[45718]=a;if(!a){Pw(0,90988,e)|0;c[45706]=2}c[45734]=(O(c[45708]|0,c[45709]|0)|0)/100|0;d=+h[22857];h[22862]=d*d;if(c[45704]|0){b=+h[22860];if(b<=0.0){b=d*3.0;h[22860]=b}h[22861]=b*b}l=e;return}function ip(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0;j=l;l=l+16|0;d=j;g=c[c[(c[a+16>>2]|0)+140>>2]>>2]|0;i=jp(a,b)|0;kp(d,a,g);e=+h[d>>3];f=+h[d+8>>3];a:do if(!(c[45704]|0)){b=0;while(1){if((b|0)>=(c[45735]|0))break a;np(a,+lp(b),g);b=b+1|0}}else{d=Ku(ay(a)|0)|0;Pu(d,ay(a)|0);b=0;while(1){if((b|0)>=(c[45735]|0))break;mp(a,+lp(b),g,d);b=b+1|0}Ru(d)}while(0);b:do if(e!=0.0|f!=0.0){b=Sy(a)|0;while(1){if(!b)break b;g=c[(c[b+16>>2]|0)+132>>2]|0;h[g>>3]=+h[g>>3]+e;g=g+8|0;h[g>>3]=+h[g>>3]+f;b=Ty(a,b)|0}}while(0);if(i|0)op();l=j;return}function jp(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0;if(+h[22858]==-1.0){i=ay(a)|0;d=+h[22857];h[22858]=+h[22856]*.2*d*+C(+(+(i|0)));i=1}else{i=0;d=+h[22857]}g=c[45734]|0;h[b+8>>3]=+lp(g);h[b+16>>3]=d;h[b+24>>3]=+h[22855];e=c[45708]|0;a=e-g|0;c[b>>2]=a;f=c[45707]|0;do if((f|0)>-1){if((f|0)<=(g|0)){c[45735]=f;a=0;j=10;break}if((f|0)<=(e|0)){c[45735]=g;a=f-g|0;j=10}}else{c[45735]=g;j=10}while(0);if((j|0)==10)c[b+32>>2]=a;return i|0}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,l=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0.0,u=0,v=0,w=0.0,x=0,y=0,z=0;v=ay(d)|0;x=c[(c[(c[d+16>>2]|0)+140>>2]|0)+4>>2]|0;u=Sy(d)|0;q=0;r=0;g=0;k=0;n=0;while(1){if(!u)break;f=c[u+16>>2]|0;if(!(a[f+119>>0]|0))f=r;else{f=c[f+132>>2]|0;i=+h[f>>3];if(!q){k=~~i;g=~~+h[f+8>>3];n=g;f=k}else{p=+(r|0);s=+h[f+8>>3];t=+(g|0);w=+(k|0);o=+(n|0);n=~~(s>o?s:o);f=~~(iw?i:w)}q=q+1|0}u=Ty(d,u)|0;r=f}i=+h[22857]*(+C(+(+(v-x|0)))+1.0);s=i*.6;h[22864]=s;h[22863]=s;if((q|0)!=1)if((q|0)>1){t=+(k+r|0)*.5;w=+(n+g|0)*.5;o=+(k-r|0);p=o*1.2;l=+(n-g|0);m=l*1.2;i=i*2.4*s;j=m*p/i;do if(!(j>=1.0)){if(j>0.0){i=+C(+j)*2.0;j=p/i;h[22863]=j;i=m/i;z=20;break}if(p>0.0){j=o*.6;h[22863]=j;i=i/p*.5;z=20;break}if(m>0.0){j=i/m*.5;h[22863]=j;i=l*.6;z=20}else{i=s;j=s}}else{j=o*.6;h[22863]=j;i=l*.6;z=20}while(0);if((z|0)==20)h[22864]=i;s=+K(+i,+j);j=j/+E(+s);h[22863]=j;i=i/+F(+s);h[22864]=i}else{t=0.0;w=0.0;j=s;i=s}else{t=+(r|0);w=+(g|0);j=s;i=s}h[22865]=j*j;h[22866]=i*i;if((c[45718]|0)==2)f=c[45706]|0;else{f=H1()|0;f=(db(0)|0)^f}i2(f);a:do if(!e){e=Sy(d)|0;if(!q)while(1){if(!e)break a;s=+h[22863];s=(+k2()*2.0+-1.0)*s;z=e+16|0;h[c[(c[z>>2]|0)+132>>2]>>3]=s;s=+h[22864];s=(+k2()*2.0+-1.0)*s;h[(c[(c[z>>2]|0)+132>>2]|0)+8>>3]=s;e=Ty(d,e)|0}while(1){if(!e)break a;f=e+16|0;g=c[f>>2]|0;if(!(a[g+119>>0]|0)){s=+h[22863];s=(+k2()*2.0+-1.0)*s;h[c[(c[f>>2]|0)+132>>2]>>3]=s;s=+h[22864];s=(+k2()*2.0+-1.0)*s;h[(c[(c[f>>2]|0)+132>>2]|0)+8>>3]=s}else{z=c[g+132>>2]|0;h[z>>3]=+h[z>>3]-t;z=z+8|0;h[z>>3]=+h[z>>3]-w}e=Ty(d,e)|0}}else{while(1){if(!(c[e>>2]|0))break;u=e+8|0;s=+E(+(+h[u>>3]))*+h[22863]+t;x=c[(c[e+4>>2]|0)+16>>2]|0;v=c[x+132>>2]|0;h[v>>3]=s;h[v+8>>3]=+F(+(+h[u>>3]))*+h[22864]+w;a[x+119>>0]=1;e=e+16|0}l=t*.1;m=w*.1;r=Sy(d)|0;while(1){if(!r)break a;q=r+16|0;e=c[q>>2]|0;if(!((c[(c[e+112>>2]|0)+8>>2]|0)==0?!(c[e+212>>2]|0):0))z=32;do if((z|0)==32){z=0;if(a[e+119>>0]|0){x=c[e+132>>2]|0;h[x>>3]=+h[x>>3]-t;x=x+8|0;h[x>>3]=+h[x>>3]-w;break}n=Jx(d,r)|0;e=0;j=0.0;i=0.0;while(1){if(!n)break;k=c[n>>2]&3;f=(k|0)==2?n:n+-48|0;g=c[f+40>>2]|0;k=(k|0)==3?n:n+48|0;do if((g|0)!=(c[k+40>>2]|0)?(y=c[(c[((g|0)==(r|0)?k:f)+40>>2]|0)+16>>2]|0,(a[y+119>>0]|0)!=0):0)if(!e){x=c[y+132>>2]|0;e=1;j=+h[x>>3];i=+h[x+8>>3];break}else{p=+(e|0);x=c[y+132>>2]|0;e=e+1|0;s=+(e|0);j=(+h[x>>3]+j*p)/s;i=(+h[x+8>>3]+i*p)/s;break}while(0);n=Kx(d,n,r)|0}do if((e|0)<=1)if((e|0)==1){f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=j*.98+l;i=i*.9+m;break}else{i=+k2()*6.283185307179586;s=+k2()*.9;p=s*+h[22863]*+E(+i);f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=p;i=+h[22864]*s*+F(+i);break}else{f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=j}while(0);h[e+8>>3]=i;a[f+119>>0]=1}while(0);r=Ty(d,r)|0}}while(0);h[b>>3]=t;h[b+8>>3]=w;return}function lp(a){a=a|0;var b=0;b=c[45708]|0;return +(+h[22858]*+(b-a|0)/+(b|0))}function mp(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0;if(!(b<=0.0)){Qu(e);f=Sy(a)|0;while(1){if(!f)break;i=c[f+16>>2]|0;g=(c[i+112>>2]|0)+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;i=c[i+132>>2]|0;j=+h[22860];g=~~+A(+(+h[i>>3]/j));Tu(e,g,~~+A(+(+h[i+8>>3]/j)),f);f=Ty(a,f)|0}g=Sy(a)|0;while(1){if(!g)break;f=Ex(a,g)|0;while(1){if(!f)break;i=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((g|0)!=(i|0))qp(g,i,f);f=Gx(a,f)|0}g=Ty(a,g)|0}Vu(e,23);rp(a,b,d)}return}function np(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0;if(!(b<=0.0)){e=Sy(a)|0;while(1){if(!e)break;g=(c[(c[e+16>>2]|0)+112>>2]|0)+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;e=Ty(a,e)|0}g=Sy(a)|0;while(1){if(!g)break;else e=g;while(1){e=Ty(a,e)|0;if(!e)break;pp(g,e)}e=Ex(a,g)|0;while(1){if(!e)break;f=c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;if((g|0)!=(f|0))qp(g,f,e);e=Gx(a,e)|0}g=Ty(a,g)|0}rp(a,b,d)}return}function op(){h[22858]=-1.0;return}function pp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0;g=c[(c[b+16>>2]|0)+132>>2]|0;f=c[(c[a+16>>2]|0)+132>>2]|0;d=+h[g>>3]-+h[f>>3];e=+h[g+8>>3]-+h[f+8>>3];sp(a,b,d,e,e*e+d*d);return}function qp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0;j=b+16|0;k=c[(c[j>>2]|0)+132>>2]|0;a=a+16|0;b=c[(c[a>>2]|0)+132>>2]|0;e=+h[k>>3]-+h[b>>3];f=+h[k+8>>3]-+h[b+8>>3];g=e;i=f;e=e*e;f=f*f;while(1){e=e+f;if(!(e==0.0))break;e=+(5-((g2()|0)%10|0)|0);f=+(5-((g2()|0)%10|0)|0);g=e;i=f;e=e*e;f=f*f}f=+C(+e);b=c[d+16>>2]|0;e=+h[b+128>>3];if(!(c[45705]|0))e=e*f/+h[b+136>>3];else e=(f-+h[b+136>>3])*e/f;g=e*g;k=c[(c[j>>2]|0)+112>>2]|0;j=k+16|0;h[j>>3]=+h[j>>3]-g;i=e*i;k=k+24|0;h[k>>3]=+h[k>>3]-i;k=c[(c[a>>2]|0)+112>>2]|0;j=k+16|0;h[j>>3]=+h[j>>3]+g;k=k+24|0;h[k>>3]=+h[k>>3]+i;return}function rp(b,d,e){b=b|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0;o=d*d;n=(e|0)==0;m=Sy(b)|0;while(1){if(!m)break;l=c[m+16>>2]|0;if(!(a[l+119>>0]&2)){k=c[l+112>>2]|0;f=+h[k+16>>3];i=+h[k+24>>3];g=i*i+f*f;if(g>2]|0;j=+h[e>>3]+f;f=+h[e+8>>3]+i}else{g=d/+C(+g);e=c[l+132>>2]|0;j=+h[e>>3]+g*f;f=+h[e+8>>3]+g*i}do if(!n){g=+C(+(f*f/+h[22866]+j*j/+h[22865]));if((c[k+8>>2]|0)==0?(c[l+212>>2]|0)==0:0){h[e>>3]=j/g;f=f/g;break}if(!(g>=1.0)){h[e>>3]=j;break}else{h[e>>3]=j*.95/g;f=f*.95/g;break}}else h[e>>3]=j;while(0);h[e+8>>3]=f}m=Ty(b,m)|0}return}function sp(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0.0,i=0,j=0;g=d;d=f;while(1){if(!(d==0.0))break;d=+(5-((g2()|0)%10|0)|0);e=+(5-((g2()|0)%10|0)|0);g=d;d=e*e+d*d}if(!(c[45705]|0))d=+h[22862]/d;else{f=+C(+d);d=+h[22862]/(f*d)}j=c[a+16>>2]|0;a=c[j+112>>2]|0;if(((c[a+8>>2]|0)==0?(c[j+212>>2]|0)==0:0)?(i=c[b+16>>2]|0,(c[(c[i+112>>2]|0)+8>>2]|0)==0):0)d=(c[i+212>>2]|0)==0?d*10.0:d;f=d*g;j=c[(c[b+16>>2]|0)+112>>2]|0;b=j+16|0;h[b>>3]=+h[b>>3]+f;g=d*e;j=j+24|0;h[j>>3]=+h[j>>3]+g;j=a+16|0;h[j>>3]=+h[j>>3]-f;j=a+24|0;h[j>>3]=+h[j>>3]-g;return}function tp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[b+8>>2]|0;g=c[b>>2]|0;e=c[b+4>>2]|0;b=f;while(1){if(!b)break;a=f;while(1){if(!a)break;if((b|0)!=(a|0))pp(c[b>>2]|0,c[a>>2]|0);a=c[a+4>>2]|0}b=c[b+4>>2]|0}h=g+-1|0;a=e+-1|0;up(d,h,a,f);up(d,h,e,f);b=e+1|0;up(d,h,b,f);up(d,g,a,f);up(d,g,b,f);g=g+1|0;up(d,g,a,f);up(d,g,e,f);up(d,g,b,f);return 0}function up(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0;a=Wu(a,b,d)|0;if((e|0)!=0&(a|0)!=0){k=a+8|0;do{d=c[e>>2]|0;j=d+16|0;a=k;while(1){a=c[a>>2]|0;if(!a)break;b=c[a>>2]|0;m=c[(c[b+16>>2]|0)+132>>2]|0;l=c[(c[j>>2]|0)+132>>2]|0;f=+h[m>>3]-+h[l>>3];g=+h[m+8>>3]-+h[l+8>>3];i=g*g+f*f;if(i<+h[22861])sp(d,b,f,g,i);a=a+4|0}e=c[e+4>>2]|0}while((e|0)!=0)}return}function vp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=xx(b,91095)|0;if(0)E1(91032,8,1,c[15686]|0)|0;if(!((e|0)!=0?(a[e>>0]|0)!=0:0))e=91041;f=A$(e,58)|0;do if(!f)f=0;else{if((f|0)!=(e|0)?((a[e>>0]|0)+-48|0)>>>0>=10:0){f=0;break}i=a2(e)|0;e=f+1|0;f=(i|0)>0?i:0}while(0);if(0){i=c[15686]|0;c[g>>2]=f;c[g+4>>2]=e;g1(i,91049,g)|0}if(!((f|0)!=0?!(wp(b,d,f)|0):0))sq(b,e)|0;l=h;return}function wp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;t=l;l=l+64|0;r=t;j=t+40|0;s=ay(b)|0;k=by(b)|0;qq(j,b);c[46072]=c[j>>2];c[46073]=c[j+4>>2];c[46074]=c[j+8>>2];if(a[184296]|0){g[46072]=+g[46072]*.013888888888888888;g[46073]=+g[46073]*.013888888888888888}f=xp(b)|0;a:do if(!f)f=0;else{j=r;i=j+40|0;do{c[j>>2]=c[d>>2];j=j+4|0;d=d+4|0}while((j|0)<(i|0));j=r+16|0;q=+h[j>>3];o=+(k|0)*2.0;p=1.0/+(O(s+-1|0,s)|0);i=0;n=q;while(1){if(!((f|0)!=0&(i|0)<(e|0)))break a;yp(s,r);m=+h[22868]*+h[170];h[22869]=m;h[22870]=o*m*p;d=0;while(1){if((d|0)>=(c[45742]|0))break;m=+zp(d);if(m<=0.0)break;f=Ap(b,m)|0;if(!f){f=0;break}else d=d+1|0}m=n+q;h[j>>3]=m;i=i+1|0;n=m}}while(0);l=t;return f|0}function xp(a){a=a|0;var b=0,c=0,d=0,e=0;b=0;e=Sy(a)|0;while(1){if(!e)break;else d=e;while(1){c=Ty(a,d)|0;if(!c)break;d=c;b=(Dp(e,c)|0)+b|0}e=Ty(a,e)|0}return b|0}function yp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0;e=+h[b+16>>3];h[171]=e;c[344]=c[b>>2];f=+h[b+8>>3];h[22872]=f;c[45742]=c[b+32>>2];d=+h[b+24>>3];if(d>0.0)h[170]=d;h[22868]=e*e;if(f==0.0)h[22872]=+C(+(+(a|0)))*.2*e;return}function zp(a){a=a|0;var b=0;b=c[344]|0;return +(+h[22872]*+(b-a|0)/+(b|0))}function Ap(b,d){b=b|0;d=+d;var e=0,f=0,g=0,i=0.0,j=0,k=0.0,l=0.0,m=0.0;e=Sy(b)|0;while(1){if(!e)break;j=(c[(c[e+16>>2]|0)+112>>2]|0)+16|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;e=Ty(b,e)|0}e=0;j=Sy(b)|0;while(1){if(!j)break;else g=j;while(1){f=Ty(b,g)|0;if(!f)break;g=f;e=(Bp(j,f)|0)+e|0}f=Ex(b,j)|0;while(1){if(!f)break;Cp(j,c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0);f=Gx(b,f)|0}j=Ty(b,j)|0}a:do if(!e)e=0;else{m=d*d;g=Sy(b)|0;while(1){if(!g)break a;f=c[g+16>>2]|0;if((a[f+119>>0]|0)!=3){j=c[f+112>>2]|0;k=+h[j+16>>3];i=+h[j+24>>3];l=i*i+k*k;if(l>2]|0;h[f>>3]=+h[f>>3]+k}else{l=+C(+l);f=c[f+132>>2]|0;h[f>>3]=+h[f>>3]+k*d/l;i=i*d/l}j=f+8|0;h[j>>3]=+h[j>>3]+i}g=Ty(b,g)|0}}while(0);return e|0}function Bp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0;g=c[(c[b+16>>2]|0)+132>>2]|0;f=c[(c[a+16>>2]|0)+132>>2]|0;d=+h[g>>3]-+h[f>>3];e=+h[g+8>>3]-+h[f+8>>3];return Fp(a,b,d,e,e*e+d*d)|0}function Cp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,l=0,m=0;if(!(Dp(a,b)|0)){i=c[b+16>>2]|0;m=c[i+132>>2]|0;f=c[a+16>>2]|0;l=c[f+132>>2]|0;e=+h[m>>3]-+h[l>>3];d=+h[m+8>>3]-+h[l+8>>3];g=+C(+(d*d+e*e));j=+Ep(a);j=+Ep(b)+j;k=g-j;g=k*k/((+h[171]+j)*g);e=g*e;b=c[i+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]-e;d=g*d;b=b+24|0;h[b>>3]=+h[b>>3]-d;b=c[f+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]+e;b=b+24|0;h[b>>3]=+h[b>>3]+d}return}function Dp(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=0.0,k=0,l=0;k=c[d+16>>2]|0;l=c[k+132>>2]|0;d=c[b+16>>2]|0;b=c[d+132>>2]|0;i=+h[l>>3]-+h[b>>3];j=+h[l+8>>3]-+h[b+8>>3];j=j<0.0?-j:j;b=(a[184296]|0)==0;e=+h[d+32>>3];if(b){f=+g[46072];e=e*.5*f;f=+h[k+32>>3]*.5*f}else{f=+g[46072];e=e*.5+f;f=+h[k+32>>3]*.5+f}if(!((i<0.0?-i:i)<=f+e))d=0;else{e=+h[d+40>>3];if(b){i=+g[46073];f=e*.5*i;e=+h[k+40>>3]*.5*i}else{i=+g[46073];f=e*.5+i;e=+h[k+40>>3]*.5+i}d=j<=e+f&1}return d|0}function Ep(b){b=b|0;var d=0.0,e=0.0;b=c[b+16>>2]|0;d=+h[b+32>>3];if(!(a[184296]|0)){e=d*.5*+g[46072];d=+h[b+40>>3]*.5*+g[46073]}else{e=d*.5+ +g[46072];d=+h[b+40>>3]*.5+ +g[46073]}return +(+C(+(d*d+e*e)))}function Fp(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0,i=0;while(1){if(!(f==0.0))break;f=+(5-((g2()|0)%10|0)|0);e=+(5-((g2()|0)%10|0)|0);d=f;f=e*e+f*f}g=Dp(a,b)|0;f=((g|0)==0?+h[22870]:+h[22869])/f;d=f*d;b=c[(c[b+16>>2]|0)+112>>2]|0;i=b+16|0;h[i>>3]=+h[i>>3]+d;f=f*e;b=b+24|0;h[b>>3]=+h[b>>3]+f;b=c[(c[a+16>>2]|0)+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]-d;b=b+24|0;h[b>>3]=+h[b>>3]-f;return g|0}function Gp(a){a=a|0;$M(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[46366]=2;Hp(a);return}function Hp(a){a=a|0;var b=0,d=0,e=0,f=0;e=uH((ay(a)|0)<<2)|0;b=uH(((ay(a)|0)<<2)+4|0)|0;f=a+16|0;c[(c[f>>2]|0)+152>>2]=b;b=Sy(a)|0;d=0;while(1){if(!b)break;$l(b);c[(c[b+16>>2]|0)+112>>2]=e+(d<<2);c[(c[(c[f>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;b=Ty(a,b)|0;d=d+1|0}d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;Ip(b);b=Gx(a,b)|0}d=Ty(a,d)|0}return}function Ip(a){a=a|0;var b=0.0;Az(a,134378,176,1)|0;eM(a)|0;b=+LL(a,c[46404]|0,1.0,0.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function Jp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n+4|0;k=n;a[m>>0]=a[18492]|0;a[m+1>>0]=a[18493]|0;a[m+2>>0]=a[18494]|0;a[m+3>>0]=a[18495]|0;m=Xx(91072,m,0)|0;Az(m,91080,280,1)|0;c[(c[b+16>>2]|0)+140>>2]=m;e=Sy(b)|0;while(1){if(!e)break;f=e+16|0;if(!(c[c[(c[f>>2]|0)+112>>2]>>2]|0)){j=Kp(m,ry(e)|0,e)|0;c[c[(c[f>>2]|0)+112>>2]>>2]=j}e=Ty(b,e)|0}f=Sy(b)|0;while(1){if(!f)break;e=Ex(b,f)|0;while(1){if(!e)break;h=c[e>>2]&3;g=c[c[(c[(c[((h|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;h=c[c[(c[(c[((h|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((g|0)!=(h|0))Az(Rx(m,g,h,0,1)|0,134378,176,1)|0;e=Gx(b,e)|0}f=Ty(b,f)|0}j=oD(m,k,0)|0;f=0;while(1){if((f|0)>=(c[k>>2]|0))break;h=c[j+(f<<2)>>2]|0;e=Sy(h)|0;while(1){if(!e)break;g=Ex(b,c[c[(c[e+16>>2]|0)+112>>2]>>2]|0)|0;while(1){if(!g)break;i=c[c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((e|0)!=(i|0)){i=Rx(m,e,i,0,1)|0;Az(i,134378,176,1)|0;Vx(h,i,1)|0}g=Gx(b,g)|0}e=Ty(h,e)|0}f=f+1|0}e=Sy(m)|0;while(1){if(!e)break;f=Ex(m,e)|0;while(1){if(!f)break;b=uH(8)|0;c[(c[f+16>>2]|0)+120>>2]=b;f=Gx(m,f)|0}e=Ty(m,e)|0}c[d>>2]=c[k>>2];l=n;return j|0}function Kp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=az(a,b,1)|0;Az(b,134365,304,1)|0;e=uH(40)|0;a=b+16|0;c[(c[a>>2]|0)+112>>2]=e;e=uH(c[46366]<<3)|0;a=c[a>>2]|0;c[a+132>>2]=e;e=c[d+16>>2]|0;h[a+88>>3]=+h[e+88>>3];h[a+96>>3]=+h[e+96>>3];h[a+80>>3]=+h[e+80>>3];c[c[a+112>>2]>>2]=d;return b|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;b=h+32|0;e=h;if(ay(a)|0){g=Jp(a,b)|0;f=c[b>>2]|0;b=c[g>>2]|0;if((f|0)==1){Xu(b,a);Mp(c[g>>2]|0);tq(a)|0}else{d=c[b+60>>2]|0;XD(a,2,8,e)|0;b=0;while(1){if((b|0)>=(f|0))break;i=c[g+(b<<2)>>2]|0;Xu(i,a);tq(i)|0;b=b+1|0}WD(f,g,d,e)|0;b=0;while(1){if((b|0)>=(f|0))break;Mp(c[g+(b<<2)>>2]|0);b=b+1|0}}D_(g)}l=h;return}function Mp(a){a=a|0;var b=0,d=0,e=0;b=Sy(a)|0;while(1){if(!b)break;d=c[b+16>>2]|0;e=c[d+132>>2]|0;d=c[(c[(c[c[d+112>>2]>>2]|0)+16>>2]|0)+132>>2]|0;h[d>>3]=+h[e>>3];h[d+8>>3]=+h[e+8>>3];b=Ty(a,b)|0}return}function Np(a){a=a|0;if(ay(a)|0){Gp(a);Lp(a);D_(c[(c[(Sy(a)|0)+16>>2]|0)+112>>2]|0);hn(a);eJ(a)}return}function Op(a){a=a|0;var b=0,d=0,e=0;b=Sy(a)|0;if(b|0){e=a+16|0;Pp(c[(c[e>>2]|0)+140>>2]|0);while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;JM(d);d=Gx(a,d)|0}HM(b);b=Ty(a,b)|0}D_(c[(c[e>>2]|0)+152>>2]|0);if((fz(a)|0)!=(a|0))Gz(a,0,134401)}return}function Pp(a){a=a|0;var b=0,d=0;d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;D_(c[(c[b+16>>2]|0)+120>>2]|0);b=Gx(a,b)|0}b=d+16|0;D_(c[(c[b>>2]|0)+112>>2]|0);D_(c[(c[b>>2]|0)+132>>2]|0);d=Ty(a,d)|0}$x(a)|0;return}function Qp(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0.0,p=0.0;m=l;l=l+16|0;k=m;a:do if(Rp(a,k)|0){b=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;g=+h[b>>3];e=+h[b+8>>3];b=Sy(a)|0;while(1){if(!b)break;f=c[(c[b+16>>2]|0)+132>>2]|0;h[f>>3]=+h[f>>3]-g;f=f+8|0;h[f>>3]=+h[f>>3]-e;b=Ty(a,b)|0}b=(g!=0.0|e!=0.0)&1;d=Sy(a)|0;while(1){if(!d)break a;f=Ex(a,d)|0;if(f|0)break;d=Ty(a,d)|0}n=c[f>>2]&3;d=c[(c[(c[((n|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;f=c[(c[(c[((n|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;i=+h[f+8>>3];j=+h[f>>3];e=+K(+(+h[d+8>>3]-i),+(+h[d>>3]-j));e=+h[k>>3]-e;h[k>>3]=e;if(e!=0.0){g=+E(+e);e=+F(+e);b=Sy(a)|0;while(1){if(!b){b=1;break a}k=c[(c[b+16>>2]|0)+132>>2]|0;p=+h[k>>3]-j;n=k+8|0;o=+h[n>>3]-i;h[k>>3]=p*g+j-o*e;h[n>>3]=p*e+i+o*g;b=Ty(a,b)|0}}}else b=0;while(0);l=m;return b|0}function Rp(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0;g=l;l=l+16|0;f=g;b=xx(b,91085)|0;do if((b|0)!=0?(a[b>>0]|0)!=0:0){e=+c2(b,f);if((c[f>>2]|0)==(b|0))if(!((QL(b)|0)<<24>>24)){b=0;break}else e=0.0;while(1){if(!(e>180.0))break;e=e+-360.0}while(1){if(!(e<=-180.0))break;e=e+360.0}h[d>>3]=e*.017453292519943295;b=1}else b=0;while(0);l=g;return b|0}function Sp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xx(a,91095)|0;return Tp(a,(d|0)==0?(c|0?c:191979):d,b)|0}function Tp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;m=n+16|0;j=n+8|0;i=n;if((d|0)!=0?(a[d>>0]|0)!=0:0){f=17792;while(1){g=c[f+4>>2]|0;if(!g)break;if(!(V$(d,g,c[f+8>>2]|0)|0)){k=6;break}f=f+16|0}if((k|0)==6){if(!(c[f+12>>2]|0)){c[i>>2]=g;Pw(0,91103,i)|0;f=17792}i=c[f>>2]|0;c[e>>2]=i;c[e+4>>2]=c[f+12>>2];if((i|0)==18)Up(b,d+(c[f+8>>2]|0)|0,e)}if(!(c[f+4>>2]|0)){f=RL(d,63)|0;if(f<<24>>24==63){c[j>>2]=d;Pw(0,91145,j)|0;f=0}else f=f&255;f=(f|0)==0;c[e>>2]=f&1;f=f?91192:132627;k=15}}else{c[e>>2]=0;f=132627;k=15}if((k|0)==15)c[e+4>>2]=f;if(0){k=c[15686]|0;j=c[e+8>>2]|0;o=+h[e+16>>3];c[m>>2]=c[e+4>>2];c[m+4>>2]=j;h[m+8>>3]=o;g1(k,91200,m)|0}l=n;return e|0}function Up(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=e+4|0;c[f>>2]=g;f=(N1(b,134313,f)|0)>0;b=c[g>>2]|0;c[d+8>>2]=f&(b|0)>-1?b:1e3;h[d+16>>3]=+LL(a,nx(a,0,91236,0)|0,-4.0,-1.0e10);l=e;return}function Vp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;g=h+8|0;f=h;do if((ay(a)|0)>=2){d=Qp(a)|0;d=(Wp(a)|0)+d|0;e=c[b>>2]|0;if(e){if(0){e=c[15686]|0;j=ry(a)|0;i=c[b+4>>2]|0;c[f>>2]=j;c[f+4>>2]=i;g1(e,91565,f)|0;e=c[b>>2]|0}if(e>>>0>2){switch(e|0){case 3:{e=Xq(a,1)|0;break}case 4:{e=Xq(a,0)|0;break}case 6:case 5:{e=0;break}case 10:case 9:case 7:case 8:case 14:case 13:case 11:case 12:{Hq(a,e)|0;e=0;break}case 15:{e=Xq(a,-1)|0;break}default:{c[g>>2]=c[b+4>>2];Pw(0,91588,g)|0;e=0}}d=e+d|0;break}if(Xp(a)|0){Yp();D_(c[46075]|0);c[46075]=0;break}Zp(a);if((c[b>>2]|0)==2)e=_p()|0;else e=$p()|0;if(e|0)aq();Yp();D_(c[46075]|0);c[46075]=0;d=e+d|0}}else d=0;while(0);l=h;return d|0}function Wp(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;i=m+24|0;f=m+16|0;j=m;b=xx(a,137660)|0;a:do if(((b|0)!=0?(k=j+8|0,c[f>>2]=j,c[f+4>>2]=k,e=N1(b,102477,f)|0,(e|0)!=0):0)?(g=+h[j>>3],!(+B(+g)<1.0e-09)):0){if((e|0)!=1){d=+h[k>>3];if(+B(+d)<1.0e-09){b=0;break}}else{h[k>>3]=g;d=g}if(!(d==1.0&g==1.0)){if(0){f=c[15686]|0;h[i>>3]=g;h[i+8>>3]=d;g1(f,91748,i)|0}b=Sy(a)|0;while(1){if(!b){b=1;break a}i=c[(c[b+16>>2]|0)+132>>2]|0;h[i>>3]=+h[i>>3]*+h[j>>3];i=i+8|0;h[i>>3]=+h[i>>3]*+h[k>>3];b=Ty(a,b)|0}}else b=0}else b=0;while(0);l=m;return b|0}function Xp(b){b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;k=n;c[46084]=ay(b)|0;ur();c[46099]=vH((c[46084]|0)*96|0)|0;f=Sy(b)|0;d=c[46099]|0;qq(k,b);i=+g[k>>2];j=+g[k+4>>2];k=(a[k+8>>0]|0)==0;j=k?j:j*.013888888888888888;i=k?i:i*.013888888888888888;k=k?2:1;e=0;while(1){if((e|0)>=(c[46084]|0)){d=0;break}o=c[(c[f+16>>2]|0)+132>>2]|0;h[d+8>>3]=+h[o>>3];h[d+16>>3]=+h[o+8>>3];if(mb[k&3](d+40|0,f,i,j)|0){m=4;break}c[d+24>>2]=e;c[d+28>>2]=1;c[d>>2]=f;c[d+88>>2]=0;d=d+96|0;e=e+1|0;f=Ty(b,f)|0}if((m|0)==4){D_(c[46099]|0);c[46099]=0;d=1}l=n;return d|0}function Yp(){var a=0,b=0;a=c[46099]|0;b=0;while(1){if((b|0)>=(c[46084]|0))break;pt(a+40|0);a=a+96|0;b=b+1|0}ot();Wr();D_(c[46099]|0);return}function Zp(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0;o=l;l=l+32|0;m=o+16|0;n=o;p=c[46099]|0;i=+h[p+8>>3];k=+h[p+16>>3];f=c[46084]|0;d=p;e=1;g=+h[p+40>>3]+i;i=+h[p+56>>3]+i;j=+h[p+48>>3]+k;k=+h[p+64>>3]+k;while(1){if((e|0)>=(f|0))break;s=+h[d+104>>3];q=+h[d+112>>3];t=+h[d+136>>3]+s;r=+h[d+144>>3]+q;s=+h[d+152>>3]+s;q=+h[d+160>>3]+q;d=d+96|0;e=e+1|0;g=ti?s:i;j=rk?q:k}d=xx(b,91688)|0;if(d|0?a[d>>0]|0:0)h[173]=+b2(d);s=+h[173];t=s*(k-j);s=s*(i-g);h[m>>3]=g-s;h[m+8>>3]=j-t;h[n>>3]=s+i;h[n+8>>3]=t+k;iq(m,n);l=o;return}function _p(){var a=0,b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(bq(0)|0){cq();a=0;do{pq();a=a+1|0}while((bq(a)|0)!=0);if(!0)a=1;else{e=c[15686]|0;c[b>>2]=a;g1(e,91616,b)|0;a=1}}else a=0;l=d;return a|0}function $p(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i+8|0;g=i;b=bq(0)|0;if(!b)a=0;else{cq();dq(0);Yt(0,1);a=0;e=0;d=0;while(1){fq();d=d+1|0;f=bq(d)|0;if(!f)break;b=(f|0)<(b|0)?0:e+1|0;c[46076]=1;if(b){gq();a=a+1|0}dq(1);Yt(0,1);e=b;b=f}if(0){f=c[15686]|0;c[g>>2]=d;g1(f,91616,g)|0;c[h>>2]=a;g1(f,91643,h)|0}hq();a=1}l=i;return a|0}function aq(){var a=0,b=0,d=0,e=0;d=c[46084]|0;a=c[46099]|0;b=0;while(1){if((b|0)>=(d|0))break;e=c[(c[(c[a>>2]|0)+16>>2]|0)+132>>2]|0;h[e>>3]=+h[a+8>>3];h[e+8>>3]=+h[a+16>>3];a=a+96|0;b=b+1|0}return}function bq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;o=q+24|0;n=q+8|0;p=q;d=c[46099]|0;e=c[46084]|0;b=0;while(1){if((b|0)>=(e|0)){f=0;b=0;break}c[d+(b*96|0)+32>>2]=0;b=b+1|0}a:while(1){if((b|0)>=(e+-1|0))break;m=d+96|0;b=b+1|0;j=d+8|0;k=d+40|0;i=d+32|0;g=m;h=b;while(1){if((h|0)>=(e|0)){d=m;continue a}e=g+8|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];if(!(yt(n,k,o,g+40|0)|0))d=f;else{c[i>>2]=1;c[g+32>>2]=1;d=f+1|0}g=g+96|0;h=h+1|0;f=d;e=c[46084]|0}}if(0>1){o=c[15686]|0;c[p>>2]=a;c[p+4>>2]=f;g1(o,91669,p)|0}l=q;return f|0}function cq(){var a=0,b=0,d=0,e=0.0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0;nq();k=c[46078]|0;l=c[46099]|0;a=c[46075]|0;a:while(1){i=a;if(a>>>0>=k>>>0)break;b=a+4|0;if(b>>>0>=k>>>0){a=b;continue}f=c[b>>2]|0;d=c[a>>2]|0;g=+h[d>>3];if(+h[f>>3]!=g){a=b;continue}e=+h[d+8>>3];if(+h[f+8>>3]!=e){a=b;continue}j=a+8|0;f=2;while(1){if(j>>>0>=k>>>0)break;d=c[j>>2]|0;if(!(+h[d>>3]==g)){m=11;break}if(!(+h[d+8>>3]==e)){m=11;break}j=j+4|0;f=f+1|0}if((m|0)==11){m=0;d=c[j>>2]|0;if(+h[d+8>>3]==e){e=(+h[d>>3]-g)/+(f|0);d=(((j>>>0>b>>>0?j:b)+-1+(0-i)|0)>>>2)+1|0;a=1;while(1){if((a|0)==(d|0)){a=j;continue a}i=c[b>>2]|0;h[i>>3]=+h[i>>3]+e*+(a|0);a=a+1|0;b=b+4|0}}}while(1){if(b>>>0>=j>>>0){a=j;continue a}f=c[a>>2]|0;n=c[f+16>>2]|0;i=c[b>>2]|0;d=c[i+16>>2]|0;h[i>>3]=(+h[l+(n*96|0)+56>>3]-+h[l+(n*96|0)+40>>3]+ +h[l+(d*96|0)+56>>3]-+h[l+(d*96|0)+40>>3])*.5+ +h[f>>3];b=b+4|0;a=a+4|0}}return}function dq(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0;if(a|0)nq();i=c[46075]|0;j=c[i>>2]|0;d=+h[j>>3];h[22887]=d;k=c[46084]|0;f=1;g=+h[j>>3];while(1){if((f|0)>=(k|0))break;a=c[i+(f<<2)>>2]|0;b=+h[a>>3];if(b>3]}else{e=b;b=d}f=f+1|0;d=b;g=e>g?e:g}e=+h[j+8>>3];h[22888]=e;h[22890]=+h[(c[i+(k+-1<<2)>>2]|0)+8>>3]-e;h[22889]=g-d;return}function eq(){var a=0;a=c[46077]|0;if(a>>>0<(c[46078]|0)>>>0){c[46077]=a+4;a=c[a>>2]|0}else a=0;return a|0}function fq(){var a=0,b=0,d=0;a=c[46099]|0;jq();d=(c[46076]|0)==0;b=0;while(1){if((b|0)>=(c[46084]|0))break;if(!(d?!(c[a+32>>2]|0):0))kq(a);a=a+96|0;b=b+1|0}return}function gq(){var a=0,b=0,c=0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0;a=l;l=l+32|0;c=a+16|0;b=a;j=+h[22883];i=+h[22881];g=+h[22884];e=+h[22882];d=(i-e)*.05;f=(j-g)*.05;h[b>>3]=f+j;h[b+8>>3]=i+d;h[c>>3]=g-f;h[c+8>>3]=e-d;iq(c,b);l=a;return}function hq(){Hr();Jr();Kt();nr();return}function iq(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0;f=+h[a>>3];h[22884]=f;e=+h[b>>3];h[22883]=e;c=+h[a+8>>3];h[22882]=c;d=+h[b+8>>3];h[22881]=d;h[22873]=f;h[22875]=f;h[22877]=e;h[22879]=e;h[22880]=d;h[22876]=d;h[22878]=c;h[22874]=c;return}function jq(){var a=0,b=0.0,d=0.0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;m=c[46099]|0;g=m+8|0;f=+vr(g,182984);e=+vr(g,183e3);d=+vr(g,183016);a=1;b=+vr(g,183032);g=m;i=m;j=m;k=m;while(1){l=m+96|0;if((a|0)>=(c[46084]|0))break;q=m+104|0;r=+vr(q,182984);n=r>2]|0;o=k+8|0;b=0.0;d=0.0;e=0.0;k=c[k>>2]|0;while(1){f=c[k>>2]|0;if(!f)break;s=k+8|0;r=f+8|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];q=+lq(g,i,j);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];mq(g,i,j,m,n);b=+h[n>>3]*q+b;d=+h[m>>3]*q+d;e=q+e;k=f}h[a+8>>3]=d/e;h[a+16>>3]=b/e;l=p;return}function lq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;d=+h[b+8>>3];f=+h[c+8>>3];e=+h[a+8>>3];return +(+B(+((f-e)*+h[b>>3]+(d-f)*+h[a>>3]+ +h[c>>3]*(e-d)))*.5)}function mq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;h[d>>3]=(+h[b>>3]+ +h[a>>3]+ +h[c>>3])*.3333333333333333;h[e>>3]=(+h[b+8>>3]+ +h[a+8>>3]+ +h[c+8>>3])*.3333333333333333;return}function nq(){var a=0,b=0,d=0,e=0;a=c[46075]|0;if(!a){a=vH(c[46084]<<2)|0;c[46075]=a;c[46078]=a+(c[46084]<<2)}d=c[46099]|0;Wr();e=c[46084]|0;b=0;while(1){if((b|0)>=(e|0))break;c[a>>2]=d+8;c[d+88>>2]=0;c[d+28>>2]=1;d=d+96|0;a=a+4|0;b=b+1|0}_0(c[46075]|0,e,4,68);c[46077]=c[46075];return}function oq(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a>>2]|0;b=c[b>>2]|0;d=+h[a+8>>3];e=+h[b+8>>3];if(!(de)){e=+h[a>>3];d=+h[b>>3];if(ed&1}else a=1;else a=-1;return a|0}function pq(){var a=0,b=0,d=0,e=0;d=c[46084]|0;a=0;b=c[46099]|0;while(1){if((a|0)>=(d|0))break;e=b+8|0;h[e>>3]=+h[e>>3]*1.05;e=b+16|0;h[e>>3]=+h[e>>3]*1.05;a=a+1|0;b=b+96|0}return}function qq(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;k=m;j=m+24|0;f=xx(e,91700)|0;if(!((f|0)!=0?(rq(f,j,1.0,0.0)|0)!=0:0))i=3;do if((i|0)==3){e=xx(e,91704)|0;if(e|0?rq(e,j,.800000011920929,4.0)|0:0)break;g[j+4>>2]=4.0;g[j>>2]=4.0;a[j+8>>0]=1}while(0);if(0){i=c[15686]|0;o=+g[j>>2];n=+g[j+4>>2];c[k>>2]=d[j+8>>0];h[k+8>>3]=o;h[k+16>>3]=n;g1(i,91709,k)|0};c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];l=m;return}function rq(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;o=l;l=l+16|0;m=o;j=o+12|0;k=o+8|0;while(1){h=a[b>>0]|0;i=b+1|0;if(!(B$(h<<24>>24)|0))break;else b=i}p=h<<24>>24==43;h=d+8|0;a[h>>0]=p&1;c[m>>2]=j;c[m+4>>2]=k;switch(N1(p?i:b,91742,m)|0){case 0:{b=0;break}case 1:{c[k>>2]=c[j>>2];n=5;break}default:n=5}if((n|0)==5){do if(a[h>>0]|0){if(e>1.0){q=+g[j>>2]/e;g[d>>2]=q>f?f:q;e=+g[k>>2]/e;e=e>f?f:e;break}if(e<1.0){q=+g[j>>2]/e;g[d>>2]=q>2]/e;e=e>2]=c[j>>2];e=+g[k>>2];break}}else{g[d>>2]=+g[j>>2]/e+1.0;e=+g[k>>2]/e+1.0}while(0);g[d+4>>2]=e;b=1}l=o;return b|0}function sq(a,b){a=a|0;b=b|0;var c=0,d=0;d=l;l=l+32|0;c=d;if((ay(a)|0)<2)a=0;else{Tp(a,b,c)|0;a=Vp(a,c)|0}l=d;return a|0}function tq(a){a=a|0;return sq(a,xx(a,91095)|0)|0}function uq(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;k=m;j=m+24|0;f=xx(e,91704)|0;if(!((f|0)!=0?(rq(f,j,1.0,0.0)|0)!=0:0))i=3;do if((i|0)==3){e=xx(e,91700)|0;if(e|0?rq(e,j,1.25,3.200000047683716)|0:0)break;g[j+4>>2]=3.200000047683716;g[j>>2]=3.200000047683716;a[j+8>>0]=1}while(0);if(0){i=c[15686]|0;o=+g[j>>2];n=+g[j+4>>2];c[k>>2]=d[j+8>>0];h[k+8>>3]=o;h[k+16>>3]=n;g1(i,91771,k)|0};c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];l=m;return}function vq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;o=p;h=0;while(1){if((h|0)>=(d|0))break;c[e+(h<<2)>>2]=-1;h=h+1|0}c[e+(a<<2)>>2]=0;wq(f,a);a:do if(!(c[b+8>>2]|0)){h=2147483647;b:while(1){if(!((xq(f,o)|0)<<24>>24))break a;j=c[o>>2]|0;h=c[e+(j<<2)>>2]|0;i=b+(j*20|0)|0;j=b+(j*20|0)+4|0;k=h+1|0;a=1;while(1){if((a|0)>=(c[i>>2]|0))continue b;m=c[(c[j>>2]|0)+(a<<2)>>2]|0;n=e+(m<<2)|0;if((c[n>>2]|0)<0){c[n>>2]=k;yq(f,m)|0}a=a+1|0}}}else{h=2147483647;c:while(1){if(!((xq(f,o)|0)<<24>>24))break a;k=c[o>>2]|0;h=c[e+(k<<2)>>2]|0;i=b+(k*20|0)|0;j=b+(k*20|0)+4|0;k=b+(k*20|0)+8|0;a=1;while(1){if((a|0)>=(c[i>>2]|0))continue c;m=c[(c[j>>2]|0)+(a<<2)>>2]|0;n=e+(m<<2)|0;if((c[n>>2]|0)<0){c[n>>2]=h+~~+g[(c[k>>2]|0)+(a<<2)>>2];yq(f,m)|0}a=a+1|0}}}while(0);a=h+10|0;h=0;while(1){if((h|0)>=(d|0))break;i=e+(h<<2)|0;if((c[i>>2]|0)<0)c[i>>2]=a;h=h+1|0}l=p;return}function wq(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a+12>>2]=0;c[a+8>>2]=1;return}function xq(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+12|0;e=c[d>>2]|0;if((e|0)<(c[a+8>>2]|0)){a=c[a>>2]|0;c[d>>2]=e+1;c[b>>2]=c[a+(e<<2)>>2];a=1}else a=0;return a|0}function yq(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+8|0;e=c[d>>2]|0;if((e|0)<(c[a+4>>2]|0)){a=c[a>>2]|0;c[d>>2]=e+1;c[a+(e<<2)>>2]=b;a=1}else a=0;return a|0}function zq(a,b){a=a|0;b=b|0;c[a>>2]=vH(b<<2)|0;c[a+4>>2]=b;c[a+8>>2]=0;c[a+12>>2]=0;return}function Aq(a){a=a|0;D_(c[a>>2]|0);return}function Bq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0;if(!0)g=0;else{E1(91804,25,1,c[15686]|0)|0;g=0}while(1){if((g|0)>=(a|0))break;i=b+(g<<2)|0;f=0;e=0.0;while(1){if((f|0)==(a|0))break;if((g|0)!=(f|0))e=+h[(c[i>>2]|0)+(f<<3)>>3]+e;f=f+1|0}h[(c[i>>2]|0)+(g<<3)>>3]=-e;g=g+1|0}return xs(b,d,a+-1|0)|0}function Cq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0;j=wn(b,b,0.0)|0;k=wn(b,b,0.0)|0;e=Sy(a)|0;while(1){if(!e)break;d=Jx(a,e)|0;while(1){if(!d)break;g=c[d>>2]&3;f=(c[c[((g|0)==3?d:d+48|0)+40>>2]>>2]|0)>>>4;g=(c[c[((g|0)==2?d:d+-48|0)+40>>2]>>2]|0)>>>4;if((f|0)!=(g|0)){l=-1.0/+h[(c[d+16>>2]|0)+136>>3];h[(c[j+(g<<2)>>2]|0)+(f<<3)>>3]=l;h[(c[j+(f<<2)>>2]|0)+(g<<3)>>3]=l}d=Kx(a,d,e)|0}e=Ty(a,e)|0}i=Bq(b,j,k)|0;a:do if(i|0){f=a+16|0;e=0;while(1){if((e|0)>=(b|0))break a;g=k+(e<<2)|0;d=0;while(1){if((d|0)==(b|0))break;a=c[g>>2]|0;h[(c[(c[(c[f>>2]|0)+160>>2]|0)+(e<<2)>>2]|0)+(d<<3)>>3]=+h[(c[k+(d<<2)>>2]|0)+(d<<3)>>3]+ +h[a+(e<<3)>>3]+ +h[a+(d<<3)>>3]*-2.0;d=d+1|0}e=e+1|0}}while(0);xn(j);xn(k);return i|0}function Dq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;j=s;n=d<<3;o=vH(n)|0;p=vH(n)|0;q=vH(n)|0;k=vH(n)|0;m=vH(n)|0;n=vH(n)|0;Ps(d,c,n);Is(d,n);Is(d,b);Ks(a,d,b,k);Ms(d,n,k,o);Ps(d,o,p);i=f+-1|0;c=0;g=+Qs(d,o,o);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+Rs(d,o)>e)){c=0;break}Ks(a,d,p,q);h=+Qs(d,p,q);if(h==0.0){c=0;break}h=g/h;Os(d,p,h,m);Ns(d,b,m,b);if((c|0)<(i|0)){Os(d,q,h,q);Ms(d,o,q,o);h=+Qs(d,o,o);if(g==0.0){r=7;break}Os(d,p,h/g,p);Ns(d,o,p,p);g=h}c=c+1|0}if((r|0)==7){Pw(1,91830,j)|0;c=1}D_(o);D_(p);D_(q);D_(k);D_(m);D_(n);l=s;return c|0}function Eq(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;j=s;o=d<<3;p=vH(o)|0;q=vH(o)|0;k=vH(o)|0;m=vH(o)|0;n=vH(o)|0;o=vH(o)|0;Ps(d,c,o);if(g<<24>>24){Is(d,o);Is(d,b)}Ls(a,d,b,m);Ms(d,o,m,p);Ps(d,p,q);g=f+-1|0;c=0;h=+Qs(d,p,p);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+Rs(d,p)>e)){c=0;break}Ls(a,d,q,k);i=+Qs(d,q,k);if(i==0.0){c=0;break}i=h/i;Os(d,q,i,n);Ns(d,b,n,b);if((c|0)<(g|0)){Os(d,k,i,k);Ms(d,p,k,p);i=+Qs(d,p,p);if(h==0.0){r=9;break}Os(d,q,i/h,q);Ns(d,p,q,q);h=i}c=c+1|0}if((r|0)==9){Pw(1,91830,j)|0;c=1}D_(p);D_(q);D_(k);D_(m);D_(n);D_(o);l=s;return c|0}function Fq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;j=q;k=d<<2;m=uH(k)|0;n=uH(k)|0;o=uH(k)|0;k=uH(k)|0;Ts(d,b);Ts(d,c);Us(a,d,b,k);Ts(d,k);Vs(d,c,k,m);Zs(d,m,n);i=f+-1|0;c=0;g=+_s(d,m,m);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+bt(d,m)>e)){c=0;break}Ts(d,n);Ts(d,b);Ts(d,m);Us(a,d,n,o);Ts(d,o);h=+_s(d,n,o);if(h==0.0){c=0;break}h=g/h;Xs(d,b,h,n);if((c|0)<(i|0)){Xs(d,m,-h,o);h=+_s(d,m,m);if(g==0.0){p=7;break}Ys(d,n,h/g,n);Ws(d,m,n,n);g=h}c=c+1|0}if((p|0)==7){Pw(1,91830,j)|0;c=1}D_(m);D_(n);D_(o);D_(k);l=q;return c|0}function Gq(a,b,d,e,f,i,j,k,m,n){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;var o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0.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.0;M=l;l=l+48|0;F=M+24|0;E=M+16|0;D=M+8|0;C=M;J=M+40|0;K=M+36|0;H=M+32|0;s=j&4;c[J>>2]=0;c[K>>2]=0;a:do if(c[a+16>>2]|0){p=0;o=0;while(1){if((p|0)>=(b|0))break;t=c[a+(p*20|0)>>2]|0;u=a+(p*20|0)+16|0;r=1;while(1){if((r|0)>=(t|0))break;if(!(o<<24>>24))o=+g[(c[u>>2]|0)+(r<<2)>>2]!=0.0;else o=1;r=r+1|0;o=o&1}p=p+1|0}if(o<<24>>24){z=(s|0)!=0;if(z){r=e+4|0;b:do if((i|0)>2){o=i+-1|0;if((qn(a,b,d,r,f,o,j,k,15)|0)<0){o=-1;break a}p=e+(o<<2)|0;o=0;while(1){if((o|0)>=(b|0))break b;h[(c[p>>2]|0)+(o<<3)>>3]=+h[(c[r>>2]|0)+(o<<3)>>3];o=o+1|0}}while(0);y=c[e>>2]|0;w=c[r>>2]|0;if((kt(a,b,w,b)|0)==0?(kv(a,b,.01,.1,w,J,K,H)|0)==0:0){x=c[H>>2]|0;if((x|0)<1){o=qn(a,b,d,e,f,i,j,k,m)|0;break}c:do if(n>0.0){s=c[J>>2]|0;t=c[K>>2]|0;u=x+-1|0;q=0.0;r=0;while(1){if((r|0)>=(x|0))break c;o=c[t+(r<<2)>>2]|0;A=n-q-+h[w+(c[s+(o<<2)>>2]<<3)>>3]+ +h[w+(c[s+(o+-1<<2)>>2]<<3)>>3];q=(A<0.0?0.0:A)+q;if((r|0)<(u|0))p=c[t+(r+1<<2)>>2]|0;else p=b;while(1){if((o|0)>=(p|0))break;I=w+(c[s+(o<<2)>>2]<<3)|0;h[I>>3]=+h[I>>3]+q;o=o+1|0}r=r+1|0}}while(0);if((i|0)==2?(Qt(a,b,w,y,+h[22909])|0)!=0:0){p=0;o=-1}else L=33}else{p=0;o=-1}}else{kn(a,b,i,e,f)|0;if(!(kv(a,b,.01,.1,0,J,K,H)|0))L=33;else{p=0;o=-1}}d:do if((L|0)==33){if((b|0)==1){o=0;break a}I=vH(c[H>>2]<<2)|0;if(!m){o=0;break a}if(0)EL();switch(k|0){case 2:{if(0)E1(91878,24,1,c[15686]|0)|0;o=pn(a,b)|0;L=46;break}case 1:{o=ln(a,b)|0;if(!o){Pw(0,91903,C)|0;Pw(3,91952,D)|0;L=47}else G=o;break}case 3:{if(0)E1(92005,21,1,c[15686]|0)|0;o=mn(a,b)|0;L=46;break}default:L=47}if((L|0)==46)if(!o)L=47;else G=o;if((L|0)==47){if(0)E1(92027,26,1,c[15686]|0)|0;G=on(a,b)|0}if(0){a=c[15686]|0;h[E>>3]=+FL();g1(a,92054,E)|0;E1(92066,25,1,a)|0;EL()}a=b+-1|0;y=(O(a,b)|0)/2|0;E=y+b|0;e:do if(!z){q=1.0;p=0;while(1){if((p|0)>=(i|0))break;r=e+(p<<2)|0;o=0;while(1){if((o|0)>=(b|0))break;A=+B(+(+h[(c[r>>2]|0)+(o<<3)>>3]));q=A>q?A:q;o=o+1|0}p=p+1|0}q=1.0/q;p=0;while(1){if((p|0)>=(i|0))break e;r=e+(p<<2)|0;o=0;while(1){if((o|0)>=(b|0))break;D=(c[r>>2]|0)+(o<<3)|0;h[D>>3]=+h[D>>3]*(10.0*q);o=o+1|0}p=p+1|0}}while(0);f:do if(n>0.0){v=+(y|0);o=0;q=0.0;s=0;g:while(1){if((s|0)>=(a|0))break;t=s+1|0;r=o;p=t;while(1){o=r+1|0;if((p|0)>=(b|0)){s=t;continue g}A=+gs(e,i,s,p);r=o;q=A/+g[G+(o<<2)>>2]+q;p=p+1|0}}q=q/v;o=0;while(1){if((o|0)>=(E|0)){o=0;break f}D=G+(o<<2)|0;g[D>>2]=+g[D>>2]*q;o=o+1|0}}else o=0;while(0);while(1){if((o|0)>=(i|0))break;Is(b,c[e+(o<<2)>>2]|0);o=o+1|0}p=c[e+4>>2]|0;q=+h[p>>3];o=0;while(1){if((o|0)>=(b|0))break;D=p+(o<<3)|0;h[D>>3]=+h[D>>3]-q;o=o+1|0}u=i<<2;D=vH(u)|0;x=b<<2;w=O(x,i)|0;r=vH(w)|0;o=0;while(1){if((o|0)>=(i|0))break;s=r+((O(o,b)|0)<<2)|0;c[D+(o<<2)>>2]=s;t=e+(o<<2)|0;p=0;while(1){if((p|0)>=(b|0))break;g[s+(p<<2)>>2]=+h[(c[t>>2]|0)+(p<<3)>>3];p=p+1|0}o=o+1|0}v=+(y|0);if(0){C=c[15686]|0;h[F>>3]=+FL();g1(C,92092,F)|0}ct(E,G);dt(E,G);C=vH(b<<3)|0;$s(b,0.0,C);o=0;r=0;while(1){if((r|0)>=(a|0)){o=b;p=0;r=0;break}s=b-r|0;q=0.0;p=1;while(1){o=o+1|0;if((p|0)>=(s|0))break;A=+g[G+(o<<2)>>2];F=C+(p+r<<3)|0;h[F>>3]=+h[F>>3]-A;q=q+A;p=p+1|0}F=C+(r<<3)|0;h[F>>3]=+h[F>>3]-q;r=r+1|0}while(1){if((p|0)>=(b|0))break;g[G+(r<<2)>>2]=+h[C+(p<<3)>>3];F=o+r|0;o=o+-1|0;p=p+1|0;r=F}k=vH(u)|0;c[k>>2]=vH(w)|0;o=1;while(1){if((o|0)>=(i|0))break;c[k+(o<<2)>>2]=(c[k>>2]|0)+((O(o,b)|0)<<2);o=o+1|0}z=vH(x)|0;f=vH(x)|0;j=vH(E<<2)|0;p=Et(G,b)|0;d=Jt(G,b,c[J>>2]|0,c[K>>2]|0,c[H>>2]|0)|0;y=k+4|0;r=0;A=1797693134862315708145274.0e284;o=0;while(1){if(!(r<<24>>24==0&(o|0)<(m|0)))break;$s(b,0.0,C);et(E,G,j);w=0;t=0;while(1){if((w|0)>=(a|0)){r=0;s=b;t=0;break}x=b-w+-1|0;at(b,0.0,f);r=0;while(1){if((r|0)>=(i|0))break;H=D+(r<<2)|0;at(x,+g[(c[H>>2]|0)+(w<<2)>>2],z);Xs(x,z,-1.0,(c[H>>2]|0)+(w<<2)+4|0);ct(x,z);Ws(x,z,f,f);r=r+1|0}ft(x,f);r=0;while(1){if((r|0)>=(x|0))break;s=f+(r<<2)|0;q=+g[s>>2];if(q>=3402823466385288598117041.0e14|q<0.0)g[s>>2]=0.0;r=r+1|0}u=w+1|0;q=0.0;r=t;s=0;while(1){r=r+1|0;if((s|0)>=(x|0))break;H=j+(r<<2)|0;N=+g[H>>2]*+g[f+(s<<2)>>2];g[H>>2]=N;H=C+(u+s<<3)|0;h[H>>3]=+h[H>>3]-N;q=q+N;s=s+1|0}t=C+(w<<3)|0;h[t>>3]=+h[t>>3]-q;w=u;t=r}while(1){if((r|0)>=(b|0)){r=0;break}g[j+(t<<2)>>2]=+h[C+(r<<3)>>3];H=s+t|0;r=r+1|0;s=s+-1|0;t=H}while(1){if((r|0)>=(i|0)){q=0.0;r=0;break}Us(j,b,c[D+(r<<2)>>2]|0,c[k+(r<<2)>>2]|0);r=r+1|0}while(1){if((r|0)>=(i|0))break;q=+_s(b,c[D+(r<<2)>>2]|0,c[k+(r<<2)>>2]|0)+q;r=r+1|0}q=q*2.0+v;r=0;while(1){if((r|0)>=(i|0))break;H=D+(r<<2)|0;Us(G,b,c[H>>2]|0,z);q=q-+_s(b,c[H>>2]|0,z);r=r+1|0}N=+B(+(q-A))/+B(+(A+1.0e-10));r=((o|0)>1&q>A|N<+h[22909])&1;s=0;while(1){if((s|0)>=(i|0))break;if((s|0)!=1){if(Fq(G,c[D+(s<<2)>>2]|0,c[k+(s<<2)>>2]|0,b,.001,b)|0){o=-1;break d}}else Ft(d,c[y>>2]|0,D,i,1,15,I,n)|0;s=s+1|0}A=q;o=o+1|0}D_(I);It(d);if(D|0){r=0;while(1){if((r|0)>=(i|0))break;t=D+(r<<2)|0;u=e+(r<<2)|0;s=0;while(1){if((s|0)>=(b|0))break;h[(c[u>>2]|0)+(s<<3)>>3]=+g[(c[t>>2]|0)+(s<<2)>>2];s=s+1|0}r=r+1|0}D_(c[D>>2]|0);D_(D)}if(k|0){D_(c[k>>2]|0);D_(k)}D_(z);D_(f);D_(C);D_(G);D_(j)}while(0);D_(c[J>>2]|0);D_(c[K>>2]|0);if(p){D_(c[p>>2]|0);D_(p)}}else L=10}else L=10;while(0);if((L|0)==10)o=qn(a,b,d,e,f,i,j,k,m)|0;l=M;return o|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;f=m+24|0;g=m+12|0;d=m;i=ay(a)|0;k=vH(i*48|0)|0;qq(d,a);c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];d=Sy(a)|0;e=k;while(1){if(!d)break;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];Iq(d,e,f);d=Ty(a,d)|0;e=e+48|0}a:do if(!(Jq(k,i)|0))d=0;else{switch(b|0){case 9:{Lq(a,k,i,69,1);Nq(a,k,i,70,1);d=0;e=k;break}case 10:{Nq(a,k,i,70,1);Lq(a,k,i,69,1);d=0;e=k;break}case 7:{Lq(a,k,i,71,1);Nq(a,k,i,70,1);j=9;break}case 8:{j=9;break}case 13:{j=10;break}case 14:{Nq(a,k,i,70,0);Lq(a,k,i,69,0);d=0;e=k;break}case 12:{Nq(a,k,i,72,0);Lq(a,k,i,69,0);d=0;e=k;break}default:{Lq(a,k,i,71,0);Nq(a,k,i,70,0);d=0;e=k}}if((j|0)==9){Nq(a,k,i,72,1);Lq(a,k,i,69,1);j=10}if((j|0)==10){Lq(a,k,i,69,0);Nq(a,k,i,70,0);d=0;e=k}while(1){if((d|0)>=(i|0)){d=1;break a}g=c[e+16>>2]|0;j=c[(c[(c[e+20>>2]|0)+16>>2]|0)+132>>2]|0;h[j>>3]=+(c[e+12>>2]|0)*1.3888888888888887e-03;h[j+8>>3]=+(g|0)*1.3888888888888887e-03;d=d+1|0;e=e+48|0}}while(0);D_(k);l=m;return d|0}function Iq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,l=0.0,m=0.0;f=c[b+16>>2]|0;k=c[f+132>>2]|0;l=+h[k>>3]*720.0;j=~~(l+(l>=0.0?.5:-.5));l=+h[k+8>>3]*720.0;k=~~(l+(l>=0.0?.5:-.5));if(!(a[e+8>>0]|0)){m=+h[f+32>>3]*72.0*(+g[e>>2]*5.0);l=+h[f+40>>3]*72.0*(+g[e+4>>2]*5.0);i=~~(m+(m>=0.0?.5:-.5));f=~~(l+(l>=0.0?.5:-.5))}else{l=+h[f+32>>3]*36.0;m=+h[f+40>>3]*36.0;i=~~((+g[e>>2]+ +(~~(l+(l>=0.0?.5:-.5))|0))*10.0);f=~~((+g[e+4>>2]+ +(~~(m+(m>=0.0?.5:-.5))|0))*10.0)}c[d+12>>2]=j;c[d+16>>2]=k;c[d+20>>2]=b;c[d+32>>2]=j-i;c[d+36>>2]=k-f;c[d+40>>2]=i+j;c[d+44>>2]=f+k;return}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=b+-1|0;d=0;a:while(1){if((d|0)>=(k|0)){a=0;break}j=a+48|0;d=d+1|0;g=a+32|0;h=a+40|0;i=a+36|0;f=a+44|0;a=j;e=d;while(1){if((e|0)>=(b|0)){a=j;continue a}if((((c[g>>2]|0)<=(c[a+40>>2]|0)?(c[a+32>>2]|0)<=(c[h>>2]|0):0)?(c[i>>2]|0)<=(c[a+44>>2]|0):0)?(c[a+36>>2]|0)<=(c[f>>2]|0):0){a=1;break a}a=a+48|0;e=e+1|0}}return a|0}function Kq(a,b){a=a|0;b=b|0;if((c[a+36>>2]|0)>(c[b+44>>2]|0))a=0;else a=(c[b+36>>2]|0)<=(c[a+44>>2]|0)&1;return a|0}function Lq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Cw(18064,c[4558]|0)|0;g=b;h=0;while(1){if((h|0)>=(d|0))break;c[g+8>>2]=c[g+12>>2];nb[c[i>>2]&63](i,g,1)|0;g=g+48|0;h=h+1|0}if(!f)h=Tq(a,i,e,73)|0;else h=Sq(i,e,73)|0;fI(h,2,2147483647)|0;g=0;while(1){if((g|0)>=(d|0))break;f=b+12|0;a=c[(c[(c[b+24>>2]|0)+16>>2]|0)+232>>2]|0;e=a-(c[f>>2]|0)|0;c[f>>2]=a;f=b+32|0;c[f>>2]=(c[f>>2]|0)+e;f=b+40|0;c[f>>2]=(c[f>>2]|0)+e;b=b+48|0;g=g+1|0}Uq(h);yw(i)|0;return}function Mq(a,b){a=a|0;b=b|0;if((c[a+32>>2]|0)>(c[b+40>>2]|0))a=0;else a=(c[b+32>>2]|0)<=(c[a+40>>2]|0)&1;return a|0}function Nq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=Cw(18064,c[4558]|0)|0;g=b;h=0;while(1){if((h|0)>=(d|0))break;c[g+8>>2]=c[g+16>>2];nb[c[i>>2]&63](i,g,1)|0;g=g+48|0;h=h+1|0}if(!f)h=Tq(a,i,e,74)|0;else h=Sq(i,e,74)|0;fI(h,2,2147483647)|0;g=0;while(1){if((g|0)>=(d|0))break;f=b+16|0;a=c[(c[(c[b+24>>2]|0)+16>>2]|0)+232>>2]|0;e=a-(c[f>>2]|0)|0;c[f>>2]=a;f=b+36|0;c[f>>2]=(c[f>>2]|0)+e;f=b+44|0;c[f>>2]=(c[f>>2]|0)+e;b=b+48|0;g=g+1|0}Uq(h);yw(i)|0;return}function Oq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=b+32|0;if((c[a+36>>2]|0)<=(c[b+44>>2]|0)?(c[b+36>>2]|0)<=(c[a+44>>2]|0):0)if((c[a+40>>2]|0)<(c[e>>2]|0))a=1;else{g=Rq(d,e)|0;g=g-(c[b+12>>2]|0)+(c[a+12>>2]|0)|0;b=c[b+16>>2]|0;a=c[a+16>>2]|0;f=(b|0)<(a|0);e=Qq(d,e)|0;a=(g|0)<=(e-(f?a:b)+(f?b:a)|0)&1}else a=0;return a|0}function Pq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=b+32|0;if((c[d>>2]|0)<=(c[b+40>>2]|0)?(c[e>>2]|0)<=(c[a+40>>2]|0):0)if((c[a+44>>2]|0)<(c[b+36>>2]|0))a=1;else{g=Qq(d,e)|0;g=g-(c[b+16>>2]|0)+(c[a+16>>2]|0)|0;b=c[b+12>>2]|0;a=c[a+12>>2]|0;f=(b|0)<(a|0);e=Rq(d,e)|0;a=(g|0)<=(e-(f?a:b)+(f?b:a)|0)&1}else a=0;return a|0}function Qq(a,b){a=a|0;b=b|0;return ((c[a+12>>2]|0)-(c[a+4>>2]|0)+(c[b+12>>2]|0)-(c[b+4>>2]|0)|0)/2|0|0}function Rq(a,b){a=a|0;b=b|0;return ((c[a+8>>2]|0)-(c[a>>2]|0)+(c[b+8>>2]|0)-(c[b>>2]|0)|0)/2|0|0}function Sq(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=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;x=l;l=l+16|0;v=x;a[v>>0]=a[18484]|0;a[v+1>>0]=a[18485]|0;a[v+2>>0]=a[18486]|0;a[v+3>>0]=a[18487]|0;w=Xx(92103,v,0)|0;Az(w,134401,280,1)|0;g=Aw(d)|0;h=-2147483647;u=0;while(1){if(!g)break;s=c[g+8>>2]|0;t=u+((h|0)!=(s|0)&1)|0;g=c[g>>2]|0;h=s;u=t}s=w+16|0;t=(u<<3)+-4|0;n=0;j=0;g=0;h=0;m=0;r=Aw(d)|0;i=-2147483647;while(1){if(!r)break;q=c[r+8>>2]|0;if((i|0)!=(q|0)){p=az(w,ry(c[r+20>>2]|0)|0,1)|0;Az(p,134365,304,1)|0;o=p+16|0;g=c[o>>2]|0;c[g+112>>2]=r;if(!h){c[(c[s>>2]|0)+192>>2]=p;n=p}else{c[(c[n+16>>2]|0)+164>>2]=p;n=h}c[g+176>>2]=0;k=j+1|0;i=uH(k<<2)|0;c[(c[o>>2]|0)+172>>2]=i;if(!m){j=k;k=p;m=p;g=p;h=n;i=q}else{i=m+16|0;c[(c[i>>2]|0)+184>>2]=0;j=uH((m|0)==(n|0)?t:u-j<<2)|0;c[(c[i>>2]|0)+180>>2]=j;j=Rx(w,m,p,0,1)|0;Az(j,134378,176,1)|0;g=c[j+16>>2]|0;b[g+170>>1]=10;c[g+156>>2]=1;g=c[i>>2]|0;h=c[g+180>>2]|0;if(!h)g=vH((c[g+184>>2]<<2)+8|0)|0;else g=xH(h,(c[g+184>>2]<<2)+8|0)|0;m=c[i>>2]|0;c[m+180>>2]=g;m=m+184|0;h=c[m>>2]|0;c[m>>2]=h+1;c[g+(h<<2)>>2]=j;g=c[i>>2]|0;c[(c[g+180>>2]|0)+(c[g+184>>2]<<2)>>2]=0;g=c[o>>2]|0;h=c[g+172>>2]|0;if(!h)g=vH((c[g+176>>2]<<2)+8|0)|0;else g=xH(h,(c[g+176>>2]<<2)+8|0)|0;h=c[o>>2]|0;c[h+172>>2]=g;h=h+176|0;m=c[h>>2]|0;c[h>>2]=m+1;c[g+(m<<2)>>2]=j;j=c[o>>2]|0;c[(c[j+172>>2]|0)+(c[j+176>>2]<<2)>>2]=0;j=k;k=p;m=p;g=p;h=n;i=q}}else{k=g;g=n}c[r+24>>2]=k;n=g;g=k;r=c[r>>2]|0}m=m+16|0;c[(c[m>>2]|0)+184>>2]=0;g=uH(4)|0;c[(c[m>>2]|0)+180>>2]=g;a[v>>0]=a[18484]|0;a[v+1>>0]=a[18485]|0;a[v+2>>0]=a[18486]|0;a[v+3>>0]=a[18487]|0;m=Xx(92150,v,0)|0;g=Aw(d)|0;while(1){if(!g)break;v=az(m,ry(c[g+20>>2]|0)|0,1)|0;Az(v,134365,304,1)|0;c[g+28>>2]=v;c[(c[v+16>>2]|0)+112>>2]=g;g=c[g>>2]|0}g=0;k=Aw(d)|0;h=-2147483647;a:while(1){if(!k)break;j=c[k+8>>2]|0;b:do if((h|0)==(j|0))j=h;else{g=k;while(1){g=c[g>>2]|0;if(!g)break a;if((c[g+8>>2]|0)!=(j|0))break b}}while(0);i=k+28|0;h=g;while(1){if(!h)break;if(lb[e&127](k,h)|0)Rx(m,c[i>>2]|0,c[h+28>>2]|0,0,1)|0;h=c[h>>2]|0}k=c[k>>2]|0;h=j}Vq(m,w,f);$x(m)|0;l=x;return w|0}function Tq(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;r=s;a[r>>0]=a[18484]|0;a[r+1>>0]=a[18485]|0;a[r+2>>0]=a[18486]|0;a[r+3>>0]=a[18487]|0;r=Xx(92103,r,0)|0;Az(r,134401,280,1)|0;k=r+16|0;h=Aw(e)|0;i=0;while(1){if(!h)break;j=az(r,ry(c[h+20>>2]|0)|0,1)|0;Az(j,134365,304,1)|0;p=j+16|0;n=c[p>>2]|0;c[n+112>>2]=h;c[h+24>>2]=j;c[n+176>>2]=0;n=uH(4)|0;o=c[p>>2]|0;c[o+172>>2]=n;c[o+184>>2]=0;o=uH(4)|0;c[(c[p>>2]|0)+180>>2]=o;if(!i)c[(c[k>>2]|0)+192>>2]=j;else c[(c[i+16>>2]|0)+164>>2]=j;h=c[h>>2]|0;i=j}m=Aw(e)|0;a:while(1){if(!m)break;n=m+32|0;o=m+24|0;p=m+20|0;h=m;while(1){h=c[h>>2]|0;if(!h)break;if(lb[f&127](m,h)|0){i=lb[g&127](n,h+32|0)|0;j=Rx(r,c[o>>2]|0,c[h+24>>2]|0,0,1)|0;Az(j,134378,176,1)|0;if((i|0)>=65536){q=13;break a}k=j+16|0;t=c[k>>2]|0;b[t+170>>1]=i;c[t+156>>2]=1;if(j|0?Rx(d,c[p>>2]|0,c[h+20>>2]|0,0,0)|0:0)c[(c[k>>2]|0)+156>>2]=100}}m=c[m>>2]|0}if((q|0)==13)qa(92106,92122,254,92135);m=Aw(e)|0;while(1){if(!m)break;k=c[m+24>>2]|0;n=k+16|0;k=Ex(r,k)|0;while(1){if(!k)break;h=c[n>>2]|0;i=c[h+180>>2]|0;if(!i)h=vH((c[h+184>>2]<<2)+8|0)|0;else h=xH(i,(c[h+184>>2]<<2)+8|0)|0;i=c[n>>2]|0;c[i+180>>2]=h;i=i+184|0;j=c[i>>2]|0;c[i>>2]=j+1;c[h+(j<<2)>>2]=k;j=c[n>>2]|0;c[(c[j+180>>2]|0)+(c[j+184>>2]<<2)>>2]=0;j=k+-48|0;h=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;i=c[h+172>>2]|0;if(!i)h=vH((c[h+176>>2]<<2)+8|0)|0;else h=xH(i,(c[h+176>>2]<<2)+8|0)|0;c[(c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0)+172>>2]=h;g=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;q=c[g+172>>2]|0;g=g+176|0;t=c[g>>2]|0;c[g>>2]=t+1;c[q+(t<<2)>>2]=k;t=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;c[(c[t+172>>2]|0)+(c[t+176>>2]<<2)>>2]=0;k=Gx(r,k)|0}m=c[m>>2]|0}l=s;return r|0}function Uq(a){a=a|0;var b=0,d=0,e=0,f=0;f=Sy(a)|0;while(1){if(!f)break;d=f+16|0;b=c[d>>2]|0;e=c[b+172>>2]|0;if(e){D_(e);b=c[d>>2]|0}b=c[b+180>>2]|0;if(b|0)D_(b);f=Ty(a,f)|0}$x(a)|0;return}function Vq(a,d,e){a=a|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;k=Sy(a)|0;while(1){if(!k)break;n=c[(c[k+16>>2]|0)+112>>2]|0;m=c[n+24>>2]|0;n=n+32|0;o=m+16|0;l=Ex(a,k)|0;while(1){if(!l)break;h=c[(c[(c[((c[l>>2]&3|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;p=lb[e&127](n,h+32|0)|0;h=c[h+24>>2]|0;i=Rx(d,m,h,0,1)|0;Az(i,134378,176,1)|0;j=i+16|0;f=c[j>>2]|0;c[f+156>>2]=1;g=b[f+170>>1]|0;if((p|0)>(g&65535|0)){if(!(g<<16>>16)){f=c[o>>2]|0;g=c[f+180>>2]|0;if(!g)f=vH((c[f+184>>2]<<2)+8|0)|0;else f=xH(g,(c[f+184>>2]<<2)+8|0)|0;q=c[o>>2]|0;c[q+180>>2]=f;q=q+184|0;g=c[q>>2]|0;c[q>>2]=g+1;c[f+(g<<2)>>2]=i;f=c[o>>2]|0;c[(c[f+180>>2]|0)+(c[f+184>>2]<<2)>>2]=0;h=h+16|0;f=c[h>>2]|0;g=c[f+172>>2]|0;if(!g)f=vH((c[f+176>>2]<<2)+8|0)|0;else f=xH(g,(c[f+176>>2]<<2)+8|0)|0;g=c[h>>2]|0;c[g+172>>2]=f;g=g+176|0;q=c[g>>2]|0;c[g>>2]=q+1;c[f+(q<<2)>>2]=i;f=c[h>>2]|0;c[(c[f+172>>2]|0)+(c[f+176>>2]<<2)>>2]=0;f=c[j>>2]|0}b[f+170>>1]=p}l=Gx(a,l)|0}k=Ty(a,k)|0}return}function Wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return (c[b>>2]|0)-(c[d>>2]|0)|0}function Xq(b,d){b=b|0;d=d|0;var e=0,f=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0;y=l;l=l+64|0;u=y+24|0;s=y+16|0;r=y+52|0;q=y+40|0;t=y;w=ay(b)|0;x=vH(w*72|0)|0;qq(q,b);k=+g[q>>2];m=+g[q+4>>2];q=(a[q+8>>0]|0)!=0;k=q?k*.013888888888888888:k;m=q?m*.013888888888888888:m;n=k*.5;o=m*.5;e=x;f=Sy(b)|0;while(1){if(!f)break;p=c[f+16>>2]|0;i=+h[p+32>>3];if(q){j=+h[p+40>>3]*.5+m;i=i*.5+k}else{j=o*+h[p+40>>3];i=n*i}p=c[p+132>>2]|0;A=+h[p>>3];h[e>>3]=A;z=+h[p+8>>3];h[e+8>>3]=z;h[e+16>>3]=A-i;h[e+24>>3]=z-j;h[e+32>>3]=A+i;h[e+40>>3]=z+j;h[e+48>>3]=i;h[e+56>>3]=j;c[e+64>>2]=f;e=e+72|0;f=Ty(b,f)|0}do if((d|0)<0){i=+Yq(x,w);if(i==0.0){D_(x);e=0;break}if(!0){k=i;j=i;v=19}else{v=c[15686]|0;h[s>>3]=i;g1(v,92153,s)|0;k=i;j=i;v=19}}else{f=Zq(x,w,r)|0;e=c[r>>2]|0;if(!e){D_(f);D_(x);e=0;break}if(!d){$q(t,f,e);i=+h[t>>3];j=+h[t+8>>3]}else{j=+_q(f,e);i=j}D_(f);if(!0){k=i;v=19}else{v=c[15686]|0;h[u>>3]=i;h[u+8>>3]=j;g1(v,92167,u)|0;k=i;v=19}}while(0);if((v|0)==19){e=0;f=x;while(1){if((e|0)>=(w|0))break;v=c[(c[(c[f+64>>2]|0)+16>>2]|0)+132>>2]|0;h[v>>3]=+h[f>>3]*k;h[v+8>>3]=+h[f+8>>3]*j;e=e+1|0;f=f+72|0}D_(x);e=1}l=y;return e|0}function Yq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c=0.0;d=0;a:while(1){if((d|0)>=(b|0))break;r=a+72|0;d=d+1|0;m=a+16|0;n=a+8|0;o=a+56|0;p=a+48|0;q=a+32|0;k=a+24|0;l=a+40|0;i=d;j=r;while(1){if((i|0)>=(b|0)){a=r;continue a}if(((+h[m>>3]<=+h[j+32>>3]?+h[j+16>>3]<=+h[q>>3]:0)?+h[k>>3]<=+h[j+40>>3]:0)?+h[j+24>>3]<=+h[l>>3]:0){c=0.0;break a}e=+h[a>>3];f=+h[j>>3];if(e==f)g=t;else{g=+B(+(e-f));g=(+h[j+48>>3]+ +h[p>>3])/g}e=+h[n>>3];f=+h[j+8>>3];if(e==f)e=t;else{e=+B(+(e-f));e=(+h[j+56>>3]+ +h[o>>3])/e}g=ec?g:c}}return +c}function Zq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;k=vH((b<<4)+16|0)|0;m=0;e=0;n=k;o=b;i=k;a:while(1){if((e|0)>=(b|0))break;z=a+72|0;e=e+1|0;y=a+16|0;r=a+32|0;s=a+24|0;u=a+40|0;v=a+8|0;w=a+56|0;x=a+48|0;p=e;q=z;l=i;while(1){if((p|0)==(b|0)){a=z;i=l;continue a}if(((+h[y>>3]<=+h[q+32>>3]?+h[q+16>>3]<=+h[r>>3]:0)?+h[s>>3]<=+h[q+40>>3]:0)?+h[q+24>>3]<=+h[u>>3]:0){i=o+b|0;if((m|0)==(o|0)){k=xH(k,(i<<4)+16|0)|0;n=k;l=k}else i=o;f=+h[a>>3];g=+h[q>>3];if(!(f==g)){f=(+h[q+48>>3]+ +h[x>>3])/+B(+(f-g));if(f<1.0){f=1.0;A=13}}else{f=t;A=13}if((A|0)==13)A=0;g=+h[v>>3];j=+h[q+8>>3];if(!(g==j)){g=(+h[q+56>>3]+ +h[w>>3])/+B(+(g-j));if(g<1.0){g=1.0;A=16}}else{g=t;A=16}if((A|0)==16)A=0;m=m+1|0;h[n+(m<<4)>>3]=f;h[n+(m<<4)+8>>3]=g}else i=o;p=p+1|0;q=q+72|0;o=i}}A=xH(i,(m<<4)+16|0)|0;c[d>>2]=m;return A|0}function _q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0.0,g=0.0;d=1;e=0.0;while(1){c=a+16|0;if((d|0)>(b|0))break;g=+h[c>>3];f=+h[a+24>>3];f=ge?f:e;a=c}return +e}function $q(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,i=0.0;h[b>>3]=1.0;h[b+8>>3]=t;_0(b+16|0,c,16,75);g=vH((c<<4)+16|0)|0;h[g+(c<<4)>>3]=+h[b+(c<<4)>>3];f=c;d=1.0;while(1){h[g+(f<<4)+8>>3]=d;e=f+-1|0;if((f|0)<=0){d=t;e=0;f=0;break}h[g+(e<<4)>>3]=+h[b+(e<<4)>>3];i=+h[(+h[b+(f<<4)+8>>3]>d?b:g)+(f<<4)+8>>3];f=e;d=i}while(1){if((f|0)>(c|0))break;i=+h[g+(f<<4)+8>>3]*+h[g+(f<<4)>>3];b=i>3];h[a>>3]=+h[g+(e<<4)>>3];h[a+8>>3]=i;return}else qa(92184,92122,832,92204)}function ar(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3];d=+h[b>>3];if(!(cd)){d=+h[a+8>>3];c=+h[b+8>>3];if(dc&1}else a=1;else a=-1;return a|0}function br(a){a=a|0;var b=0;if(a|0){b=c[a+4>>2]|0;if(b|0)D_(b);b=c[a+8>>2]|0;if(b|0)D_(b);b=c[a+16>>2]|0;if(b|0)D_(b);D_(a)}return}function cr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o+8|0;m=o;k=F_(c[46079]|0,d<<2)|0;c[46079]=k;f=0;while(1){if((f|0)>=(d|0))break;c[e+(f<<2)>>2]=2147483647;f=f+1|0}c[e+(a<<2)>>2]=0;h=b+(a*20|0)|0;i=b+(a*20|0)+8|0;j=b+(a*20|0)+4|0;f=1;while(1){if((f|0)>=(c[h>>2]|0))break;c[e+(c[(c[j>>2]|0)+(f<<2)>>2]<<2)>>2]=~~+g[(c[i>>2]|0)+(f<<2)>>2];f=f+1|0}dr(n,a,k,e,d);i=-2147483639;while(1){if(!((er(n,m,c[46079]|0,e)|0)<<24>>24)){f=0;break}f=c[m>>2]|0;a=c[e+(f<<2)>>2]|0;if((a|0)==2147483647){f=0;break}i=b+(f*20|0)|0;j=b+(f*20|0)+4|0;h=b+(f*20|0)+8|0;f=1;while(1){if((f|0)>=(c[i>>2]|0))break;fr(n,c[(c[j>>2]|0)+(f<<2)>>2]|0,a+~~+g[(c[h>>2]|0)+(f<<2)>>2]|0,c[46079]|0,e);f=f+1|0}i=a+10|0}while(1){if((f|0)>=(d|0))break;h=e+(f<<2)|0;if((c[h>>2]|0)==2147483647)c[h>>2]=i;f=f+1|0}gr(n);l=o;return}function dr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if((f|0)==1)i=0;else i=vH((f<<2)+-4|0)|0;c[a>>2]=i;j=f+-1|0;c[a+4>>2]=j;g=0;h=0;while(1){if((h|0)>=(f|0))break;if((h|0)!=(b|0)){c[i+(g<<2)>>2]=h;c[d+(h<<2)>>2]=g;g=g+1|0}h=h+1|0}g=(j|0)/2|0;while(1){if((g|0)<=-1)break;hr(a,g,d,e);g=g+-1|0}return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a+4|0;if(!(c[f>>2]|0))a=0;else{g=c[a>>2]|0;c[b>>2]=c[g>>2];b=c[g+((c[f>>2]|0)+-1<<2)>>2]|0;c[g>>2]=b;c[d+(b<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+-1;hr(a,0,d,e);a=1}return a|0}function fr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=f+(b<<2)|0;if((c[g>>2]|0)>(d|0)){j=e+(b<<2)|0;i=c[j>>2]|0;c[g>>2]=d;g=c[a>>2]|0;a=i;while(1){if((a|0)<=0)break;h=a>>>1;i=c[g+(h<<2)>>2]|0;if((c[f+(i<<2)>>2]|0)<=(d|0))break;c[g+(a<<2)>>2]=i;c[e+(i<<2)>>2]=a;a=h}c[g+(a<<2)>>2]=b;c[j>>2]=a}return}function gr(a){a=a|0;a=c[a>>2]|0;if(a|0)D_(a);return}function hr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+4|0;while(1){f=b<<1;g=f|1;h=c[i>>2]|0;if(!((f|0)<(h|0)?(j=c[a>>2]|0,(c[e+(c[j+(f<<2)>>2]<<2)>>2]|0)<(c[e+(c[j+(b<<2)>>2]<<2)>>2]|0)):0))f=b;if((g|0)<(h|0)){j=c[a>>2]|0;f=(c[e+(c[j+(g<<2)>>2]<<2)>>2]|0)<(c[e+(c[j+(f<<2)>>2]<<2)>>2]|0)?g:f}if((f|0)==(b|0))break;j=c[a>>2]|0;h=j+(f<<2)|0;g=c[h>>2]|0;j=j+(b<<2)|0;c[h>>2]=c[j>>2];c[j>>2]=g;c[d+(c[h>>2]<<2)>>2]=f;c[d+(c[j>>2]<<2)>>2]=b;b=f}return}function ir(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0.0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p+8|0;n=p;c[n>>2]=0;o=vH(d<<2)|0;f=0;while(1){if((f|0)>=(d|0))break;g[e+(f<<2)>>2]=3402823466385288598117041.0e14;f=f+1|0}g[e+(a<<2)>>2]=0.0;h=c[b+(a*20|0)>>2]|0;i=b+(a*20|0)+8|0;j=b+(a*20|0)+4|0;f=1;while(1){if((f|0)>=(h|0))break;c[e+(c[(c[j>>2]|0)+(f<<2)>>2]<<2)>>2]=c[(c[i>>2]|0)+(f<<2)>>2];f=f+1|0}jr(m,a,o,e,d);a:while(1){if(!((kr(m,n,o,e)|0)<<24>>24))break;f=c[n>>2]|0;k=+g[e+(f<<2)>>2];if(k==3402823466385288598117041.0e14)break;i=b+(f*20|0)|0;j=b+(f*20|0)+4|0;h=b+(f*20|0)+8|0;f=1;while(1){if((f|0)>=(c[i>>2]|0))continue a;lr(m,c[(c[j>>2]|0)+(f<<2)>>2]|0,+g[(c[h>>2]|0)+(f<<2)>>2]+k,o,e);f=f+1|0}}gr(m);D_(o);l=p;return}function jr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=f+-1|0;j=vH(i<<2)|0;c[a>>2]=j;c[a+4>>2]=i;g=0;h=0;while(1){if((h|0)>=(f|0))break;if((h|0)!=(b|0)){c[j+(g<<2)>>2]=h;c[d+(h<<2)>>2]=g;g=g+1|0}h=h+1|0}g=(i|0)/2|0;while(1){if((g|0)<=-1)break;mr(a,g,d,e);g=g+-1|0}return}function kr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a+4|0;if(!(c[f>>2]|0))a=0;else{g=c[a>>2]|0;c[b>>2]=c[g>>2];b=c[g+((c[f>>2]|0)+-1<<2)>>2]|0;c[g>>2]=b;c[d+(b<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+-1;mr(a,0,d,e);a=1}return a|0}function lr(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0;h=f+(b<<2)|0;if(!(+g[h>>2]<=d)){k=e+(b<<2)|0;j=c[k>>2]|0;g[h>>2]=d;h=c[a>>2]|0;a=j;while(1){if((a|0)<=0)break;i=a>>>1;j=c[h+(i<<2)>>2]|0;if(!(+g[f+(j<<2)>>2]>d))break;c[h+(a<<2)>>2]=j;c[e+(j<<2)>>2]=a;a=i}c[h+(a<<2)>>2]=b;c[k>>2]=a}return}function mr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0;j=a+4|0;while(1){f=b<<1;h=f|1;i=c[j>>2]|0;if(!((f|0)<(i|0)?(k=c[a>>2]|0,+g[e+(c[k+(f<<2)>>2]<<2)>>2]<+g[e+(c[k+(b<<2)>>2]<<2)>>2]):0))f=b;if((h|0)<(i|0)?(k=c[a>>2]|0,+g[e+(c[k+(h<<2)>>2]<<2)>>2]<+g[e+(c[k+(f<<2)>>2]<<2)>>2]):0)f=h;if((f|0)==(b|0))break;k=c[a>>2]|0;i=k+(f<<2)|0;h=c[i>>2]|0;k=k+(b<<2)|0;c[i>>2]=c[k>>2];c[k>>2]=h;c[d+(c[i>>2]<<2)>>2]=f;c[d+(c[k>>2]<<2)>>2]=b;b=f}return}function nr(){gt(184320,48);c[46083]=0;return}function or(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0;i=it(184320)|0;c[i+32>>2]=a;c[i+36>>2]=b;Pt(a);Pt(b);c[i+24>>2]=0;c[i+28>>2]=0;f=+h[a>>3];g=+h[b>>3]-f;e=+h[a+8>>3];d=+h[b+8>>3]-e;f=d*e+g*f+(d*d+g*g)*.5;b=i+16|0;h[b>>3]=f;if((g>0.0?g:-g)>(d>0.0?d:-d)){h[i>>3]=1.0;e=d/g;d=g;a=i+8|0}else{h[i+8>>3]=1.0;e=g/d;a=i}h[a>>3]=e;h[b>>3]=f/d;b=c[46083]|0;c[i+40>>2]=b;c[46083]=b+1;return i|0}function pr(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0;l=+h[a>>3];a:do if(l==1.0){if(!(+h[a+8>>3]>=0.0)){b=c[a+28>>2]|0;d=c[a+24>>2]|0;if(!d)m=9;else m=5}else{b=c[a+24>>2]|0;d=c[a+28>>2]|0;if(!d)m=9;else m=5}do if((m|0)==5){e=+h[d+8>>3];if(e>+h[22881])break a;f=+h[22882];if(!(e>=f)){i=f;e=+h[a+16>>3]-+h[a+8>>3]*f;break}else{i=e;e=+h[d>>3];break}}else if((m|0)==9){f=+h[22882];i=f;e=+h[a+16>>3]-+h[a+8>>3]*f}while(0);do if(b){g=+h[b+8>>3];if(g>3]-+h[a+8>>3]*f;break}else{f=+h[b>>3];break}}else{f=+h[22881];g=f;f=+h[a+16>>3]-+h[a+8>>3]*f}while(0);j=+h[22883];b=e>j;d=f>j;k=+h[22884];if(!(b&d|e>3]-j)/+h[a+8>>3];e=j}if(e>3]-k)/+h[a+8>>3];e=k}if(d){g=(+h[a+16>>3]-j)/+h[a+8>>3];f=j}if(f>3]-k)/+h[a+8>>3];f=k;m=46}else m=46}}else{d=c[a+28>>2]|0;b=c[a+24>>2]|0;do if(b){e=+h[b>>3];if(e>+h[22883])break a;g=+h[22884];if(!(e>=g)){i=+h[a+16>>3]-g*l;e=g;break}else{i=+h[b+8>>3];break}}else{g=+h[22884];i=+h[a+16>>3]-g*l;e=g}while(0);do if(d){f=+h[d>>3];if(f>3]-l*j;f=j;break}else{g=+h[d+8>>3];break}}else{f=+h[22883];g=+h[a+16>>3]-l*f}while(0);j=+h[22881];b=i>j;d=g>j;k=+h[22882];if(!(b&d|i>3]-j)/l}if(i>3]-k)/l}if(d){g=j;f=(+h[a+16>>3]-j)/l}if(g>3]-k)/l;m=46}else m=46}}while(0);if((m|0)==46)qr(a,e,i,f,g);return}function qr(a,b,d,e,f){a=a|0;b=+b;d=+d;e=+e;f=+f;var g=0;g=a+32|0;Xr(c[g>>2]|0,b,d);Xr(c[g>>2]|0,e,f);a=a+36|0;Xr(c[a>>2]|0,b,d);Xr(c[a>>2]|0,e,f);return}function rr(a,b,d){a=a|0;b=b|0;d=d|0;c[a+24+(b<<2)>>2]=d;Pt(d);if(c[a+24+(1-b<<2)>>2]|0){pr(a);Ot(c[a+32>>2]|0);Ot(c[a+36>>2]|0);jt(a,184320)}return}function sr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+16|0;o=p;m=b<<2;h=vH(O(m,d)|0)|0;g=c[e>>2]|0;m=vH(m)|0;n=c[a+8>>2]|0;if(g|0){D_(c[g>>2]|0);D_(g)}k=vH(d<<2)|0;c[e>>2]=k;g=0;while(1){if((g|0)>=(d|0))break;c[k+(g<<2)>>2]=h+((O(g,b)|0)<<2);g=g+1|0}j=(f|0)!=0;if(j)es(a,b);e=(g2()|0)%(b|0)|0;zq(o,b);g=c[k>>2]|0;if(j){cr(e,a,b,g);f=0;g=0}else{vq(e,a,b,g,o);f=0;g=0}while(1){if((g|0)>=(b|0)){i=1;break}h=c[(c[k>>2]|0)+(g<<2)>>2]|0;c[m+(g<<2)>>2]=h;i=(h|0)>(f|0);f=i?h:f;e=i?g:e;g=g+1|0}while(1){if((i|0)>=(d|0))break;h=k+(i<<2)|0;g=c[h>>2]|0;if(j){cr(e,a,b,g);g=0;f=0}else{vq(e,a,b,g,o);g=0;f=0}while(1){if((g|0)>=(b|0))break;s=m+(g<<2)|0;q=c[s>>2]|0;r=c[(c[h>>2]|0)+(g<<2)>>2]|0;r=(q|0)<(r|0)?q:r;c[s>>2]=r;s=(r|0)>(f|0);q=s?g:e;g=g+1|0;f=s?r:f;e=q}i=i+1|0}D_(m);if(j)fs(a,b,n);l=p;return}function tr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0.0,j=0,k=0;i=1.0/+(b|0);h=0;while(1){if((h|0)>=(d|0))break;j=a+(h<<2)|0;e=0.0;f=0;while(1){if((f|0)>=(b|0))break;e=e+ +(c[(c[j>>2]|0)+(f<<2)>>2]|0);f=f+1|0}g=~~(e*i);f=0;while(1){if((f|0)>=(b|0))break;k=(c[j>>2]|0)+(f<<2)|0;c[k>>2]=(c[k>>2]|0)-g;f=f+1|0}h=h+1|0}return}function ur(){c[46085]=~~+C(+(+((c[46084]|0)+4|0)));return}function vr(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(d*d+c*c)}function wr(a,b,c){a=a|0;b=b|0;c=c|0;h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=+h[b+8>>3]-+h[c+8>>3];return}function xr(a,b,c){a=a|0;b=b|0;c=c|0;h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=+h[c+8>>3]+ +h[b+8>>3];return}function yr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];return +((+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d))}function zr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+48|0;f=e+32|0;g=e+16|0;h=e;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];d=+yr(h,g,f)>0.0&1;l=e;return d|0}function Ar(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0;o=+h[a>>3];p=+h[d+8>>3];q=+h[c+8>>3];m=(p-q)*o;n=+h[b>>3];l=+h[d>>3];k=+h[b+8>>3];i=+h[a+8>>3];j=k-i;f=+h[c>>3];g=m+n*(q-p)+j*l+f*(i-k);if(g==0.0)d=0;else{p=(f*(i-p)+m+(q-i)*l)/g;q=-(f*j+((q-k)*o+(i-q)*n))/g;h[e>>3]=p*(n-o)+o;h[e+8>>3]=j*p+i;d=q<=1.0&(q>=0.0&(p>=0.0&p<=1.0))&1}return d|0}function Br(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0.0,i=0;c[a+20>>2]=b;Pt(b);i=a+24|0;h[i>>3]=+h[b+8>>3]+d;e=c[46086]|0;e=e+((Cr(a)|0)*40|0)|0;while(1){f=e+32|0;e=c[f>>2]|0;if(!e)break;d=+h[i>>3];g=+h[e+24>>3];if(d>g)continue;if(!(d==g))break;if(!(+h[b>>3]>+h[c[e+20>>2]>>3]))break}c[a+32>>2]=e;c[f>>2]=a;c[46087]=(c[46087]|0)+1;return}function Cr(a){a=a|0;var b=0.0,d=0,e=0.0;d=c[46088]|0;e=+(d|0);b=(+h[a+24>>3]-+h[22888])/+h[22890]*e;do if(!(b<0.0))if(!(b>=e)){a=~~b;break}else{a=d+-1|0;break}else a=0;while(0);if((a|0)<(c[46089]|0))c[46089]=a;return a|0}function Dr(a){a=a|0;var b=0,d=0,e=0;d=a+20|0;if(c[d>>2]|0){b=c[46086]|0;b=b+((Cr(a)|0)*40|0)|0;do{e=b+32|0;b=c[e>>2]|0}while((b|0)!=(a|0));c[e>>2]=c[a+32>>2];c[46087]=(c[46087]|0)+-1;Ot(c[d>>2]|0);c[d>>2]=0}return}function Er(){return (c[46087]|0)==0|0}function Fr(a){a=a|0;var b=0,d=0,e=0,f=0.0;b=c[46086]|0;d=c[46089]|0;while(1){e=c[b+(d*40|0)+32>>2]|0;if(e|0)break;e=d+1|0;c[46089]=e;d=e}f=+h[e+24>>3];h[a>>3]=+h[c[e+20>>2]>>3];h[a+8>>3]=f;return}function Gr(){var a=0,b=0;b=(c[46086]|0)+((c[46089]|0)*40|0)+32|0;a=c[b>>2]|0;c[b>>2]=c[a+32>>2];c[46087]=(c[46087]|0)+-1;return a|0}function Hr(){D_(c[46086]|0);c[46086]=0;return}function Ir(){var a=0,b=0,d=0;c[46087]=0;c[46089]=0;a=c[46085]|0;b=a<<2;c[46088]=b;d=c[46086]|0;if(!d){d=vH(a*160|0)|0;c[46086]=d;b=c[46088]|0}a=0;while(1){if((a|0)>=(b|0))break;c[d+(a*40|0)+32>>2]=0;a=a+1|0}return}function Jr(){gt(184368,40);D_(c[46095]|0);c[46095]=0;return}function Kr(){var a=0,b=0,d=0;gt(184368,40);a=c[46085]|0;b=a<<1;c[46096]=b;d=c[46095]|0;if(!d){d=vH(a<<3)|0;c[46095]=d;b=c[46096]|0}a=0;while(1){if((a|0)>=(b|0))break;c[d+(a<<2)>>2]=0;a=a+1|0}c[46090]=Lr(0,0)|0;c[46091]=Lr(0,0)|0;c[c[46090]>>2]=0;d=c[46091]|0;b=c[46090]|0;c[b+4>>2]=d;c[d>>2]=b;c[(c[46091]|0)+4>>2]=0;d=c[46095]|0;c[d>>2]=c[46090];c[d+((c[46096]|0)+-1<<2)>>2]=c[46091];return}function Lr(b,d){b=b|0;d=d|0;var e=0;e=it(184368)|0;c[e+8>>2]=b;a[e+16>>0]=d;c[e+32>>2]=0;c[e+20>>2]=0;c[e+12>>2]=0;return e|0}function Mr(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0.0;i=c[b+8>>2]|0;k=c[d+8>>2]|0;do if((!((i|0)==0|(k|0)==0)?(o=c[i+36>>2]|0,e=c[k+36>>2]|0,(o|0)!=(e|0)):0)?(j=+h[i>>3],f=+h[k+8>>3],g=+h[i+8>>3],l=+h[k>>3],m=f*j-l*g,!(m>-1.0e-10&m<1.0e-10)):0){p=+h[i+16>>3];q=+h[k+16>>3];n=(p*f-q*g)/m;j=(q*j-p*l)/m;f=+h[o+8>>3];g=+h[e+8>>3];do if(f>3]<+h[e>>3]:0){e=o;break}b=d}while(0);b=a[b+16>>0]|0;if(!(n>=+h[e>>3])){if(b<<24>>24==1){b=0;break}}else if(!(b<<24>>24)){b=0;break}b=Lt()|0;c[b+20>>2]=0;h[b>>3]=n;h[b+8>>3]=j}else b=0;while(0);return b|0}function Nr(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0.0,p=0;n=c[b+8>>2]|0;k=c[n+36>>2]|0;l=+h[d>>3];o=+h[k>>3];m=l>o;p=a[b+16>>0]|0;if(m)if(!(p<<24>>24))b=1;else f=4;else if(p<<24>>24==1)b=0;else f=4;if((f|0)==4){e=+h[n>>3];a:do if(e==1.0){e=+h[d+8>>3];g=e-+h[k+8>>3];i=l-o;j=+h[n+8>>3];d=j<0.0;do if(m?j>=0.0:d){if(g>=j*i){b=1;break a}}else{b=j*e+l>+h[n+16>>3];if(d)if(b){b=0;break a}else break;else if(b)break;else{b=0;break a}}while(0);o=o-+h[c[n+32>>2]>>3];b=j*(i*i-g*g)>3]-l*e;j=+h[d+8>>3]-i;o=l-o;l=i-+h[k+8>>3];b=j*j>l*l+o*o}while(0);b=(b^p<<24>>24!=0)&1}return b|0}function Or(a,b){a=a|0;b=b|0;c[b>>2]=a;a=a+4|0;c[b+4>>2]=c[a>>2];c[c[a>>2]>>2]=b;c[a>>2]=b;return}function Pr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[46096]|0;b=~~((+h[a>>3]-+h[22887])/+h[22889]*+(f|0));b=(b|0)>0?b:0;f=(b|0)<(f|0)?b:f+-1|0;b=Qr(f)|0;if(!b){d=1;while(1){b=Qr(f-d|0)|0;if(b|0)break;b=Qr(d+f|0)|0;if(b|0)break;d=d+1|0}c[46097]=(c[46097]|0)+d}c[46098]=(c[46098]|0)+1;e=c[46090]|0;d=c[46091]|0;a:do if((b|0)==(e|0))g=9;else{if((b|0)!=(d|0)?(Nr(b,a)|0)!=0:0){g=9;break}while(1){b=c[b>>2]|0;if((b|0)==(e|0))break a;if(Nr(b,a)|0){e=b;break}}}while(0);if((g|0)==9){while(1){b=c[b+4>>2]|0;if((b|0)==(d|0))break;if(!(Nr(b,a)|0))break;else g=9}e=c[b>>2]|0}if((f|0)>0?(f|0)<((c[46096]|0)+-1|0):0){b=(c[46095]|0)+(f<<2)|0;d=c[b>>2]|0;if(d|0){g=d+12|0;c[g>>2]=(c[g>>2]|0)+-1}c[b>>2]=e;g=e+12|0;c[g>>2]=(c[g>>2]|0)+1}return e|0}function Qr(a){a=a|0;var b=0,d=0;if((a|0)>-1&(c[46096]|0)>(a|0)?(d=(c[46095]|0)+(a<<2)|0,b=c[d>>2]|0,(b|0)!=0):0){if((c[b+8>>2]|0)==(-2|0)){c[d>>2]=0;a=b+12|0;d=(c[a>>2]|0)+-1|0;c[a>>2]=d;if(!d){jt(b,184368);b=0}else b=0}}else b=0;return b|0}function Rr(a){a=a|0;var b=0,d=0;b=a+4|0;d=c[a>>2]|0;c[d+4>>2]=c[b>>2];c[c[b>>2]>>2]=d;c[a+8>>2]=-2;return}function Sr(a){a=a|0;return c[a+4>>2]|0}function Tr(a){a=a|0;return c[a>>2]|0}function Ur(b){b=b|0;var d=0;d=c[b+8>>2]|0;if(!d)b=184588;else b=(a[b+16>>0]|0)==0?d+32|0:d+36|0;return c[b>>2]|0}function Vr(b){b=b|0;var d=0;d=c[b+8>>2]|0;if(!d)b=184588;else b=(a[b+16>>0]|0)==0?d+36|0:d+32|0;return c[b>>2]|0}function Wr(){gt(184400,24);return}function Xr(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+32|0;i=j;g=(c[46099]|0)+((c[a+16>>2]|0)*96|0)+88|0;f=c[g>>2]|0;h[i+8>>3]=b;h[i+16>>3]=d;e=Yr(a,i,f)|0;do if(e|0){if((e|0)<0){i=it(184400)|0;h[i+8>>3]=b;h[i+16>>3]=d;c[i>>2]=f;c[g>>2]=i;break}while(1){e=c[f>>2]|0;g=Yr(a,i,e)|0;if((g|0)>0)f=e;else break}if(g|0){i=it(184400)|0;h[i+8>>3]=b;h[i+16>>3]=d;c[f>>2]=i;c[i>>2]=e}}while(0);l=j;return}function Yr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0;do if(c){e=+h[b+8>>3];i=+h[c+8>>3];d=+h[b+16>>3];f=+h[c+16>>3];if(!(e==i&d==f)){k=+h[a>>3];j=e-k;e=+h[a+8>>3];g=d-e;i=i-k;d=f-e;if(!(j>=0.0)){if(i>=0.0){b=1;break}e=d/i;d=g/j;if(de){b=1;break}b=j>i?-1:1;break}if(!(i<0.0)){b=i>0.0;if(!(j>0.0)){if(b){b=!(g<=0.0)?1:-1;break}if(g0.0?-1:1;break}e=d/i;d=g/j;if(de){b=1;break}b=j>2]|0;d=a+(d*20|0)+4|0;b=1;a=0;while(1){if((b|0)>=(f|0))break;g=a+((c[e+(c[(c[d>>2]|0)+(b<<2)>>2]<<2)>>2]|0)>0&1)|0;b=b+1|0;a=g}return a|0}function _r(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+(b*20|0)|0;b=a+(b*20|0)+4|0;a=1;while(1){if((a|0)>=(c[e>>2]|0))break;c[d+(c[(c[b>>2]|0)+(a<<2)>>2]<<2)>>2]=1;a=a+1|0}return}function $r(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+(b*20|0)|0;b=a+(b*20|0)+4|0;a=1;while(1){if((a|0)>=(c[e>>2]|0))break;c[d+(c[(c[b>>2]|0)+(a<<2)>>2]<<2)>>2]=0;a=a+1|0}return}function as(a,b){a=a|0;b=b|0;if(!(c[a+8>>2]|0))a=cs(a,b)|0;else a=bs(a,b)|0;return a|0}function bs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=b<<2;e=vH(O(f,b)|0)|0;f=vH(f)|0;d=0;while(1){if((d|0)>=(b|0)){d=0;break}c[f+(d<<2)>>2]=e+((O(d,b)|0)<<2);d=d+1|0}while(1){if((d|0)>=(b|0))break;cr(d,a,b,c[f+(d<<2)>>2]|0);d=d+1|0}return f|0}function cs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=b<<2;e=vH(O(g,b)|0)|0;g=vH(g)|0;d=0;while(1){if((d|0)>=(b|0))break;c[g+(d<<2)>>2]=e+((O(d,b)|0)<<2);d=d+1|0}zq(f,b);d=0;while(1){if((d|0)>=(b|0))break;vq(d,a,b,c[g+(d<<2)>>2]|0,f);d=d+1|0}Aq(f);l=h;return g|0}function ds(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[a+8>>2]|0;es(a,b);d=bs(a,b)|0;fs(a,b,e);return d|0}function es(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=vH(b<<2)|0;d=0;e=0;while(1){if((d|0)>=(b|0))break;k=(c[a+(d*20|0)>>2]|0)+e|0;d=d+1|0;e=k}e=vH(e<<2)|0;d=0;while(1){if((d|0)>=(b|0))break;c[l+(d<<2)>>2]=0;d=d+1|0}f=0;while(1){if((f|0)>=(b|0))break;c[a+(f*20|0)+8>>2]=e;_r(a,f,l);h=a+(f*20|0)|0;i=c[h>>2]|0;j=a+(f*20|0)+4|0;k=i+-2|0;d=1;while(1){if((d|0)>=(i|0))break;m=c[(c[j>>2]|0)+(d<<2)>>2]|0;n=c[a+(m*20|0)>>2]|0;g[e+(d<<2)>>2]=+(k+n-((Zr(a,0,m,l)|0)<<1)|0);d=d+1|0}$r(a,f,l);e=e+(c[h>>2]<<2)|0;f=f+1|0}D_(l);return}function fs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+8|0;D_(c[e>>2]|0);c[e>>2]=0;a:do if(d|0){e=0;while(1){if((e|0)>=(b|0))break a;c[a+(e*20|0)+8>>2]=d;f=d+(c[a+(e*20|0)>>2]<<2)|0;e=e+1|0;d=f}}while(0);return}function gs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0;f=0;g=0.0;while(1){if((f|0)>=(b|0))break;j=c[a+(f<<2)>>2]|0;i=+h[j+(d<<3)>>3]-+h[j+(e<<3)>>3];f=f+1|0;g=i*i+g}return +(+C(+g))}function hs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((e|0)>(d|0)){c[46103]=a;_0(b+(d<<2)|0,1-d+e|0,4,76)}return}function is(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[46103]|0;e=+g[f+(c[a>>2]<<2)>>2];d=+g[f+(c[b>>2]<<2)>>2];return (ed&1)|0}function js(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;if((d|0)<(e|0)){ks(a,b,d,e,f);g=c[f>>2]|0;f=g+-1|0;js(a,b,d,f);g=g+1|0;js(a,b,g,e);if(!(ls(a,b,d,f)|0))js(a,b,d,f);if(!(ls(a,b,g,e)|0))js(a,b,g,e)}l=h;return}function ks(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0.0,m=0,n=0;g=g2()|0;g=b+(((((g2()|0)<<16|g)>>>0)%((1-d+e|0)>>>0)|0)+d<<2)|0;j=c[g>>2]|0;k=b+(d<<2)|0;c[g>>2]=c[k>>2];c[k>>2]=j;l=+h[a+(j<<3)>>3];g=d+1|0;d=e;a:while(1){if((g|0)>=(d|0))break;while(1){if((g|0)>=(d|0))break;if(!(+h[a+(c[b+(g<<2)>>2]<<3)>>3]<=l))break;g=g+1|0}while(1){if((g|0)>=(d|0))continue a;e=b+(d<<2)|0;i=c[e>>2]|0;if(!(+h[a+(i<<3)>>3]>l))break;d=d+-1|0}n=b+(g<<2)|0;m=c[n>>2]|0;c[n>>2]=i;c[e>>2]=m;g=g+1|0;d=d+-1|0}n=g+((+h[a+(c[b+(g<<2)>>2]<<3)>>3]>l)<<31>>31)|0;c[f>>2]=n;n=b+(n<<2)|0;c[k>>2]=c[n>>2];c[n>>2]=j;return}function ls(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=1;while(1){f=d+1|0;if(!((d|0)<(e|0)&(g|0)!=0))break;g=+h[a+(c[b+(d<<2)>>2]<<3)>>3]>+h[a+(c[b+(f<<2)>>2]<<3)>>3]?0:g;d=f}return g|0}function ms(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,A=0.0;x=l;l=l+16|0;v=4;w=C_(40)|0;c[w>>2]=0;t=x;o=0;u=$(23,b*40|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){d=0;r=0;while(1){if((d|0)>=(b|0))break;s=(c[(c[a+(d<<2)>>2]|0)+4>>2]|0)+r|0;d=d+1|0;r=s}o=0;s=$(23,r*24|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){d=0;m=0;while(1){if((m|0)>=(b|0))break;n=u+(m*40|0)|0;c[n>>2]=s+(d*24|0);q=a+(m<<2)|0;f=0;g=1797693134862315708145274.0e284;i=-1797693134862315708145274.0e284;j=-1797693134862315708145274.0e284;k=1797693134862315708145274.0e284;while(1){e=c[q>>2]|0;if((f|0)>=(c[e+4>>2]|0))break;e=c[e>>2]|0;A=+h[e+(f<<4)>>3];y=+h[e+(f<<4)+8>>3];h[s+(d*24|0)>>3]=A;h[s+(d*24|0)+8>>3]=y;c[s+(d*24|0)+16>>2]=n;c[s+(d*24|0)+20>>2]=0;f=f+1|0;d=d+1|0;g=gA?i:A;j=j>y?j:y;k=k>2]=s+((d+-1|0)*24|0);h[u+(m*40|0)+8>>3]=g;h[u+(m*40|0)+16>>3]=k;h[u+(m*40|0)+24>>3]=i;h[u+(m*40|0)+32>>3]=j;m=m+1|0}c[t>>2]=r;c[t+4>>2]=b;w=D3(184416,1,w|0,v|0)|0;v=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;q=s;m=s;n=u}else{d=0;q=s;m=s;n=u}}else{d=z;q=0;m=s;n=u}}else{d=z;q=0;m=0;n=0}while(1){if(d|0){o=0;ia(103,u|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}o=0;ia(103,m|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=E3(c[d>>2]|0,w|0,v|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}else{e=17;break}}o=0;d=aa(77,q|0,t|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}if(!d){o=0;d=ca(24,a|0,b|0,n|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}}o=0;ia(103,u|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s;continue}o=0;ia(103,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,v|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=n;r=m;s=q;d=z;n=f;m=r;q=s}else{e=24;break}}if((e|0)==17)d=0;else if((e|0)==24)d=(d|0)==0&1;D_(w|0);l=x;return d|0}function ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;q=v;o=v+8|0;p=v+4|0;c[b+8>>2]=0;u=vH(c[b>>2]<<2)|0;f=c[b>>2]|0;e=0;while(1){if((e|0)>=(f|0))break;c[u+(e<<2)>>2]=a+(e*24|0);e=e+1|0}_0(u,f,4,78);m=0;g=0;f=0;h=0;a:while(1){if((m|0)>=(c[b>>2]|0)){s=0;d=g;t=h;break}n=u+(m<<2)|0;e=c[n>>2]|0;c[o>>2]=e;a=c[e+16>>2]|0;if((c[a>>2]|0)==(e|0))e=c[a+4>>2]|0;else e=e+-24|0;c[p>>2]=e;k=0;a=g;j=h;while(1){if((k|0)>=2)break;switch(ps(o,p)|0){case -1:{g=0;h=a;while(1){if((g|0)>=(j|0))break;i=qs(c[h>>2]|0,e)|0;if(i|0){s=i;d=a;t=j;break a}g=g+1|0;h=c[h+4>>2]|0}g=vH(12)|0;if(!j){f=0;a=g}else c[f+4>>2]=g;c[g+8>>2]=f;c[g>>2]=e;c[g+4>>2]=0;c[e+20>>2]=g;h=j+1|0;break}case 1:{e=e+20|0;g=c[e>>2]|0;if(!g){r=19;break a}do if((j|0)!=1){if((g|0)==(a|0)){a=c[a+4>>2]|0;c[a+8>>2]=0;break}if((g|0)==(f|0)){f=c[f+8>>2]|0;c[f+4>>2]=0;break}else{i=g+4|0;h=c[g+8>>2]|0;c[h+4>>2]=c[i>>2];c[(c[i>>2]|0)+8>>2]=h;break}}else{a=0;f=0}while(0);D_(g);c[e>>2]=0;g=f;h=j+-1|0;break}default:{g=f;h=j}}e=c[n>>2]|0;f=c[e+16>>2]|0;if((e|0)==(c[f+4>>2]|0))f=c[f>>2]|0;else f=e+24|0;c[p>>2]=f;k=k+1|0;f=g;j=h}m=m+1|0;g=a;h=j}if((r|0)==19){Pw(1,92219,q)|0;bb(184416,1)}e=0;while(1){if((e|0)>=(t|0))break;r=c[d+4>>2]|0;D_(d);e=e+1|0;d=r}D_(u);l=v;return s|0}function os(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0.0;D=l;l=l+48|0;o=D+24|0;n=D+16|0;u=D;e=0;a:while(1){if((e|0)>=(b|0)){e=0;break}z=c[a+(e<<2)>>2]|0;A=c[z>>2]|0;c[u>>2]=c[A>>2];c[u+4>>2]=c[A+4>>2];c[u+8>>2]=c[A+8>>2];c[u+12>>2]=c[A+12>>2];A=e+1|0;B=d+(e*40|0)+8|0;p=d+(e*40|0)+24|0;q=d+(e*40|0)+32|0;g=d+(e*40|0)+16|0;e=A;while(1){if((e|0)>=(b|0)){e=A;continue a}i=c[a+(e<<2)>>2]|0;j=+h[B>>3];k=+h[d+(e*40|0)+24>>3];m=!(j<=k);f=+h[d+(e*40|0)+8>>3];if((((!(m|!(j>=f))?(r=+h[g>>3],s=+h[d+(e*40|0)+32>>3],r<=s):0)?(t=+h[d+(e*40|0)+16>>3],r>=t):0)?(E=+h[p>>3],!(!(E<=k)|!(E>=f))):0)?(E=+h[q>>3],!(!(E<=s)|!(E>=t))):0){c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];c[o+8>>2]=c[u+8>>2];c[o+12>>2]=c[u+12>>2];if(wU(n,o)|0){e=1;break a}}else C=11;if((((((C|0)==11?(C=0,v=+h[p>>3],!(!(f<=v)|!(f>=j))):0)?(w=+h[d+(e*40|0)+16>>3],x=+h[q>>3],w<=x):0)?(y=+h[g>>3],!(!(w>=y)|(!(k<=v)|m))):0)?(E=+h[d+(e*40|0)+32>>3],!(!(E<=x)|!(E>=y))):0)?(m=c[i>>2]|0,c[n>>2]=c[z>>2],c[n+4>>2]=c[z+4>>2],c[o>>2]=c[m>>2],c[o+4>>2]=c[m+4>>2],c[o+8>>2]=c[m+8>>2],c[o+12>>2]=c[m+12>>2],wU(n,o)|0):0){e=1;break a}e=e+1|0}}l=D;return e|0}function ps(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=c[a>>2]|0;a=c[b>>2]|0;d=+h[e>>3]-+h[a>>3];if(!(d!=0.0)){d=+h[e+8>>3]-+h[a+8>>3];if(d==0.0)a=0;else a=d>0.0?1:-1}else a=d>0.0?1:-1;return a|0}function qs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+64|0;g=m+32|0;i=m+24|0;j=m+16|0;k=m;f=m+48|0;rs(a,b,f);d=f+8|0;e=c[d>>2]|0;do if((e|0)>0)d=0;else{if((e|0)<0){rs(b,a,f);d=c[d>>2]|0;if((d|0)>0){d=0;break}if((d|0)<0)d=3;else{d=c[f>>2]|0;d=ss(b,a,(d|0)>-1?d:0-d|0)|0}if(!(ts(a,b,i,j,d)|0)){d=0;break}}else{d=c[f>>2]|0;if((d|0)==(c[f+4>>2]|0)){d=ss(a,b,0)|0;d=(ss(a,b,(d|0)<=(ss(a,b,1)|0)&1)|0)<<1}else d=ss(a,b,(d|0)>-1?d:0-d|0)|0;if(!(ts(a,b,i,j,d)|0)){d=0;break}}h[k>>3]=+h[i>>3];h[k+8>>3]=+h[j>>3];c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];d=us(a,b,g)|0}while(0);l=m;return d|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0;i=+h[a>>3];j=+h[a+8>>3];e=c[a+16>>2]|0;if((c[e+4>>2]|0)==(a|0)){a=c[e>>2]|0;e=a}else{e=a+24|0;a=a+24|0}g=+h[e>>3]-i;f=+h[a+8>>3]-j;e=c[b+16>>2]|0;if((c[e+4>>2]|0)==(b|0)){a=c[e>>2]|0;e=a}else{e=b+24|0;a=b+24|0}k=+h[e>>3]-i;l=+h[a+8>>3]-j;j=(+h[b+8>>3]-j)*g-(+h[b>>3]-i)*f;b=j==0.0?0:j>0.0?1:-1;c[d>>2]=b;j=l*g-k*f;a=j==0.0?0:j>0.0?1:-1;c[d+4>>2]=a;c[d+8>>2]=O(a,b)|0;return}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0;k=+h[a>>3];l=+h[a+8>>3];f=c[a+16>>2]|0;if((c[f+4>>2]|0)==(a|0))a=c[f>>2]|0;else a=a+24|0;j=+h[a>>3];i=+h[a+8>>3];do if(d){a=c[b+16>>2]|0;if((c[a+4>>2]|0)==(b|0)){b=c[a>>2]|0;break}else{b=b+24|0;break}}while(0);g=+h[b>>3];e=+h[b+8>>3];if(k==j)if(k==g)b=(ws(l,e,i)|0)!=-1&1;else b=0;else b=ws(k,g,j)|0;return b|0}function ts(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0;a:do if((f|0)<1)g=0;else{n=+h[a>>3];p=+h[a+8>>3];g=c[a+16>>2]|0;if((c[g+4>>2]|0)==(a|0))g=c[g>>2]|0;else g=a+24|0;l=+h[g>>3];j=+h[g+8>>3];m=+h[b>>3];o=+h[b+8>>3];g=c[b+16>>2]|0;if((c[g+4>>2]|0)==(b|0))g=c[g>>2]|0;else g=b+24|0;k=+h[g>>3];i=+h[g+8>>3];b:do switch(f|0){case 3:{if(n==l){h[d>>3]=n;i=(o-i)/(m-k)*(n-k)+i;break b}if(m==k){h[d>>3]=m;i=(p-j)/(n-l)*(m-l)+j;break b}else{k=(o-i)/(m-k);l=(p-j)/(n-l);o=o-k*m;p=p-l*n;i=k-l;h[d>>3]=(p-o)/i;i=(k*p-o*l)/i;break b}}case 2:{if((ss(a,b,0)|0)==-1)if((ss(b,a,1)|0)==-1){f=(ss(b,a,0)|0)==-1;l=f?l:n;k=m;j=f?j:p;i=o}else{l=k;k=m;j=i;i=o}else if((ss(a,b,1)|0)!=-1)if((ss(b,a,0)|0)==-1){k=n;i=p}else{g=0;break a}else{l=m;j=o}h[d>>3]=(k+l)*.5;i=(i+j)*.5;break}case 1:if((o-p)*(n-l)==(m-n)*(p-j)){h[d>>3]=m;i=o;break b}else{h[d>>3]=k;break b}default:{g=1;break a}}while(0);h[e>>3]=i;g=1}while(0);return g|0}function us(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;o=+h[a>>3];p=+h[a+8>>3];e=c[a+16>>2]|0;if((c[e+4>>2]|0)==(a|0))e=c[e>>2]|0;else e=a+24|0;m=+h[e>>3];j=+h[e+8>>3];k=+h[b>>3];n=+h[b+8>>3];e=c[b+16>>2]|0;if((c[e+4>>2]|0)==(b|0))e=c[e>>2]|0;else e=b+24|0;i=+h[e>>3];g=+h[e+8>>3];a:do if(!(o!=m&k!=i)){do if(o==m){f=+h[d>>3];if(o==f?p==+h[d+8>>3]:0)break;if(!(m==f)){r=18;break a}if(!(j==+h[d+8>>3])){r=18;break a}}while(0);if(k==i){f=+h[d>>3];if(k==f?n==+h[d+8>>3]:0){e=0;break}if(i==f?g==+h[d+8>>3]:0)e=0;else r=18}else e=0}else r=18;while(0);if((r|0)==18)if(0>1){e=c[15686]|0;p=+h[d+8>>3];h[q>>3]=+h[d>>3];h[q+8>>3]=p;g1(e,92248,q)|0;vs(1,a);vs(2,b);e=1}else e=1;l=s;return e|0}function vs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+48|0;j=k;f=c[15686]|0;g=+h[b>>3];i=+h[b+8>>3];d=c[b+16>>2]|0;if((c[d+4>>2]|0)==(b|0)){d=c[d>>2]|0;e=d}else{e=b+24|0;d=b+24|0}n=+h[e>>3];m=+h[d+8>>3];c[j>>2]=a;h[j+8>>3]=g;h[j+16>>3]=i;h[j+24>>3]=n;h[j+32>>3]=m;g1(f,92276,j)|0;l=k;return}function ws(a,b,c){a=+a;b=+b;c=+c;return (a==b|b==c?0:(a>3]=0.0;e=e+1|0}h[f+(a<<3)>>3]=1.0;mv(c[b+(a<<2)>>2]|0,f,d);a=a+1|0}D_(f);f=0;while(1){if((f|0)>=(d|0)){a=1;break a}e=b+(f<<2)|0;a=0;while(1){if((a|0)==(f|0))break;j=(c[e>>2]|0)+(a<<3)|0;i=+h[j>>3];g=(c[b+(a<<2)>>2]|0)+(f<<3)|0;h[j>>3]=+h[g>>3];h[g>>3]=i;a=a+1|0}f=f+1|0}}while(0);return a|0}function ys(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=b<<3;p=vH(q)|0;q=vH(q)|0;r=b*30|0;n=(d|0)<(b|0)?d:b;o=b+-1|0;m=(g|0)==0;d=0;i=0;a:while(1){if((i|0)>=(n|0))break;k=c[e+(i<<2)>>2]|0;do{b:do if(m)d=0;else{d=0;while(1){if((d|0)==(b|0)){d=0;break b}h[k+(d<<3)>>3]=+((g2()|0)%100|0|0);d=d+1|0}}while(0);while(1){if((d|0)==(i|0))break;g=c[e+(d<<2)>>2]|0;As(k,0,o,-+zs(g,0,o,k),g);d=d+1|0}j=+Bs(k,0,o)}while(j<1.0e-10);Cs(k,0,o,1.0/j,k);d=0;do{Ds(q,0,o,k);Es(a,b,b,k,p);Ds(k,0,o,p);g=0;while(1){if((g|0)==(i|0))break;s=c[e+(g<<2)>>2]|0;As(k,0,o,-+zs(s,0,o,k),s);g=g+1|0}s=d;d=d+1|0;j=+Bs(k,0,o);if(!((s|0)<(r|0)&!(j<1.0e-10)))break a;Cs(k,0,o,1.0/j,k);l=+zs(k,0,o,q)}while(+B(+l)<.999);h[f+(i<<3)>>3]=l*j;i=i+1|0}while(1){if((i|0)>=(n|0))break;k=c[e+(i<<2)>>2]|0;g=0;while(1){if((g|0)>=(b|0)){g=0;break}h[k+(g<<3)>>3]=+((g2()|0)%100|0|0);g=g+1|0}while(1){if((g|0)>=(i|0))break;s=c[e+(g<<2)>>2]|0;As(k,0,o,-+zs(s,0,o,k),s);g=g+1|0}Cs(k,0,o,1.0/+Bs(k,0,o),k);h[f+(i<<3)>>3]=0.0;i=i+1|0}m=n+-1|0;i=0;while(1){if((i|0)>=(m|0))break;a=f+(i<<3)|0;b=i+1|0;j=+h[a>>3];g=i;k=b;while(1){if((k|0)>=(n|0))break;l=+h[f+(k<<3)>>3];s=j>2]|0);s=e+(g<<2)|0;Ds(c[k>>2]|0,0,o,c[s>>2]|0);Ds(c[s>>2]|0,0,o,p);h[f+(g<<3)>>3]=+h[a>>3];h[a>>3]=j;i=b}D_(p);D_(q);return (d|0)<=(r|0)|0}function zs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0;f=0.0;e=1-b+c|0;d=d+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!e)break;f=+h[d>>3]*+h[c>>3]+f;e=e+-1|0;d=d+8|0;c=c+8|0}return +f}function As(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0;f=1-b+c|0;e=e+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!f)break;h[c>>3]=+h[c>>3]+ +h[e>>3]*d;f=f+-1|0;e=e+8|0;c=c+8|0}return}function Bs(a,b,c){a=a|0;b=b|0;c=c|0;return +(+C(+(+zs(a,b,c,a))))}function Cs(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0;f=1-b+c|0;e=e+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!f)break;h[c>>3]=+h[e>>3]*d;f=f+-1|0;e=e+8|0;c=c+8|0}return}function Ds(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=1-b+c|0;d=d+(b<<3)|0;c=a+(b<<3)|0;while(1){if(!e)break;h[c>>3]=+h[d>>3];e=e+-1|0;d=d+8|0;c=c+8|0}return}function Es(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0;j=0;while(1){if((j|0)>=(b|0))break;k=a+(j<<2)|0;g=0.0;i=0;while(1){if((i|0)>=(d|0))break;g=+h[e+(i<<3)>>3]*+h[(c[k>>2]|0)+(i<<3)>>3]+g;i=i+1|0}h[f+(j<<3)>>3]=g;j=j+1|0}return}function Fs(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;k=c[i>>2]|0;if(!k){o=d<<2;j=C_(O(o,f)|0)|0;o=C_(o)|0}else{o=d<<2;j=F_(c[k>>2]|0,O(o,f)|0)|0;o=F_(k,o)|0}c[i>>2]=o;k=0;while(1){if((k|0)>=(d|0)){i=0;break}c[o+(k<<2)>>2]=j;k=k+1|0;j=j+(f<<2)|0}while(1){if((i|0)>=(d|0))break;m=a+(i<<2)|0;n=o+(i<<2)|0;k=0;while(1){if((k|0)<(f|0)){j=0;l=0.0}else break;while(1){if((j|0)>=(e|0))break;p=+h[(c[m>>2]|0)+(j<<3)>>3]*+g[(c[b+(j<<2)>>2]|0)+(k<<2)>>2]+l;j=j+1|0;l=p}g[(c[n>>2]|0)+(k<<2)>>2]=l;k=k+1|0}i=i+1|0}return}function Gs(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0.0,m=0,n=0,o=0;k=c[i>>2]|0;if(!k){j=C_(O(d<<3,f)|0)|0;o=C_(d<<2)|0}else{j=F_(c[k>>2]|0,O(d<<3,f)|0)|0;o=F_(k,d<<2)|0}c[i>>2]=o;k=0;while(1){if((k|0)>=(d|0)){i=0;break}c[o+(k<<2)>>2]=j;k=k+1|0;j=j+(f<<3)|0}while(1){if((i|0)>=(d|0))break;m=a+(i<<2)|0;n=o+(i<<2)|0;k=0;while(1){if((k|0)<(f|0)){l=0.0;j=0}else break;while(1){if((j|0)>=(e|0))break;l=+h[(c[m>>2]|0)+(j<<3)>>3]*+g[(c[b+(j<<2)>>2]|0)+(k<<2)>>2]+l;j=j+1|0}h[(c[n>>2]|0)+(k<<3)>>3]=l;k=k+1|0}i=i+1|0}return}function Hs(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0;j=c[f>>2]|0;if(!j){i=C_(O(d*20|0,e)|0)|0;q=C_(d<<2)|0}else{i=F_(c[j>>2]|0,O(d*20|0,e)|0)|0;q=F_(j,d<<2)|0}c[f>>2]=q;j=0;while(1){if((j|0)>=(d|0)){f=0;break}c[q+(j<<2)>>2]=i;j=j+1|0;i=i+(e<<2)|0}while(1){if((f|0)>=(d|0))break;l=c[a+(f*20|0)+4>>2]|0;m=c[a+(f*20|0)+8>>2]|0;n=c[a+(f*20|0)>>2]|0;o=q+(f<<2)|0;i=0;while(1){if((i|0)>=(e|0))break;p=b+(i<<2)|0;k=0.0;j=0;while(1){if((j|0)>=(n|0))break;k=+h[(c[p>>2]|0)+(c[l+(j<<2)>>2]<<3)>>3]*+g[m+(j<<2)>>2]+k;j=j+1|0}g[(c[o>>2]|0)+(i<<2)>>2]=k;i=i+1|0}f=f+1|0}return}function Is(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=0.0;d=b;e=a;while(1){if(!e)break;c=+h[d>>3]+c;d=d+8|0;e=e+-1|0}c=c/+(a|0);while(1){if(!a)break;h[b>>3]=+h[b>>3]-c;b=b+8|0;a=a+-1|0}return}function Js(a,b){a=a|0;b=b|0;var c=0;c=0;while(1){if((c|0)>=(a|0))break;h[b+(c<<3)>>3]=+((g2()|0)%500|0|0);c=c+1|0}Is(a,b);return}function Ks(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,l=0,m=0;j=0;while(1){if((j|0)>=(b|0))break;k=c[a+(j*20|0)>>2]|0;l=a+(j*20|0)+8|0;m=a+(j*20|0)+4|0;f=0.0;i=0;while(1){if((i|0)>=(k|0))break;f=+h[d+(c[(c[m>>2]|0)+(i<<2)>>2]<<3)>>3]*+g[(c[l>>2]|0)+(i<<2)>>2]+f;i=i+1|0}h[e+(j<<3)>>3]=f;j=j+1|0}return}function Ls(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0;j=0;while(1){if((j|0)>=(b|0))break;k=a+(j<<2)|0;f=0.0;i=0;while(1){if((i|0)==(b|0))break;f=+h[d+(i<<3)>>3]*+g[(c[k>>2]|0)+(i<<2)>>2]+f;i=i+1|0}h[e+(j<<3)>>3]=f;j=j+1|0}return}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;h[d+(e<<3)>>3]=+h[b+(e<<3)>>3]-+h[c+(e<<3)>>3];e=e+1|0}return}function Ns(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;h[d+(e<<3)>>3]=+h[c+(e<<3)>>3]+ +h[b+(e<<3)>>3];e=e+1|0}return}function Os(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;h[d+(e<<3)>>3]=+h[b+(e<<3)>>3]*c;e=e+1|0}return}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=0;while(1){if((d|0)>=(a|0))break;h[c+(d<<3)>>3]=+h[b+(d<<3)>>3];d=d+1|0}return}function Qs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0;d=0.0;e=0;while(1){if((e|0)>=(a|0))break;d=+h[c+(e<<3)>>3]*+h[b+(e<<3)>>3]+d;e=e+1|0}return +d}function Rs(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0;c=0;d=-1.e+50;while(1){if((c|0)>=(a|0))break;e=+B(+(+h[b+(c<<3)>>3]));c=c+1|0;d=e>d?e:d}return +d}function Ss(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0;j=0;while(1){if((j|0)<(b|0)){g=0.0;i=0}else break;while(1){if((i|0)>=(d|0))break;g=+h[e+(i<<3)>>3]*+h[(c[a+(i<<2)>>2]|0)+(j<<3)>>3]+g;i=i+1|0}h[f+(j<<3)>>3]=g;j=j+1|0}return}function Ts(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=0.0;d=b;e=a;while(1){if(!e)break;c=+g[d>>2]+c;d=d+4|0;e=e+-1|0}c=c/+(a|0);while(1){if(!a)break;g[b>>2]=+g[b>>2]-c;b=b+4|0;a=a+-1|0}return}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0.0,o=0,p=0.0;e=0;while(1){if((e|0)>=(b|0)){h=0;j=0;m=b;break}g[d+(e<<2)>>2]=0.0;e=e+1|0}while(1){if((j|0)>=(b|0))break;l=+g[c+(j<<2)>>2];k=j+1|0;f=+g[a+(h<<2)>>2]*l;i=k;e=h;while(1){e=e+1|0;if((i|0)==(b|0))break;p=+g[a+(e<<2)>>2];n=+g[c+(i<<2)>>2]*p+f;o=d+(i<<2)|0;g[o>>2]=+g[o>>2]+p*l;f=n;i=i+1|0}o=d+(j<<2)|0;g[o>>2]=+g[o>>2]+f;h=h+m|0;j=k;m=m+-1|0}return}function Vs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;g[d+(e<<2)>>2]=+g[b+(e<<2)>>2]-+g[c+(e<<2)>>2];e=e+1|0}return}function Ws(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;g[d+(e<<2)>>2]=+g[c+(e<<2)>>2]+ +g[b+(e<<2)>>2];e=e+1|0}return}function Xs(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0;e=0;while(1){if((e|0)>=(a|0))break;f=b+(e<<2)|0;g[f>>2]=+g[d+(e<<2)>>2]*c+ +g[f>>2];e=e+1|0}return}function Ys(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;g[d+(e<<2)>>2]=+g[b+(e<<2)>>2]*c;e=e+1|0}return}function Zs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(a|0))break;c[d+(e<<2)>>2]=c[b+(e<<2)>>2];e=e+1|0}return}function _s(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0;d=0.0;e=0;while(1){if((e|0)>=(a|0))break;d=d+ +g[c+(e<<2)>>2]*+g[b+(e<<2)>>2];e=e+1|0}return +d}function $s(a,b,c){a=a|0;b=+b;c=c|0;var d=0;d=0;while(1){if((d|0)>=(a|0))break;h[c+(d<<3)>>3]=b;d=d+1|0}return}function at(a,b,c){a=a|0;b=+b;c=c|0;var d=0;d=0;while(1){if((d|0)>=(a|0))break;g[c+(d<<2)>>2]=b;d=d+1|0}return}function bt(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0;c=-1000000015047466219876688.0e6;d=0;while(1){if((d|0)>=(a|0))break;e=+B(+(+g[b+(d<<2)>>2]));c=e>c?e:c;d=d+1|0}return +c}function ct(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=0;while(1){if((c|0)>=(a|0))break;d=b+(c<<2)|0;e=+g[d>>2];g[d>>2]=e*e;c=c+1|0}return}function dt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=0;while(1){if((c|0)>=(a|0))break;d=b+(c<<2)|0;e=+g[d>>2];if(e!=0.0)g[d>>2]=1.0/e;c=c+1|0}return}function et(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0;d=0;while(1){if((d|0)>=(a|0))break;e=+g[b+(d<<2)>>2];if(e>=0.0)g[c+(d<<2)>>2]=+C(+e);d=d+1|0}return}function ft(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0;c=0;while(1){if((c|0)>=(a|0))break;d=b+(c<<2)|0;e=+g[d>>2];if(e>0.0)g[d>>2]=1.0/+C(+e);c=c+1|0}return}function gt(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=0;if(b&3)if(!(4%(b>>>0)|0))b=4;else b=O(4/((ht(b)|0)>>>0)|0,b)|0;c[a+8>>2]=b;a=a+4|0;b=c[a>>2]|0;a:do if(b|0)while(1){if(!b)break a;d=c[b>>2]|0;D_(c[b+4>>2]|0);D_(b);b=d}while(0);c[a>>2]=0;return}function ht(a){a=a|0;var b=0,c=0;c=4;a:while(1){b=c;while(1){if((b|0)==(a|0))break a;if((b|0)<=(a|0))break;b=b-a|0}c=b;a=a-b|0}return a|0}function it(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;if(!b){d=c[a+8>>2]|0;e=vH(8)|0;f=vH(O(c[46085]|0,d)|0)|0;c[e+4>>2]=f;b=0;while(1){if((b|0)>=(c[46085]|0))break;jt(f+(O(b,d)|0)|0,a);b=b+1|0}b=a+4|0;c[e>>2]=c[b>>2];c[b>>2]=e;b=c[a>>2]|0}c[a>>2]=c[b>>2];return b|0}function jt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=a;return}function kt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,l=0,m=0;m=uH(b<<3)|0;l=a+8|0;f=c[l>>2]|0;lt(a,b,m);Js(b,d);h=0;i=0;while(1){if((i|0)>=(b|0))break;h=(c[a+(i*20|0)>>2]|0)+h|0;i=i+1|0}h=vH(h<<2)|0;j=0;while(1){if((j|0)>=(b|0))break;c[a+(j*20|0)+8>>2]=h;k=c[a+(j*20|0)>>2]|0;g[h>>2]=+(1-k|0);i=1;while(1){if((i|0)>=(k|0))break;g[h+(i<<2)>>2]=1.0;i=i+1|0}h=h+(k<<2)|0;j=j+1|0}i=Dq(a,d,m,b,.001,e)|0;D_(c[l>>2]|0);h=0;while(1){if((h|0)>=(b|0))break;c[a+(h*20|0)+8>>2]=f;f=f+(c[a+(h*20|0)>>2]<<2)|0;h=h+1|0}D_(m);return i>>>31|0}function lt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,i=0,j=0,k=0,l=0,m=0;k=a+16|0;i=0;while(1){if((i|0)>=(b|0))break;if(c[k>>2]|0){l=c[a+(i*20|0)>>2]|0;m=a+(i*20|0)+8|0;j=a+(i*20|0)+16|0;e=0.0;f=1;while(1){if((f|0)>=(l|0))break;e=e+ +g[(c[j>>2]|0)+(f<<2)>>2]*+g[(c[m>>2]|0)+(f<<2)>>2];f=f+1|0}h[d+(i<<3)>>3]=e}i=i+1|0}return}function mt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=vH(f<<2)|0;i=b<<3;g=0;while(1){if((g|0)>=(f|0))break;c[r+(g<<2)>>2]=vH(i)|0;g=g+1|0}p=vH(f<<3)|0;q=vH(b<<2)|0;g=vH(O(i,b)|0)|0;i=0;while(1){if((i|0)>=(b|0))break;c[q+(i<<2)>>2]=g;g=g+(b<<3)|0;i=i+1|0}k=0;o=1;while(1){if((k|0)>=(b|0))break;l=a+(k<<2)|0;m=q+(k<<2)|0;i=0;while(1){if((i|0)==(o|0))break;n=a+(i<<2)|0;g=0;j=0.0;while(1){if((g|0)>=(d|0))break;s=j+ +(O(c[(c[n>>2]|0)+(g<<2)>>2]|0,c[(c[l>>2]|0)+(g<<2)>>2]|0)|0);g=g+1|0;j=s}h[(c[q+(i<<2)>>2]|0)+(k<<3)>>3]=j;h[(c[m>>2]|0)+(i<<3)>>3]=j;i=i+1|0}k=k+1|0;o=o+1|0}ys(q,b,f,r,p,1)|0;i=0;while(1){if((i|0)>=(f|0)){g=0;break}l=r+(i<<2)|0;m=e+(i<<2)|0;k=0;while(1){if((k|0)<(d|0)){g=0;j=0.0}else break;while(1){if((g|0)>=(b|0))break;s=+h[(c[l>>2]|0)+(g<<3)>>3]*+(c[(c[a+(g<<2)>>2]|0)+(k<<2)>>2]|0)+j;g=g+1|0;j=s}h[(c[m>>2]|0)+(k<<3)>>3]=j;k=k+1|0}i=i+1|0}while(1){if((g|0)>=(f|0))break;D_(c[r+(g<<2)>>2]|0);g=g+1|0}D_(r);D_(p);D_(c[q>>2]|0);D_(q);return}function nt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+16|0;j=f+20|0;i=f+12|0;h=f+8|0;c[g>>2]=e;c[i>>2]=0;c[h>>2]=0;$u(c[a>>2]|0,d,d<<2,j);Hs(c[j>>2]|0,a,d,b,i);Gs(a,c[i>>2]|0,b,d,b,h);D_(c[c[i>>2]>>2]|0);D_(c[i>>2]|0);e=(ys(c[h>>2]|0,b,1,g,f,1)|0)&255;l=f;return e|0}function ot(){c[46143]=0;D_(c[46144]|0);D_(c[46145]|0);D_(c[46146]|0);c[46144]=0;c[46145]=0;c[46146]=0;return}function pt(a){a=a|0;D_(c[a+36>>2]|0);return}function qt(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0;r=l;l=l+80|0;o=r+64|0;q=r+68|0;i=r+48|0;j=r+32|0;k=r+16|0;m=r;n=d+16|0;g=c[n>>2]|0;a:do if(!(c[g+212>>2]|0))switch(HJ(d)|0){case 1:{g=c[n>>2]|0;j=c[g+12>>2]|0;k=c[j+8>>2]|0;c[q>>2]=k;g=c[c[g+8>>2]>>2]|0;switch(a[g>>0]|0){case 98:{if(!(b$(g,105210)|0))p=11;else p=8;break}case 112:{if((b$(g,102695)|0)==0?(rt(c[j+44>>2]|0,k)|0)!=0:0)p=11;else p=8;break}default:p=8}do if((p|0)==8)if((k|0)<3){c[b+40>>2]=(c[j>>2]|0)==0?0:2;p=17;break}else{g=b+40|0;c[g>>2]=0;break}else if((p|0)==11){g=b+40|0;c[g>>2]=1;if((k|0)<=2)p=17}while(0);if((p|0)==17){i=st(d,q,e,f)|0;p=21;break a}i=vH(k<<4)|0;j=j+44|0;if((c[g>>2]|0)==1){p=c[j>>2]|0;s=e;h[i>>3]=+h[p>>3]*.013888888888888888+s;e=f;h[i+8>>3]=+h[p+8>>3]*.013888888888888888+e;h[i+16>>3]=+h[p+16>>3]*.013888888888888888-s;h[i+24>>3]=+h[p+24>>3]*.013888888888888888+e;h[i+32>>3]=+h[p+32>>3]*.013888888888888888-s;h[i+40>>3]=+h[p+40>>3]*.013888888888888888-e;h[i+48>>3]=+h[p+48>>3]*.013888888888888888+s;h[i+56>>3]=+h[p+56>>3]*.013888888888888888-e;p=21;break a}g=0;while(1){if((g|0)>=(k|0)){p=21;break a}p=c[j>>2]|0;u=+h[p+(g<<4)>>3];s=+h[p+(g<<4)+8>>3];t=+C(+(s*s+u*u));h[i+(g<<4)>>3]=(e/t+1.0)*u*.013888888888888888;h[i+(g<<4)+8>>3]=(f/t+1.0)*s*.013888888888888888;g=g+1|0}}case 2:{c[q>>2]=4;p=vH(64)|0;d=c[(c[n>>2]|0)+12>>2]|0;v=+h[d+32>>3];t=+h[d+40>>3];o=~~+h[d+16>>3];d=~~+h[d+24>>3];u=-e;s=-f;tt(i,o,d,u,s);c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];i=p+16|0;n=~~v;tt(j,n,d,e,s);c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=p+32|0;d=~~t;tt(k,n,d,e,f);c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];i=p+48|0;tt(m,o,d,u,f);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[b+40>>2]=1;i=p;p=21;break a}case 3:{c[b+40>>2]=2;i=st(d,q,e,f)|0;p=21;break a}default:{c[o>>2]=c[c[(c[n>>2]|0)+8>>2]>>2];Pw(1,92312,o)|0;g=1;break a}}else{c[q>>2]=4;u=+h[g+32>>3]*.5+e;v=+h[g+40>>3]*.5+f;c[b+40>>2]=1;i=vH(64)|0;h[i>>3]=u;h[i+8>>3]=v;t=-u;h[i+16>>3]=t;h[i+24>>3]=v;h[i+32>>3]=t;v=-v;h[i+40>>3]=v;h[i+48>>3]=u;h[i+56>>3]=v;p=21}while(0);if((p|0)==21){c[b+36>>2]=i;g=c[q>>2]|0;c[b+32>>2]=g;ut(i,g,b,b+16|0);if((g|0)>(c[46143]|0)){c[46143]=g;g=0}else g=0}l=r;return g|0}function rt(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;do if((b|0)==4){c=+h[a+8>>3];b=a+16|0;d=+h[a+24>>3];if(c==d){if(!(+h[a+40>>3]==+h[a+56>>3])){b=0;break}if(!(+h[a>>3]==+h[a+48>>3])){b=0;break}b=+h[b>>3]==+h[a+32>>3];break}if((+h[a>>3]==+h[b>>3]?+h[a+32>>3]==+h[a+48>>3]:0)?c==+h[a+56>>3]:0)b=d==+h[a+40>>3];else b=0}else b=0;while(0);return b&1|0}function st(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0.0,i=0,j=0,k=0.0,l=0;f=xx(a,99679)|0;if(!f)f=0;else f=a2(f)|0;i=(f|0)<3?20:f;j=vH(i<<4)|0;a=a+16|0;g=1.0/+(i|0);f=0;while(1){if((f|0)>=(i|0))break;l=c[a>>2]|0;k=g*+(f|0)*6.283185307179586;h[j+(f<<4)>>3]=(+h[l+32>>3]*.5+d)*+E(+k);h[j+(f<<4)+8>>3]=(+h[l+40>>3]*.5+e)*+F(+k);f=f+1|0}c[b>>2]=i;return j|0}function tt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;h[a>>3]=+(b|0)*.013888888888888888+d;h[a+8>>3]=+(c|0)*.013888888888888888+e;return}function ut(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0.0,m=0.0;j=+h[a>>3];i=+h[a+8>>3];e=1;f=i;g=j;while(1){if((e|0)>=(b|0))break;k=a+16|0;l=+h[k>>3];m=+h[a+24>>3];e=e+1|0;f=m>f?m:f;g=l>g?l:g;i=m>3]=j;h[c+8>>3]=i;h[d>>3]=g;h[d+8>>3]=f;return}function vt(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0;r=l;l=l+80|0;n=r+64|0;p=r+68|0;i=r+48|0;j=r+32|0;k=r+16|0;m=r;o=d+16|0;g=c[o>>2]|0;a:do if(!(c[g+212>>2]|0))switch(HJ(d)|0){case 1:{m=c[(c[o>>2]|0)+12>>2]|0;n=m+8|0;k=c[n>>2]|0;c[p>>2]=k;b:do if((k|0)>2){i=vH(k<<4)|0;j=m+44|0;g=0;while(1){if((g|0)>=(k|0))break b;d=c[j>>2]|0;h[i+(g<<4)>>3]=+h[d+(g<<4)>>3]*.013888888888888888;h[i+(g<<4)+8>>3]=+h[d+(g<<4)+8>>3]*.013888888888888888;g=g+1|0}}else i=st(d,p,0.0,0.0)|0;while(0);g=c[c[(c[o>>2]|0)+8>>2]>>2]|0;switch(a[g>>0]|0){case 98:{if(!(b$(g,105210)|0))g=1;else q=13;break}case 112:{if((b$(g,102695)|0)==0?(rt(i,c[p>>2]|0)|0)!=0:0)g=1;else q=13;break}default:q=13}do if((q|0)==13){if((c[n>>2]|0)<3?c[m>>2]|0:0){g=2;break}g=0}while(0);c[b+40>>2]=g;q=20;break a}case 2:{c[p>>2]=4;q=vH(64)|0;o=c[(c[o>>2]|0)+12>>2]|0;t=+h[o+16>>3];v=+h[o+24>>3];u=+h[o+32>>3];s=+h[o+40>>3];wt(i,t,v);c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[q+12>>2]=c[i+12>>2];i=q+16|0;wt(j,u,v);c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=q+32|0;wt(k,u,s);c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];i=q+48|0;wt(m,t,s);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[b+40>>2]=1;i=q;q=20;break a}case 3:{c[b+40>>2]=2;i=st(d,p,0.0,0.0)|0;q=20;break a}default:{c[n>>2]=c[c[(c[o>>2]|0)+8>>2]>>2];Pw(1,92348,n)|0;g=1;break a}}else{c[p>>2]=4;u=+h[g+32>>3]*.5;v=+h[g+40>>3]*.5;c[b+40>>2]=1;i=vH(64)|0;h[i>>3]=u;h[i+8>>3]=v;t=-u;h[i+16>>3]=t;h[i+24>>3]=v;h[i+32>>3]=t;v=-v;h[i+40>>3]=v;h[i+48>>3]=u;h[i+56>>3]=v;q=20}while(0);if((q|0)==20){g=c[p>>2]|0;if(e!=1.0|f!=1.0)xt(i,g,e,f);c[b+36>>2]=i;c[b+32>>2]=g;ut(i,g,b,b+16|0);if((g|0)>(c[46143]|0)){c[46143]=g;g=0}else g=0}l=r;return g|0}function wt(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b*.013888888888888888;h[a+8>>3]=c*.013888888888888888;return}function xt(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=0;while(1){if((e|0)>=(b|0))break;h[a>>3]=+h[a>>3]*c;f=a+8|0;h[f>>3]=+h[f>>3]*d;a=a+16|0;e=e+1|0}return}function yt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0;r=l;l=l+128|0;o=r+112|0;n=r+96|0;m=r+80|0;f=r+64|0;p=r+48|0;q=r+32|0;j=r+16|0;k=r;c[n>>2]=c[a>>2];c[n+4>>2]=c[a+4>>2];c[n+8>>2]=c[a+8>>2];c[n+12>>2]=c[a+12>>2];c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];xr(p,n,o);g=b+16|0;c[n>>2]=c[a>>2];c[n+4>>2]=c[a+4>>2];c[n+8>>2]=c[a+8>>2];c[n+12>>2]=c[a+12>>2];c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];xr(q,n,o);c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];xr(j,n,o);i=e+16|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];xr(k,n,o);c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];c[m+12>>2]=c[q+12>>2];c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];do if(zt(f,m,n,o)|0){f=c[b+40>>2]|0;if(f&1|0?c[e+40>>2]&1|0:0){f=1;break}if(f&2|0?c[e+40>>2]&2|0:0){s=+h[g>>3]-+h[b>>3]+ +h[i>>3]-+h[e>>3];t=+h[a>>3]-+h[d>>3];u=+h[a+8>>3]-+h[d+8>>3];f=!(u*u+t*t>s*s*.25);break}f=c[46144]|0;if(!f){c[46144]=vH(c[46143]<<4)|0;i=vH(c[46143]<<4)|0;c[46145]=i;f=c[46144]|0}else i=c[46145]|0;v=c[b+36>>2]|0;b=b+32|0;g=c[b>>2]|0;c[o>>2]=c[a>>2];c[o+4>>2]=c[a+4>>2];c[o+8>>2]=c[a+8>>2];c[o+12>>2]=c[a+12>>2];At(v,g,o,f);a=c[e+36>>2]|0;g=e+32|0;e=c[g>>2]|0;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];At(a,e,o,i);if(!(Bt(f,i,c[b>>2]|0,c[g>>2]|0)|0)){f=c[46144]|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];if(Ct(m,n,o)|0?(k=c[46145]|0,v=c[g>>2]|0,c[o>>2]=c[f>>2],c[o+4>>2]=c[f+4>>2],c[o+8>>2]=c[f+8>>2],c[o+12>>2]=c[f+12>>2],Dt(k,v,o)|0):0){f=1;break}f=c[46145]|0;c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];if(!(Ct(m,n,o)|0))f=0;else{q=c[46144]|0;v=c[b>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];f=(Dt(q,v,o)|0)!=0}}else f=1}else f=0;while(0);l=r;return f&1|0}function zt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((+h[a>>3]<=+h[d>>3]?+h[c>>3]<=+h[b>>3]:0)?+h[a+8>>3]<=+h[d+8>>3]:0)a=+h[c+8>>3]<=+h[b+8>>3]&1;else a=0;return a|0}function At(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=c+8|0;e=0;while(1){if((e|0)>=(b|0))break;h[d>>3]=+h[c>>3]+ +h[a>>3];h[d+8>>3]=+h[f>>3]+ +h[a+8>>3];e=e+1|0;a=a+16|0;d=d+16|0}return}function Bt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=l;l=l+112|0;s=A+96|0;r=A+80|0;q=A+64|0;p=A+48|0;u=A+32|0;v=A+16|0;w=A;x=d+-1|0;y=e+-1|0;z=d<<1;t=e<<1;f=0;g=0;h=0;i=0;while(1){B=a+(f<<4)|0;C=a+(((x+f|0)%(d|0)|0)<<4)|0;c[r>>2]=c[B>>2];c[r+4>>2]=c[B+4>>2];c[r+8>>2]=c[B+8>>2];c[r+12>>2]=c[B+12>>2];c[s>>2]=c[C>>2];c[s+4>>2]=c[C+4>>2];c[s+8>>2]=c[C+8>>2];c[s+12>>2]=c[C+12>>2];wr(u,r,s);o=b+(g<<4)|0;n=b+(((y+g|0)%(e|0)|0)<<4)|0;c[r>>2]=c[o>>2];c[r+4>>2]=c[o+4>>2];c[r+8>>2]=c[o+8>>2];c[r+12>>2]=c[o+12>>2];c[s>>2]=c[n>>2];c[s+4>>2]=c[n+4>>2];c[s+8>>2]=c[n+8>>2];c[s+12>>2]=c[n+12>>2];wr(v,r,s);c[q>>2]=c[45770];c[q+4>>2]=c[45771];c[q+8>>2]=c[45772];c[q+12>>2]=c[45773];c[r>>2]=c[u>>2];c[r+4>>2]=c[u+4>>2];c[r+8>>2]=c[u+8>>2];c[r+12>>2]=c[u+12>>2];c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];c[s+8>>2]=c[v+8>>2];c[s+12>>2]=c[v+12>>2];j=+yr(q,r,s);c[q>>2]=c[C>>2];c[q+4>>2]=c[C+4>>2];c[q+8>>2]=c[C+8>>2];c[q+12>>2]=c[C+12>>2];c[r>>2]=c[B>>2];c[r+4>>2]=c[B+4>>2];c[r+8>>2]=c[B+8>>2];c[r+12>>2]=c[B+12>>2];c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];c[s+12>>2]=c[o+12>>2];k=zr(q,r,s)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[r>>2]=c[o>>2];c[r+4>>2]=c[o+4>>2];c[r+8>>2]=c[o+8>>2];c[r+12>>2]=c[o+12>>2];c[s>>2]=c[B>>2];c[s+4>>2]=c[B+4>>2];c[s+8>>2]=c[B+8>>2];c[s+12>>2]=c[B+12>>2];m=zr(q,r,s)|0;c[p>>2]=c[C>>2];c[p+4>>2]=c[C+4>>2];c[p+8>>2]=c[C+8>>2];c[p+12>>2]=c[C+12>>2];c[q>>2]=c[B>>2];c[q+4>>2]=c[B+4>>2];c[q+8>>2]=c[B+8>>2];c[q+12>>2]=c[B+12>>2];c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[r+12>>2]=c[n+12>>2];c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];c[s+12>>2]=c[o+12>>2];if(Ar(p,q,r,s,w)|0){f=1;break}n=(k|0)==0;o=(m|0)==0;do if(j!=0.0|(m|k|0)!=0)if(!(j>=0.0))if(o){f=(f+1|0)%(d|0)|0;h=h+1|0;break}else{g=(g+1|0)%(e|0)|0;i=i+1|0;break}else if(n){g=(g+1|0)%(e|0)|0;i=i+1|0;break}else{f=(f+1|0)%(d|0)|0;h=h+1|0;break}else{f=(f+1|0)%(d|0)|0;h=h+1|0}while(0);if(!((i|0)<(t|0)&((h|0)<(z|0)&((i|0)<(e|0)|(h|0)<(d|0))))){f=0;break}}l=A;return f|0}function Ct(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;e=+h[a>>3];if((e<=+h[c>>3]?e>=+h[b>>3]:0)?(d=+h[a+8>>3],d<=+h[c+8>>3]):0)a=d>=+h[b+8>>3]&1;else a=0;return a|0}function Dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,l=0;e=c[46146]|0;if(!e){e=vH(c[46143]<<4)|0;c[46146]=e}i=d+8|0;g=0;while(1){if((g|0)>=(b|0))break;h[e+(g<<4)>>3]=+h[a+(g<<4)>>3]-+h[d>>3];h[e+(g<<4)+8>>3]=+h[a+(g<<4)+8>>3]-+h[i>>3];g=g+1|0}d=b+-1|0;f=0.0;a=0;a:while(1){if((a|0)>=(b|0)){l=19;break}g=(d+a|0)%(b|0)|0;j=+h[e+(a<<4)+8>>3];i=j==0.0;if(i?+h[e+(g<<4)+8>>3]==0.0:0){if(+h[e+(g<<4)>>3]*+h[e+(a<<4)>>3]<0.0){e=1;break}}else l=11;do if((l|0)==11){l=0;k=+h[e+(g<<4)+8>>3];if(!(j>=0.0)|!(k<=0.0)?!(k>=0.0)|!(j<=0.0):0)break;j=(k*+h[e+(a<<4)>>3]-j*+h[e+(g<<4)>>3])/(k-j);if(j==0.0){e=1;break a}if(j>0.0)if(k==0.0|i){f=f+.5;break}else{f=f+1.0;break}}while(0);a=a+1|0}if((l|0)==19)e=((~~f|0)%2|0|0)==1&1;return e|0}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=vH(b<<2)|0;i=O(b,b)|0;d=vH(i<<2)|0;c[j>>2]=d;at(i,0.0,d);d=1;while(1){if((d|0)>=(b|0)){d=0;g=0;i=b;break}c[j+(d<<2)>>2]=(c[j>>2]|0)+((O(d,b)|0)<<2);d=d+1|0}while(1){if((g|0)>=(b|0))break;h=j+(g<<2)|0;e=g;f=d;while(1){if((e|0)==(b|0))break;k=c[a+(f<<2)>>2]|0;c[(c[h>>2]|0)+(e<<2)>>2]=k;c[(c[j+(e<<2)>>2]|0)+(g<<2)>>2]=k;e=e+1|0;f=f+1|0}d=d+i|0;g=g+1|0;i=i+-1|0}return j|0}function Ft(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;var k=0.0,l=0.0,m=0.0,n=0,o=0,p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0.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.0;M=c[d+(f<<2)>>2]|0;C=c[a+4>>2]|0;D=c[a>>2]|0;E=c[a+48>>2]|0;F=c[a+52>>2]|0;G=c[a+56>>2]|0;a:do if((h|0)<1)d=0;else{Ht(M,C,E,F,G,j);H=c[a+28>>2]|0;I=c[a+32>>2]|0;J=c[a+36>>2]|0;K=c[a+12>>2]|0;L=c[a+16>>2]|0;f=0;e=0;d=-1;while(1){if((f|0)>=(C|0))break;if((f|0)>=(e|0)){d=d+1|0;if((d|0)==(G|0)){e=C;d=G}else e=c[F+(d<<2)>>2]|0}c[L+(c[E+(f<<2)>>2]<<2)>>2]=d;f=f+1|0}z=c[a+40>>2]|0;A=I+(C+-1<<2)|0;d=0;e=0;while(1){if(e<<24>>24==0&(d|0)<(h|0)){k=-1.0e9;f=0;e=1}else break a;b:while(1){x=f;while(1){if((x|0)>=(C|0))break b;f=c[E+(x<<2)>>2]|0;y=+g[M+(f<<2)>>2];l=y;w=x;m=0.0;while(1){g[z+(f<<2)>>2]=m;f=w+1|0;if((f|0)>=(C|0)){v=0;break}l=(c[L+(f<<2)>>2]|0)>(c[L+(w<<2)>>2]|0)?l+j:l;a=c[E+(f<<2)>>2]|0;m=+g[M+(a<<2)>>2];if(+B(+(m-l))>1.0e-09){v=1;break}w=f;m=m-y;f=a}n=x;while(1){if((n|0)>(w|0)){a=0;o=x;break}o=c[E+(n<<2)>>2]|0;p=c[D+(o<<2)>>2]|0;a=0;l=-+g[b+(o<<2)>>2];while(1){if((a|0)>=(C|0))break;if((a|0)!=(o|0))l=+g[M+(a<<2)>>2]*+g[p+(a<<2)>>2]+l;a=a+1|0}g[H+(o<<2)>>2]=l/-+g[p+(o<<2)>>2]-+g[z+(o<<2)>>2];n=n+1|0}c:while(1){if((o|0)>(w|0)){m=0.0;q=0.0;r=0;break}n=c[L+(c[E+(o<<2)>>2]<<2)>>2]|0;if((n|0)==(G|0))r=f;else{r=c[F+(n<<2)>>2]|0;r=(f|0)<(r|0)?f:r}p=o;while(1){if((p|0)>=(r|0)){p=o;break}n=c[E+(p<<2)>>2]|0;if(+g[H+(n<<2)>>2]>2]=n;a=a+1|0}p=p+1|0}while(1){if((p|0)>=(r|0))break;n=c[E+(p<<2)>>2]|0;if(+g[H+(n<<2)>>2]==y){c[K+(a<<2)>>2]=n;a=a+1|0}p=p+1|0}while(1){if((o|0)>=(r|0)){o=r;continue c}n=c[E+(o<<2)>>2]|0;if(+g[H+(n<<2)>>2]>y){c[K+(a<<2)>>2]=n;a=a+1|0}o=o+1|0}}while(1){if((r|0)>=(a|0))break;o=c[K+(r<<2)>>2]|0;p=c[D+(o<<2)>>2]|0;l=0.0;n=0;while(1){if((n|0)==(r|0))break;l=l-+g[p+(c[K+(n<<2)>>2]<<2)>>2];n=n+1|0}N=l*2.0;u=p+(o<<2)|0;s=+g[u>>2];l=N+m;s=(N*y+m*q-+g[H+(o<<2)>>2]*s)/(l-s);g[I+(r<<2)>>2]=s;m=l-+g[u>>2];q=s;r=r+1|0}p=(a|0)==(C|0);if(p)g[A>>2]=y;u=a+-1|0;m=0.0;q=0.0;o=u;while(1){if((o|0)<=-1)break;r=c[K+(o<<2)>>2]|0;t=c[D+(r<<2)>>2]|0;l=0.0;n=o;while(1){n=n+1|0;if((n|0)>=(a|0))break;l=l-+g[t+(c[K+(n<<2)>>2]<<2)>>2]}l=l*2.0;t=t+(r<<2)|0;N=+g[t>>2];s=l+m;N=(l*y+m*q-+g[H+(r<<2)>>2]*N)/(s-N);g[J+(o<<2)>>2]=N;m=s-+g[t>>2];q=N;o=o+-1|0}if(p){g[J>>2]=y;s=0.0;n=-1;p=0}else{s=0.0;n=-1;p=0}while(1){if((a|0)<=(p|0))break;q=+g[J+(p<<2)>>2];if((p|0)>0)l=+g[I+(p+-1<<2)>>2];else l=q;do if(qy;if(qs;s=t?N:s;n=t?p:n;p=p+1|0}if((n|0)>-1)break;if(v?(c[L+(c[E+(f<<2)>>2]<<2)>>2]|0)>(c[L+(c[E+(w<<2)>>2]<<2)>>2]|0):0){k=+g[M+(c[K+(u<<2)>>2]<<2)>>2]+j;x=f;continue}k=+g[M+(c[K+(u<<2)>>2]<<2)>>2];x=f}m=+g[J+(n<<2)>>2];if(!n)q=m;else q=+g[I+(n+-1<<2)>>2];if(v){t=c[E+(f<<2)>>2]|0;l=+g[M+(t<<2)>>2];l=((c[L+(t<<2)>>2]|0)>(c[L+(c[E+(w<<2)>>2]<<2)>>2]|0)?l-j:l)-+g[z+(c[K+(u<<2)>>2]<<2)>>2]}else l=1.0e9;l=mk?q:k;do if(ly;if(l=(n|0))break;t=c[K+(o<<2)>>2]|0;g[M+(t<<2)>>2]=+g[z+(t<<2)>>2]+l;o=o+1|0}while(1){if((n|0)>=(a|0))break;t=c[K+(n<<2)>>2]|0;g[M+(t<<2)>>2]=+g[z+(t<<2)>>2]+m;n=n+1|0}if(v?(c[L+(c[E+(f<<2)>>2]<<2)>>2]|0)>(c[L+(c[E+(w<<2)>>2]<<2)>>2]|0):0)k=+g[M+(c[K+(u<<2)>>2]<<2)>>2]+j;else k=+g[M+(c[K+(u<<2)>>2]<<2)>>2];a=x;while(1){if((a|0)>(w|0))break;c[E+(a<<2)>>2]=c[K+(a-x<<2)>>2];a=a+1|0}if(e<<24>>24!=0?+B(+(l-y))<.01:0)e=+B(+(m-y))<.01;else e=0;e=e&1}Ts(C,M);Gt(M,E,F,G,i);d=d+1|0}}while(0);return d|0}function Gt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=0;while(1){if((g|0)>=(e|0))break;c[f+(g<<2)>>2]=c[a+(c[b+((c[d+(g<<2)>>2]|0)+-1<<2)>>2]<<2)>>2];g=g+1|0}return}function Ht(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=+h;var i=0.0,j=0,k=0,l=0,m=0;i=-1.0e9;k=0;j=-1;m=0;while(1){if((m|0)>=(b|0))break;if((m|0)<(k|0))l=k;else{j=j+1|0;if((j|0)==(f|0))k=b;else k=c[e+(j<<2)>>2]|0;if((m|0)>0)i=+g[a+(c[d+(m+-1<<2)>>2]<<2)>>2]+h;else i=-1.0e9;hs(a,d,m,k+-1|0);l=k}k=a+(c[d+(m<<2)>>2]<<2)|0;if(+g[k>>2]>2]=i;k=l;m=m+1|0}return}function It(a){a=a|0;D_(c[c[a>>2]>>2]|0);D_(c[a>>2]|0);D_(c[a+8>>2]|0);D_(c[a+28>>2]|0);D_(c[a+32>>2]|0);D_(c[a+36>>2]|0);D_(c[a+40>>2]|0);D_(c[a+12>>2]|0);D_(c[a+16>>2]|0);D_(c[a+20>>2]|0);D_(c[a+24>>2]|0);D_(a);return}function Jt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=vH(60)|0;c[k>>2]=0;l=k+4|0;c[l>>2]=b;c[k+48>>2]=d;c[k+52>>2]=e;c[k+56>>2]=f;c[k>>2]=Et(a,b)|0;i=b<<2;j=vH(i)|0;c[k+8>>2]=j;h=0;b=0;a=-1;while(1){if((h|0)>=(c[l>>2]|0))break;g=a+1|0;if((h|0)>=(b|0)){b=c[((g|0)==(f|0)?l:e+(g<<2)|0)>>2]|0;a=g}c[j+(c[d+(h<<2)>>2]<<2)>>2]=a;h=h+1|0}c[k+28>>2]=vH(i)|0;c[k+32>>2]=vH(i)|0;c[k+36>>2]=vH(i)|0;c[k+40>>2]=vH(i)|0;c[k+12>>2]=vH(i)|0;c[k+16>>2]=vH(i)|0;c[k+20>>2]=vH(i)|0;c[k+24>>2]=vH(i)|0;return k|0}function Kt(){gt(184592,24);c[46151]=0;return}function Lt(){return it(184592)|0}function Mt(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(+C(+(d*d+c*c)))}function Nt(a){a=a|0;var b=0;b=c[46151]|0;c[a+16>>2]=b;c[46151]=b+1;return}function Ot(a){a=a|0;var b=0,d=0;d=a+20|0;b=(c[d>>2]|0)+-1|0;c[d>>2]=b;if(!b)jt(a,184592);return}function Pt(a){a=a|0;a=a+20|0;c[a>>2]=(c[a>>2]|0)+1;return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var i=0.0,j=0,k=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+16|0;o=x;c[o>>2]=e;q=b<<2;v=vH(q)|0;m=b<<3;w=vH(m)|0;u=as(a,b)|0;a=0;while(1){if((a|0)>=(b|0))break;k=u+(a<<2)|0;j=0;while(1){if((j|0)==(b|0))break;s=(c[k>>2]|0)+(j<<2)|0;c[s>>2]=c[s>>2]<<8;j=j+1|0}a=a+1|0}if(!d)qa(92381,92389,283,92403);s=vH(m)|0;a=0;while(1){if((a|0)>=(b|0))break;h[s+(a<<3)>>3]=+h[d+(a<<3)>>3];a=a+1|0}Rt(s,b);i=0.0;n=0.0;m=1;while(1){if((m|0)>=(b|0))break;j=u+(m<<2)|0;k=d+(m<<3)|0;a=0;while(1){if((a|0)==(m|0))break;y=c[(c[j>>2]|0)+(a<<2)>>2]|0;r=+h[k>>3]-+h[d+(a<<3)>>3];i=r*r*(1.0/+(O(y,y)|0))+i;n=+B(+r)*(1.0/+(y|0))+n;a=a+1|0}m=m+1|0}r=n/i;a=0;while(1){if((a|0)>=(b|0))break;y=d+(a<<3)|0;h[y>>3]=+h[y>>3]*r;a=a+1|0}St(b,o,f,d,u);k=vH(O(q,b)|0)|0;j=0;while(1){if((j|0)>=(b|0)){k=1;break}m=k+((O(j,b)|0)<<2)|0;c[v+(j<<2)>>2]=m;o=u+(j<<2)|0;i=0.0;a=0;while(1){if((a|0)==(b|0))break;if((a|0)!=(j|0)){p=+(c[(c[o>>2]|0)+(a<<2)>>2]|0);p=-1.0/(p*p);g[m+(a<<2)>>2]=p;i=i-p}a=a+1|0}g[m+(j<<2)>>2]=i;j=j+1|0}while(1){if((k|0)>=(b|0)){j=0;break}i=+h[d+(k<<3)>>3];j=u+(k<<2)|0;a=0;while(1){if((a|0)==(k|0))break;y=(c[j>>2]|0)+(a<<2)|0;n=+(c[y>>2]|0);p=i-+h[d+(a<<3)>>3];p=n*n-p*p;q=~~+C(+p);q=p>0.0?q:0;c[(c[u+(a<<2)>>2]|0)+(k<<2)>>2]=q;c[y>>2]=q;a=a+1|0}k=k+1|0}while(1){if((j|0)>=(b|0)){q=0;a=0;break}n=+h[e+(j<<3)>>3];m=w+(j<<3)|0;h[m>>3]=0.0;o=u+(j<<2)|0;k=v+(j<<2)|0;a=0;i=0.0;while(1){if((a|0)==(b|0))break;if((a|0)!=(j|0)){p=+g[(c[k>>2]|0)+(a<<2)>>2]*+(c[(c[o>>2]|0)+(a<<2)>>2]|0);i=i+(n>=+h[e+(a<<3)>>3]?-p:p);h[m>>3]=i}a=a+1|0}j=j+1|0}while(1){if(!(a<<24>>24==0&(q|0)<200)){t=42;break}if((Eq(v,e,w,b,f,b,1)|0)<0){a=1;break}else{a=1;o=0}while(1){if((o|0)>=(b|0))break;p=+h[e+(o<<3)>>3];k=u+(o<<2)|0;m=v+(o<<2)|0;i=0.0;j=0;while(1){if((j|0)==(b|0))break;do if((j|0)!=(o|0)){n=+g[(c[m>>2]|0)+(j<<2)>>2]*+(c[(c[k>>2]|0)+(j<<2)>>2]|0);if(!(p>=+h[e+(j<<3)>>3])){i=i+n;break}else{i=i+-n;break}}while(0);j=j+1|0}j=w+(o<<3)|0;p=+h[j>>3];if(i!=p?+B(+(1.0-i/p))>1.0e-05:0){h[j>>3]=i;a=0}o=o+1|0}q=q+1|0}a:do if((t|0)==42){i=1.0/r;a=0;while(1){if((a|0)>=(b|0)){a=0;break a}y=d+(a<<3)|0;h[y>>3]=+h[y>>3]*i;y=e+(a<<3)|0;h[y>>3]=+h[y>>3]*i;a=a+1|0}}while(0);D_(c[u>>2]|0);D_(u);D_(c[v>>2]|0);D_(v);D_(s);D_(w);l=x;return a|0}function Rt(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=0;d=0.0;while(1){if((c|0)>=(b|0))break;e=+h[a+(c<<3)>>3]+d;c=c+1|0;d=e}d=d/+(b|0);c=0;while(1){if((c|0)>=(b|0))break;f=a+(c<<3)|0;h[f>>3]=+h[f>>3]-d;c=c+1|0}f=b+-1|0;Cs(a,0,f,1.0/+Bs(a,0,f),a);return}function St(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0;k=Tt(f,a)|0;l=vH(8)|0;if(!e){f=0;j=0}else{g=vH(a<<3)|0;f=0;while(1){if((f|0)>=(a|0))break;h[g+(f<<3)>>3]=+h[e+(f<<3)>>3];f=f+1|0}Rt(g,a);f=g;j=g}Ut(k,a,b,l,f,d);e=0;while(1){if((e|0)==1)break;g=l+(e<<3)|0;i=b+(e<<2)|0;f=0;while(1){if((f|0)>=(a|0))break;d=+C(+(+B(+(+h[g>>3]))));m=(c[i>>2]|0)+(f<<3)|0;h[m>>3]=+h[m>>3]*d;f=f+1|0}e=e+1|0}D_(c[k>>2]|0);D_(k);D_(l);D_(j);return}function Tt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+16|0;f=o;n=b<<2;e=vH(O(n,b)|0)|0;n=vH(n)|0;d=0;while(1){if((d|0)>=(b|0))break;c[n+(d<<2)>>2]=e+((O(d,b)|0)<<2);d=d+1|0}m=Wt(a,b,f)|0;h=+g[f>>2];e=0;k=1;while(1){if((e|0)>=(b|0))break;f=a+(e<<2)|0;i=m+(e<<2)|0;j=n+(e<<2)|0;d=0;while(1){if((d|0)==(k|0))break;p=+(c[(c[f>>2]|0)+(d<<2)>>2]|0);p=+g[m+(d<<2)>>2]+ +g[i>>2]-p*p-h;g[(c[j>>2]|0)+(d<<2)>>2]=p;g[(c[n+(d<<2)>>2]|0)+(e<<2)>>2]=p;d=d+1|0}e=e+1|0;k=k+1|0}D_(m);l=o;return n|0}function Ut(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0;r=b<<3;q=vH(r)|0;r=vH(r)|0;n=1.0-g;o=(b|0)<1?b:1;p=b+-1|0;k=(f|0)==0;j=0;a:while(1){if((j|0)>=(o|0))break;l=c[d+(j<<2)>>2]|0;do{i=0;while(1){if((i|0)==(b|0))break;h[l+(i<<3)>>3]=+((g2()|0)%100|0|0);i=i+1|0}if(k)i=0;else{As(l,0,p,-+zs(f,0,p,l),f);i=0}while(1){if((i|0)==(j|0))break;s=d+(i<<2)|0;m=-+zs(c[s>>2]|0,0,p,l);As(l,0,p,m,c[s>>2]|0);i=i+1|0}g=+Bs(l,0,p)}while(g<1.0e-10);Cs(l,0,p,1.0/g,l);do{Ds(r,0,p,l);Vt(a,b,b,l,q,f);Ds(l,0,p,q);i=0;while(1){if((i|0)==(j|0))break;s=d+(i<<2)|0;m=-+zs(c[s>>2]|0,0,p,l);As(l,0,p,m,c[s>>2]|0);i=i+1|0}g=+Bs(l,0,p);if(g<1.0e-10)break a;Cs(l,0,p,1.0/g,l);m=+zs(l,0,p,r)}while(+B(+m)>3]=m*g;j=j+1|0}while(1){if((j|0)>=(o|0))break;k=c[d+(j<<2)>>2]|0;i=0;while(1){if((i|0)>=(b|0)){i=0;break}h[k+(i<<3)>>3]=+((g2()|0)%100|0|0);i=i+1|0}while(1){if((i|0)>=(j|0))break;s=d+(i<<2)|0;n=-+zs(c[s>>2]|0,0,p,k);As(k,0,p,n,c[s>>2]|0);i=i+1|0}Cs(k,0,p,1.0/+Bs(k,0,p),k);h[e+(j<<3)>>3]=0.0;j=j+1|0}l=o+-1|0;j=0;while(1){if((j|0)>=(l|0))break;a=e+(j<<3)|0;f=j+1|0;g=+h[a>>3];i=j;k=f;while(1){if((k|0)>=(o|0))break;n=+h[e+(k<<3)>>3];s=g>2]|0);s=d+(i<<2)|0;Ds(c[b>>2]|0,0,p,c[s>>2]|0);Ds(c[s>>2]|0,0,p,q);h[e+(i<<3)>>3]=+h[a>>3];h[a>>3]=g;j=f}D_(q);D_(r);return}function Vt(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0.0,l=0,m=0;j=0;while(1){if((j|0)>=(b|0))break;m=a+(j<<2)|0;k=0.0;l=0;while(1){if((l|0)>=(d|0))break;k=+h[e+(l<<3)>>3]*+g[(c[m>>2]|0)+(l<<2)>>2]+k;l=l+1|0}h[f+(j<<3)>>3]=k;j=j+1|0}j=b+-1|0;if(i|0)As(f,0,j,-+zs(f,0,j,i),i);return}function Wt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0.0;j=vH(b<<2)|0;k=1.0/+(b|0);e=0.0;i=0;while(1){if((i|0)>=(b|0))break;l=a+(i<<2)|0;f=0.0;h=0;while(1){if((h|0)==(b|0))break;m=+(c[(c[l>>2]|0)+(h<<2)>>2]|0);m=m*m;f=m+f;h=h+1|0;e=m+e}g[j+(i<<2)>>2]=k*f;i=i+1|0}g[d>>2]=e/+(O(b,b)|0);return j|0}function Xt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,g=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.0,u=0;q=O(d,d)|0;r=vH(q<<3)|0;s=vH(d<<3)|0;e=0;while(1){if((e|0)>=(d|0))break;h[s+(e<<3)>>3]=+h[c+(e<<3)>>3];e=e+1|0}e=0;while(1){if((e|0)>=(q|0))break;h[r+(e<<3)>>3]=+h[a+(e<<3)>>3];e=e+1|0}p=d+-1|0;g=0;o=0;a:while(1){if((o|0)<(p|0)){f=0.0;e=o}else{l=21;break}while(1){if((e|0)>=(d|0))break;t=+B(+(+h[a+((O(e,d)|0)+o<<3)>>3]));m=t=(d|0))break;l=a+(e+i<<3)|0;t=+h[l>>3];m=a+(e+n<<3)|0;h[l>>3]=+h[m>>3];h[m>>3]=t;e=e+1|0}m=c+(g<<3)|0;t=+h[m>>3];j=c+(o<<3)|0;h[m>>3]=+h[j>>3];h[j>>3]=t;m=o+1|0;k=a+(n+o<<3)|0;e=m;while(1){if((e|0)>=(d|0)){o=m;continue a}l=O(e,d)|0;f=+h[a+(l+o<<3)>>3]/+h[k>>3];i=c+(e<<3)|0;h[i>>3]=+h[i>>3]-+h[j>>3]*f;i=0;while(1){if((i|0)>=(d|0))break;u=a+(i+l<<3)|0;h[u>>3]=+h[u>>3]-+h[a+(i+n<<3)>>3]*f;i=i+1|0}e=e+1|0}}if((l|0)==21){f=+h[a+(q+-1<<3)>>3];if(+B(+f)<1.0e-10)l=33;else{h[b+(p<<3)>>3]=+h[c+(p<<3)>>3]/f;e=0;while(1){if((e|0)>=(p|0)){e=0;break}g=d-e|0;i=g+-2|0;f=+h[c+(i<<3)>>3];j=b+(i<<3)|0;h[j>>3]=f;k=O(i,d)|0;g=g+-1|0;while(1){if((g|0)>=(d|0))break;t=f-+h[b+(g<<3)>>3]*+h[a+(g+k<<3)>>3];h[j>>3]=t;g=g+1|0;f=t}h[j>>3]=f/+h[a+(k+i<<3)>>3];e=e+1|0}while(1){if((e|0)>=(d|0)){e=0;break}h[c+(e<<3)>>3]=+h[s+(e<<3)>>3];e=e+1|0}while(1){if((e|0)>=(q|0))break;h[a+(e<<3)>>3]=+h[r+(e<<3)>>3];e=e+1|0}D_(r);D_(s)}}if((l|0)==33){k3(92418)|0;D_(r);D_(s)}return}function Yt(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=l;l=l+16|0;r=s;nr();Kt();Ir();c[46147]=jb[d&3]()|0;Kr();q=r+8|0;p=jb[d&3]()|0;e=0.0;f=0.0;a:while(1){n=(p|0)==0;o=p+8|0;while(1){if(!(Er()|0)){Fr(r);e=+h[r>>3];f=+h[q>>3]}if(!n){if(Er()|0)break;g=+h[o>>3];if(g>3]>2]|0;Nt(j);rr(c[t+8>>2]|0,a[t+16>>0]|0,j);rr(c[v+8>>2]|0,a[v+16>>0]|0,j);Rr(t);Dr(v);Rr(v);v=+h[m+8>>3]>+h[u+8>>3];t=v&1;k=v?u:m;u=or(k,v?m:u)|0;m=Lr(u,t)|0;Or(b,m);rr(u,(t^1)&255,j);Ot(j);j=Mr(b,m)|0;if(j|0){Dr(b);Br(b,j,+Mt(j,k))}b=Mr(m,i)|0;if(!b)continue;Br(m,b,+Mt(b,k))}b=Pr(p)|0;k=Sr(b)|0;i=or(Vr(b)|0,p)|0;m=Lr(i,0)|0;Or(b,m);j=Mr(b,m)|0;if(j|0){Dr(b);Br(b,j,+Mt(j,p))}i=Lr(i,1)|0;Or(m,i);b=Mr(i,k)|0;if(b|0)Br(i,b,+Mt(b,p));p=jb[d&3]()|0}b=c[46090]|0;while(1){b=Sr(b)|0;if((b|0)==(c[46091]|0))break;pr(c[b+8>>2]|0)}l=s;return}function Zt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g+8|0;e=g;do if((ay(a)|0)!=1){_t(a);if(!b)b=$t(a)|0;d=au(a,b)|0;if(0){h=c[15686]|0;c[e>>2]=ry(b)|0;c[e+4>>2]=d;g1(h,92434,e)|0}if((d|0)<0){Pw(1,92468,f)|0;break}else{bu(a);cu(a,b);du(a,b);eu(a,d);break}}else{h=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0}while(0);l=g;return b|0}function _t(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=ay(a)|0;d=O(d,d)|0;b=Sy(a)|0;while(1){if(!b)break;e=b+16|0;f=c[(c[e>>2]|0)+112>>2]|0;g=f+24|0;c[g>>2]=d;c[g+4>>2]=0;h[f+48>>3]=10.0;f=(mu(a,b)|0)==0;e=c[(c[e>>2]|0)+112>>2]|0;c[e>>2]=f?d:0;c[e+4>>2]=f?0:0;b=Ty(a,b)|0}return}function $t(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=(ay(a)|0)<3;b=Sy(a)|0;a:do if(!e){while(1){if(!b)break;e=c[(c[b+16>>2]|0)+112>>2]|0;if((c[e>>2]|0)==0&(c[e+4>>2]|0)==0)lu(a,b,0);b=Ty(a,b)|0}d=0;b=0;e=Sy(a)|0;while(1){if(!e)break a;h=c[(c[e+16>>2]|0)+112>>2]|0;g=c[h>>2]|0;h=c[h+4>>2]|0;f=((d|0)<0)<<31>>31;f=h>>>0>f>>>0|(h|0)==(f|0)&g>>>0>d>>>0;d=f?g:d;b=f?e:b;e=Ty(a,e)|0}}while(0);return b|0}function au(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[(c[b+16>>2]|0)+112>>2]|0;f=d+24|0;e=c[f>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[d+32>>2]=0;iu(a,b);d=Sy(a)|0;e=y3(0,e|0,32)|0;f=z;b=0;while(1){if(!d)break;h=(c[(c[d+16>>2]|0)+112>>2]|0)+24|0;g=c[h>>2]|0;h=c[h+4>>2]|0;if((g|0)==(e|0)&(h|0)==(f|0)){b=-1;break}i=((b|0)<0)<<31>>31;b=h>>>0>i>>>0|(h|0)==(i|0)&g>>>0>b>>>0?g:b;d=Ty(a,d)|0}return b|0}function bu(a){a=a|0;var b=0,d=0,e=0,f=0;d=Sy(a)|0;while(1){if(!d)break;b=c[(c[d+16>>2]|0)+112>>2]|0;e=b+16|0;a:do if((c[e>>2]|0)==0&(c[e+4>>2]|0)==0)while(1){e=b+8|0;f=e;f=s3(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;c[e>>2]=f;c[e+4>>2]=z;b=c[b+32>>2]|0;if(!b)break a;b=c[(c[b+16>>2]|0)+112>>2]|0}while(0);d=Ty(a,d)|0}return}function cu(a,b){a=a|0;b=b|0;h[(c[(c[b+16>>2]|0)+112>>2]|0)+40>>3]=6.283185307179586;hu(a,b);return}function du(a,b){a=a|0;b=b|0;h[(c[(c[b+16>>2]|0)+112>>2]|0)+48>>3]=0.0;gu(a,b);return}function eu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i;g=fu(a,b)|0;if(0){e=c[15686]|0;D1(92524,e)|0;d=0;while(1){if((d|0)>(b|0))break;h[f>>3]=+h[g+(d<<3)>>3];g1(e,92543,f)|0;d=d+1|0}D1(150517,e)|0}d=Sy(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;e=c[f+112>>2]|0;j=+h[g+(c[e+24>>2]<<3)>>3];e=e+48|0;k=+E(+(+h[e>>3]))*j;f=c[f+132>>2]|0;h[f>>3]=k;h[f+8>>3]=+F(+(+h[e>>3]))*j;d=Ty(a,d)|0}D_(g);l=i;return}function fu(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;m=uH((d<<3)+8|0)|0;b=NL(b,nx(c[b+60>>2]|0,0,98262,0)|0,0)|0;a:do if(!b){f=1.0;e=0.0;b=1}else{i=0.0;e=0.0;g=1;b:while(1){if((g|0)>(d|0)){f=i;b=g;break a}f=+c2(b,k);if(!(f>0.0)){f=i;b=g;break a}i=f>.02?f:.02;e=i+e;j=g+1|0;h[m+(g<<3)>>3]=e;b=c[k>>2]|0;while(1){g=a[b>>0]|0;if(!(g<<24>>24)){g=j;continue b}if(!(g<<24>>24==58|(B$(g<<24>>24)|0)!=0)){g=j;continue b}b=b+1|0}}}while(0);while(1){if((b|0)>(d|0))break;i=e+f;h[m+(b<<3)>>3]=i;b=b+1|0;e=i}l=n;return m|0}function gu(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0.0;d=c[(c[b+16>>2]|0)+112>>2]|0;if(!(c[d+32>>2]|0))e=0.0;else e=+h[d+48>>3]-+h[d+40>>3]*.5;g=Jx(a,b)|0;while(1){if(!g)break;d=c[g>>2]&3;f=c[((d|0)==3?g:g+48|0)+40>>2]|0;if((f|0)==(b|0))f=c[((d|0)==2?g:g+-48|0)+40>>2]|0;d=c[(c[f+16>>2]|0)+112>>2]|0;if((c[d+32>>2]|0)==(b|0)?(i=d+48|0,!(+h[i>>3]!=10.0)):0){j=+h[d+40>>3];h[i>>3]=j*.5+e;e=j+e;d=d+16|0;if(!((c[d>>2]|0)==0&(c[d+4>>2]|0)==0))gu(a,f)}g=Kx(a,g,b)|0}return}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0;e=c[(c[b+16>>2]|0)+112>>2]|0;f=e+8|0;g=+h[e+40>>3]/(+((c[f>>2]|0)>>>0)+4294967296.0*+((c[f+4>>2]|0)>>>0));f=Jx(a,b)|0;while(1){if(!f)break;e=c[f>>2]&3;d=c[((e|0)==3?f:f+48|0)+40>>2]|0;if((d|0)==(b|0))d=c[((e|0)==2?f:f+-48|0)+40>>2]|0;e=c[(c[d+16>>2]|0)+112>>2]|0;if(((c[e+32>>2]|0)==(b|0)?(i=e+40|0,!(+h[i>>3]!=0.0)):0)?(j=e+8|0,h[i>>3]=g*(+((c[j>>2]|0)>>>0)+4294967296.0*+((c[j+4>>2]|0)>>>0)),e=e+16|0,!((c[e>>2]|0)==0&(c[e+4>>2]|0)==0)):0)hu(a,d);f=Kx(a,f,b)|0}return}function iu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+16|0;n=p;o=nx(b,2,98515,0)|0;c[n+4>>2]=0;c[n>>2]=0;ju(n,d);j=(o|0)==0;a:while(1){k=ku(n)|0;if(!k)break;m=k+16|0;h=c[(c[(c[m>>2]|0)+112>>2]|0)+24>>2]|0;g=Jx(b,k)|0;h=s3(0,h|0,0,1)|0;h=y3(h|0,z|0,32)|0;i=z;while(1){if(!g)continue a;if(!((!j?(a[(yx(g,o)|0)>>0]|0)==48:0)?!(b$(yx(g,o)|0,135312)|0):0)){d=c[g>>2]&3;e=c[((d|0)==3?g:g+48|0)+40>>2]|0;if((e|0)==(k|0))e=c[((d|0)==2?g:g+-48|0)+40>>2]|0;d=c[(c[e+16>>2]|0)+112>>2]|0;f=d+24|0;q=f;r=c[q+4>>2]|0;if(i>>>0>>0|((i|0)==(r|0)?h>>>0<(c[q>>2]|0)>>>0:0)){r=f;c[r>>2]=h;c[r+4>>2]=i;c[d+32>>2]=k;r=(c[(c[m>>2]|0)+112>>2]|0)+16|0;q=r;q=s3(c[q>>2]|0,c[q+4>>2]|0,1,0)|0;c[r>>2]=q;c[r+4>>2]=z;ju(n,e)}}g=Kx(b,g,k)|0}}l=p;return}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=uH(8)|0;c[d>>2]=b;b=a+4|0;e=c[b>>2]|0;c[((e|0)==0?a:e+4|0)>>2]=d;c[b>>2]=d;return}function ku(a){a=a|0;var b=0,d=0;d=c[a>>2]|0;if(d){b=c[d>>2]|0;c[a>>2]=c[d+4>>2];D_(d);if(!(c[a>>2]|0))c[a+4>>2]=0}else b=0;return b|0}function lu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=c[c[(c[b+16>>2]|0)+112>>2]>>2]|0;g=Jx(a,b)|0;h=s3(0,h|0,0,1)|0;h=y3(h|0,z|0,32)|0;i=z;while(1){if(!g)break;f=c[g>>2]&3;e=c[((f|0)==3?g:g+48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((f|0)==2?g:g+-48|0)+40>>2]|0;if((e|0)!=(d|0)?(j=c[(c[e+16>>2]|0)+112>>2]|0,f=j,k=c[f+4>>2]|0,i>>>0>>0|((i|0)==(k|0)?h>>>0<(c[f>>2]|0)>>>0:0)):0){k=j;c[k>>2]=h;c[k+4>>2]=i;lu(a,e,b)}g=Kx(a,g,b)|0}return}function mu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=0;g=Jx(a,b)|0;while(1){if(!g){d=1;break}e=c[g>>2]&3;d=c[((e|0)==3?g:g+48|0)+40>>2]|0;if((d|0)==(b|0))d=c[((e|0)==2?g:g+-48|0)+40>>2]|0;if((d|0)!=(b|0)){if(f)if((f|0)==(d|0))d=f;else{d=0;break}}else d=f;f=d;g=Kx(a,g,b)|0}return d|0}function nu(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0;b=l;l=l+32|0;e=b;d=nx(a,1,92551,0)|0;g=nx(a,0,92551,0)|0;a=ou(a,g,d,nx(a,0,92556,0)|0)|0;d=a+16|0;f=+C(+(+h[a>>3]+.1));zu(e,0.0,0.0,f,f);c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[d+16>>2]=c[e+16>>2];c[d+20>>2]=c[e+20>>2];c[d+24>>2]=c[e+24>>2];c[d+28>>2]=c[e+28>>2];pu(a);qu(a);ru(a);l=b;return}function ou(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=uH(72)|0;c[o+60>>2]=0;c[o+56>>2]=a;k=a+16|0;f=0.0;l=0;i=1;j=0;m=0;while(1){g=c[k>>2]|0;if((i|0)>(c[g+180>>2]|0))break;g=ou(c[(c[g+184>>2]|0)+(i<<2)>>2]|0,b,d,e)|0;f=+h[g>>3]+f;if(j|0)c[j+52>>2]=g;l=l+1|0;i=i+1|0;j=g;m=(m|0)==0?g:m}n=Sy(a)|0;g=m;while(1){if(!n)break;i=n+16|0;if(!(c[c[(c[i>>2]|0)+112>>2]>>2]|0)){k=uu(n,d)|0;f=+h[k>>3]+f;if(j|0)c[j+52>>2]=k;c[c[(c[i>>2]|0)+112>>2]>>2]=a;i=l+1|0;j=k;g=(g|0)==0?k:g}else i=l;n=Ty(a,n)|0;l=i}c[o+64>>2]=l;if(!l)f=+wu(a,b);else{h[o+8>>3]=f;f=+vu(o,e)}h[o>>3]=f;c[o+48>>2]=g;return o|0}function pu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0;p=l;l=l+176|0;f=p+144|0;n=p+64|0;k=p+32|0;i=p;o=c[a+64>>2]|0;a:do if(o|0){m=uH(o<<2)|0;b=a+48|0;e=0;d=b;while(1){d=c[d>>2]|0;if((e|0)>=(o|0))break;c[m+(e<<2)>>2]=d;e=e+1|0;d=d+52|0}_0(m,o,4,79);j=uH(o<<3)|0;d=0;while(1){if((d|0)>=(o|0))break;h[j+(d<<3)>>3]=+h[c[m+(d<<2)>>2]>>3];d=d+1|0}g=+h[a+8>>3];if(+h[a>>3]==g){i=a+16|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[f+16>>2]=c[i+16>>2];c[f+20>>2]=c[i+20>>2];c[f+24>>2]=c[i+24>>2];c[f+28>>2]=c[i+28>>2];i=xu(o,j,f)|0}else{q=+h[a+40>>3];r=+h[a+32>>3];h[i>>3]=+h[a+16>>3];h[i+8>>3]=+h[a+24>>3];s=q-r;g=(r+q-+C(+(g*4.0+s*s)))*.5;h[i+16>>3]=r-g;h[i+24>>3]=q-g;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[f+16>>2]=c[i+16>>2];c[f+20>>2]=c[i+20>>2];c[f+24>>2]=c[i+24>>2];c[f+28>>2]=c[i+28>>2];i=xu(o,j,f)|0}if(0){f=c[15686]|0;q=+h[a+24>>3];r=+h[a+32>>3];s=+h[a+40>>3];h[k>>3]=+h[a+16>>3];h[k+8>>3]=q;h[k+16>>3]=r;h[k+24>>3]=s;g1(f,92603,k)|0}e=c[15686]|0;d=0;while(1){if((d|0)>=(o|0))break;k=(c[m+(d<<2)>>2]|0)+16|0;f=i+(d<<5)|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];c[k+16>>2]=c[f+16>>2];c[k+20>>2]=c[f+20>>2];c[k+24>>2]=c[f+24>>2];c[k+28>>2]=c[f+28>>2];if(0){g=+h[f>>3];r=+h[i+(d<<5)+16>>3];u=r*.5;q=+h[i+(d<<5)+8>>3];s=+h[i+(d<<5)+24>>3];t=s*.5;h[n>>3]=+h[j+(d<<3)>>3];h[n+8>>3]=g-u;h[n+16>>3]=q-t;h[n+24>>3]=u+g;h[n+32>>3]=t+q;h[n+40>>3]=s*r;h[n+48>>3]=g;h[n+56>>3]=q;h[n+64>>3]=r;h[n+72>>3]=s;g1(e,92620,n)|0}d=d+1|0}D_(m);D_(j);D_(i);d=0;while(1){b=c[b>>2]|0;if((d|0)>=(o|0))break a;if(!(c[b+60>>2]|0))pu(b);b=b+52|0;d=d+1|0}}while(0);l=p;return}function qu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0.0,m=0.0;f=l;l=l+48|0;e=f;if(c[a+60>>2]|0){k=+h[a+24>>3];i=+h[a+32>>3];g=+h[a+40>>3];b=c[a+56>>2]|0;d=b+16|0;j=c[d>>2]|0;h[j+16>>3]=+h[a+16>>3];h[j+24>>3]=k;a=c[d>>2]|0;h[a+32>>3]=i*.013888888888888888;h[a+40>>3]=g*.013888888888888888;bN(b,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1);su(b);if(0){j=c[15686]|0;a=ry(b)|0;d=c[d>>2]|0;m=+h[d+16>>3];g=+h[d+24>>3];i=+h[d+80>>3];k=+h[d+96>>3]+ +h[d+88>>3];c[e>>2]=a;h[e+8>>3]=m;h[e+16>>3]=g;h[e+24>>3]=i;h[e+32>>3]=k;g1(j,92562,e)|0}}else{b=a+48|0;while(1){b=c[b>>2]|0;if(!b)break;qu(b);b=b+52|0}i=+h[a+32>>3];m=+h[a+40>>3];g=+h[a+16>>3]-i*.5;k=+h[a+24>>3]-m*.5;j=c[(c[a+56>>2]|0)+16>>2]|0;h[j+16>>3]=g;h[j+24>>3]=k;h[j+32>>3]=g+i;h[j+40>>3]=k+m}l=f;return}function ru(a){a=a|0;var b=0,d=0,e=0;e=c[a+64>>2]|0;b=a+48|0;d=0;while(1){b=c[b>>2]|0;if((d|0)>=(e|0))break;ru(b);b=b+52|0;d=d+1|0}D_(a);return}function su(b){b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g;d=g+8|0;e=c[46380]|0;if(e|0?(a[(yx(b,e)|0)>>0]|0)==0:0){h[f>>3]=+h[(c[b+16>>2]|0)+80>>3]*.7;Y0(d,92597,f)|0;rx(b,c[46380]|0,d)|0}dM(b);l=g;return}function tu(a,b){a=a|0;b=b|0;var d=0.0;d=+h[c[a>>2]>>3]-+h[c[b>>2]>>3];return (d<0.0?1:(d>0.0)<<31>>31)|0}function uu(a,b){a=a|0;b=b|0;var d=0;d=uH(72)|0;h[d>>3]=+wu(a,b);c[d+60>>2]=1;c[d+56>>2]=a;return d|0}function vu(a,b){a=a|0;b=b|0;var d=0.0;d=+LL(c[a+56>>2]|0,b,0.0,0.0);if(d==0.0)d=+h[a+8>>3];else{d=+C(+(+h[a+8>>3]))+d*2.0;d=d*d}return +d}function wu(a,b){a=a|0;b=b|0;var c=0.0;c=+LL(a,b,1.0,0.0);return +(c==0.0?1.0e3:c*1.0e3)}function xu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0;i=l;l=l+32|0;g=i;e=0;f=0.0;while(1){if((e|0)>=(a|0))break;j=+h[b+(e<<3)>>3]+f;e=e+1|0;f=j}if(f>+h[d+24>>3]*+h[d+16>>3]+.001)e=0;else{e=uH(a<<5)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[g+16>>2]=c[d+16>>2];c[g+20>>2]=c[d+20>>2];c[g+24>>2]=c[d+24>>2];c[g+28>>2]=c[d+28>>2];yu(a,b,e,0,0.0,1.0,0.0,1.0,g)}l=i;return e|0}function yu(a,b,d,e,f,g,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;g=+g;i=+i;j=+j;k=k|0;var m=0,n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0.0;z=l;l=l+112|0;y=z+72|0;u=z+40|0;p=z+32|0;m=z;w=k+16|0;q=+h[w>>3];x=k+24|0;r=+h[x>>3];v=+h[k+16+((!(q>3];do if((a|0)>=1){if(0){A=c[15686]|0;B=+h[k+8>>3];h[m>>3]=+h[k>>3];h[m+8>>3]=q;h[m+16>>3]=B;h[m+24>>3]=r;g1(A,92657,m)|0;c[p>>2]=e;g1(A,92703,p)|0}if(!e){i=+h[b>>3];B=v*v;v=i/B;B=B/i;c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y+8>>2]=c[k+8>>2];c[y+12>>2]=c[k+12>>2];c[y+16>>2]=c[k+16>>2];c[y+20>>2]=c[k+20>>2];c[y+24>>2]=c[k+24>>2];c[y+28>>2]=c[k+28>>2];yu(a,b,d,1,i,i,i,v>B?v:B,y);break}if((a|0)>(e|0)?(t=+h[b+(e<<3)>>3],n=tg?g:t,t=t+i,o=t/v,o=o*o,B=o/s,o=n/o,o=B>o?B:o,o<=j):0){c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y+8>>2]=c[k+8>>2];c[y+12>>2]=c[k+12>>2];c[y+16>>2]=c[k+16>>2];c[y+20>>2]=c[k+20>>2];c[y+24>>2]=c[k+24>>2];c[y+28>>2]=c[k+28>>2];yu(a,b,d,e+1|0,n,s,t,o,y);break}q=i/v;if(0){A=c[15686]|0;c[u>>2]=e;h[u+8>>3]=i;h[u+16>>3]=v;h[u+24>>3]=q;g1(A,92728,u)|0}n=+h[w>>3];if(v==n){o=1.0/q;p=k+8|0;n=+h[k>>3]-n*.5;m=0;while(1){if((m|0)>=(e|0))break;h[d+(m<<5)+24>>3]=q;B=+h[b+(m<<3)>>3]*o;h[d+(m<<5)+16>>3]=B;h[d+(m<<5)+8>>3]=(+h[x>>3]-q)*.5+ +h[p>>3];h[d+(m<<5)>>3]=B*.5+n;n=B+n;m=m+1|0}h[p>>3]=+h[p>>3]-q*.5;m=1}else{o=1.0/q;n=+h[x>>3]*.5+ +h[k+8>>3];m=0;while(1){if((m|0)>=(e|0))break;h[d+(m<<5)+16>>3]=q;B=+h[b+(m<<3)>>3]*o;h[d+(m<<5)+24>>3]=B;h[d+(m<<5)>>3]=(q-+h[w>>3])*.5+ +h[k>>3];h[d+(m<<5)+8>>3]=n-B*.5;n=n-B;m=m+1|0}h[k>>3]=+h[k>>3]+q*.5;m=0}A=k+16+(m<<3)|0;h[A>>3]=+h[A>>3]-q;c[y>>2]=c[k>>2];c[y+4>>2]=c[k+4>>2];c[y+8>>2]=c[k+8>>2];c[y+12>>2]=c[k+12>>2];c[y+16>>2]=c[k+16>>2];c[y+20>>2]=c[k+20>>2];c[y+24>>2]=c[k+24>>2];c[y+28>>2]=c[k+28>>2];yu(a-e|0,b+(e<<3)|0,d+(e<<5)|0,0,0.0,0.0,0.0,1.0,y)}while(0);l=z;return}function zu(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;h[a>>3]=b;h[a+8>>3]=c;h[a+16>>3]=d;h[a+24>>3]=e;return}function Au(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;D=l;l=l+96|0;C=D+48|0;B=D+24|0;A=D+16|0;z=D+8|0;u=D+80|0;v=D;w=a+16|0;x=d+4|0;y=u+4|0;s=Sy(a)|0;e=0;f=0;i=0;j=0;while(1){if(!s)break;t=Ex(a,s)|0;q=e;r=j;while(1){if(!t)break;e=(b[(c[t+16>>2]|0)+168>>1]|0)==0;do if((s|0)==(c[((c[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0))if(e){j=q;e=r}else{if(!f){e=uH(96)|0;c[e+84>>2]=uH(((ay(a)|0)<<5)+11520|0)|0;f=e}else e=r;Mm(f,t,c[(c[w>>2]|0)+248>>2]|0);j=q}else if(!e){i=Bu(t,d)|0;j=i+8|0;if(ms(c[j>>2]|0,c[i>>2]|0)|0){k=sU(c[j>>2]|0,c[i>>2]|0)|0;if(!k){Pw(0,92781,z)|0;j=1;e=r;break}else e=t;while(1){if(!e)break;E=e+16|0;F=(c[E>>2]|0)+144|0;Sm(v,e,k,0,c[j>>2]|0,c[i>>2]|0);H=v;G=c[H+4>>2]|0;c[F>>2]=c[H>>2];c[F+4>>2]=G;Um(a,e,c[j>>2]|0,c[i>>2]|0,0);e=c[(c[E>>2]|0)+172>>2]|0}Cu(i);j=q;e=r;break}if(!q){qq(u,a);e=YD(a,8,8)|0;Pw(0,92865,A)|0;n=+(e|0);o=+g[d>>2];p=+g[x>>2];if(!(o>=n)&!(p>=n)){m=+g[u>>2];n=+g[y>>2];if(!(!(m<=o)&!(n<=p))){h[C>>3]=m;h[C+8>>3]=n;h[C+16>>3]=o;h[C+24>>3]=p;Pw(3,92981,C)|0}}else{c[B>>2]=e;h[B+8>>3]=o;h[B+16>>3]=p;Pw(3,92931,B)|0}j=1;e=r}else{j=q;e=r}}else{j=q;e=r}while(0);t=Gx(a,t)|0;q=j;r=e}s=Ty(a,s)|0;e=q;j=r}Du(i);if(f|0){D_(c[f+84>>2]|0);D_(j)}l=D;return e|0}function Bu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;m=p+4|0;n=p;e=c[b>>2]&3;f=c[((e|0)==2?b:b+-48|0)+40>>2]|0;e=c[((e|0)==3?b:b+48|0)+40>>2]|0;q=f+16|0;h=c[(c[q>>2]|0)+212>>2]|0;c[m>>2]=h;i=e+16|0;g=c[(c[i>>2]|0)+212>>2]|0;c[n>>2]=g;k=uH(12)|0;b=h;j=g;if(a[(c[q>>2]|0)+118>>0]|0){b=c[(c[(c[b+16>>2]|0)+140>>2]|0)+48>>2]|0;c[m>>2]=b;f=h;h=b}if(!(a[(c[i>>2]|0)+118>>0]|0))i=j;else{i=c[(c[(c[j+16>>2]|0)+140>>2]|0)+48>>2]|0;c[n>>2]=i;e=g;g=i}h=c[(c[(c[h+16>>2]|0)+140>>2]|0)+44>>2]|0;g=c[(c[(c[g+16>>2]|0)+140>>2]|0)+44>>2]|0;if((h|0)<=(g|0))if((g|0)>(h|0)){Eu(k,g,e,h,n,d);b=c[n>>2]|0;g=b;e=n;o=11}else h=i;else{Eu(k,h,f,g,m,d);b=c[m>>2]|0;f=b;g=e;e=m;o=11}while(1){if((o|0)==11){c[e>>2]=c[(c[(c[b+16>>2]|0)+140>>2]|0)+48>>2];e=g;b=c[m>>2]|0;h=c[n>>2]|0}if((b|0)==(h|0))break;Fu(k,b,0,f,d);Fu(k,h,e,0,d);c[m>>2]=c[(c[(c[b+16>>2]|0)+140>>2]|0)+48>>2];f=b;g=h;e=n;b=h;o=11}Fu(k,h,e,f,d);l=p;return k|0}function Cu(a){a=a|0;c[a>>2]=0;return}function Du(a){a=a|0;if(a|0){D_(c[a+8>>2]|0);D_(a)}return}function Eu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=f;while(1){h=c[i>>2]|0;if((b|0)<=(e|0))break;Fu(a,h,d,0,g);b=b+-1|0;i=(c[(c[h+16>>2]|0)+140>>2]|0)+48|0;d=h}c[f>>2]=d;return}function Fu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=Sy(d)|0;while(1){if(!h)break;i=c[h+16>>2]|0;if(!((h|0)==(f|0)|((h|0)==(e|0)?1:(c[i+212>>2]|0)!=(d|0)))?(a[i+118>>0]|0)==0:0)Gu(b,Pm(h,g,0)|0);h=Ty(d,h)|0}i=d+16|0;d=1;while(1){h=c[i>>2]|0;if((d|0)>(c[h+180>>2]|0))break;h=c[(c[h+184>>2]|0)+(d<<2)>>2]|0;if(!((h|0)==(e|0)|(h|0)==(f|0)))Gu(b,Hu(h,g)|0);d=d+1|0}return}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;f=c[e>>2]|0;g=a+8|0;d=c[g>>2]|0;do if((f|0)==(c[a>>2]|0))if(!d){d=vH(400)|0;c[g>>2]=d;c[e>>2]=100;break}else{c[e>>2]=f<<1;d=xH(d,f<<3)|0;c[g>>2]=d;break}while(0);g=c[a>>2]|0;c[a>>2]=g+1;c[d+(g<<2)>>2]=b;return}function Hu(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0,n=0.0,o=0.0,p=0.0;m=uH(8)|0;b=c[b+16>>2]|0;e=+h[b+16>>3];l=+h[b+24>>3];f=+h[b+32>>3];k=+h[b+40>>3];c[m+4>>2]=4;b=uH(64)|0;c[m>>2]=b;if(!(a[d+8>>0]|0)){p=+g[d>>2];o=+g[d+4>>2];i=(f+e)*.5*(p+-1.0);n=(k+l)*.5*(o+-1.0);j=e*p-i;i=f*p-i;f=k*o-n;e=l*o-n}else{i=+g[d>>2];p=+g[d+4>>2];j=e-i;i=f+i;f=k+p;e=l-p}h[b>>3]=j;h[b+8>>3]=e;h[b+16>>3]=j;h[b+24>>3]=f;h[b+32>>3]=i;h[b+40>>3]=f;h[b+48>>3]=i;h[b+56>>3]=e;return m|0}function Iu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+160|0;n=o+16|0;j=o+8|0;g=o;k=o+24|0;m=uH(ay(b)|0)|0;h=b+16|0;f=c[c[(c[h>>2]|0)+140>>2]>>2]|0;a:do if(!f){g=0;f=0}else{p=ry(b)|0;i=c[46152]|0;c[g>>2]=p;c[g+4>>2]=i;Y0(k,93041,g)|0;i=vA(b,k,1)|0;Az(i,134401,280,1)|0;g=uH(56)|0;c[(c[i+16>>2]|0)+140>>2]=g;c[g>>2]=f;c[g+4>>2]=c[(c[(c[h>>2]|0)+140>>2]|0)+4>>2];while(1){g=c[f+4>>2]|0;if(!g){g=i;f=1;break a}if(!(a[m+(c[(c[g+16>>2]|0)+120>>2]|0)>>0]|0))Ju(b,g,i,m);f=f+16|0}}while(0);h=0;i=Sy(b)|0;while(1){if(!i)break;p=c[i+16>>2]|0;if((a[m+(c[p+120>>2]|0)>>0]|0)==0?(a[p+119>>0]|0)==3:0){if(!g){p=ry(b)|0;g=(c[46152]|0)+f|0;c[j>>2]=p;c[j+4>>2]=g;Y0(k,93041,j)|0;g=vA(b,k,1)|0;Az(g,134401,280,1)|0;p=uH(56)|0;c[(c[g+16>>2]|0)+140>>2]=p;f=f+1|0}Ju(b,i,g,m);h=1}i=Ty(b,i)|0}if(g|0)vD(g)|0;g=Sy(b)|0;while(1){if(!g)break;if(!(a[m+(c[(c[g+16>>2]|0)+120>>2]|0)>>0]|0)){j=ry(b)|0;p=(c[46152]|0)+f|0;c[n>>2]=j;c[n+4>>2]=p;Y0(k,93049,n)|0;p=vA(b,k,1)|0;Az(p,134401,280,1)|0;j=uH(56)|0;c[(c[p+16>>2]|0)+140>>2]=j;Ju(b,g,p,m);vD(p)|0;f=f+1|0}g=Ty(b,g)|0}D_(m);c[46152]=(c[46152]|0)+f;if(d|0)c[d>>2]=f;if(e|0)c[e>>2]=h;i=uH((f<<2)+4|0)|0;h=i;g=wA(b)|0;while(1){if(!g)break;c[h>>2]=g;h=h+4|0;g=xA(g)|0;f=f+-1|0}if(!f){c[h>>2]=0;l=o;return i|0}else qa(93057,93068,134,93075);return 0}function Ju(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a[f+(c[(c[d+16>>2]|0)+120>>2]|0)>>0]=1;Xy(e,d,1)|0;i=Jx(b,d)|0;while(1){if(!i)break;h=c[i>>2]&3;g=c[((h|0)==3?i:i+48|0)+40>>2]|0;if((g|0)==(d|0))g=c[((h|0)==2?i:i+-48|0)+40>>2]|0;if(!(a[f+(c[(c[g+16>>2]|0)+120>>2]|0)>>0]|0))Ju(b,g,e,f);i=Kx(b,i,d)|0}return}function Ku(a){a=a|0;var b=0;b=vH(24)|0;c[46153]=b;c[b>>2]=Cw(18100,c[4555]|0)|0;c[b+16>>2]=0;c[b+12>>2]=0;c[b+4>>2]=Lu(a)|0;return b|0}function Lu(a){a=a|0;var b=0,d=0;b=vH(16)|0;c[b+12>>2]=0;d=vH(a*20|0)|0;c[b>>2]=d;c[b+8>>2]=d+(a*20|0);c[b+4>>2]=d;return b|0}function Mu(a,b,d){a=a|0;b=b|0;d=d|0;d=Ou(c[46153]|0)|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=0;return d|0}function Nu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=(c[b>>2]|0)-(c[d>>2]|0)|0;if(!a)a=(c[b+4>>2]|0)-(c[d+4>>2]|0)|0;return a|0}function Ou(a){a=a|0;var b=0,d=0,e=0,f=0;f=a+8|0;a=c[f>>2]|0;b=c[a+4>>2]|0;if((b|0)==(c[a+8>>2]|0)){d=a+12|0;e=c[d>>2]|0;if(!e){a=Lu(((b-(c[a>>2]|0)|0)/20|0)<<1)|0;c[d>>2]=a}else a=e;c[f>>2]=a;b=c[a>>2]|0;c[a+4>>2]=b}c[a+4>>2]=b+20;return b|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+12|0;d=c[f>>2]|0;if((d|0)<(b|0)){e=d<<1;e=(e|0)<(b|0)?b:e;b=a+16|0;d=c[b>>2]|0;if(d|0)D_(d);c[b>>2]=vH(e<<3)|0;c[f>>2]=e}return}function Qu(a){a=a|0;var b=0;b=c[a>>2]|0;nb[c[b>>2]&63](b,0,64)|0;c[a+20>>2]=c[a+16>>2];b=c[a+4>>2]|0;c[a+8>>2]=b;c[b+4>>2]=c[b>>2];return}function Ru(a){a=a|0;yw(c[a>>2]|0)|0;Su(c[a+4>>2]|0);D_(c[a+16>>2]|0);D_(a);return}function Su(a){a=a|0;var b=0;while(1){if(!a)break;b=c[a+12>>2]|0;D_(c[a>>2]|0);D_(a);a=b}return}function Tu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+32|0;f=g;h=g+12|0;c[h>>2]=b;c[h+4>>2]=d;i=c[a>>2]|0;h=(nb[c[i>>2]&63](i,h,1)|0)+8|0;c[h>>2]=Uu(a,e,c[h>>2]|0)|0;if(0>2){i=c[15686]|0;h=ry(e)|0;c[f>>2]=b;c[f+4>>2]=d;c[f+8>>2]=h;g1(i,93085,f)|0}l=g;return}function Uu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+20|0;a=c[e>>2]|0;c[e>>2]=a+8;c[a>>2]=b;c[a+4>>2]=d;return a|0}function Vu(a,b){a=a|0;b=b|0;Jw(c[a>>2]|0,b,a)|0;return}function Wu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+32|0;f=e;c[f>>2]=b;c[f+4>>2]=d;d=c[a>>2]|0;d=nb[c[d>>2]&63](d,f,4)|0;l=e;return d|0}function Xu(a,b){a=a|0;b=b|0;if((ay(a)|0)==1){a=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}else{Yu(a);if(!((QL(xx(b,93102)|0)|0)<<24>>24))b=tv(a,183128)|0;else b=Zu(a)|0;Cv(a,b,183128);_u(b)}return}function Yu(a){a=a|0;var b=0;b=ez(c[c[(c[(Sy(a)|0)+16>>2]|0)+112>>2]>>2]|0)|0;a=c[46154]|0;if((b|0)!=(a|0)){c[45785]=0;c[46154]=b;c[46155]=nx(b,0,93111,0)|0;c[46156]=nx(c[46154]|0,1,93119,0)|0;c[46157]=nx(c[46154]|0,1,93136,0)|0;a=c[46154]|0}c[46158]=xx(a,93136)|0;nv(183128);c[45784]=1;h[22895]=+LL(c[46154]|0,c[46155]|0,1.0,0.0);c[45786]=c[46156];c[45787]=c[46157];c[45788]=c[46158];return}function Zu(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+144|0;e=f;d=f+8|0;b=c[45785]|0;c[45785]=b+1;c[e>>2]=b;Y0(d,93152,e)|0;d=ov(vA(a,d,1)|0)|0;e=d+8|0;b=Sy(a)|0;while(1){if(!b)break;Xy(c[e>>2]|0,b,1)|0;c[(c[(c[b+16>>2]|0)+112>>2]|0)+12>>2]=d;b=Ty(a,b)|0}l=f;return d|0}function _u(a){a=a|0;Bv(a);return}function $u(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;av(f,c);bv(a,b,c,f);cv(b,f,d);dv(f);l=e;return}function av(a,b){a=a|0;b=b|0;c[a>>2]=vH(b<<4)|0;c[a+4>>2]=b;c[a+8>>2]=0;return}function bv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+64|0;r=D+32|0;u=D+48|0;v=D+16|0;w=D;t=b<<2;A=vH(t)|0;C=vH(t)|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;s=vH(t)|0;t=vH(t)|0;f=0;while(1){if((f|0)>=(b|0))break;c[s+(f<<2)>>2]=f;f=f+1|0}q=b+-1|0;js(a,s,0,q);f=0;while(1){if((f|0)>=(b|0))break;c[t+(c[s+(f<<2)>>2]<<2)>>2]=f;f=f+1|0}fv(u,a,s,b);f=1;while(1){if((f|0)>=(b|0)){f=0;break}c[A+(c[s+(f<<2)>>2]<<2)>>2]=c[s+(f+-1<<2)>>2];f=f+1|0}while(1){if((f|0)>=(q|0))break;p=f+1|0;c[C+(c[s+(f<<2)>>2]<<2)>>2]=c[s+(p<<2)>>2];f=p}k=e+8|0;m=e+4|0;n=v+4|0;o=w+4|0;p=w+8|0;j=0;while(1){if((j|0)>=(d|0))break;if(!((gv(u,v)|0)<<24>>24))break;f=c[k>>2]|0;b=c[m>>2]|0;if((f|0)<(b|0))b=c[e>>2]|0;else{c[m>>2]=b<<1;b=F_(c[e>>2]|0,b<<5)|0;c[e>>2]=b;f=c[k>>2]|0}c[k>>2]=f+1;f=b+(f<<4)|0;c[f>>2]=c[v>>2];c[f+4>>2]=c[v+4>>2];c[f+8>>2]=c[v+8>>2];c[f+12>>2]=c[v+12>>2];f=c[v>>2]|0;b=c[t+(f<<2)>>2]|0;g=c[n>>2]|0;i=c[t+(g<<2)>>2]|0;if((b|0)>0?(x=c[s+(b+-1<<2)>>2]|0,y=C+(x<<2)|0,(c[t+(c[y>>2]<<2)>>2]|0)<(i|0)):0){c[w>>2]=x;c[o>>2]=g;h[p>>3]=+h[a+(g<<3)>>3]-+h[a+(x<<3)>>3];c[r>>2]=c[w>>2];c[r+4>>2]=c[w+4>>2];c[r+8>>2]=c[w+8>>2];c[r+12>>2]=c[w+12>>2];hv(u,r);c[y>>2]=g;c[A+(g<<2)>>2]=x}if((i|0)<(q|0)?(z=c[s+(i+1<<2)>>2]|0,B=A+(z<<2)|0,(c[t+(c[B>>2]<<2)>>2]|0)>(b|0)):0){c[w>>2]=f;c[o>>2]=z;h[p>>3]=+h[a+(z<<3)>>3]-+h[a+(f<<3)>>3];c[r>>2]=c[w>>2];c[r+4>>2]=c[w+4>>2];c[r+8>>2]=c[w+8>>2];c[r+12>>2]=c[w+12>>2];hv(u,r);c[B>>2]=f;c[C+(f<<2)>>2]=z}j=j+1|0}D_(A);D_(C);D_(s);D_(t);iv(u);l=D;return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=vH(a<<2)|0;l=b+8|0;i=c[l>>2]|0;j=(i<<1)+a|0;h=j<<2;e=vH(h)|0;h=vH(h)|0;f=0;while(1){if((f|0)>=(a|0))break;c[k+(f<<2)>>2]=1;f=f+1|0}f=0;while(1){if((f|0)>=(i|0)){f=0;break}n=c[b>>2]|0;m=c[n+(f<<4)+4>>2]|0;n=k+(c[n+(f<<4)>>2]<<2)|0;c[n>>2]=(c[n>>2]|0)+1;m=k+(m<<2)|0;c[m>>2]=(c[m>>2]|0)+1;f=f+1|0}while(1){if((f|0)>=(j|0))break;g[h+(f<<2)>>2]=1.0;f=f+1|0}i=vH(a*20|0)|0;c[d>>2]=i;f=0;while(1){if((f|0)>=(a|0))break;c[i+(f*20|0)>>2]=1;c[i+(f*20|0)+8>>2]=h;c[i+(f*20|0)+4>>2]=e;c[e>>2]=f;g[h>>2]=0.0;n=c[k+(f<<2)>>2]|0;h=h+(n<<2)|0;e=e+(n<<2)|0;f=f+1|0}D_(k);while(1){e=c[l>>2]|0;if(!e)break;n=e+-1|0;c[l>>2]=n;m=c[b>>2]|0;ev(i,c[m+(n<<4)>>2]|0,c[m+(n<<4)+4>>2]|0)}return}function dv(a){a=a|0;D_(c[a>>2]|0);return}function ev(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0;f=a+(b*20|0)|0;h=c[f>>2]|0;i=c[a+(b*20|0)+4>>2]|0;e=0;while(1){if((e|0)>=(h|0)){j=4;break}if((c[i+(e<<2)>>2]|0)==(d|0))break;else e=e+1|0}if((j|0)==4?(c[f>>2]=h+1,c[i+(h<<2)>>2]=d,i=c[a+(d*20|0)+4>>2]|0,h=a+(d*20|0)|0,j=c[h>>2]|0,c[h>>2]=j+1,c[i+(j<<2)>>2]=b,c[a+8>>2]|0):0){j=c[a+(b*20|0)+8>>2]|0;g[j>>2]=+g[j>>2]+-1.0;j=c[a+(d*20|0)+8>>2]|0;g[j>>2]=+g[j>>2]+-1.0}return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0,l=0;f=e+-1|0;c[a+4>>2]=f;c[a+8>>2]=f;c[a>>2]=vH(f<<4)|0;e=0;while(1){if((e|0)>=(f|0))break;l=c[d+(e<<2)>>2]|0;g=e+1|0;k=c[d+(g<<2)>>2]|0;j=+h[b+(k<<3)>>3]-+h[b+(l<<3)>>3];i=c[a>>2]|0;c[i+(e<<4)>>2]=l;c[i+(e<<4)+4>>2]=k;h[i+(e<<4)+8>>3]=j;e=g}e=(f|0)/2|0;while(1){if((e|0)<=-1)break;jv(a,e);e=e+-1|0}return}function gv(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+4|0;if(!(c[d>>2]|0))a=0;else{e=c[a>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=c[a>>2]|0;e=b+((c[d>>2]|0)+-1<<4)|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[d>>2]=(c[d>>2]|0)+-1;jv(a,0);a=1}return a|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=a+4|0;g=c[j>>2]|0;d=a+8|0;if((g|0)==(c[d>>2]|0)){c[d>>2]=g<<1;d=F_(c[a>>2]|0,g<<5)|0;c[a>>2]=d;k=a;i=c[j>>2]|0}else{k=a;i=g;d=c[a>>2]|0}c[j>>2]=i+1;j=d+(g<<4)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];while(1){if((g|0)<=0)break;d=c[k>>2]|0;e=+h[d+(g<<4)+8>>3];a=g>>>1;f=+h[d+(a<<4)+8>>3];if(!(e>2]|0}j=d+(g<<4)|0;c[m>>2]=c[j>>2];c[m+4>>2]=c[j+4>>2];c[m+8>>2]=c[j+8>>2];c[m+12>>2]=c[j+12>>2];b=d+(a<<4)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];j=(c[k>>2]|0)+(a<<4)|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];g=a}l=n;return}function iv(a){a=a|0;D_(c[a>>2]|0);return}function jv(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m;j=a+4|0;while(1){d=b<<1;g=d|1;if((d|0)<(c[j>>2]|0)){n=c[a>>2]|0;e=+h[n+(d<<4)+8>>3];f=+h[n+(b<<4)+8>>3];if(!(e>2]|0)){n=c[a>>2]|0;e=+h[n+(g<<4)+8>>3];f=+h[n+(d<<4)+8>>3];if(!(e>2]|0;n=g+(d<<4)|0;c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];g=g+(b<<4)|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];n=(c[a>>2]|0)+(b<<4)|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];b=d}l=m;return}function kv(a,b,d,e,f,g,i,j){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0;l=(f|0)!=0;if(!l){f=vH(b<<3)|0;if(!(kt(a,b,f,b)|0))m=3;else{a=1;m=17}}else m=3;if((m|0)==3){k=uH(b<<2)|0;c[g>>2]=k;a=0;while(1){if((a|0)>=(b|0))break;c[k+(a<<2)>>2]=a;a=a+1|0}a=b+-1|0;js(f,k,0,a);n=+h[f+(c[k>>2]<<3)>>3];e=(+h[f+(c[k+(a<<2)>>2]<<3)>>3]-n)*e/+(a|0);e=e=(b|0))break;n=+h[f+(c[k+(g<<2)>>2]<<3)>>3];a=a+(n-d>e&1)|0;g=g+1|0;d=n}c[j>>2]=a;a:do if(!a){k=vH(4)|0;c[i>>2]=k;c[k>>2]=b}else{j=vH(a<<2)|0;c[i>>2]=j;a=0;g=1;while(1){if((g|0)>=(b|0))break a;if(+h[f+(c[k+(g<<2)>>2]<<3)>>3]-+h[f+(c[k+(g+-1<<2)>>2]<<3)>>3]>e){c[j+(a<<2)>>2]=g;a=a+1|0}g=g+1|0}}while(0);if(l)a=0;else{a=0;m=17}}if((m|0)==17)D_(f);return a|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=c[46159]|0;if(d|0)xn(d);c[46159]=wn(b,b,0.0)|0;d=c[46160]|0;if(d|0)D_(d);c[46160]=uH(b<<2)|0;d=c[46161]|0;if(d|0)D_(d);n=uH(b<<3)|0;c[46161]=n;o=c[46159]|0;p=c[46160]|0;i=0;while(1){if((i|0)>=(b|0)){e=10;break}e=a+(i<<2)|0;g=o+(i<<2)|0;f=0.0;d=0;while(1){if((d|0)==(b|0))break;j=+h[(c[e>>2]|0)+(d<<3)>>3];h[(c[g>>2]|0)+(d<<3)>>3]=j;j=+B(+j);f=f>3]=1.0/f;c[p+(i<<2)>>2]=i;i=i+1|0}a:do if((e|0)==10){m=b+-1|0;d=0;l=0;b:while(1){if((l|0)<(m|0)){e=l;k=d;f=0.0}else break;while(1){if((e|0)>=(b|0))break;a=c[p+(e<<2)>>2]|0;j=+B(+(+h[(c[o+(a<<2)>>2]|0)+(l<<3)>>3]));j=+h[n+(a<<3)>>3]*j;a=f>2]|0;a=p+(k<<2)|0;c[d>>2]=c[a>>2];c[a>>2]=i}g=c[o+(c[d>>2]<<2)>>2]|0;a=l+1|0;f=1.0/+h[g+(l<<3)>>3];e=a;while(1){if((e|0)>=(b|0)){d=k;l=a;continue b}i=c[o+(c[p+(e<<2)>>2]<<2)>>2]|0;d=i+(l<<3)|0;j=+h[d>>3]*f;h[d>>3]=j;c:do if(j!=0.0){d=a;while(1){if((d|0)>=(b|0))break c;q=i+(d<<3)|0;h[q>>3]=+h[q>>3]-+h[g+(d<<3)>>3]*j;d=d+1|0}}while(0);e=e+1|0}}d=+h[(c[o+(c[p+(m<<2)>>2]<<2)>>2]|0)+(m<<3)>>3]!=0.0&1}else if((e|0)==15){h[n+(i<<3)>>3]=0.0;d=0}while(0);return d|0}function mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,l=0;k=c[46159]|0;l=c[46160]|0;j=0;while(1){if((j|0)>=(d|0)){e=d;break}g=c[l+(j<<2)>>2]|0;i=k+(g<<2)|0;f=0.0;e=0;while(1){if((e|0)==(j|0))break;f=+h[a+(e<<3)>>3]*+h[(c[i>>2]|0)+(e<<3)>>3]+f;e=e+1|0}h[a+(j<<3)>>3]=+h[b+(g<<3)>>3]-f;j=j+1|0}while(1){b=e+-1|0;if((e|0)<=0)break;g=l+(b<<2)|0;f=0.0;while(1){if((e|0)>=(d|0))break;f=+h[a+(e<<3)>>3]*+h[(c[k+(c[g>>2]<<2)>>2]|0)+(e<<3)>>3]+f;e=e+1|0}e=a+(b<<3)|0;h[e>>3]=(+h[e>>3]-f)/+h[(c[k+(c[g>>2]<<2)>>2]|0)+(b<<3)>>3];e=b}return}function nv(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;return}function ov(a){a=a|0;var b=0;b=uH(64)|0;nv(b+36|0);c[b+8>>2]=a;return b|0}function pv(a){a=a|0;if(a|0){Lv(c[a+32>>2]|0);D_(a)}return}function qv(a){a=a|0;return ay(c[a+8>>2]|0)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0;c[b+4>>2]=0;d=a+4|0;e=c[d>>2]|0;c[((e|0)==0?a:e+4|0)>>2]=b;c[d>>2]=b;return}function sv(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(!d){c[a>>2]=b;a=a+4|0}else c[b+4>>2]=d;c[a>>2]=b;return}function tv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;uv(a,b);j=c[b>>2]|0;h=c[j+4>>2]|0;while(1){if(!h)break;k=c[h+8>>2]|0;i=Sy(k)|0;d=c[(c[i+16>>2]|0)+112>>2]|0;a=c[d+16+4>>2]|0;d=c[d+8>>2]|0;f=i;i=Ty(k,i)|0;while(1){if(!i)break;e=c[(c[i+16>>2]|0)+112>>2]|0;g=c[e+16+4>>2]|0;if((g|0)<(a|0)){f=i;d=c[e+8>>2]|0;a=g}i=Ty(k,i)|0}i=c[(c[d+16>>2]|0)+112>>2]|0;k=i+4|0;c[k>>2]=c[k>>2]|8;c[h>>2]=f;k=c[h+4>>2]|0;rv((c[i+12>>2]|0)+36|0,h);h=k}nv(b);return j|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;g=i+8|0;e=c[b+24>>2]|0;if(!((e|0)!=0?(d=az(a,e,0)|0,(d|0)!=0):0))f=3;a:do if((f|0)==3){e=b+20|0;b:do if(c[e>>2]|0){d=Sy(a)|0;while(1){if(!d)break b;if((PL(c[c[(c[d+16>>2]|0)+112>>2]>>2]|0,c[e>>2]|0,0)|0)<<24>>24)break a;d=Ty(a,d)|0}}while(0);d=Sy(a)|0}while(0);if(0){f=c[15686]|0;c[h>>2]=ry(d)|0;g1(f,93141,h)|0}c[g+4>>2]=0;c[g>>2]=0;vv(a,d,b,1,g);l=i;return}function vv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=d+8|0;k=c[l>>2]|0;c[l>>2]=k+1;l=b+16|0;c[(c[(c[l>>2]|0)+112>>2]|0)+16+4>>2]=k;c[(c[(c[l>>2]|0)+112>>2]|0)+24>>2]=k;k=(e|0)==0;j=Jx(a,b)|0;while(1){if(!j)break;e=c[j>>2]&3;g=c[((e|0)==2?j:j+-48|0)+40>>2]|0;if((g|0)==(b|0)){e=c[((e|0)==3?j:j+48|0)+40>>2]|0;g=c[(c[j+16>>2]|0)+120>>2]|0;if(!(c[g>>2]|0))c[g>>2]=-1}else{e=c[(c[j+16>>2]|0)+120>>2]|0;if(!(c[e>>2]|0)){c[e>>2]=1;e=g}else e=g}g=e+16|0;h=c[(c[g>>2]|0)+112>>2]|0;i=c[h+16+4>>2]|0;do if(!i){c[h+8>>2]=b;wv(f,j);vv(a,e,d,0,f);i=(c[(c[l>>2]|0)+112>>2]|0)+24|0;c[i>>2]=c[(c[(c[((c[i>>2]|0)<(c[(c[(c[g>>2]|0)+112>>2]|0)+24>>2]|0)?b:e)+16>>2]|0)+112>>2]|0)+24>>2];if((c[(c[(c[g>>2]|0)+112>>2]|0)+24>>2]|0)>=(c[(c[(c[l>>2]|0)+112>>2]|0)+16+4>>2]|0)){e=0;do{h=xv(f)|0;g=(c[c[(c[h+16>>2]|0)+120>>2]>>2]|0)==1;g=c[((c[h>>2]&3|0)==((g?2:3)|0)?h:h+((g?-1:1)*48|0)|0)+40>>2]|0;if(!(c[(c[(c[g+16>>2]|0)+112>>2]|0)+12>>2]|0)){if(!e)e=yv(a,d)|0;zv(e,g)}}while((h|0)!=(j|0));if(e|0){if((c[(c[(c[l>>2]|0)+112>>2]|0)+12>>2]|0)==0?(qv(e)|0)>1:0)zv(e,b);if(!k?(c[(c[(c[l>>2]|0)+112>>2]|0)+12>>2]|0)==(e|0):0){sv(d,e);break}rv(d,e)}}}else{g=c[(c[l>>2]|0)+112>>2]|0;if((c[g+8>>2]|0)!=(e|0)){h=g+24|0;g=c[h>>2]|0;c[h>>2]=(g|0)<(i|0)?g:i}}while(0);j=Kx(a,j,b)|0}if(!k?(c[(c[(c[l>>2]|0)+112>>2]|0)+12>>2]|0)==0:0){l=yv(a,d)|0;zv(l,b);sv(d,l)}return}function wv(a,b){a=a|0;b=b|0;c[(c[(c[b+16>>2]|0)+120>>2]|0)+4>>2]=c[a>>2];c[a>>2]=b;b=a+4|0;c[b>>2]=(c[b>>2]|0)+1;return}function xv(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;if(!b)qa(135312,93172,65,93184);d=a+4|0;e=c[d>>2]|0;if((e|0)>0){c[a>>2]=c[(c[(c[b+16>>2]|0)+120>>2]|0)+4>>2];c[d>>2]=e+-1;return b|0}else qa(93162,93172,61,93184);return 0}function yv(a,b){a=a|0;b=b|0;return ov(Av(a,b)|0)|0}function zv(a,b){a=a|0;b=b|0;Xy(c[a+8>>2]|0,b,1)|0;c[(c[(c[b+16>>2]|0)+112>>2]|0)+12>>2]=a;return}function Av(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+144|0;f=d;e=d+8|0;g=b+12|0;b=c[g>>2]|0;c[g>>2]=b+1;c[f>>2]=b;Y0(e,93152,f)|0;b=vA(a,e,1)|0;Az(b,134401,280,1)|0;l=d;return b|0}function Bv(a){a=a|0;var b=0,d=0;b=c[a+36>>2]|0;while(1){if(!b)break;d=c[b+4>>2]|0;Bv(b);b=d}pv(a);return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;Dv(a,b,+h[c+32>>3]);return}function Dv(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;e=b+36|0;f=0;while(1){e=c[e>>2]|0;if(!e)break;Dv(a,e,d);e=e+4|0;f=f+1|0}e=Vv(a,b,d)|0;c[b+32>>2]=e;a=Sv(e)|0;if((f|0)>0)d=+Ev(f,a,e,b,d);else d=3.141592653589793;if((((a|0)==1?(g=c[b>>2]|0,g|0):0)?c[(c[(c[g+16>>2]|0)+112>>2]|0)+8>>2]|0:0)?(i=b+48|0,h[i>>3]=d,d<0.0):0)h[i>>3]=d+6.283185307179586;return}function Ev(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+48|0;t=v;u=uH(a*56|0)|0;c[t+40>>2]=c[e+36>>2];p=e+16|0;j=+h[p>>3];q=t+8|0;h[q>>3]=j;h[t>>3]=j;c[t+44>>2]=c[e>>2];j=6.283185307179586/+(b|0);h[t+16>>3]=j;r=t+24|0;h[r>>3]=-1.0;s=t+32|0;h[s>>3]=-1.0;k=0;o=0;g=0.0;while(1){i=c[d>>2]|0;if(!i)break;d=c[i>>2]|0;if(!(c[(c[(c[d+16>>2]|0)+112>>2]|0)+4>>2]&8))d=o;else{n=u+(o*56|0)|0;c[n>>2]=d;h[u+(o*56|0)+8>>3]=j*+(k|0);d=o+1|0;g=+Fv(n,t,f)}k=k+1|0;o=d;d=i+4|0}a:do switch(o|0){case 1:{h[u+40>>3]=1.0;d=0;break}case 2:{j=+h[u+64>>3]-+h[u+8>>3];Gv(u,u+56|0,j>3.141592653589793?6.283185307179586-j:j);d=0;break}default:{n=u+8|0;m=u;d=0;while(1){if((d|0)>=(o|0)){d=0;break a}d=d+1|0;if((d|0)==(o|0)){i=u;j=+h[n>>3]+6.283185307179586-+h[m+8>>3];k=m+56|0}else{k=m+56|0;i=k;j=+h[m+64>>3]-+h[m+8>>3]}Gv(m,i,j);m=k}}}while(0);while(1){if((d|0)>=(o|0))break;Hv(u+(d*56|0)|0,t,b,f);d=d+1|0}D_(u);if((a|0)==1){f=g+f*.5;Iv(e,-f,0.0,0.0);h[p>>3]=+h[p>>3]+f;u=e+56|0;c[u>>2]=c[u>>2]|1}else h[p>>3]=+h[q>>3];l=v;return +((+h[s>>3]+ +h[r>>3])*.5+-3.141592653589793)}function Fv(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,g=0.0,i=0,j=0,k=0.0;i=0;f=0.0;g=0.0;e=b+40|0;while(1){j=c[e>>2]|0;if(!j)break;e=c[j>>2]|0;if(!e)e=0;else e=c[(c[(c[e+16>>2]|0)+112>>2]|0)+8>>2]|0;if((e|0)==(c[a>>2]|0)){k=+h[j+16>>3];e=i+1|0;f=f+d+k*2.0;g=g>3]=f;c[a+48>>2]=i;h[a+16>>3]=g+d+ +h[b>>3];h[a+24>>3]=g;return +g}function Gv(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=+h[b+16>>3];d=+h[a+16>>3];c=(d*+h[b+32>>3]+e*+h[a+32>>3])/(c*2.0*e*d);c=c<1.0?1.0:c;a=a+40|0;if(c>+h[a>>3])h[a>>3]=c;a=b+40|0;if(c>+h[a>>3])h[a>>3]=c;return}function Hv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,g=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0.0,v=0.0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0.0,G=0.0;z=b+8|0;y=+h[z>>3];A=b+24|0;k=+h[A>>3];B=b+32|0;j=+h[B>>3];f=+h[a+16>>3]*+h[a+40>>3];x=(d|0)==1;if(x){v=+h[a+32>>3];g=v*.15915494309189535;g=f>g?f:g;f=g*6.283185307179586-v;if(f>0.0){e=f/+(c[a+48>>2]|0)+e;l=0.0;f=g}else{l=0.0;f=g}}else l=+h[a+8>>3]-+h[a+32>>3]/(f*2.0);q=+h[a+24>>3]+f;r=q>y;s=a+48|0;t=((c[s>>2]|0)+1|0)/2|0;u=1.0/f;v=e/f*.5;w=a+8|0;n=b+40|0;o=0;p=0.0;g=l;while(1){n=c[n>>2]|0;if(!n)break;i=c[n>>2]|0;if(!i)i=0;else i=c[(c[(c[i+16>>2]|0)+112>>2]|0)+8>>2]|0;if((i|0)==(c[a>>2]|0)?(Sv(c[n+32>>2]|0)|0)>=1:0){l=+h[n+16>>3];m=l*u;do if(!x)if((c[s>>2]|0)==1){g=+h[w>>3];break}else{g=g+v+m;break}else{if(g!=0.0)g=(c[s>>2]|0)==2?3.141592653589793:m+g;j=g;k=k<0.0?g:k}while(0);G=+E(+g)*f;D=+F(+g)*f;Iv(n,G,D,+Jv(n,G,D,g));g=(x?(l+e)*u:m+v)+g;o=o+1|0;i=o;l=(o|0)==(t|0)?g:p}else{i=o;l=p}n=n+4|0;o=i;p=l}f=r?q:y;if((d|0)>1?(C=c[a>>2]|0,(C|0)==(c[b+44>>2]|0)):0)h[(c[(c[C+16>>2]|0)+112>>2]|0)+24>>3]=p;h[z>>3]=f;h[A>>3]=k;h[B>>3]=j;return}function Iv(a,b,d,e){a=a|0;b=+b;d=+d;e=+e;var f=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0,p=0.0;m=c[a+8>>2]|0;n=e!=0.0;f=Sy(m)|0;while(1){if(!f)break;k=c[(c[f+16>>2]|0)+132>>2]|0;i=+h[k>>3];l=k+8|0;g=+h[l>>3];if(n){o=+E(+e);p=+F(+e);j=o*i-p*g;g=p*i+o*g}else j=i;h[k>>3]=j+b;h[l>>3]=g+d;f=Ty(m,f)|0}f=a+36|0;while(1){f=c[f>>2]|0;if(!f)break;Iv(f,b,d,e);f=f+4|0}return}function Jv(a,b,d,e){a=a|0;b=+b;d=+d;e=+e;var f=0.0,g=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0,o=0;m=c[a+8>>2]|0;f=+h[a+48>>3];do if(!(f>=0.0)){if((Sv(c[a+32>>2]|0)|0)==2){f=e+-1.5707963267948966;break}l=c[a>>2]|0;n=l+16|0;i=c[(c[n>>2]|0)+132>>2]|0;f=+h[i>>3]+b;k=+h[i+8>>3]+d;f=k*k+f*f;i=Sy(m)|0;g=l;while(1){if(!i)break;if((i|0)!=(l|0)?(o=c[(c[i+16>>2]|0)+132>>2]|0,j=+h[o>>3]+b,k=+h[o+8>>3]+d,j=k*k+j*j,j>3];k=+h[a+16>>3]-j;g=c[n>>2]|0;i=c[g+132>>2]|0;f=+h[i>>3];if(f>-k?(c[a+56>>2]&1|0)!=0:0){d=+C(+(d*d+b*b));b=+K(+(+h[i+8>>3]),+(f+k));f=+E(+b);f=e+1.5707963267948966-b-+I(+((k-j/f)/d*f));break}else{f=+K(+(+h[i+8>>3]),+f);f=e+3.141592653589793-f-+h[(c[g+112>>2]|0)+24>>3];f=f>6.283185307179586?f+-6.283185307179586:f;break}}else f=0.0}else{f=3.141592653589793-f+e;f=f<0.0?f+6.283185307179586:f}while(0);return +f}function Kv(){return uH(12)|0}function Lv(a){a=a|0;var b=0,d=0;if(a|0){b=c[a>>2]|0;while(1){if(!b)break;d=c[b+4>>2]|0;D_(b);b=d}D_(a)}return}function Mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Nv(d)|0;d=a+8|0;c[d>>2]=(c[d>>2]|0)+1;d=a+4|0;e=c[d>>2]|0;if((b|0)==0|(e|0)==(b|0)){c[(e|0?e+4|0:a)>>2]=f;c[f+8>>2]=e;e=0}else{e=b+4|0;d=c[e>>2]|0;c[e>>2]=f;c[f+8>>2]=b;e=d;d=d+8|0}c[d>>2]=f;c[f+4>>2]=e;return}function Nv(a){a=a|0;var b=0;b=uH(12)|0;c[b>>2]=a;return b|0}function Ov(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=c[a>>2]|0;d=b;while(1){if(!b)break;g=b+4|0;e=c[g>>2]|0;f=b+8|0;c[g>>2]=c[f>>2];c[f>>2]=e;b=e}f=a+4|0;g=c[f>>2]|0;c[f>>2]=d;c[a>>2]=g;return a|0}function Pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)!=(b|0)){f=b+8|0;e=c[f>>2]|0;c[a>>2]=b;c[f>>2]=0;b=a+4|0;a=c[b>>2]|0;c[a+4>>2]=d;c[d+8>>2]=a;c[b>>2]=e;c[e+4>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0,e=0;d=Kv()|0;e=d+4|0;b=0;while(1){a=c[a>>2]|0;if(!a)break;Mv(d,b,c[a>>2]|0);b=c[e>>2]|0;a=a+4|0}return d|0} +function Bb(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Cb(){return l|0}function Db(a){a=a|0;l=a}function Eb(a,b){a=a|0;b=b|0;l=a;m=b}function Fb(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Gb(a){a=a|0;z=a}function Hb(){return z|0}function Ib(a){a=a|0;c[45884]=a;return 0}function Jb(){return c[45884]|0}function Kb(a,b){a=a|0;b=b|0;Oa(0,a|0,b|0)|0;return}function Lb(a){a=a|0;c[46369]=a;return}function Mb(a){a=a|0;if(a|0)c[46363]=a;return}function Nb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i+4|0;g=i;c[f>>2]=0;h=ZC()|0;cD(h,10976);cD(h,17220);cD(h,17440);Ow(1)|0;Nw(18)|0;Tz(1);while(1){a=Gy(a)|0;e=c[f>>2]|0;if(!a)break;if(!e){_C(h,a,d)|0;bD(h,a,b,f,g)|0;WB(h,a)|0}$x(a)|0;a=191979}l=i;return e|0}function Ob(a){a=a|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;d=g+4|0;e=g;f=c[(c[a+16>>2]|0)+8>>2]|0;a=a+64|0;switch(c[a>>2]|0){case 0:{uI(f);break}case 1:{if(b[(c[f+16>>2]|0)+136>>1]&1)FM(f);break}case 4:case 5:case 6:{rI(f,e,d);Rb(f,c[e>>2]|0,c[d>>2]|0,c[a>>2]|0);break}default:{}}l=g;return}function Pb(a){a=a|0;var b=0,d=0,e=0,f=0;d=c[(c[a+16>>2]|0)+8>>2]|0;if(!(c[45885]|0)){c[45885]=c[4652];c[45886]=57;c[45887]=19}e=d+64|0;f=(c[e>>2]|0)+8|0;b=c[f>>2]|0;c[f>>2]=183540;switch(c[a+64>>2]|0){case 2:{hI(a,d,a,0);break}case 3:{hI(a,d,a,1);break}case 1:case 0:{if(!(c[a+152>>2]&134217728))NA(d,a)|0;break}case 6:case 5:case 4:{Qb(d);if(!(c[a+152>>2]&134217728))NA(d,a)|0;break}default:{}}c[(c[e>>2]|0)+8>>2]=b;return}function Qb(b){b=b|0;var d=0,e=0;d=c[45889]|0;if((d|0)!=(c[45888]|0)){e=c[c[45920]>>2]|0;if(!e){e=LM(b,0,96782,191979)|0;c[c[45920]>>2]=e;d=c[45889]|0}if(d>>>0>=(c[45890]|0)>>>0){Uw(183552,1)|0;d=c[45889]|0}a[d>>0]=0;d=c[45888]|0;c[45889]=d;rx(b,e,d)|0}if(c[(c[b+16>>2]|0)+12>>2]|0){e=c[(c[45920]|0)+4>>2]|0;d=c[45905]|0;if(d>>>0>=(c[45906]|0)>>>0){Uw(183616,1)|0;d=c[45905]|0}a[d>>0]=0;d=c[45904]|0;c[45905]=d;rx(b,e,d)|0}Ax(b,66649,c[(c[45920]|0)+8236>>2]|0,191979)|0;d=0;while(1){if((d|0)==8)break;Xw(183552+(d<<4)|0);d=d+1|0}D_(c[45920]|0);h[1]=1.0;h[5]=1.0;c[45921]=0;c[45925]=0;return}function Rb(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=C_(8240)|0;c[45920]=i;a:do switch(g|0){case 6:{b[i+8232>>1]=14;g=66665;break}case 5:{b[i+8232>>1]=12;g=66669;break}default:{g=xx(d,66649)|0;if((g|0?a[g>>0]|0:0)?(h=Sb(g)|0,(h&65535)>10):0){i=c[45920]|0;b[i+8232>>1]=h;break a}g=Sb(66661)|0;i=c[45920]|0;b[i+8232>>1]=g;g=66661}}while(0);c[i+8236>>2]=g;j=d+16|0;g=c[j>>2]|0;if(!(c[g+180>>2]|0))h=0;else{h=LM(d,0,96782,191979)|0;i=c[45920]|0;g=c[j>>2]|0}c[i>>2]=h;if(!(a[g+113>>0]&8))g=0;else g=LM(d,0,66673,191979)|0;c[(c[45920]|0)+4>>2]=g;i=LM(d,1,96782,191979)|0;c[(c[45920]|0)+8>>2]=i;i=LM(d,1,66673,191979)|0;c[(c[45920]|0)+12>>2]=i;i=LM(d,2,96782,191979)|0;g=c[45920]|0;c[g+16>>2]=i;if(!f)h=0;else{h=LM(d,2,66681,191979)|0;g=c[45920]|0}c[g+20>>2]=h;if(!e)h=0;else{h=LM(d,2,66689,191979)|0;g=c[45920]|0}c[g+24>>2]=h;h=a[(c[j>>2]|0)+113>>0]|0;if(!(h&33))i=0;else{i=LM(d,2,66673,191979)|0;g=c[45920]|0;h=a[(c[j>>2]|0)+113>>0]|0}c[g+28>>2]=i;if(!(h&2))i=0;else{i=LM(d,2,66697,191979)|0;g=c[45920]|0;h=a[(c[j>>2]|0)+113>>0]|0}c[g+32>>2]=i;if(!(h&4))h=0;else{h=LM(d,2,66706,191979)|0;g=c[45920]|0}c[g+36>>2]=h;g=0;while(1){if((g|0)==8)break;Tw(183552+(g<<4)|0,1024,(c[45920]|0)+40+(g<<10)|0);g=g+1|0}return}function Sb(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+1040|0;h=j;g=j+8|0;f=0;d=b;a:while(1){do{e=d;d=d+1|0;e=a[e>>0]|0;if(!(e<<24>>24))break a}while(((e<<24>>24)+-48|0)>>>0>=10);if((f|0)>=1023){i=7;break}a[g+f>>0]=e;f=f+1|0}if((i|0)==7){c[h>>2]=b;Pw(0,66715,h)|0}a[g+f>>0]=0;i=(a2(g)|0)&65535;l=j;return i|0}function Tb(b){b=b|0;var d=0,e=0;e=c[(c[b+16>>2]|0)+8>>2]|0;d=c[c[45920]>>2]|0;b=c[45893]|0;if(b>>>0>=(c[45894]|0)>>>0){Uw(183568,1)|0;b=c[45893]|0}a[b>>0]=0;b=c[45892]|0;c[45893]=b;rx(e,d,b)|0;if(c[(c[e+16>>2]|0)+12>>2]|0){d=c[(c[45920]|0)+4>>2]|0;b=c[45909]|0;if(b>>>0>=(c[45910]|0)>>>0){Uw(183632,1)|0;b=c[45909]|0}a[b>>0]=0;b=c[45908]|0;c[45909]=b;rx(e,d,b)|0}h[2]=1.0;h[6]=1.0;c[45922]=0;c[45926]=0;return}function Ub(b){b=b|0;var d=0,e=0;e=c[(c[b+16>>2]|0)+8>>2]|0;b=c[45893]|0;if((c[45892]|0)!=(b|0)){d=c[(c[45920]|0)+8>>2]|0;if(b>>>0>=(c[45894]|0)>>>0){Uw(183568,1)|0;b=c[45893]|0}a[b>>0]=0;b=c[45892]|0;c[45893]=b;rx(e,d,b)|0}b=c[45909]|0;if((c[45908]|0)!=(b|0)){d=c[(c[45920]|0)+12>>2]|0;if(b>>>0>=(c[45910]|0)>>>0){Uw(183632,1)|0;b=c[45909]|0}a[b>>0]=0;b=c[45908]|0;c[45909]=b;rx(e,d,b)|0}h[9]=1.0;h[11]=1.0;c[45929]=0;c[45931]=0;return}function Vb(b){b=b|0;var d=0,e=0;e=c[(c[b+16>>2]|0)+8>>2]|0;b=c[45893]|0;if((c[45892]|0)!=(b|0)){d=c[(c[45920]|0)+16>>2]|0;if(b>>>0>=(c[45894]|0)>>>0){Uw(183568,1)|0;b=c[45893]|0}a[b>>0]=0;b=c[45892]|0;c[45893]=b;rx(e,d,b)|0}b=c[45897]|0;if((c[45896]|0)!=(b|0)){d=c[(c[45920]|0)+24>>2]|0;if(b>>>0>=(c[45898]|0)>>>0){Uw(183584,1)|0;b=c[45897]|0}a[b>>0]=0;b=c[45896]|0;c[45897]=b;rx(e,d,b)|0}b=c[45901]|0;if((c[45900]|0)!=(b|0)){d=c[(c[45920]|0)+20>>2]|0;if(b>>>0>=(c[45902]|0)>>>0){Uw(183600,1)|0;b=c[45901]|0}a[b>>0]=0;b=c[45900]|0;c[45901]=b;rx(e,d,b)|0}b=c[45909]|0;if((c[45908]|0)!=(b|0)){d=c[(c[45920]|0)+28>>2]|0;if(b>>>0>=(c[45910]|0)>>>0){Uw(183632,1)|0;b=c[45909]|0}a[b>>0]=0;b=c[45908]|0;c[45909]=b;rx(e,d,b)|0}b=c[45913]|0;if((c[45912]|0)!=(b|0)){d=c[(c[45920]|0)+36>>2]|0;if(b>>>0>=(c[45914]|0)>>>0){Uw(183648,1)|0;b=c[45913]|0}a[b>>0]=0;b=c[45912]|0;c[45913]=b;rx(e,d,b)|0}b=c[45917]|0;if((c[45916]|0)!=(b|0)){d=c[(c[45920]|0)+32>>2]|0;if(b>>>0>=(c[45918]|0)>>>0){Uw(183664,1)|0;b=c[45917]|0}a[b>>0]=0;b=c[45916]|0;c[45917]=b;rx(e,d,b)|0}h[10]=1.0;h[12]=1.0;h[3]=1.0;h[4]=1.0;h[7]=1.0;h[8]=1.0;c[45930]=0;c[45932]=0;c[45923]=0;c[45924]=0;c[45927]=0;c[45928]=0;return}function Wb(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+1056|0;j=t+16|0;s=t+8|0;r=t;k=t+32|0;o=c[(c[d+16>>2]|0)+12>>2]|0;p=c[11416+(o<<2)>>2]|0;Ww(p,66812)|0;g=f+4|0;dc(k,+h[(c[g>>2]|0)+16>>3]);Ww(p,k)|0;gc(d,191979,c[c[g>>2]>>2]|0);ac(d);q=a[f+48>>0]|0;q=q<<24>>24==108?-1:q<<24>>24==114&1;g=c[g>>2]|0;if(!g)g=0;else g=c[g+24>>2]&127;i=b[(c[45920]|0)+8232>>1]|0;if((i&65535)>14?(m=c[11464+((i&65535)+-15<<2)>>2]&g,n=183684+(o<<2)|0,(c[n>>2]|0)!=(m|0)):0){c[r>>2]=m;Y0(k,66815,r)|0;Ww(p,k)|0;c[n>>2]=m}r=e+8|0;h[r>>3]=+h[r>>3]+ +h[f+24>>3];Ww(p,66821)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];cc(p,j);c[s>>2]=q;Y0(k,99194,s)|0;Ww(p,k)|0;dc(k,+h[f+32>>3]);Ww(p,k)|0;gc(d,191979,c[f>>2]|0);l=t;return}function Xb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;i=l;l=l+1040|0;f=i;g=i+16|0;e=c[(c[a+16>>2]|0)+12>>2]|0;$b(a);ac(a);if(!d){a=c[11416+(e<<2)>>2]|0;Ww(a,66809)|0}else{if((d|1|0)==3)ic(a,d,b,2);else jc(a);a=c[11416+(e<<2)>>2]|0;Ww(a,66806)|0};c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];cc(a,f);dc(g,+h[b+16>>3]-+h[b>>3]);Ww(a,g)|0;dc(g,+h[b+24>>3]-+h[b+8>>3]);Ww(a,g)|0;l=i;return}function Yb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$b(a);ac(a);if(!d)bc(a,112,b,c);else{if((d|1|0)==3)ic(a,d,b,c);else jc(a);bc(a,80,b,c)}return}function Zb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$b(a);ac(a);if(!f)bc(a,66,b,c);else{if((f|1|0)==3)ic(a,f,b,c);else jc(a);bc(a,98,b,c)}return}function _b(a,b,c){a=a|0;b=b|0;c=c|0;$b(a);ac(a);bc(a,76,b,c);return}function $b(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+1184|0;i=n;f=n+24|0;m=n+8|0;Tw(m,1024,n+152|0);j=b+16|0;d=c[j>>2]|0;g=+h[d+152>>3];e=8+(c[d+12>>2]<<3)|0;if(g!=+h[e>>3]){h[e>>3]=g;Ww(m,66778)|0;h[i>>3]=+h[(c[j>>2]|0)+152>>3];Y0(f,66792,i)|0;ec(f,0);Ww(m,f)|0;f=m+4|0;d=c[f>>2]|0;e=m+8|0;if(d>>>0>=(c[e>>2]|0)>>>0){Uw(m,1)|0;d=c[f>>2]|0}c[f>>2]=d+1;a[d>>0]=41;d=c[f>>2]|0;if(d>>>0>=(c[e>>2]|0)>>>0){Uw(m,1)|0;d=c[f>>2]|0}a[d>>0]=0;d=c[m>>2]|0;c[f>>2]=d;gc(b,66797,d);d=c[j>>2]|0}d=c[d+160>>2]|0;if(d|0){j=m+4|0;k=m+8|0;a:while(1){i=d+4|0;d=c[d>>2]|0;if(!d)break;switch(a[d>>0]|0){case 102:{if(!(b$(d,108075)|0)){d=i;continue a}break}case 98:{if(!(b$(d,108057)|0)){d=i;continue a}break}case 115:{if(!(b$(d,108062)|0)){d=i;continue a}break}default:{}}Ww(m,d)|0;do{f=d;d=d+1|0}while((a[f>>0]|0)!=0);if(a[d>>0]|0){e=c[j>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;e=c[j>>2]|0}c[j>>2]=e+1;a[e>>0]=40;f=0;while(1){if(!(a[d>>0]|0))break;if(f|0){e=c[j>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;e=c[j>>2]|0}c[j>>2]=e+1;a[e>>0]=44}Ww(m,d)|0;do{e=d;d=d+1|0}while((a[e>>0]|0)!=0);f=f+1|0}d=c[j>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=41}d=c[j>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0){Uw(m,1)|0;d=c[j>>2]|0}a[d>>0]=0;d=c[m>>2]|0;c[j>>2]=d;gc(b,66797,d);d=i}Xw(m)}l=n;return}function ac(a){a=a|0;fc((c[a+16>>2]|0)+16|0);gc(a,75730,190678);return}function bc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+1040|0;j=k;i=k+16|0;h=c[11416+(c[(c[b+16>>2]|0)+12>>2]<<2)>>2]|0;g=h+4|0;b=c[g>>2]|0;if(b>>>0>=(c[h+8>>2]|0)>>>0){Uw(h,1)|0;b=c[g>>2]|0}c[g>>2]=b+1;a[b>>0]=d;c[j>>2]=f;Y0(i,66742,j)|0;Ww(h,i)|0;b=0;while(1){if((b|0)>=(f|0))break;i=e+(b<<4)|0;c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];cc(h,j);b=b+1|0}l=k;return}function cc(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+1024|0;d=c;dc(d,+h[b>>3]);Ww(a,d)|0;dc(d,+gI(+h[b+8>>3]));Ww(a,d)|0;l=c;return}function dc(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;h[d>>3]=b>-1.0e-08&b<1.0e-08?0.0:b;Y0(a,66747,d)|0;ec(a,1);l=c;return}function ec(b,c){b=b|0;c=c|0;var d=0,e=0;d=A$(b,46)|0;if(!d){if(c|0){d=b+(W_(b)|0)|0;e=10}}else{while(1){b=d+1|0;if(!(a[b>>0]|0))break;else d=b}a:while(1){switch(a[d>>0]|0){case 46:{e=5;break a}case 48:break;default:{e=6;break a}}a[d>>0]=0;d=d+-1|0}if((e|0)==5)a[d>>0]=0;else if((e|0)==6)d=d+1|0;if(c|0)e=10}if((e|0)==10){a[d>>0]=32;a[d+1>>0]=0}return}function fc(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;i=j+16|0;h=j;e=a[b+3>>0]|0;f=d[b>>0]|0;g=d[b+1>>0]|0;b=d[b+2>>0]|0;if(e<<24>>24==-1){c[h>>2]=f;c[h+4>>2]=g;c[h+8>>2]=b;Y0(190678,75610,h)|0}else{c[i>>2]=f;c[i+4>>2]=g;c[i+8>>2]=b;c[i+12>>2]=e&255;Y0(190678,66760,i)|0}l=j;return}function gc(a,b,d){a=a|0;b=b|0;d=d|0;hc(c[11416+(c[(c[a+16>>2]|0)+12>>2]<<2)>>2]|0,b,d);return}function hc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+1040|0;h=f;g=f+8|0;i=W_(e)|0;c[h>>2]=d;c[h+4>>2]=i;Y0(g,66753,h)|0;Ww(b,g)|0;Ww(b,e)|0;e=b+4|0;d=c[e>>2]|0;if(d>>>0>=(c[b+8>>2]|0)>>>0){Uw(b,1)|0;d=c[e>>2]|0}c[e>>2]=d+1;a[d>>0]=32;l=f;return}function ic(b,d,f,i){b=b|0;d=d|0;f=f|0;i=i|0;var j=0.0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;x=l;l=l+1120|0;t=x+64|0;w=x+80|0;k=x+32|0;r=x+16|0;s=x;u=c[b+16>>2]|0;j=+(c[u+136>>2]|0)*.017453292519943295;if((e[(c[45920]|0)+8232>>1]|0)<14)jc(b);else{Tw(w,1024,x+96|0);v=(d|0)==2;if(v){aN(f,k,i,j,2);f=w+4|0;d=c[f>>2]|0;if(d>>>0>=(c[w+8>>2]|0)>>>0){Uw(w,1)|0;d=c[f>>2]|0}c[f>>2]=d+1;a[d>>0]=91;c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];cc(w,t);s=k+16|0;c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];cc(w,t)}else{aN(f,k,i,0.0,3);q=+h[k+24>>3];o=+h[k>>3];if(j==0.0){n=+h[k+8>>3];p=q*.25;j=n;m=o}else{p=q*.25;y=p;m=+E(+j)*y+o;n=+h[k+8>>3];j=+F(+j)*y+n}h[r>>3]=m;h[r+8>>3]=j;h[s>>3]=o;h[s+8>>3]=n;f=w+4|0;d=c[f>>2]|0;if(d>>>0>=(c[w+8>>2]|0)>>>0){Uw(w,1)|0;d=c[f>>2]|0}c[f>>2]=d+1;a[d>>0]=40;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];cc(w,t);kc(w,p);c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[t+12>>2]=c[s+12>>2];cc(w,t);kc(w,q)}Ww(w,66803)|0;d=u+140|0;j=+g[d>>2];f=u+56|0;if(j>0.0){lc(w,j,f);lc(w,+g[d>>2],u+96|0)}else{lc(w,0.0,f);lc(w,1.0,u+96|0)}Yw(w)|0;k=w+4|0;d=c[k>>2]|0;i=w+8|0;f=d>>>0>=(c[i>>2]|0)>>>0;if(v){if(f){Uw(w,1)|0;d=c[k>>2]|0}c[k>>2]=d+1;a[d>>0]=93}else{if(f){Uw(w,1)|0;d=c[k>>2]|0}c[k>>2]=d+1;a[d>>0]=41}d=c[k>>2]|0;if(d>>>0>=(c[i>>2]|0)>>>0){Uw(w,1)|0;d=c[k>>2]|0}a[d>>0]=0;v=c[w>>2]|0;c[k>>2]=v;gc(b,66800,v);Xw(w)}l=x;return}function jc(a){a=a|0;fc((c[a+16>>2]|0)+56|0);gc(a,66800,190678);return}function kc(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+1024|0;d=c;dc(d,b);Ww(a,d)|0;l=c;return}function lc(a,b,c){a=a|0;b=+b;c=c|0;var d=0,e=0,f=0;d=l;l=l+1040|0;f=d;e=d+8|0;h[f>>3]=b;Y0(e,92597,f)|0;ec(e,1);fc(c);hc(a,e,190678);l=d;return}function mc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0;e=l;l=l+1040|0;i=e;f=e+16|0;g=c[11416+(c[(c[a+16>>2]|0)+12>>2]<<2)>>2]|0;Ww(g,66909)|0;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];cc(g,i);dc(f,+h[d+16>>3]-+h[d>>3]);Ww(g,f)|0;dc(f,+h[d+24>>3]-+h[d+8>>3]);Ww(g,f)|0;gc(a,191979,c[b+8>>2]|0);l=e;return}function nc(a){a=a|0;var b=0;switch(c[a+64>>2]|0){case 0:{b=lC(c[a>>2]|0)|0;$C(b,c[(c[a+16>>2]|0)+8>>2]|0,67693,0)|0;mC(b);break}case 1:{uI(c[(c[a>>2]|0)+168>>2]|0);break}default:{}}return}function oc(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;e=c[(c[b+16>>2]|0)+8>>2]|0;if(!(c[45933]|0)){c[45933]=c[4652];c[45934]=57;c[45935]=19}c[(c[e+64>>2]|0)+8>>2]=183732;pc(e,1);c[d>>2]=0;a[d+4>>0]=(a[(c[e+16>>2]|0)+115>>0]|0)==1&1;g=c[b+64>>2]|0;a[d+5>>0]=((g|0)==0|(g|0)==3)&1;a[d+6>>0]=0;qc(e,b,1,d);l=f;return}function pc(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=c[a>>2]&-9;d=wA(a)|0;while(1){if(!d)break;pc(d,0);d=xA(d)|0}a:do if(b|0){b=Sy(a)|0;while(1){if(!b)break a;c[b>>2]=c[b>>2]&-9;d=Ex(a,b)|0;while(1){if(!d)break;c[d>>2]=c[d>>2]&-9;d=Gx(a,d)|0}b=Ty(a,b)|0}}while(0);return}function qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q+8|0;o=q;n=(d|0)!=0;if(n){m=Cw(11836,c[4555]|0)|0;Fz(a,1,137978,12,0);Fz(a,2,137978,12,0);Fz(a,0,137978,-12,0);f=rc(a,0,m)|0;j=Sy(a)|0;i=0;g=0;while(1){if(!j)break;if(!(z$(ry(j)|0,104980,7)|0)){k=g;g=sc(m,ry(j)|0)|0}else{k=g+1|0;g=g+f|0}c[(yz(j,137978,0)|0)+8>>2]=g;h=Ex(a,j)|0;g=i;while(1){if(!h)break;c[(yz(h,137978,0)|0)+8>>2]=g;h=Gx(a,h)|0;g=g+1|0}j=Ty(a,j)|0;i=g;g=k}yw(m)|0}else f=0;m=c[e>>2]|0;c[e>>2]=m+1;tc(b,m);$B(b,94292)|0;uc(a,b,d,e);vc(a,b,e);$B(b,94263)|0;tc(b,c[e>>2]|0);if(n){c[o>>2]=f;fC(b,66912,o)}else{c[p>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,66932,p)}xc(a,b,d,wc(a,b,d,e)|0,e);yc(a,b,d,e);$B(b,150517)|0;p=(c[e>>2]|0)+-1|0;c[e>>2]=p;tc(b,p);if(n)$B(b,107982)|0;else $B(b,75253)|0;l=q;return}function rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((fz(a)|0)!=(a|0)){e=b+1|0;c[(yz(a,137978,0)|0)+8>>2]=b;if(!(z$(ry(a)|0,104980,7)|0)){b=ry(a)|0;Kc(d,b,c[(yz(a,137978,0)|0)+8>>2]|0);b=e}else b=e}e=wA(a)|0;while(1){if(!e)break;a=rc(e,b,d)|0;e=xA(e)|0;b=a}return b|0}function sc(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b,512)|0;if(!a)a=-1;else a=c[a+12>>2]|0;return a|0}function tc(a,b){a=a|0;b=b|0;while(1){if((b|0)<=0)break;$B(a,90480)|0;b=b+-1|0}return}function uc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;i=h;j=ry(a)|0;tc(b,c[e>>2]|0);c[i>>2]=Bc(j,e)|0;fC(b,67020,i);if(d|0){$B(b,94263)|0;tc(b,c[e>>2]|0);j=(ey(a)|0)!=0;c[f>>2]=j?104626:134226;fC(b,67634,f);tc(b,c[e>>2]|0);j=(gy(a)|0)!=0;c[g>>2]=j?104626:134226;fC(b,67651,g)}l=h;return}function vc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o+8|0;m=o;i=fz(b)|0;j=c[b>>2]&3;f=sx(i,j,0)|0;a:do if(f|0){k=e+5|0;while(1){if(!f)break a;g=yx(b,f)|0;do if(g|0){h=f+8|0;if(!(a[g>>0]|0)){g=c[h>>2]|0;if((a[g>>0]|0)!=108)break;if(b$(g,105198)|0)break}$B(d,94263)|0;tc(d,c[e>>2]|0);c[m>>2]=Bc(c[h>>2]|0,e)|0;fC(d,67070,m);if(a[k>>0]|0?Dc(c[h>>2]|0)|0:0){Ec(yx(b,f)|0,d,e);break}c[n>>2]=Bc(yx(b,f)|0,e)|0;fC(d,67077,n)}while(0);f=sx(i,j,f)|0}}while(0);l=o;return}function wc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;f=wA(a)|0;if(f){$B(b,94263)|0;g=c[e>>2]|0;c[e>>2]=g+1;tc(b,g);g=(d|0)!=0;if(g){$B(b,66994)|0;a=0;d=f}else{$B(b,67054)|0;tc(b,c[e>>2]|0);a=0;d=f}while(1){if(!d)break;if(!a)a=1;else $B(b,94263)|0;if(g)Cc(d,b,e);else{c[h>>2]=c[(yz(d,137978,0)|0)+8>>2];fC(b,134313,h)}d=xA(d)|0}if(g)a=1;else{c[e>>2]=(c[e>>2]|0)+-1;$B(b,150517)|0;tc(b,c[e>>2]|0);$B(b,94258)|0;a=1}}else a=0;l=i;return a|0}function xc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=Sy(a)|0;if(!g){if((d|0)!=0&(e|0)!=0){c[f>>2]=(c[f>>2]|0)+-1;$B(b,150517)|0;tc(b,c[f>>2]|0);$B(b,94258)|0}}else{$B(b,94263)|0;h=(d|0)!=0;if(h)if(!e){e=c[f>>2]|0;c[f>>2]=e+1;tc(b,e);$B(b,66994)|0;e=0}else e=0;else{e=c[f>>2]|0;c[f>>2]=e+1;tc(b,e);$B(b,67008)|0;tc(b,c[f>>2]|0);e=0}while(1){if(!g)break;if(z$(ry(g)|0,104980,7)|0){do if(e)if(h){$B(b,94263)|0;break}else{$B(b,97973)|0;break}else e=1;while(0);Ac(g,b,d,f)}g=Ty(a,g)|0}c[f>>2]=(c[f>>2]|0)+-1;$B(b,150517)|0;tc(b,c[f>>2]|0);$B(b,94258)|0}return}function yc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=Sy(a)|0;a:do if(f|0){while(1){if(!f)break a;if(Ex(a,f)|0)break;f=Ty(a,f)|0}$B(b,94263)|0;i=c[e>>2]|0;c[e>>2]=i+1;tc(b,i);$B(b,66944)|0;i=(d|0)!=0;if(i)g=0;else{tc(b,c[e>>2]|0);g=0}while(1){if(!f)break;h=Ex(a,f)|0;while(1){if(!h)break;do if(g)if(i){$B(b,94263)|0;break}else{$B(b,97973)|0;break}else g=1;while(0);zc(h,b,d,e);h=Gx(a,h)|0}f=Ty(a,f)|0}c[e>>2]=(c[e>>2]|0)+-1;$B(b,150517)|0;tc(b,c[e>>2]|0);$B(b,94258)|0}while(0);return}function zc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;i=j+24|0;h=j+16|0;g=j+8|0;f=j;if(!d){c[i>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,134313,i)}else{i=c[e>>2]|0;c[e>>2]=i+1;tc(b,i);$B(b,94292)|0;tc(b,c[e>>2]|0);c[f>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,66956,f);tc(b,c[e>>2]|0);c[g>>2]=c[(yz(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0,137978,0)|0)+8>>2];fC(b,66970,g);tc(b,c[e>>2]|0);c[h>>2]=c[(yz(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0,137978,0)|0)+8>>2];fC(b,66983,h);vc(a,b,e);$B(b,150517)|0;i=(c[e>>2]|0)+-1|0;c[e>>2]=i;tc(b,i);$B(b,75253)|0}l=j;return}function Ac(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i+16|0;g=i+8|0;f=i;if(!d){c[h>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,134313,h)}else{h=c[e>>2]|0;c[e>>2]=h+1;tc(b,h);$B(b,94292)|0;tc(b,c[e>>2]|0);c[f>>2]=c[(yz(a,137978,0)|0)+8>>2];fC(b,66956,f);tc(b,c[e>>2]|0);c[g>>2]=Bc(ry(a)|0,e)|0;fC(b,67020,g);vc(a,b,e);$B(b,150517)|0;h=(c[e>>2]|0)+-1|0;c[e>>2]=h;tc(b,h);$B(b,75253)|0}l=i;return}function Bc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=d+4|0;if(a[g>>0]|0)b=RM(b)|0;if(!(c[45936]|0)){Tw(183744,1024,0);e=b}else e=b;a:while(1){f=a[e>>0]|0;switch(f<<24>>24){case 0:break a;case 34:{Ww(183744,67033)|0;break}case 92:{Ww(183744,93534)|0;break}case 47:{Ww(183744,67036)|0;break}case 8:{Ww(183744,67039)|0;break}case 12:{Ww(183744,67042)|0;break}case 10:{Ww(183744,67045)|0;break}case 13:{Ww(183744,67048)|0;break}case 9:{Ww(183744,67051)|0;break}default:{d=c[45937]|0;if(d>>>0>=(c[45938]|0)>>>0){Uw(183744,1)|0;d=c[45937]|0}c[45937]=d+1;a[d>>0]=f}}e=e+1|0}d=c[45937]|0;if(d>>>0>=(c[45938]|0)>>>0){Uw(183744,1)|0;d=c[45937]|0}a[d>>0]=0;d=c[45936]|0;c[45937]=d;if(a[g>>0]|0)D_(b);return d|0}function Cc(a,b,c){a=a|0;b=b|0;c=c|0;qc(a,b,0,c);a=wA(a)|0;while(1){if(!a)break;$B(b,94263)|0;Cc(a,b,c);a=xA(a)|0}return}function Dc(b){b=b|0;var c=0;c=b+1|0;a:do if((a[b>>0]|0)==95){b=(a[c>>0]|0)+-100<<24>>24;switch(((b&255)>>>2|b<<6&255)<<24>>24){case 0:{if(!(b$(c,67591)|0)){b=1;break a}break}case 2:{if(!(b$(c,67597)|0)){b=1;break a}break}case 1:{if(!(b$(c,67604)|0)){b=1;break a}return (b$(c,67618)|0)==0|0}case 4:{if(!(b$(c,67611)|0)){b=1;break a}b=(b$(c,67626)|0)==0&1;break a}default:{b=0;break a}}b=0}else b=0;while(0);return b|0}function Ec(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i;do if(b|0?a[b>>0]|0:0){h=oE(b)|0;if(!h){c[f>>2]=b;Pw(0,67082,f)|0;break}$B(d,150517)|0;g=c[e>>2]|0;c[e>>2]=g+1;tc(d,g);$B(d,67109)|0;g=h+8|0;b=0;f=0;while(1){if((f|0)>=(c[h>>2]|0))break;if(!b)b=1;else $B(d,94263)|0;Fc((c[g>>2]|0)+(f*80|0)|0,d,e);f=f+1|0}c[e>>2]=(c[e>>2]|0)+-1;$B(d,150517)|0;tc(d,c[e>>2]|0);$B(d,94258)|0;pE(h)}while(0);l=i;return}function Fc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;A=l;l=l+240|0;y=A+224|0;x=A+216|0;w=A+208|0;v=A+200|0;u=A+192|0;t=A+184|0;s=A+176|0;r=A+152|0;q=A+136|0;p=A+128|0;o=A+112|0;n=A+104|0;m=A+96|0;k=A+88|0;j=A+72|0;i=A+48|0;z=A+40|0;g=A+8|0;f=A;e=c[d>>2]|0;c[d>>2]=e+1;tc(b,e);$B(b,94292)|0;tc(b,c[d>>2]|0);e=c[a>>2]|0;a:do switch(e|0){case 1:case 0:{c[f>>2]=(e|0)==0?69:101;fC(b,67112,f);tc(b,c[d>>2]|0);D=+h[a+16>>3];C=+h[a+24>>3];B=+h[a+32>>3];h[g>>3]=+h[a+8>>3];h[g+8>>3]=D;h[g+16>>3]=C;h[g+24>>3]=B;fC(b,67125,g);break}case 3:case 2:{c[z>>2]=(e|0)==2?80:112;fC(b,67112,z);tc(b,c[d>>2]|0);Gc(b,a+8|0);break}case 5:case 4:{c[i>>2]=(e|0)==4?66:98;fC(b,67112,i);tc(b,c[d>>2]|0);Gc(b,a+8|0);break}case 6:{fC(b,67160,A+56|0);tc(b,c[d>>2]|0);Gc(b,a+8|0);break}case 7:{fC(b,67172,A+64|0);tc(b,c[d>>2]|0);D=+h[a+16>>3];h[j>>3]=+h[a+8>>3];h[j+8>>3]=D;fC(b,67184,j);tc(b,c[d>>2]|0);z=c[a+24>>2]|0;c[k>>2]=(z|0)==0?108:(z|0)==1?99:114;fC(b,67206,k);tc(b,c[d>>2]|0);h[m>>3]=+h[a+32>>3];fC(b,67222,m);tc(b,c[d>>2]|0);c[n>>2]=Bc(c[a+40>>2]|0,d)|0;fC(b,67239,n);break}case 9:case 8:{c[o>>2]=(e|0)==8?67:99;fC(b,67112,o);tc(b,c[d>>2]|0);fC(b,67253,A+120|0);tc(b,c[d>>2]|0);c[p>>2]=Bc(c[a+8>>2]|0,d)|0;fC(b,67270,p);break}case 13:case 14:{c[q>>2]=(e|0)==13?67:99;fC(b,67112,q);tc(b,c[d>>2]|0);switch(c[a+8>>2]|0){case 0:{fC(b,67253,A+144|0);tc(b,c[d>>2]|0);c[r>>2]=Bc(c[a+16>>2]|0,d)|0;fC(b,67270,r);break a}case 1:{fC(b,67285,A+160|0);tc(b,c[d>>2]|0);Hc(b,a+16|0,d);break a}default:{fC(b,67304,A+168|0);tc(b,c[d>>2]|0);Ic(b,a+16|0,d);break a}}}case 10:{fC(b,67323,s);tc(b,c[d>>2]|0);h[t>>3]=+h[a+8>>3];fC(b,67335,t);tc(b,c[d>>2]|0);c[u>>2]=Bc(c[a+16>>2]|0,d)|0;fC(b,67351,u);break}case 11:{fC(b,67365,v);tc(b,c[d>>2]|0);c[w>>2]=Bc(c[a+8>>2]|0,d)|0;fC(b,67377,w);break}case 15:{fC(b,67392,x);tc(b,c[d>>2]|0);c[y>>2]=c[a+8>>2];fC(b,67404,y);break}default:{}}while(0);z=(c[d>>2]|0)+-1|0;c[d>>2]=z;tc(b,z);$B(b,75253)|0;l=A;return}function Gc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0.0;j=l;l=l+48|0;i=j+32|0;g=j+16|0;f=j+8|0;e=c[b>>2]|0;d=c[b+4>>2]|0;fC(a,67565,j);b=0;while(1){if((b|0)>=(e|0))break;if((b|0)>0)fC(a,97973,f);k=+h[d+(b*24|0)+8>>3];h[g>>3]=+h[d+(b*24|0)>>3];h[g+8>>3]=k;fC(a,67577,g);b=b+1|0}fC(a,67518,i);l=j;return}function Hc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0;e=l;l=l+32|0;f=e+16|0;i=e;tc(a,c[d>>2]|0);g=+h[b+8>>3];h[i>>3]=+h[b>>3];h[i+8>>3]=g;fC(a,67521,i);tc(a,c[d>>2]|0);g=+h[b+24>>3];h[f>>3]=+h[b+16>>3];h[f+8>>3]=g;fC(a,67543,f);tc(a,c[d>>2]|0);Jc(a,c[b+32>>2]|0,c[b+36>>2]|0,d);l=e;return}function Ic(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0;e=l;l=l+48|0;f=e+24|0;j=e;tc(a,c[d>>2]|0);g=+h[b+8>>3];i=+h[b+16>>3];h[j>>3]=+h[b>>3];h[j+8>>3]=g;h[j+16>>3]=i;fC(a,67420,j);tc(a,c[d>>2]|0);i=+h[b+32>>3];g=+h[b+40>>3];h[f>>3]=+h[b+24>>3];h[f+8>>3]=i;h[f+16>>3]=g;fC(a,67448,f);tc(a,c[d>>2]|0);Jc(a,c[b+48>>2]|0,c[b+52>>2]|0,d);l=e;return}function Jc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0.0;m=l;l=l+48|0;k=m+32|0;j=m+16|0;i=m+8|0;fC(a,67476,m);f=0;while(1){if((f|0)>=(b|0))break;if((f|0)>0)fC(a,97973,i);o=+g[d+(f<<3)>>2];n=Bc(c[d+(f<<3)+4>>2]|0,e)|0;h[j>>3]=o;c[j+8>>2]=n;fC(a,67487,j);f=f+1|0}fC(a,67518,k);l=m;return}function Kc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;e=nb[c[a>>2]&63](a,b,512)|0;if(e){if((c[e+12>>2]|0)!=(d|0)){c[f>>2]=b;Pw(0,67664,f)|0}}else{f=E_(1,16)|0;c[f+8>>2]=n1(b)|0;c[f+12>>2]=d;nb[c[a>>2]&63](a,f,1)|0}l=g;return}function Lc(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b+8>>2]|0);D_(b);return}function Mc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;g=b;f=c[a+16>>2]|0;$B(a,68519)|0;j=c[c[a+12>>2]>>2]|0;i=c[j+4>>2]|0;h=c[j+8>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=i;c[g+8>>2]=h;fC(a,68529,g);c[e>>2]=ry(c[f+8>>2]|0)|0;fC(a,68564,e);c[d>>2]=O(c[a+168>>2]|0,c[a+164>>2]|0)|0;fC(a,68577,d);$B(a,68590)|0;$B(a,68600)|0;$B(a,68608)|0;$B(a,68616)|0;$B(a,68624)|0;$B(a,68632)|0;$B(a,68640)|0;$B(a,68644)|0;$B(a,68649)|0;l=b;return}function Nc(a){a=a|0;$B(a,68500)|0;return}function Oc(a){a=a|0;c[45940]=2;return}function Pc(a){a=a|0;c[45940]=1;return}function Qc(a){a=a|0;c[45940]=2;return}function Rc(a){a=a|0;c[45940]=0;return}function Sc(a){a=a|0;c[45940]=2;return}function Tc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0;p=l;l=l+80|0;o=p;m=c[(c[b+16>>2]|0)+16>>2]|0;n=c[45940]|0;f=c[e+4>>2]|0;g=+h[b+352>>3]*+h[f+16>>3];i=c[b+360>>2]|0?1.5707963267948966:0.0;j=c[e>>2]|0;k=g*.3333333333333333*+((W_(j)|0)>>>0);f=c[f+8>>2]|0;if(!f)f=-1;else f=c[f+20>>2]|0;s=a[e+48>>0]|0;r=+h[d>>3];q=+h[d+8>>3];e=bd(j)|0;c[o>>2]=4;c[o+4>>2]=s<<24>>24==108?0:s<<24>>24==114?2:1;c[o+8>>2]=m;c[o+12>>2]=n;c[o+16>>2]=0;c[o+20>>2]=f;h[o+24>>3]=g;h[o+32>>3]=i;c[o+40>>2]=6;h[o+48>>3]=g;h[o+56>>3]=k;c[o+64>>2]=~~(r+(r>=0.0?.5:-.5));c[o+68>>2]=~~(q+(q+-72.0>=0.0?-71.5:-72.5));c[o+72>>2]=e;fC(b,68445,o);l=p;return}function Uc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n;i=n+20|0;m=e+32|0;a:do switch(c[m>>2]|0){case 5:{f=0;while(1){g=c[12724+(f<<2)>>2]|0;if((f|0)==8)break a;h=c[e>>2]|0;if((a[g>>0]|0)==(a[h>>0]|0)?(b$(g,h)|0)==0:0){k=10;break a}f=f+1|0}}case 1:{g=e+1|0;h=e+2|0;f=(ad(i,d[e>>0]|0,d[g>>0]|0,d[h>>0]|0)|0)+32|0;if(!(c[i>>2]|0))k=10;else{o=d[e>>0]|0;i=d[g>>0]|0;k=d[h>>0]|0;c[j>>2]=0;c[j+4>>2]=f;c[j+8>>2]=o;c[j+12>>2]=i;c[j+16>>2]=k;fC(b,68388,j);k=10}break}default:qa(135312,67785,163,67816)}while(0);if((k|0)==10)c[e>>2]=f;c[m>>2]=6;l=n;return}function Vc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0;e=l;l=l+112|0;f=e+8|0;u=e+104|0;t=e;k=c[a+16>>2]|0;s=~~+h[k+152>>3];r=c[k+16>>2]|0;q=c[k+56>>2]|0;p=c[45940]|0;_c(k,u,t);n=+h[b>>3];k=~~(n+(n>=0.0?.5:-.5));m=+h[b+8>>3];j=~~(m+(m>=0.0?.5:-.5));i=+h[b+16>>3];n=i-n;g=+h[b+24>>3];m=g-m;b=c[u>>2]|0;o=+h[t>>3];c[f>>2]=1;c[f+4>>2]=1;c[f+8>>2]=b;c[f+12>>2]=s;c[f+16>>2]=r;c[f+20>>2]=q;c[f+24>>2]=p;c[f+28>>2]=0;c[f+32>>2]=d|0?20:-1;h[f+40>>3]=o;c[f+48>>2]=0;h[f+56>>3]=0.0;c[f+64>>2]=k;c[f+68>>2]=j;c[f+72>>2]=~~(n+(n>=0.0?.5:-.5));c[f+76>>2]=~~(m+(m>=0.0?.5:-.5));c[f+80>>2]=k;c[f+84>>2]=j;c[f+88>>2]=~~(i+(i>=0.0?.5:-.5));c[f+92>>2]=~~(g+(g>=0.0?.5:-.5));fC(a,68323,f);l=e;return}function Wc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+96|0;g=f+8|0;o=f+80|0;p=f;q=c[a+16>>2]|0;n=~~+h[q+152>>3];m=c[q+16>>2]|0;k=c[q+56>>2]|0;j=c[45940]|0;_c(q,o,p);o=c[o>>2]|0;i=+h[p>>3];c[g>>2]=2;c[g+4>>2]=3;c[g+8>>2]=o;c[g+12>>2]=n;c[g+16>>2]=m;c[g+20>>2]=k;c[g+24>>2]=j;c[g+28>>2]=0;c[g+32>>2]=e|0?20:-1;h[g+40>>3]=i;c[g+48>>2]=0;c[g+52>>2]=0;c[g+56>>2]=0;c[g+60>>2]=0;c[g+64>>2]=0;c[g+68>>2]=d+1;fC(a,68227,g);$c(a,b,d,1);l=f;return}function Xc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0;C=l;l=l+192|0;B=C+176|0;z=C+168|0;A=C+104|0;y=C+96|0;i=C+88|0;u=C+180|0;v=C+80|0;w=C+16|0;x=C;f=a+16|0;e=c[f>>2]|0;q=~~+h[e+152>>3];r=c[e+16>>2]|0;s=c[45940]|0;if((d|0)<=3)qa(67778,67785,360,67805);t=C_((d*140|0)+140|0)|0;_c(e,u,v);if(!g){o=4;j=0;k=-1}else{o=5;j=c[(c[f>>2]|0)+56>>2]|0;k=20}E=+h[b>>3];n=w+48|0;h[n>>3]=E;D=+h[b+8>>3];h[w+56>>3]=D;c[i>>2]=~~(E+(E>=0.0?.5:-.5));c[i+4>>2]=~~(D+(D>=0.0?.5:-.5));m=x+8|0;e=t+(Y0(t,80995,i)|0)|0;p=1;g=0;while(1){i=g+3|0;if((i|0)>=(d|0))break;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];f=1;while(1){if((f|0)==4){f=1;break}F=f+g|0;h[w+(f<<4)>>3]=+h[b+(F<<4)>>3];h[w+(f<<4)+8>>3]=+h[b+(F<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;XL(x,w,3,+(f|0)*.16666666666666666,0,0);D=+h[x>>3];E=+h[m>>3];c[y>>2]=~~(D+(D>=0.0?.5:-.5));c[y+4>>2]=~~(E+(E>=0.0?.5:-.5));f=f+1|0;e=e+(Y0(e,80995,y)|0)|0}p=p+6|0;g=i}f=c[u>>2]|0;E=+h[v>>3];c[A>>2]=3;c[A+4>>2]=o;c[A+8>>2]=f;c[A+12>>2]=q;c[A+16>>2]=r;c[A+20>>2]=j;c[A+24>>2]=s;c[A+28>>2]=0;c[A+32>>2]=k;h[A+40>>3]=E;c[A+48>>2]=0;c[A+52>>2]=0;c[A+56>>2]=0;c[A+60>>2]=p;fC(a,68278,A);c[z>>2]=t;fC(a,81002,z);D_(t);f=p+-1|0;e=0;while(1){if((e|0)>=(p|0))break;c[B>>2]=((e|0)%(f|0)|0|0)!=0&1;fC(a,81007,B);e=e+1|0}$B(a,150517)|0;l=C;return}function Yc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+96|0;f=e+8|0;m=e+80|0;n=e;o=c[a+16>>2]|0;k=~~+h[o+152>>3];j=c[o+16>>2]|0;i=c[45940]|0;_c(o,m,n);m=c[m>>2]|0;g=+h[n>>3];c[f>>2]=2;c[f+4>>2]=1;c[f+8>>2]=m;c[f+12>>2]=k;c[f+16>>2]=j;c[f+20>>2]=0;c[f+24>>2]=i;c[f+28>>2]=0;c[f+32>>2]=0;h[f+40>>3]=g;c[f+48>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;c[f+60>>2]=0;c[f+64>>2]=0;c[f+68>>2]=d;fC(a,68227,f);$c(a,b,d,0);l=e;return}function Zc(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fC(a,68221,e);l=d;return}function _c(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;switch(c[a+144>>2]|0){case 1:{e=10.0;a=1;break}case 2:{e=10.0;a=2;break}default:{e=0.0;a=0}}c[b>>2]=a;h[d>>3]=e;return}function $c(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+16|0;i=j+8|0;g=j;f=0;while(1){if((f|0)>=(d|0))break;m=+h[b+(f<<4)>>3];k=+h[b+(f<<4)+8>>3];c[g>>2]=~~(m+(m>=0.0?.5:-.5));c[g+4>>2]=~~(k+(k>=0.0?.5:-.5));fC(a,80995,g);f=f+1|0}if(e|0){k=+h[b>>3];m=+h[b+8>>3];c[i>>2]=~~(k+(k>=0.0?.5:-.5));c[i+4>>2]=~~(m+(m>=0.0?.5:-.5));fC(a,80995,i)}$B(a,150517)|0;l=j;return}function ad(a,d,e,f){a=a|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;c[a>>2]=0;k=c[45941]|0;h=195075;g=0;i=-1;while(1){if((g|0)>=(k|0)){l=6;break}m=(b[187600+(g<<1)>>1]|0)-d|0;n=(b[188112+(g<<1)>>1]|0)-e|0;j=(b[188624+(g<<1)>>1]|0)-f|0;j=(O(n,n)|0)+(O(m,m)|0)+(O(j,j)|0)|0;if((j|0)<(h|0))if(!j)break;else{h=j;i=g}g=g+1|0}if((l|0)==6){c[45941]=k+1;if((k|0)==256)g=i;else{b[187600+(g<<1)>>1]=d;b[188112+(g<<1)>>1]=e;b[188624+(g<<1)>>1]=f;c[a>>2]=1}}return g|0}function bd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;d=c[45942]|0;if(!d){c[45943]=64;d=C_(64)|0;c[45942]=d;e=0}else e=0;while(1){g=b+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;b=c[45943]|0;if((e|0)>(b+-8|0)){d=b<<1;c[45943]=d;d=F_(c[45942]|0,d)|0;c[45942]=d;d=d+e|0}if(f<<24>>24<=-1){a[d>>0]=92;c[h>>2]=f&255;Y0(d+1|0,81120,h)|0;b=g;d=d+4|0;e=e+4|0;continue}if(f<<24>>24==92){a[d>>0]=92;e=e+1|0;d=d+1|0}a[d>>0]=f;b=g;d=d+1|0;e=e+1|0}a[d>>0]=0;l=i;return c[45942]|0}function cd(b){b=b|0;var d=0,e=0,f=0;e=c[b+16>>2]|0;switch(c[b+64>>2]|0){case 0:{$B(b,68116)|0;d=e+208|0;e=c[d>>2]|0;if(e|0?a[e>>0]|0:0){$B(b,68130)|0;$B(b,qH(c[d>>2]|0)|0)|0;$B(b,150517)|0}break}case 1:{d=e+208|0;f=c[d>>2]|0;if(f|0?a[f>>0]|0:0){$B(b,68130)|0;$B(b,qH(c[d>>2]|0)|0)|0;$B(b,99578)|0;$B(b,qH(ry(c[e+8>>2]|0)|0)|0)|0;$B(b,150517)|0}break}case 3:{f=qH(ry(c[e+8>>2]|0)|0)|0;$B(b,68139)|0;$B(b,f)|0;$B(b,68149)|0;$B(b,f)|0;$B(b,68104)|0;break}default:{}}return}function dd(a){a=a|0;var b=0;b=c[a+16>>2]|0;switch(c[a+64>>2]|0){case 2:{fd(a,c[b+264>>2]|0,c[b+272>>2]|0,c[b+268>>2]|0,c[b+208>>2]|0,c[b+228>>2]|0,c[b+244>>2]|0,c[b+212>>2]|0);break}case 3:{fd(a,c[b+264>>2]|0,c[b+272>>2]|0,c[b+268>>2]|0,c[b+208>>2]|0,c[b+228>>2]|0,c[b+244>>2]|0,c[b+212>>2]|0);$B(a,68108)|0;break}default:{}}return}function ed(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[a+16>>2]|0;fd(a,c[g+264>>2]|0,c[g+272>>2]|0,c[g+268>>2]|0,b,d,e,f);return}function fd(b,d,e,f,g,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0;y=l;l=l+128|0;x=y+120|0;u=y+112|0;t=y+96|0;s=y+80|0;r=y+56|0;w=y+48|0;q=y+40|0;v=y+24|0;p=y;a:do if((e|0)!=0&(f|0)!=0){m=f+10|0;if((c[45944]|0)<(f|0)){c[45944]=m;o=F_(c[45945]|0,m<<3)|0;c[45945]=o}else o=c[45945]|0;m=0;while(1){if((m|0)>=(f|0))break;z=+h[e+(m<<4)>>3];c[o+(m<<3)>>2]=~~(z+(z>=0.0?.5:-.5));z=+h[e+(m<<4)+8>>3];c[o+(m<<3)+4>>2]=~~(z+(z>=0.0?.5:-.5));m=m+1|0}n=b+64|0;m=c[n>>2]|0;e=(g|0)!=0;if(e&(m|0)==0){if(!(a[g>>0]|0))break;switch(d|0){case 0:{v=c[o>>2]|0;w=c[o+12>>2]|0;x=c[o+8>>2]|0;f=c[o+4>>2]|0;c[p>>2]=g;c[p+4>>2]=v;c[p+8>>2]=w;c[p+12>>2]=x;c[p+16>>2]=f;fC(b,67850,p);break a}case 1:{w=c[o>>2]|0;x=c[o+4>>2]|0;f=(c[o+8>>2]|0)-w|0;c[v>>2]=g;c[v+4>>2]=w;c[v+8>>2]=x;c[v+12>>2]=f;fC(b,67871,v);break a}case 2:{c[q>>2]=g;fC(b,67891,q);m=0;while(1){if((m|0)>=(f|0))break;v=c[45945]|0;x=c[v+(m<<3)+4>>2]|0;c[w>>2]=c[v+(m<<3)>>2];c[w+4>>2]=x;fC(b,67899,w);m=m+1|0}$B(b,150517)|0;break a}default:qa(135312,67906,63,67926)}}if(e&(m|0)==1){if(!(a[g>>0]|0))break;if(!d){w=c[o+12>>2]|0;x=c[o+8>>2]|0;f=c[o+4>>2]|0;c[r>>2]=c[o>>2];c[r+4>>2]=w;c[r+8>>2]=x;c[r+12>>2]=f;c[r+16>>2]=g;c[r+20>>2]=i;fC(b,67943,r);break}else qa(135312,67906,75,67926)}if((m&-2|0)==2){switch(d|0){case 1:{$B(b,67976)|0;break}case 0:{$B(b,67997)|0;break}case 2:{$B(b,68016)|0;break}default:qa(135312,67906,91,67926)}if(k|0?a[k>>0]|0:0){$B(b,73496)|0;$B(b,tH(k)|0)|0;$B(b,95669)|0}if(e?a[g>>0]|0:0){$B(b,68035)|0;$B(b,tH(g)|0)|0;$B(b,95669)|0}if(j|0?a[j>>0]|0:0){$B(b,74455)|0;$B(b,qH(j)|0)|0;$B(b,95669)|0}if(i|0?a[i>>0]|0:0){$B(b,68043)|0;$B(b,qH(i)|0)|0;$B(b,95669)|0}$B(b,68052)|0;$B(b,68060)|0;b:do switch(d|0){case 1:{f=c[45945]|0;w=c[f>>2]|0;x=c[f+4>>2]|0;f=(c[f+8>>2]|0)-w|0;c[s>>2]=w;c[s+4>>2]=x;c[s+8>>2]=f;fC(b,68070,s);break}case 0:{v=c[45945]|0;w=c[v+12>>2]|0;x=c[v+8>>2]|0;f=c[v+4>>2]|0;c[t>>2]=c[v>>2];c[t+4>>2]=w;c[t+8>>2]=x;c[t+12>>2]=f;fC(b,68079,t);break}case 2:{w=c[45945]|0;m=c[w+4>>2]|0;c[u>>2]=c[w>>2];c[u+4>>2]=m;fC(b,68091,u);m=1;while(1){if((m|0)>=(f|0))break b;v=c[45945]|0;w=c[v+(m<<3)+4>>2]|0;c[x>>2]=c[v+(m<<3)>>2];c[x+4>>2]=w;fC(b,68097,x);m=m+1|0}}default:{}}while(0);if((c[n>>2]|0)==3){$B(b,73320)|0;break}else{$B(b,68104)|0;break}}}while(0);l=y;return}function gd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;g=b;f=c[a+16>>2]|0;$B(a,68519)|0;j=c[c[a+12>>2]>>2]|0;i=c[j+4>>2]|0;h=c[j+8>>2]|0;c[g>>2]=c[j>>2];c[g+4>>2]=i;c[g+8>>2]=h;fC(a,68529,g);c[e>>2]=ry(c[f+8>>2]|0)|0;fC(a,68564,e);c[d>>2]=O(c[a+168>>2]|0,c[a+164>>2]|0)|0;fC(a,68577,d);$B(a,68590)|0;$B(a,68600)|0;$B(a,68608)|0;$B(a,68616)|0;$B(a,68624)|0;$B(a,68632)|0;$B(a,68640)|0;$B(a,68644)|0;$B(a,68649)|0;l=b;return}function hd(a){a=a|0;$B(a,68500)|0;return}function id(a){a=a|0;c[45946]=2;return}function jd(a){a=a|0;c[45946]=1;return}function kd(a){a=a|0;c[45946]=2;return}function ld(a){a=a|0;c[45946]=0;return}function md(a){a=a|0;c[45946]=2;return}function nd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0;n=l;l=l+80|0;m=n;j=c[(c[b+16>>2]|0)+16>>2]|0;k=c[45946]|0;f=c[e+4>>2]|0;g=+h[b+352>>3]*+h[f+16>>3];i=c[b+360>>2]|0?1.5707963267948966:0.0;f=c[f+8>>2]|0;if(!f)f=-1;else f=c[f+20>>2]|0;q=a[e+48>>0]|0;p=+h[d>>3];o=+h[d+8>>3];e=xd(c[e>>2]|0)|0;c[m>>2]=4;c[m+4>>2]=q<<24>>24==108?0:q<<24>>24==114?2:1;c[m+8>>2]=j;c[m+12>>2]=k;c[m+16>>2]=0;c[m+20>>2]=f;h[m+24>>3]=g;h[m+32>>3]=i;c[m+40>>2]=4;h[m+48>>3]=0.0;h[m+56>>3]=0.0;c[m+64>>2]=~~(p+(p>=0.0?.5:-.5));c[m+68>>2]=~~(o+(o>=0.0?.5:-.5));c[m+72>>2]=e;fC(b,68445,m);l=n;return}function od(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n;i=n+20|0;m=e+32|0;a:do switch(c[m>>2]|0){case 5:{f=0;while(1){g=c[12724+(f<<2)>>2]|0;if((f|0)==8)break a;h=c[e>>2]|0;if((a[g>>0]|0)==(a[h>>0]|0)?(b$(g,h)|0)==0:0){k=10;break a}f=f+1|0}}case 1:{g=e+1|0;h=e+2|0;f=(wd(i,d[e>>0]|0,d[g>>0]|0,d[h>>0]|0)|0)+32|0;if(!(c[i>>2]|0))k=10;else{o=d[e>>0]|0;i=d[g>>0]|0;k=d[h>>0]|0;c[j>>2]=0;c[j+4>>2]=f;c[j+8>>2]=o;c[j+12>>2]=i;c[j+16>>2]=k;fC(b,68388,j);k=10}break}case 0:{f=0;k=10;break}default:qa(135312,68409,168,68428)}while(0);if((k|0)==10)c[e>>2]=f;c[m>>2]=6;l=n;return}function pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0;e=l;l=l+112|0;f=e+8|0;u=e+104|0;t=e;k=c[a+16>>2]|0;s=~~+h[k+152>>3];r=c[k+16>>2]|0;q=c[k+56>>2]|0;p=c[45946]|0;ud(k,u,t);n=+h[b>>3];k=~~(n+(n>=0.0?.5:-.5));m=+h[b+8>>3];j=~~(m+(m>=0.0?.5:-.5));i=+h[b+16>>3];n=i-n;g=+h[b+24>>3];m=g-m;b=c[u>>2]|0;o=+h[t>>3];c[f>>2]=1;c[f+4>>2]=1;c[f+8>>2]=b;c[f+12>>2]=s;c[f+16>>2]=r;c[f+20>>2]=q;c[f+24>>2]=p;c[f+28>>2]=0;c[f+32>>2]=d|0?20:-1;h[f+40>>3]=o;c[f+48>>2]=0;h[f+56>>3]=0.0;c[f+64>>2]=k;c[f+68>>2]=j;c[f+72>>2]=~~(n+(n>=0.0?.5:-.5));c[f+76>>2]=~~(m+(m>=0.0?.5:-.5));c[f+80>>2]=k;c[f+84>>2]=j;c[f+88>>2]=~~(i+(i>=0.0?.5:-.5));c[f+92>>2]=~~(g+(g>=0.0?.5:-.5));fC(a,68323,f);l=e;return}function qd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+96|0;g=f+8|0;o=f+80|0;p=f;q=c[a+16>>2]|0;n=~~+h[q+152>>3];m=c[q+16>>2]|0;k=c[q+56>>2]|0;j=c[45946]|0;ud(q,o,p);o=c[o>>2]|0;i=+h[p>>3];c[g>>2]=2;c[g+4>>2]=3;c[g+8>>2]=o;c[g+12>>2]=n;c[g+16>>2]=m;c[g+20>>2]=k;c[g+24>>2]=j;c[g+28>>2]=0;c[g+32>>2]=e|0?20:-1;h[g+40>>3]=i;c[g+48>>2]=0;c[g+52>>2]=0;c[g+56>>2]=0;c[g+60>>2]=0;c[g+64>>2]=0;c[g+68>>2]=d+1;fC(a,68227,g);vd(a,b,d,1);l=f;return}function rd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0;C=l;l=l+192|0;B=C+176|0;z=C+168|0;A=C+104|0;y=C+96|0;f=C+88|0;u=C+180|0;v=C+80|0;w=C+16|0;x=C;e=a+16|0;p=c[e>>2]|0;q=~~+h[p+152>>3];r=c[p+16>>2]|0;s=c[45946]|0;t=C_((d*140|0)+140|0)|0;ud(p,u,v);if(!g){o=4;j=0;k=-1}else{o=5;j=c[(c[e>>2]|0)+56>>2]|0;k=20}E=+h[b>>3];n=w+48|0;h[n>>3]=E;D=+h[b+8>>3];h[w+56>>3]=D;c[f>>2]=~~(E+(E>=0.0?.5:-.5));c[f+4>>2]=~~(D+(D>=0.0?.5:-.5));m=x+8|0;e=t+(Y0(t,80995,f)|0)|0;p=1;g=0;while(1){i=g+3|0;if((i|0)>=(d|0))break;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];f=1;while(1){if((f|0)==4){f=1;break}F=f+g|0;h[w+(f<<4)>>3]=+h[b+(F<<4)>>3];h[w+(f<<4)+8>>3]=+h[b+(F<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;XL(x,w,3,+(f|0)*.16666666666666666,0,0);D=+h[x>>3];E=+h[m>>3];c[y>>2]=~~(D+(D>=0.0?.5:-.5));c[y+4>>2]=~~(E+(E>=0.0?.5:-.5));f=f+1|0;e=e+(Y0(e,80995,y)|0)|0}p=p+6|0;g=i}f=c[u>>2]|0;E=+h[v>>3];c[A>>2]=3;c[A+4>>2]=o;c[A+8>>2]=f;c[A+12>>2]=q;c[A+16>>2]=r;c[A+20>>2]=j;c[A+24>>2]=s;c[A+28>>2]=0;c[A+32>>2]=k;h[A+40>>3]=E;c[A+48>>2]=0;c[A+52>>2]=0;c[A+56>>2]=0;c[A+60>>2]=p;fC(a,68278,A);c[z>>2]=t;fC(a,81002,z);D_(t);f=p+-1|0;e=0;while(1){if((e|0)>=(p|0))break;c[B>>2]=((e|0)%(f|0)|0|0)!=0&1;fC(a,81007,B);e=e+1|0}$B(a,150517)|0;l=C;return}function sd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+96|0;f=e+8|0;m=e+80|0;n=e;o=c[a+16>>2]|0;k=~~+h[o+152>>3];j=c[o+16>>2]|0;i=c[45946]|0;ud(o,m,n);m=c[m>>2]|0;g=+h[n>>3];c[f>>2]=2;c[f+4>>2]=1;c[f+8>>2]=m;c[f+12>>2]=k;c[f+16>>2]=j;c[f+20>>2]=0;c[f+24>>2]=i;c[f+28>>2]=0;c[f+32>>2]=0;h[f+40>>3]=g;c[f+48>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;c[f+60>>2]=0;c[f+64>>2]=0;c[f+68>>2]=d;fC(a,68227,f);vd(a,b,d,0);l=e;return}function td(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fC(a,68221,e);l=d;return}function ud(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;switch(c[a+144>>2]|0){case 1:{e=10.0;a=1;break}case 2:{e=10.0;a=2;break}default:{e=0.0;a=0}}c[b>>2]=a;h[d>>3]=e;return}function vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+16|0;i=j+8|0;g=j;f=0;while(1){if((f|0)>=(d|0))break;m=+h[b+(f<<4)>>3];k=+h[b+(f<<4)+8>>3];c[g>>2]=~~(m+(m>=0.0?.5:-.5));c[g+4>>2]=~~(k+(k>=0.0?.5:-.5));fC(a,80995,g);f=f+1|0}if(e|0){k=+h[b>>3];m=+h[b+8>>3];c[i>>2]=~~(k+(k>=0.0?.5:-.5));c[i+4>>2]=~~(m+(m>=0.0?.5:-.5));fC(a,80995,i)}$B(a,150517)|0;l=j;return}function wd(a,d,e,f){a=a|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;c[a>>2]=0;k=c[45947]|0;h=195075;g=0;i=-1;while(1){if((g|0)>=(k|0)){l=6;break}m=(b[189136+(g<<1)>>1]|0)-d|0;n=(b[189648+(g<<1)>>1]|0)-e|0;j=(b[190160+(g<<1)>>1]|0)-f|0;j=(O(n,n)|0)+(O(m,m)|0)+(O(j,j)|0)|0;if((j|0)<(h|0))if(!j)break;else{h=j;i=g}g=g+1|0}if((l|0)==6){c[45947]=k+1;if((k|0)==256)g=i;else{b[189136+(g<<1)>>1]=d;b[189648+(g<<1)>>1]=e;b[190160+(g<<1)>>1]=f;c[a>>2]=1}}return g|0}function xd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;d=c[45948]|0;if(!d){c[45949]=64;d=C_(64)|0;c[45948]=d;e=0}else e=0;while(1){g=b+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;b=c[45949]|0;if((e|0)>(b+-8|0)){d=b<<1;c[45949]=d;d=F_(c[45948]|0,d)|0;c[45948]=d;d=d+e|0}if(f<<24>>24<=-1){a[d>>0]=92;c[h>>2]=f&255;Y0(d+1|0,81120,h)|0;b=g;d=d+4|0;e=e+4|0;continue}if(f<<24>>24==92){a[d>>0]=92;e=e+1|0;d=d+1|0}a[d>>0]=f;b=g;d=d+1|0;e=e+1|0}a[d>>0]=0;l=i;return c[45948]|0}function yd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;b=d;$B(a,73228)|0;if((c[a+64>>2]|0)==2)$B(a,73243)|0;else $B(a,150517)|0;g=c[c[a+12>>2]>>2]|0;f=c[g+4>>2]|0;e=c[g+8>>2]|0;c[b>>2]=c[g>>2];c[b+4>>2]=f;c[b+8>>2]=e;fC(a,73254,b);l=d;return}function zd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+32|0;f=g+8|0;e=g;$B(a,73182)|0;d=a+64|0;b=a+12|0;if((c[d>>2]|0)!=2){c[e>>2]=c[(c[b>>2]|0)+28>>2];fC(a,73193,e)}if((c[(c[b>>2]|0)+20>>2]|0)==0?(c[d>>2]|0)!=2:0){b=c[a+476>>2]|0;d=c[a+480>>2]|0;e=c[a+484>>2]|0;c[f>>2]=c[a+472>>2];c[f+4>>2]=b;c[f+8>>2]=d;c[f+12>>2]=e;fC(a,69562,f)}$B(a,73208)|0;$B(a,73221)|0;l=g;return}function Ad(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+32|0;j=k+24|0;f=k+8|0;i=k;g=c[b+16>>2]|0;a[190688]=0;e=b+12|0;h=g+8|0;if(!(c[(c[e>>2]|0)+28>>2]|0)){c[i>>2]=ry(c[h>>2]|0)|0;fC(b,69493,i);d=b+64|0;if((c[d>>2]|0)==2)$B(b,69526)|0;else $B(b,69508)|0;do if(!(c[(c[e>>2]|0)+20>>2]|0))if((c[d>>2]|0)==2){n=c[b+460>>2]|0;m=c[b+464>>2]|0;d=c[b+468>>2]|0;c[f>>2]=c[b+456>>2];c[f+4>>2]=n;c[f+8>>2]=m;c[f+12>>2]=d;fC(b,69562,f);break}else{$B(b,69538)|0;break}while(0);$B(b,69592)|0;jJ(b,c[(c[e>>2]|0)+24>>2]|0,13e3);lJ(b);d=c[(c[e>>2]|0)+20>>2]|0;if(d|0){c[i>>2]=c[d>>2];c[i+4>>2]=0;jJ(b,0,i)}}c[45950]=(a[(c[(c[h>>2]|0)+16>>2]|0)+115>>0]|0)==1?1:-1;if(!(a[190688]|0)){$B(b,69612)|0;a[190688]=1}d=c[g+208>>2]|0;if(d|0){c[j>>2]=mJ(d,c[45950]|0)|0;fC(b,69625,j)}l=k;return}function Bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;b=l;l=l+16|0;f=b;c[f>>2]=d;c[f+4>>2]=e;fC(a,69477,f);l=b;return}function Cd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0;s=l;l=l+144|0;r=s+128|0;q=s+112|0;p=s+72|0;o=s+56|0;n=s+40|0;m=s+32|0;e=s+24|0;b=s+8|0;d=s;f=c[a+456>>2]|0;j=c[a+460>>2]|0;g=c[a+464>>2]|0;i=c[a+468>>2]|0;k=a+12|0;t=(c[(c[k>>2]|0)+28>>2]|0)+1|0;c[d>>2]=t;c[d+4>>2]=t;fC(a,69104,d);if(!(c[(c[k>>2]|0)+20>>2]|0)){c[b>>2]=f;c[b+4>>2]=j;c[b+8>>2]=g;c[b+12>>2]=i;fC(a,69121,b)}d=a+360|0;c[e>>2]=c[d>>2]|0?69155:69165;fC(a,69174,e);b=a+64|0;if((c[b>>2]|0)==1){c[m>>2]=g;c[m+4>>2]=i;fC(a,69199,m)}m=c[a+200>>2]|0;t=c[a+204>>2]|0;c[n>>2]=c[a+196>>2];c[n+4>>2]=m;c[n+8>>2]=t;fC(a,69238,n);if(!(c[(c[k>>2]|0)+20>>2]|0)){c[o>>2]=f;c[o+4>>2]=j;c[o+8>>2]=g-f;c[o+12>>2]=i-j;fC(a,69258,o)}w=+h[a+496>>3];t=c[d>>2]|0;v=+h[a+504>>3];u=+h[a+512>>3];h[p>>3]=+h[a+488>>3];h[p+8>>3]=w;c[p+16>>2]=t;h[p+24>>3]=v;h[p+32>>3]=u;fC(a,69298,p);if((c[b>>2]|0)==1){if((g|0)>14399|(i|0)>14399){t=c[(c[k>>2]|0)+16>>2]|0;c[q>>2]=g;c[q+4>>2]=i;c[q+8>>2]=14400;ub[t&63](69341,q)}c[r>>2]=f;c[r+4>>2]=j;c[r+8>>2]=g;c[r+12>>2]=i;fC(a,69436,r)}l=s;return}function Dd(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=a+12|0;if(c[(c[b>>2]|0)+20>>2]|0){$B(a,69028)|0;jJ(a,0,(c[(c[b>>2]|0)+20>>2]|0)+4|0)}$B(a,69045)|0;$B(a,69072)|0;c[d>>2]=c[(c[b>>2]|0)+28>>2];fC(a,69087,d);l=e;return}function Ed(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=ry(c[(c[a+16>>2]|0)+8>>2]|0)|0;fC(a,69021,d);$B(a,69014)|0;l=b;return}function Fd(a){a=a|0;$B(a,84457)|0;return}function Gd(a){a=a|0;$B(a,69014)|0;return}function Hd(a){a=a|0;$B(a,84457)|0;return}function Id(a){a=a|0;$B(a,69014)|0;return}function Jd(a){a=a|0;$B(a,84457)|0;return}function Kd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;e=l;l=l+16|0;d=e;if(b|0?(g=(c[a+16>>2]|0)+272|0,c[g>>2]|0):0){$B(a,68910)|0;jC(a,c[g>>2]|0,2);$B(a,68921)|0;c[d>>2]=mJ(b,c[45950]|0)|0;fC(a,68925,d)}l=e;return}function Ld(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;k=m;f=c[b+16>>2]|0;if(!(+h[f+40>>3]<.5)){Sd(b,f+16|0);i=e+4|0;gC(b,+h[(c[i>>2]|0)+16>>3]);c[j>>2]=c[c[i>>2]>>2];fC(b,68869,j);i=mJ(c[e>>2]|0,c[45950]|0)|0;switch(a[e+48>>0]|0){case 114:{n=e+32|0;f=n;g=+h[n>>3];break}case 108:{f=e+32|0;g=0.0;break}default:{n=e+32|0;f=n;g=+h[n>>3]*.5}}h[d>>3]=+h[d>>3]-g;n=d+8|0;h[n>>3]=+h[n>>3]+ +h[e+24>>3];c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];iC(b,j);$B(b,68884)|0;gC(b,+h[f>>3]);c[k>>2]=i;fC(b,68893,k)}l=m;return}function Md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];h[f+16>>3]=+h[b+16>>3]-+h[b>>3];h[f+24>>3]=+h[b+24>>3]-+h[b+8>>3];b=a+16|0;if(d|0?(e=c[b>>2]|0,+h[e+80>>3]>.5):0){Sd(a,e+56|0);jC(a,f,2);$B(a,68827)|0}if(+h[(c[b>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[b>>2]|0)+16|0);jC(a,f,2);$B(a,68847)|0}l=g;return}function Nd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0;j=l;l=l+16|0;i=j;g=a+16|0;if(e|0?(f=c[g>>2]|0,+h[f+80>>3]>.5):0){Sd(a,f+56|0);$B(a,68748)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];iC(a,i);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;f=b+(e<<4)|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];iC(a,i);$B(a,68766)|0;e=e+1|0}$B(a,68793)|0}if(+h[(c[g>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[g>>2]|0)+16|0);$B(a,68748)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];iC(a,i);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;g=b+(e<<4)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];iC(a,i);$B(a,68766)|0;e=e+1|0}$B(a,68809)|0}l=j;return}function Od(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0;k=l;l=l+16|0;f=k;i=a+16|0;if(g|0?(j=c[i>>2]|0,+h[j+80>>3]>.5):0){Sd(a,j+56|0);$B(a,68748)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];iC(a,f);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;jC(a,b+(e<<4)|0,3);$B(a,68783)|0;e=e+3|0}$B(a,68793)|0}if(+h[(c[i>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[i>>2]|0)+16|0);$B(a,68748)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];iC(a,f);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;jC(a,b+(e<<4)|0,3);$B(a,68783)|0;e=e+3|0}$B(a,68775)|0}l=k;return}function Pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;g=l;l=l+16|0;f=g;e=a+16|0;if(+h[(c[e>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[e>>2]|0)+16|0);$B(a,68748)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];iC(a,f);$B(a,68757)|0;e=1;while(1){if((e|0)>=(d|0))break;i=b+(e<<4)|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];iC(a,f);$B(a,68766)|0;e=e+1|0}$B(a,68775)|0}l=g;return}function Qd(a,b){a=a|0;b=b|0;$B(a,68745)|0;$B(a,b)|0;$B(a,150517)|0;return}function Rd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;g=n+16|0;m=n+8|0;k=n;i=a+16|0;if(f|0?(j=c[i>>2]|0,+h[j+80>>3]>.5):0){Sd(a,j+56|0);$B(a,84352)|0;jC(a,d,e);$B(a,99578)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];iC(a,g);c[k>>2]=e;c[k+4>>2]=b;fC(a,68662,k)}if(+h[(c[i>>2]|0)+40>>3]>.5){Td(a);Sd(a,(c[i>>2]|0)+16|0);$B(a,84352)|0;jC(a,d,e);$B(a,99578)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];iC(a,g);c[m>>2]=e;c[m+4>>2]=b;fC(a,68678,m)}l=n;return}function Sd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0;f=l;l=l+32|0;e=f;if(b|0){switch(c[(c[a+16>>2]|0)+4>>2]|0){case 1:case 0:{d=108412;break}case 2:{d=108399;break}case 3:{d=108368;break}default:d=68714}i=+h[b+8>>3];g=+h[b+16>>3];h[e>>3]=+h[b>>3];h[e+8>>3]=i;h[e+16>>3]=g;c[e+24>>2]=d;fC(a,68721,e)}l=f;return}function Td(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m+8|0;j=m;g=b+16|0;i=c[g>>2]|0;d=c[i+160>>2]|0;gC(b,+h[i+152>>3]);$B(b,68695)|0;while(1){if(!d)break;i=d+4|0;f=c[d>>2]|0;if(!f)break;if(!(b$(f,108062)|0)){d=i;continue}else e=f;while(1){d=e+1|0;if(!(a[e>>0]|0))break;else e=d}a:while(1){if(!(a[d>>0]|0))break;c[j>>2]=d;fC(b,68710,j);while(1){e=d+1|0;if(!(a[d>>0]|0)){d=e;continue a}else d=e}}if(!(b$(f,131253)|0))h[(c[g>>2]|0)+152>>3]=0.0;c[k>>2]=f;fC(b,93588,k);d=i}l=m;return}function Ud(b){b=b|0;var d=0;$B(b,74734)|0;d=xx(c[(c[b>>2]|0)+168>>2]|0,74790)|0;if(d|0?a[d>>0]|0:0){$B(b,74801)|0;$B(b,d)|0;$B(b,74825)|0}$B(b,74846)|0;$B(b,74894)|0;$B(b,74948)|0;d=b+12|0;$B(b,qH(c[c[c[d>>2]>>2]>>2]|0)|0)|0;$B(b,78077)|0;$B(b,qH(c[(c[c[d>>2]>>2]|0)+4>>2]|0)|0)|0;$B(b,78087)|0;$B(b,qH(c[(c[c[d>>2]>>2]|0)+8>>2]|0)|0)|0;$B(b,75330)|0;$B(b,75354)|0;return}function Vd(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0;i=l;l=l+48|0;g=i+16|0;f=i+8|0;e=i;d=c[b+16>>2]|0;$B(b,74569)|0;d=d+8|0;if(a[(ry(c[d>>2]|0)|0)>>0]|0){$B(b,75293)|0;$B(b,qH(ry(c[d>>2]|0)|0)|0)|0}c[e>>2]=O(c[b+168>>2]|0,c[b+164>>2]|0)|0;fC(b,74574,e);e=c[b+452>>2]|0;c[f>>2]=c[b+448>>2];c[f+4>>2]=e;fC(b,74590,f);m=+h[b+392>>3];k=+h[b+400>>3];j=+h[b+408>>3];h[g>>3]=+h[b+384>>3];h[g+8>>3]=m;h[g+16>>3]=k;h[g+24>>3]=j;fC(b,74623,g);$B(b,74654)|0;$B(b,74690)|0;$B(b,76284)|0;l=i;return}function Wd(a){a=a|0;$B(a,74561)|0;return}function Xd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;se(a,b,0,98484,c[(c[a+16>>2]|0)+8>>2]|0);$B(a,76284)|0;return}function Yd(a){a=a|0;$B(a,74409)|0;return}function Zd(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=c[b+16>>2]|0;d=g+8|0;se(b,c[g+212>>2]|0,0,108412,c[d>>2]|0);$B(b,74513)|0;gC(b,+h[b+488>>3]);$B(b,99578)|0;gC(b,+h[b+496>>3]);c[f>>2]=0-(c[b+360>>2]|0);fC(b,74532,f);gC(b,+h[b+504>>3]);$B(b,99578)|0;gC(b,-+h[b+512>>3]);$B(b,74556)|0;if(a[(ry(c[d>>2]|0)|0)>>0]|0){$B(b,74465)|0;$B(b,qH(ry(c[d>>2]|0)|0)|0)|0;$B(b,74473)|0}l=e;return}function _d(a){a=a|0;$B(a,74409)|0;return}function $d(a){a=a|0;var b=0,d=0;d=c[a+16>>2]|0;b=d+8|0;se(a,c[d+212>>2]|0,0,104980,c[b>>2]|0);$B(a,76284)|0;$B(a,74465)|0;$B(a,qH(ry(c[b>>2]|0)|0)|0)|0;$B(a,74473)|0;return}function ae(a){a=a|0;$B(a,74409)|0;return}function be(a){a=a|0;var b=0,d=0,e=0;d=c[a+16>>2]|0;b=c[a+160>>2]|0;if((b|0)>1)b=c[(c[(c[a>>2]|0)+308>>2]|0)+(b<<2)>>2]|0;else b=0;e=d+8|0;se(a,c[d+212>>2]|0,b,108399,c[e>>2]|0);$B(a,76284)|0;$B(a,74465)|0;$B(a,qH(ry(c[e>>2]|0)|0)|0)|0;$B(a,74473)|0;return}function ce(a){a=a|0;$B(a,74409)|0;return}function de(a){a=a|0;var b=0,d=0;d=c[a+16>>2]|0;b=d+8|0;se(a,c[d+212>>2]|0,0,108368,c[b>>2]|0);$B(a,76284)|0;$B(a,74465)|0;b=pH(99069,c[b>>2]|0)|0;$B(a,qH(b)|0)|0;D_(b);$B(a,74473)|0;return}function ee(a){a=a|0;$B(a,74409)|0;return}function fe(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$B(b,74415)|0;if(f|0){$B(b,74418)|0;$B(b,qH(f)|0)|0;$B(b,95669)|0}$B(b,74308)|0;$B(b,76245)|0;if(c|0?a[c>>0]|0:0){$B(b,74426)|0;$B(b,c)|0;$B(b,95669)|0}if(d|0?a[d>>0]|0:0){$B(b,74440)|0;$B(b,rH(d,1)|0)|0;$B(b,95669)|0}if(e|0?a[e>>0]|0:0){$B(b,74455)|0;$B(b,qH(e)|0)|0;$B(b,95669)|0}$B(b,76284)|0;return}function ge(a){a=a|0;$B(a,76239)|0;$B(a,74409)|0;return}function he(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0;M=l;l=l+176|0;L=M+160|0;K=M+152|0;F=M+136|0;J=M+128|0;E=M+120|0;D=M+112|0;C=M+104|0;B=M+96|0;A=M+88|0;y=M+80|0;w=M+72|0;v=M+64|0;u=M+56|0;t=M+48|0;i=M+40|0;q=M+32|0;s=M+24|0;r=M+16|0;p=M+8|0;o=M;I=c[e+16>>2]|0;$B(e,73940)|0;switch(a[g+48>>0]|0){case 108:{$B(e,73946)|0;break}case 114:{$B(e,73967)|0;break}default:$B(e,73986)|0}H=f+8|0;G=+h[H>>3]+ +h[g+24>>3];h[H>>3]=G;H=I+260|0;if(!(b[H>>1]&512)){$B(e,74008)|0;gC(e,+h[f>>3]);$B(e,74013)|0;gC(e,-G);$B(e,95669)|0}x=g+4|0;f=c[x>>2]|0;n=c[f+8>>2]|0;if(n){switch(c[(c[(c[(c[e>>2]|0)+168>>2]|0)+16>>2]|0)+244>>2]|0){case 1:{m=n;f=n+16|0;i=n+8|0;break}case 2:{m=n+24|0;f=n+32|0;i=n+28|0;break}default:{m=n+4|0;f=n+16|0;i=n+8|0}}j=c[f>>2]|0;f=c[i>>2]|0;k=c[n+12>>2]|0;c[o>>2]=c[m>>2];fC(e,74019,o);i=c[n+24>>2]|0;if(i|0){c[p>>2]=i;fC(e,74036,p)}$B(e,95669)|0;if(f|0){c[r>>2]=f;fC(e,74040,r)}if(k|0){c[s>>2]=k;fC(e,74058,s)}if(!j)j=0;else{c[q>>2]=j;fC(e,74077,q)}}else{c[i>>2]=c[f>>2];fC(e,74094,i);j=0;f=0}i=c[x>>2]|0;if(i|0?(z=c[i+24>>2]|0,z&127|0):0){if(!((f|0)!=0|(z&1|0)==0))fC(e,74112,t);if(!((j|0)!=0|(z&2|0)==0))fC(e,74132,u);if(z&100|0){fC(e,74153,v);if(!(z&4))f=0;else{fC(e,102960,w);f=1}if(z&64){c[y>>2]=f|0?97973:191979;fC(e,74172,y);f=1}if(z&32|0){c[A>>2]=f|0?97973:191979;fC(e,74183,A)}fC(e,95669,B)}if(z&8|0)fC(e,74198,C);if(z&16|0)fC(e,74222,D)}h[E>>3]=+h[(c[x>>2]|0)+16>>3];fC(e,74244,E);f=I+16|0;switch(c[I+48>>2]|0){case 5:{f=c[f>>2]|0;if(O$(f,134232)|0){c[J>>2]=f;fC(e,74262,J)}break}case 1:{E=d[f+1>>0]|0;J=d[f+2>>0]|0;c[F>>2]=d[f>>0];c[F+4>>2]=E;c[F+8>>2]=J;fC(e,74273,F);break}default:qa(135312,73454,486,74295)}$B(e,74308)|0;if(b[H>>1]&512){c[K>>2]=qH(c[I+212>>2]|0)|0;fC(e,74310,K);$B(e,74359)|0;gC(e,-G);$B(e,74377)|0}$B(e,rH(c[g>>2]|0,1)|0)|0;if(b[H>>1]&512)fC(e,74380,L);$B(e,74400)|0;l=M;return}function ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;switch(c|0){case 2:{d=pe(a,b,2)|0;break}case 3:{d=qe(a)|0;break}default:d=0}$B(a,73904)|0;ne(a,c,d);$B(a,73913)|0;gC(a,+h[b>>3]);$B(a,73919)|0;c=b+8|0;gC(a,-+h[c>>3]);$B(a,73926)|0;gC(a,+h[b+16>>3]-+h[b>>3]);$B(a,73933)|0;gC(a,+h[b+24>>3]-+h[c>>3]);$B(a,73320)|0;return}function je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;switch(d|0){case 2:{e=pe(a,b,c)|0;break}case 3:{e=qe(a)|0;break}default:e=0}$B(a,73895)|0;ne(a,d,e);$B(a,73310)|0;e=0;while(1){if((e|0)>=(c|0))break;gC(a,+h[b+(e<<4)>>3]);$B(a,97973)|0;gC(a,-+h[b+(e<<4)+8>>3]);$B(a,99578)|0;e=e+1|0}gC(a,+h[b>>3]);$B(a,97973)|0;gC(a,-+h[b+8>>3]);$B(a,73320)|0;return}function ke(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;g=c[a+16>>2]|0;switch(h|0){case 2:{f=pe(a,d,e)|0;break}case 3:{f=qe(a)|0;break}default:f=0}$B(a,73490)|0;if(b[g+260>>1]&512){$B(a,73496)|0;$B(a,qH(c[g+212>>2]|0)|0)|0;$B(a,73502)|0}ne(a,h,f);$B(a,73507)|0;re(a,d,e);$B(a,73320)|0;return}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;$B(a,73300)|0;ne(a,0,0);$B(a,73310)|0;d=0;while(1){if((d|0)>=(c|0))break;gC(a,+h[b+(d<<4)>>3]);$B(a,97973)|0;gC(a,-+h[b+(d<<4)+8>>3]);$B(a,99578)|0;d=d+1|0}$B(a,73320)|0;return}function me(a,b){a=a|0;b=b|0;$B(a,73294)|0;$B(a,qH(b)|0)|0;$B(a,75354)|0;return}function ne(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+96|0;k=q+48|0;p=q+40|0;n=q+32|0;o=q+24|0;j=q+16|0;g=q+8|0;f=q;m=c[b+16>>2]|0;$B(b,73325)|0;a:do switch(d|0){case 2:{c[f>>2]=e;fC(b,73333,f);break}case 3:{c[g>>2]=e;fC(b,73344,g);break}case 0:{$B(b,132627)|0;break}default:{d=m+56|0;f=k;g=d;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);if((c[m+88>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:break a;default:{}}h[j>>3]=+(d&255)*.00392156862745098;fC(b,73355,j)}}}while(0);$B(b,73374)|0;e=m+16|0;f=k;g=e;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);d=m+152|0;if(+h[d>>3]!=1.0){$B(b,73385)|0;gC(b,+h[d>>3])}switch(c[m+144>>2]|0){case 1:{c[o>>2]=73425;fC(b,73402,o);break}case 2:{c[n>>2]=73429;fC(b,73402,n);break}default:{}}b:do if((c[m+48>>2]|0)==1){d=a[e+3>>0]|0;switch(d<<24>>24){case -1:case 0:break b;default:{}}h[p>>3]=+(d&255)*.00392156862745098;fC(b,73433,p)}while(0);$B(b,95669)|0;l=q;return}function oe(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;f=g;a:do switch(c[e+32>>2]|0){case 5:{$B(b,c[e>>2]|0)|0;break}case 1:if(!(a[e+3>>0]|0)){$B(b,134297)|0;break a}else{i=d[e+1>>0]|0;h=d[e+2>>0]|0;c[f>>2]=d[e>>0];c[f+4>>2]=i;c[f+8>>2]=h;fC(b,75610,f);break a}default:qa(135312,73454,117,73474)}while(0);l=g;return}function pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+112|0;o=t+64|0;r=t+56|0;n=t+48|0;m=t+40|0;i=t+32|0;k=t;q=c[45952]|0;c[45952]=q+1;p=c[b+16>>2]|0;f=+(c[p+136>>2]|0)*.017453292519943295;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;aN(d,k,e,f,0);c[o>>2]=q;fC(b,73727,o);$B(b,73792)|0;gC(b,+h[k>>3]);$B(b,73797)|0;gC(b,+h[k+8>>3]);$B(b,73804)|0;gC(b,+h[k+16>>3]);$B(b,73811)|0;gC(b,+h[k+24>>3]);$B(b,73818)|0;k=p+140|0;f=+g[k>>2];if(f>0.0){h[i>>3]=f+-.001;fC(b,73823,i)}else $B(b,73599)|0;d=p+56|0;e=o;i=d;j=e+40|0;do{c[e>>2]=c[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(j|0));oe(b,o);$B(b,73635)|0;a:do if((c[p+88>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{s=7;break a}default:{}}h[m>>3]=+(d&255)*.00392156862745098;fC(b,96586,m)}else s=7;while(0);if((s|0)==7)$B(b,73650)|0;$B(b,73653)|0;f=+g[k>>2];if(f>0.0){h[n>>3]=f;fC(b,73823,n)}else $B(b,73659)|0;d=p+96|0;e=o;i=d;j=e+40|0;do{c[e>>2]=c[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(j|0));oe(b,o);$B(b,73635)|0;b:do if((c[p+128>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{s=14;break b}default:{}}h[r>>3]=+(d&255)*.00392156862745098;fC(b,96586,r)}else s=14;while(0);if((s|0)==14)$B(b,73650)|0;$B(b,73863)|0;l=t;return q|0}function qe(b){b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+64|0;k=q+16|0;o=q+8|0;j=q;n=c[45951]|0;c[45951]=n+1;m=c[b+16>>2]|0;r=+(c[m+136>>2]|0)*.017453292519943295;e=r;if(r==0.0){f=50;d=50}else{f=~~((+E(+e)+1.0)*50.0);d=~~((1.0-+F(+e))*50.0)}c[k>>2]=n;c[k+4>>2]=f;c[k+8>>2]=d;fC(b,73515,k);$B(b,73599)|0;d=m+56|0;f=k;g=d;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);$B(b,73635)|0;a:do if((c[m+88>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{p=6;break a}default:{}}h[j>>3]=+(d&255)*.00392156862745098;fC(b,96586,j)}else p=6;while(0);if((p|0)==6)$B(b,73650)|0;$B(b,73653)|0;$B(b,73659)|0;d=m+96|0;f=k;g=d;i=f+40|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));oe(b,k);$B(b,73635)|0;b:do if((c[m+128>>2]|0)==1){d=a[d+3>>0]|0;switch(d<<24>>24){case -1:case 0:{p=10;break b}default:{}}h[o>>3]=+(d&255)*.00392156862745098;fC(b,96586,o)}else p=10;while(0);if((p|0)==10)$B(b,73650)|0;$B(b,73695)|0;l=q;return n|0}function re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;i=l;l=l+16|0;g=i;e=77;f=0;while(1){if((f|0)>=(d|0))break;c[g>>2]=e;fC(a,73512,g);gC(a,+h[b+(f<<4)>>3]);$B(a,97973)|0;gC(a,-+h[b+(f<<4)+8>>3]);e=(f|0)==0?67:32;f=f+1|0}l=i;return}function se(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;h=j;$B(b,74483)|0;$B(b,qH(d)|0)|0;if(e|0){c[h>>2]=qH(e)|0;fC(b,74491,h)}c[i>>2]=f;fC(b,74495,i);d=xx(g,74507)|0;if(d|0?a[d>>0]|0:0){$B(b,99578)|0;$B(b,qH(d)|0)|0}$B(b,95669)|0;l=j;return}function te(a){a=a|0;var b=0;$B(a,75314)|0;b=a+12|0;$B(a,De(c[c[c[b>>2]>>2]>>2]|0)|0)|0;$B(a,78077)|0;$B(a,De(c[(c[c[b>>2]>>2]|0)+4>>2]|0)|0)|0;$B(a,78087)|0;$B(a,De(c[(c[c[b>>2]>>2]|0)+8>>2]|0)|0)|0;$B(a,75330)|0;return}function ue(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=c[b+16>>2]|0;$B(b,75291)|0;d=d+8|0;if(a[(ry(c[d>>2]|0)|0)>>0]|0){$B(b,75293)|0;$B(b,De(ry(c[d>>2]|0)|0)|0)|0}c[e>>2]=O(c[b+168>>2]|0,c[b+164>>2]|0)|0;fC(b,75302,e);c[45953]=0;l=f;return}function ve(a){a=a|0;c[45953]=1;return}function we(a){a=a|0;c[45953]=-1;return}function xe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;i=n+8|0;m=n;f=c[b+16>>2]|0;if(c[f+144>>2]|0?(k=e+4|0,j=~~(+h[b+352>>3]*+h[(c[k>>2]|0)+16>>3]),j|0):0){Ee(b);$B(b,75230)|0;g=d+8|0;h[g>>3]=+h[g>>3]-+(j|0)*.55;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];iC(b,i);$B(b,75244)|0;$B(b,c[e>>2]|0)|0;$B(b,75253)|0;$B(b,75051)|0;g=i;d=f+16|0;f=g+40|0;do{c[g>>2]=c[d>>2];g=g+4|0;d=d+4|0}while((g|0)<(f|0));Fe(b,i);$B(b,75255)|0;i=c[k>>2]|0;k=c[i+8>>2]|0;k=c[((k|0)==0?i:k+4|0)>>2]|0;$B(b,95669)|0;$B(b,k)|0;$B(b,95669)|0;c[m>>2]=j;fC(b,75264,m);switch(a[e+48>>0]|0){case 108:{$B(b,75269)|0;break}case 114:{$B(b,75280)|0;break}default:{}}Ge(b);$B(b,150517)|0}l=n;return}function ye(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;f=j;g=c[a+16>>2]|0;i=g+144|0;if(c[i>>2]|0){n=+h[b>>3];m=+h[b+24>>3];e=b+8|0;k=+h[e>>3];h[b>>3]=n-+h[b+16>>3]+n;h[e>>3]=k-m+k;Ee(a);$B(a,75216)|0;jC(a,b,2);$B(a,75051)|0;do if(!d)if(!(c[45953]|0)){$B(a,94227)|0;break}else{$B(a,134116)|0;break}else{b=f;d=g+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f)}while(0);if((c[45953]|0)==1)c[45953]=0;$B(a,75162)|0;gC(a,+h[g+152>>3]);$B(a,75205)|0;b=f;d=g+16|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f);b=c[i>>2]|0;if((b|0)==1){$B(a,75059)|0;b=c[i>>2]|0}if((b|0)==2)$B(a,75068)|0;Ge(a);$B(a,150517)|0}l=j;return}function ze(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0;j=l;l=l+48|0;f=j;g=c[a+16>>2]|0;i=g+144|0;if(c[i>>2]|0){Ee(a);$B(a,75188)|0;jC(a,b,d);$B(a,75051)|0;do if(!e)if(!(c[45953]|0)){$B(a,94227)|0;break}else{$B(a,134116)|0;break}else{b=f;d=g+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f)}while(0);if((c[45953]|0)==1)c[45953]=0;$B(a,75162)|0;gC(a,+h[g+152>>3]);$B(a,75205)|0;b=f;d=g+16|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Fe(a,f);b=c[i>>2]|0;if((b|0)==1){$B(a,75059)|0;b=c[i>>2]|0}if((b|0)==2)$B(a,75068)|0;Ge(a);$B(a,150517)|0}l=j;return}function Ae(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0;m=l;l=l+48|0;i=m;j=c[a+16>>2]|0;k=j+144|0;if(c[k>>2]|0){Ee(a);$B(a,75037)|0;jC(a,b,d);$B(a,75051)|0;e=i;f=j+16|0;g=e+40|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));Fe(a,i);$B(a,75162)|0;gC(a,+h[j+152>>3]);e=c[k>>2]|0;if((e|0)==1){$B(a,75059)|0;e=c[k>>2]|0}if((e|0)==2)$B(a,75068)|0;$B(a,75171)|0;Ge(a);$B(a,150517)|0}l=m;return}function Be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;g=i;e=c[a+16>>2]|0;h=e+144|0;if(c[h>>2]|0){Ee(a);$B(a,75037)|0;jC(a,b,d);$B(a,75051)|0;f=g;b=e+16|0;d=f+40|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(d|0));Fe(a,g);b=c[h>>2]|0;if((b|0)==1){$B(a,75059)|0;b=c[h>>2]|0}if((b|0)==2)$B(a,75068)|0;Ge(a);$B(a,150517)|0}l=i;return}function Ce(a,b){a=a|0;b=b|0;$B(a,75034)|0;$B(a,De(b)|0)|0;$B(a,150517)|0;return}function De(a){a=a|0;return a|0}function Ee(b){b=b|0;if(!(a[b+144>>0]|0))$B(b,75159)|0;else $B(b,c[b+148>>2]|0)|0;return}function Fe(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;f=g;a:do switch(c[e+32>>2]|0){case 5:{$B(b,c[e>>2]|0)|0;break}case 1:if(!(a[e+3>>0]|0)){$B(b,94227)|0;break a}else{i=d[e+1>>0]|0;h=d[e+2>>0]|0;c[f>>2]=d[e>>0];c[f+4>>2]=i;c[f+8>>2]=h;fC(b,75610,f);break a}default:qa(135312,75077,49,75141)}while(0);l=g;return}function Ge(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=c[a+16>>2]|0;switch(c[f+12>>2]|0){case 8:{b=1;d=108399;e=f+8|0;break}case 10:{b=0;d=108399;e=f+8|0;break}case 3:case 2:case 9:{b=1;d=108368;e=f+8|0;break}case 7:case 6:case 11:{b=0;d=108368;e=f+8|0;break}case 0:{b=1;d=108412;e=f+8|0;break}case 4:{b=0;d=75113;e=f+8|0;break}case 1:{b=1;d=108412;e=f+8|0;break}case 5:{b=0;d=108412;e=f+8|0;break}default:qa(135312,75077,106,75096)}f=c[(c[e>>2]|0)+8>>2]|0;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=f;fC(a,75125,g);l=h;return}function He(a){a=a|0;var b=0;$B(a,78049)|0;$B(a,78057)|0;b=a+12|0;$B(a,Se(c[c[c[b>>2]>>2]>>2]|0)|0)|0;$B(a,78077)|0;$B(a,Se(c[(c[c[b>>2]>>2]|0)+4>>2]|0)|0)|0;$B(a,78087)|0;$B(a,Se(c[(c[c[b>>2]>>2]|0)+8>>2]|0)|0)|0;$B(a,78090)|0;return}function Ie(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+32|0;i=j+24|0;g=j+16|0;f=j+8|0;e=j;d=c[b+16>>2]|0;c[45957]=~~(+h[b+232>>3]-+h[b+216>>3]);c[45956]=~~(+h[b+224>>3]-+h[b+208>>3]);$B(b,76736)|0;$B(b,76743)|0;d=ry(c[d+8>>2]|0)|0;if(a[d>>0]|0){$B(b,76812)|0;$B(b,Se(d)|0)|0;$B(b,76820)|0}c[e>>2]=O(c[b+168>>2]|0,c[b+164>>2]|0)|0;fC(b,76829,e);$B(b,76849)|0;$B(b,76884)|0;$B(b,76912)|0;$B(b,76918)|0;$B(b,76961)|0;$B(b,77002)|0;$B(b,77021)|0;$B(b,77038)|0;$B(b,77086)|0;$B(b,77139)|0;$B(b,77215)|0;$B(b,77291)|0;$B(b,77300)|0;$B(b,77323)|0;$B(b,77350)|0;$B(b,77403)|0;$B(b,77425)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77492)|0;$B(b,77518)|0;$B(b,77403)|0;$B(b,77570)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77614)|0;$B(b,77323)|0;$B(b,77350)|0;$B(b,77403)|0;$B(b,77570)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77492)|0;$B(b,77518)|0;$B(b,77403)|0;$B(b,77425)|0;$B(b,77470)|0;$B(b,77482)|0;$B(b,77627)|0;$B(b,77635)|0;$B(b,77641)|0;$B(b,77655)|0;$B(b,77663)|0;$B(b,77696)|0;e=(c[45957]|0)+10|0;c[f>>2]=c[45956];c[f+4>>2]=e;fC(b,77773,f);$B(b,77803)|0;$B(b,77812)|0;$B(b,77870)|0;$B(b,77880)|0;$B(b,77945)|0;f=c[45957]|0;c[g>>2]=c[45956];c[g+4>>2]=f;fC(b,77982,g);g=c[45957]|0;c[i>>2]=c[45956];c[i+4>>2]=g;fC(b,78010,i);l=j;return}function Je(a){a=a|0;$B(a,76287)|0;$B(a,76299)|0;$B(a,76307)|0;$B(a,76370)|0;$B(a,76299)|0;$B(a,76415)|0;$B(a,76464)|0;$B(a,76518)|0;$B(a,76299)|0;$B(a,76618)|0;$B(a,76667)|0;$B(a,76299)|0;$B(a,76719)|0;return}function Ke(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=l;l=l+32|0;i=j+16|0;h=j+8|0;g=j;$B(b,76245)|0;if(d|0?a[d>>0]|0:0){c[g>>2]=Se(d)|0;fC(b,76248,g)}if(e|0?a[e>>0]|0:0){c[h>>2]=Se(e)|0;fC(b,76259,h)}if(f|0?a[f>>0]|0:0){c[i>>2]=Se(f)|0;fC(b,76271,i)}$B(b,76284)|0;l=j;return}function Le(a){a=a|0;$B(a,76239)|0;return}function Me(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0;A=l;l=l+112|0;y=A+96|0;z=A+88|0;w=A+80|0;q=A+72|0;v=A+64|0;t=A+56|0;s=A+48|0;r=A+40|0;p=A+24|0;o=A+8|0;n=A;x=c[b+16>>2]|0;switch(a[f+48>>0]|0){case 108:{j=+h[e>>3];m=+h[f+32>>3];break}case 114:{m=+h[f+32>>3];j=+h[e>>3]-m;break}default:{m=+h[f+32>>3];j=+h[e>>3]-m*.5}}g=f+40|0;i=+h[g>>3];u=f+4|0;k=+h[(c[u>>2]|0)+16>>3];if(i>3]=i}B=j+-8.0;k=+((c[45957]|0)>>>0)-+h[e+8>>3]-i+k*.2+(k<12.0?1.4:2.0);fC(b,75901,n);h[o>>3]=B;h[o+8>>3]=k;fC(b,75838,o);h[p>>3]=j+8.0+m-B;h[p+8>>3]=i;fC(b,75862,p);$B(b,75936)|0;$B(b,75970)|0;g=c[u>>2]|0;e=c[g+8>>2]|0;if(e){c[r>>2]=c[e+4>>2];fC(b,76060,r);g=c[e+8>>2]|0;if(g|0){c[s>>2]=g;fC(b,76079,s)}g=c[e+12>>2]|0;if(g|0){c[t>>2]=g;fC(b,76096,t)}g=c[e+16>>2]|0;if(g|0){c[v>>2]=g;fC(b,76114,v)}}else{c[q>>2]=c[g>>2];fC(b,76060,q)}h[w>>3]=+h[(c[u>>2]|0)+16>>3];fC(b,76130,w);g=x+16|0;switch(c[x+48>>2]|0){case 5:{g=c[g>>2]|0;if(O$(g,134232)|0){c[z>>2]=g;fC(b,76150,z)}break}case 1:{x=d[g+1>>0]|0;z=d[g+2>>0]|0;c[y>>2]=d[g>>0];c[y+4>>2]=x;c[y+8>>2]=z;fC(b,76160,y);break}default:qa(135312,75624,438,76181)}$B(b,76194)|0;$B(b,Se(c[f>>2]|0)|0)|0;$B(b,76205)|0;$B(b,76228)|0;l=A;return}function Ne(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0,k=0.0,m=0.0;e=l;l=l+32|0;f=e+16|0;j=e;$B(a,75802)|0;m=+h[b>>3];i=+h[b+16>>3]-m;k=+h[b+24>>3];g=k-+h[b+8>>3];k=+((c[45957]|0)>>>0)-k;h[j>>3]=m-i;h[j+8>>3]=k;fC(a,75838,j);h[f>>3]=i*2.0;h[f+8>>3]=g*2.0;fC(a,75862,f);We(a,d);$B(a,75684)|0;Ue(a);$B(a,75890)|0;l=e;return}function Oe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+24|0;j=m+8|0;g=m;$B(a,75407)|0;n=c[45957]|0;c[g>>2]=c[45956];c[g+4>>2]=n;fC(a,75660,g);We(a,e);$B(a,75684)|0;Ue(a);$B(a,75687)|0;g=d+-1|0;e=0;while(1){if((e|0)>=(d|0))break;i=+h[b+(e<<4)>>3];f=+((c[45957]|0)>>>0)-+h[b+(e<<4)+8>>3];if(!e){$B(a,75714)|0;h[j>>3]=i;h[j+8>>3]=f;fC(a,75780,j);$B(a,75791)|0}else{h[k>>3]=i;h[k+8>>3]=f;fC(a,75780,k)}if((e|0)==(g|0))$B(a,75794)|0;e=e+1|0}$B(a,75523)|0;l=m;return}function Pe(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;f=l;l=l+16|0;e=f;$B(a,75407)|0;h=c[45957]|0;c[e>>2]=c[45956];c[e+4>>2]=h;fC(a,75660,e);We(a,g);$B(a,75684)|0;Ue(a);$B(a,75687)|0;Xe(a,b,d);$B(a,75700)|0;l=f;return}function Qe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0.0;k=l;l=l+48|0;j=k+24|0;i=k+8|0;f=k;$B(a,75407)|0;g=c[45957]|0;c[f>>2]=c[45956];c[f+4>>2]=g;fC(a,75444,f);$B(a,75484)|0;f=d+-1|0;g=b+8|0;e=0;while(1){if((e|0)>=(d|0))break;if(!e){$B(a,75496)|0;m=+((c[45957]|0)>>>0)-+h[g>>3];h[i>>3]=+h[b>>3];h[i+8>>3]=m;fC(a,75500,i);$B(a,75511)|0}else{m=+((c[45957]|0)>>>0)-+h[b+(e<<4)+8>>3];h[j>>3]=+h[b+(e<<4)>>3];h[j+8>>3]=m;fC(a,75500,j)}if((e|0)==(f|0))$B(a,75515)|0;e=e+1|0}$B(a,75519)|0;Ue(a);$B(a,75523)|0;l=k;return}function Re(a,b){a=a|0;b=b|0;$B(a,75342)|0;$B(a,Se(b)|0)|0;$B(a,75354)|0;return}function Se(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;e=u;d=c[45954]|0;if(!d){c[45955]=64;d=vH(64)|0;c[45954]=d}s=e+15|0;r=e+14|0;g=0;q=0;o=0;e=0;f=0;a:while(1){n=(o|0)!=0;k=g;p=b;j=e;b:while(1){if(!p){t=32;break a}e=a[p>>0]|0;if(!(e<<24>>24)){t=32;break a}b=c[45955]|0;if((q|0)>(b+-8|0)){d=b<<1;c[45955]=d;d=xH(c[45954]|0,d)|0;c[45954]=d;d=d+q|0;e=a[p>>0]|0}switch(e<<24>>24){case 60:{e=4;b=99127;t=26;break b}case 62:{e=4;b=99110;t=27;break b}case 38:{t=10;break b}case 45:{e=5;b=99121;i=j;break b}default:{}}if(n&e<<24>>24==32){t=12;break}switch(e<<24>>24){case 34:{e=6;b=99090;t=26;break b}case 39:{e=5;b=99115;t=27;break b}default:{}}if(e<<24>>24<0){i=127;b=0}else{e=1;b=p;t=26;break}while(1){g=i&255;h=e&255;if(g>>>0>=h>>>0)break;e=i&h&255;i=g>>>1;b=b+1|0}if((b|0)<=1){g=A3(j|0,f|0,6)|0;g=s3(g|0,z|0,e&255|0,0)|0;f=z;m=k+-1|0;if((k|0)>1){b=m;e=g}else{t=21;break}}else{b=b+-1|0;e=e&255;f=0}k=b;p=p+1|0;j=e}if((t|0)==10){t=0;b=(Te(p)|0)==0;e=b?5:1;b=b?99104:p;i=j}else if((t|0)==12){t=0;b=(a[o>>0]|0)==32;e=b?6:1;b=b?99097:p;i=j}else if((t|0)==21){t=0;a[s>>0]=59;e=3;h=r;i=g;j=f;while(1){b=x3(i|0,j|0,10,0)|0;g=h+-1|0;a[h>>0]=b|48;b=i;i=w3(i|0,j|0,10,0)|0;f=j;j=z;o=e;e=e+1|0;if((o|0)>11){t=23;break a}if(!(f>>>0>0|(f|0)==0&b>>>0>9))break;else h=g}b=h+-2|0;a[g>>0]=35;a[b>>0]=38;k=m;f=j}else if((t|0)==26){t=0;i=j}else if((t|0)==27){t=0;i=j}h=d+e|0;g=e;while(1){if(!g)break;a[d>>0]=a[b>>0]|0;g=g+-1|0;b=b+1|0;d=d+1|0}g=k;b=p+1|0;q=e+q|0;o=p;d=h;e=i}if((t|0)==23){E1(75360,46,1,c[15686]|0)|0;Sa(1)}else if((t|0)==32){a[d>>0]=0;l=u;return c[45954]|0}return 0}function Te(b){b=b|0;var c=0,d=0;d=b+1|0;c=a[d>>0]|0;a:do if(c<<24>>24==35){d=b+2|0;c=a[d>>0]|0;switch(c<<24>>24){case 88:case 120:break;default:{b=d;while(1){d=b+1|0;if((c+-48&255)>=10)break a;b=d;c=a[d>>0]|0}}}d=b+3|0;while(1){c=a[d>>0]|0;if((c+-48&255)>=10)switch(c<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:break a}d=d+1|0}}else while(1){b=d+1|0;if(((c&-33)+-65&255)>=26)break a;d=b;c=a[b>>0]|0}while(0);return c<<24>>24==59|0}function Ue(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;k=l;l=l+48|0;d=k+8|0;j=k;i=c[a+16>>2]|0;$B(a,75535)|0;e=d;f=i+16|0;g=e+40|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));Ve(a,d);b=+h[i+152>>3];if(b!=1.0){h[j>>3]=b;fC(a,75553,j)}switch(c[i+144>>2]|0){case 1:{$B(a,75570)|0;break}case 2:{$B(a,75588)|0;break}default:{}}$B(a,75605)|0;l=k;return}function Ve(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;g=l;l=l+16|0;f=g;a:do switch(c[e+32>>2]|0){case 5:{$B(b,c[e>>2]|0)|0;break}case 1:if(!(a[e+3>>0]|0)){$B(b,132627)|0;break a}else{i=d[e+1>>0]|0;h=d[e+2>>0]|0;c[f>>2]=d[e>>0];c[f+4>>2]=i;c[f+8>>2]=h;fC(b,75610,f);break a}default:qa(135312,75624,94,75644)}while(0);l=g;return}function We(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g;if(!b)$B(a,75763)|0;else{d=c[a+16>>2]|0;$B(a,75733)|0;b=f;d=d+56|0;e=b+40|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));Ve(a,f);$B(a,75760)|0}l=g;return}function Xe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0;i=l;l=l+32|0;g=i;e=75714;f=0;while(1){if((f|0)>=(d|0))break;k=+h[b+(f<<4)>>3];j=+((c[45957]|0)>>>0)-+h[b+(f<<4)+8>>3];c[g>>2]=e;h[g+8>>3]=k;h[g+16>>3]=j;fC(a,75717,g);e=(f|0)==0?75730:191979;f=f+1|0}$B(a,95669)|0;l=i;return}function Ye(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;$B(a,80347)|0;$B(a,80362)|0;$B(a,80401)|0;$B(a,80450)|0;c[e>>2]=134232;c[e+4>>2]=80538;fC(a,80519,e);c[d>>2]=134116;c[d+4>>2]=80544;fC(a,80519,d);l=b;return}function Ze(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0;b=l;l=l+64|0;d=b+8|0;j=b;c[j>>2]=ry(c[(c[a+16>>2]|0)+8>>2]|0)|0;fC(a,79300,j);i=+h[a+368>>3]*.5*+h[a+488>>3];g=+h[a+376>>3]*.5*+h[a+496>>3];f=+J(+(i*2.0000000949949026e-03))*180.0*.6366197723675814;e=+J(+(g*2.0000000949949026e-03))*180.0*.6366197723675814;h[d>>3]=i;h[d+8>>3]=g;h[d+16>>3]=-500.0;h[d+24>>3]=i;h[d+32>>3]=g;h[d+40>>3]=0.0;h[d+48>>3]=(f>e?f:e)*1.2;fC(a,79322,d);$B(a,79469)|0;$B(a,80299)|0;l=b;return}function _e(a){a=a|0;$B(a,79283)|0;return}function $e(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0;f=l;l=l+16|0;h=f;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=e;fC(a,79253,h);g[45958]=+(O(d,-10)|0);l=f;return}function af(a){a=a|0;$B(a,79236)|0;return}function bf(a){a=a|0;$B(a,79218)|0;return}function cf(a){a=a|0;$B(a,79202)|0;return}function df(a){a=a|0;$B(a,79181)|0;g[45958]=+g[45958]+-2.0;return}function ef(a){a=a|0;$B(a,79162)|0;return}function ff(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=ry(c[(c[a+16>>2]|0)+8>>2]|0)|0;fC(a,79140,d);l=b;return}function gf(a){a=a|0;$B(a,79124)|0;return}function hf(a){a=a|0;$B(a,79106)|0;g[45958]=+g[45958]+-5.0;return}function jf(a){a=a|0;$B(a,79090)|0;g[45958]=+g[45958]+5.0;return}function kf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0;r=l;l=l+144|0;o=r+104|0;q=r+56|0;m=r+32|0;j=r+24|0;n=r;p=e+4|0;i=c[p>>2]|0;f=+h[i+16>>3];i=c[i>>2]|0;c[n>>2]=c[e>>2];h[n+8>>3]=f;c[n+16>>2]=i;fC(b,78936,n);g[45959]=+g[45958]+-9.0;switch(a[e+48>>0]|0){case 108:{f=+h[d>>3];break}case 114:{i=d;f=+h[d>>3]-+h[e+32>>3];k=5;break}default:{i=d;f=+h[d>>3]-+h[e+32>>3]*.5;k=5}}if((k|0)==5)h[i>>3]=f;u=+h[b+488>>3];t=(+h[b+504>>3]+f)*u;s=(+h[b+512>>3]+ +h[d+8>>3])*+h[b+496>>3];h[j>>3]=+h[(c[p>>2]|0)+16>>3]*u;n=qf(b,78988,j)|0;f=+(c[b+360>>2]|0);h[m>>3]=0.0;h[m+8>>3]=0.0;h[m+16>>3]=f;i=qf(b,78205,m)|0;f=+g[45959];h[o>>3]=t;h[o+8>>3]=s;h[o+16>>3]=f;d=qf(b,78237,o)|0;j=o;k=(c[b+16>>2]|0)+16|0;m=j+40|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(m|0));o=rf(b,o,0.0)|0;e=c[e>>2]|0;c[q>>2]=c[c[p>>2]>>2];h[q+8>>3]=.25;h[q+16>>3]=0.0;c[q+24>>2]=e;c[q+28>>2]=79075;c[q+32>>2]=n;c[q+36>>2]=i;c[q+40>>2]=d;c[q+44>>2]=o;q=qf(b,79e3,q)|0;$B(b,q)|0;D_(q);D_(i);D_(o);D_(d);D_(n);l=r;return}function lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;z=l;l=l+240|0;x=z+192|0;y=z+152|0;t=z+128|0;r=z+104|0;o=z+80|0;n=z+48|0;e=z+24|0;m=z;$B(a,78813)|0;g[45959]=+g[45958]+-6.0;i=+h[b>>3];j=+h[a+488>>3];p=(+h[a+504>>3]+i)*j;A=+h[b+8>>3];k=+h[a+496>>3];q=(+h[a+512>>3]+A)*k;j=(+h[b+16>>3]-i)*j;k=(+h[b+24>>3]-A)*k;s=a+16|0;A=k+j;i=+h[(c[s>>2]|0)+152>>3]/A*2.5;h[m>>3]=j;h[m+8>>3]=A*.25;h[m+16>>3]=k;b=qf(a,78173,m)|0;m=a+360|0;A=+(c[m>>2]|0);h[e>>3]=90.0;h[e+8>>3]=0.0;h[e+16>>3]=A;e=qf(a,78205,e)|0;A=+g[45959];h[x>>3]=p;h[x+8>>3]=q;h[x+16>>3]=A;f=qf(a,78237,x)|0;u=x;v=(c[s>>2]|0)+16|0;w=u+40|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));v=rf(a,x,0.0)|0;h[n>>3]=1.0;h[n+8>>3]=i;c[n+16>>2]=b;c[n+20>>2]=e;c[n+24>>2]=f;c[n+28>>2]=v;w=qf(a,78828,n)|0;$B(a,w)|0;D_(b);D_(e);D_(f);D_(v);D_(w);if(d|0){h[o>>3]=j;h[o+8>>3]=k;h[o+16>>3]=1.0;f=qf(a,78173,o)|0;A=+(c[m>>2]|0);h[r>>3]=0.0;h[r+8>>3]=0.0;h[r+16>>3]=A;e=qf(a,78205,r)|0;A=+g[45959];h[t>>3]=p;h[t+8>>3]=q;h[t+16>>3]=A;b=qf(a,78237,t)|0;u=x;v=(c[s>>2]|0)+56|0;w=u+40|0;do{c[u>>2]=c[v>>2];u=u+4|0;v=v+4|0}while((u|0)<(w|0));x=rf(a,x,0.0)|0;h[y>>3]=0.0;h[y+8>>3]=0.0;h[y+16>>3]=0.0;c[y+24>>2]=f;c[y+28>>2]=e;c[y+32>>2]=b;c[y+36>>2]=x;y=qf(a,78874,y)|0;$B(a,y)|0;D_(f);D_(e);D_(b);D_(x);D_(y)}l=z;return}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0.0;K=l;l=l+336|0;B=K+296|0;J=K+288|0;I=K+272|0;H=K+264|0;G=K+240|0;D=K+232|0;A=K+208|0;z=K+184|0;w=K+160|0;v=K+152|0;u=K+136|0;t=K+128|0;s=K+96|0;r=K+88|0;q=K+56|0;f=K+48|0;m=K+24|0;k=K;$B(a,78678)|0;g[45959]=+g[45958]+-2.0;o=a+488|0;p=a+496|0;L=+h[p>>3];h[k>>3]=+h[o>>3];h[k+8>>3]=L;h[k+16>>3]=1.0;k=qf(a,78173,k)|0;y=a+360|0;L=+(c[y>>2]|0);h[m>>3]=0.0;h[m+8>>3]=0.0;h[m+16>>3]=L;m=qf(a,78205,m)|0;L=+g[45959]+-2.0;h[B>>3]=0.0;h[B+8>>3]=0.0;h[B+16>>3]=L;n=qf(a,78237,B)|0;C=a+16|0;i=B;j=(c[C>>2]|0)+16|0;x=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(x|0));j=rf(a,B,0.0)|0;c[f>>2]=78300;c[f+4>>2]=d+1;E=a+504|0;F=a+512|0;i=0;f=qf(a,78269,f)|0;while(1){if((i|0)>=(d|0))break;N=+h[F>>3]+ +h[b+(i<<4)+8>>3];L=+h[(c[C>>2]|0)+152>>3];h[q>>3]=+h[E>>3]+ +h[b+(i<<4)>>3];h[q+8>>3]=N;h[q+16>>3]=0.0;h[q+24>>3]=L;M=qf(a,78314,q)|0;c[r>>2]=f;c[r+4>>2]=M;x=qf(a,78343,r)|0;D_(M);D_(f);i=i+1|0;f=x}L=+h[F>>3]+ +h[b+8>>3];N=+h[(c[C>>2]|0)+152>>3];h[s>>3]=+h[E>>3]+ +h[b>>3];h[s+8>>3]=L;h[s+16>>3]=0.0;h[s+24>>3]=N;x=qf(a,78314,s)|0;c[t>>2]=f;c[t+4>>2]=x;M=qf(a,78343,t)|0;D_(x);D_(f);c[u>>2]=k;c[u+4>>2]=m;c[u+8>>2]=n;c[u+12>>2]=j;x=qf(a,78693,u)|0;c[v>>2]=M;c[v+4>>2]=x;M=qf(a,78398,v)|0;D_(x);$B(a,M)|0;D_(k);D_(m);D_(n);D_(j);D_(M);if(e|0){N=+h[p>>3];h[w>>3]=+h[o>>3];h[w+8>>3]=N;h[w+16>>3]=1.0;n=qf(a,78173,w)|0;N=+(c[y>>2]|0);h[z>>3]=0.0;h[z+8>>3]=0.0;h[z+16>>3]=N;m=qf(a,78205,z)|0;N=+g[45959]+-2.0;h[A>>3]=0.0;h[A+8>>3]=0.0;h[A+16>>3]=N;k=qf(a,78237,A)|0;i=B;j=(c[C>>2]|0)+56|0;x=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(x|0));j=rf(a,B,.25)|0;c[D>>2]=d;i=0;f=qf(a,78738,D)|0;while(1){if((i|0)>=(d|0))break;N=+h[F>>3]+ +h[b+(i<<4)+8>>3];h[G>>3]=+h[E>>3]+ +h[b+(i<<4)>>3];h[G+8>>3]=N;h[G+16>>3]=0.0;D=qf(a,78753,G)|0;c[H>>2]=f;c[H+4>>2]=D;M=qf(a,78775,H)|0;D_(D);D_(f);i=i+1|0;f=M}c[I>>2]=n;c[I+4>>2]=m;c[I+8>>2]=k;c[I+12>>2]=j;I=qf(a,78785,I)|0;c[J>>2]=f;c[J+4>>2]=I;M=qf(a,78398,J)|0;D_(I);$B(a,M)|0;D_(n);D_(m);D_(k);D_(j);D_(M)}l=K;return}function nf(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0;B=l;l=l+208|0;e=B+160|0;A=B+152|0;z=B+136|0;y=B+128|0;x=B+96|0;w=B+88|0;v=B+56|0;k=B+48|0;s=B+24|0;r=B;$B(a,78605)|0;g[45959]=+g[45958]+-4.0;C=+h[a+496>>3];h[r>>3]=+h[a+488>>3];h[r+8>>3]=C;h[r+16>>3]=1.0;r=qf(a,78173,r)|0;C=+(c[a+360>>2]|0);h[s>>3]=0.0;h[s+8>>3]=0.0;h[s+16>>3]=C;s=qf(a,78205,s)|0;C=+g[45959]+-2.0;h[e>>3]=0.0;h[e+8>>3]=0.0;h[e+16>>3]=C;t=qf(a,78237,e)|0;u=a+16|0;f=e;i=(c[u>>2]|0)+56|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));n=rf(a,e,0.0)|0;c[k>>2]=78619;c[k+4>>2]=d+2;o=a+504|0;p=a+512|0;q=d+-1|0;m=0;e=qf(a,78269,k)|0;while(1){if((m|0)>=(d|0))break;f=b+(m<<4)|0;i=b+(m<<4)+8|0;D=+h[p>>3]+ +h[i>>3];C=+h[(c[u>>2]|0)+152>>3];h[v>>3]=+h[o>>3]+ +h[f>>3];h[v+8>>3]=D;h[v+16>>3]=0.0;h[v+24>>3]=C;k=qf(a,78314,v)|0;c[w>>2]=e;c[w+4>>2]=k;j=qf(a,78343,w)|0;D_(k);D_(e);if((m|0)==0|(m|0)==(q|0)){C=+h[p>>3]+ +h[i>>3];D=+h[(c[u>>2]|0)+152>>3];h[x>>3]=+h[o>>3]+ +h[f>>3];h[x+8>>3]=C;h[x+16>>3]=0.0;h[x+24>>3]=D;k=qf(a,78314,x)|0;c[y>>2]=j;c[y+4>>2]=k;e=qf(a,78343,y)|0;D_(k);D_(j)}else e=j;m=m+1|0}c[z>>2]=r;c[z+4>>2]=s;c[z+8>>2]=t;c[z+12>>2]=n;b=qf(a,78628,z)|0;c[A>>2]=e;c[A+4>>2]=b;d=qf(a,78398,A)|0;D_(b);$B(a,d)|0;D_(r);D_(s);D_(t);D_(n);D_(d);l=B;return}function of(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0.0;v=l;l=l+160|0;e=v+120|0;u=v+112|0;t=v+96|0;s=v+88|0;r=v+56|0;m=v+48|0;n=v+24|0;q=v;$B(a,78157)|0;g[45959]=+g[45958]+-6.0;w=+h[a+496>>3];h[q>>3]=+h[a+488>>3];h[q+8>>3]=w;h[q+16>>3]=1.0;q=qf(a,78173,q)|0;w=+(c[a+360>>2]|0);h[n>>3]=0.0;h[n+8>>3]=0.0;h[n+16>>3]=w;n=qf(a,78205,n)|0;w=+g[45959];h[e>>3]=0.0;h[e+8>>3]=0.0;h[e+16>>3]=w;o=qf(a,78237,e)|0;p=a+16|0;f=e;i=(c[p>>2]|0)+16|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));i=rf(a,e,0.0)|0;c[m>>2]=78300;c[m+4>>2]=d;j=a+504|0;k=a+512|0;f=0;e=qf(a,78269,m)|0;while(1){if((f|0)>=(d|0))break;y=+h[k>>3]+ +h[b+(f<<4)+8>>3];w=+h[(c[p>>2]|0)+152>>3];h[r>>3]=+h[j>>3]+ +h[b+(f<<4)>>3];h[r+8>>3]=y;h[r+16>>3]=0.0;h[r+24>>3]=w;x=qf(a,78314,r)|0;c[s>>2]=e;c[s+4>>2]=x;m=qf(a,78343,s)|0;D_(x);D_(e);f=f+1|0;e=m}c[t>>2]=q;c[t+4>>2]=n;c[t+8>>2]=o;c[t+12>>2]=i;t=qf(a,78352,t)|0;c[u>>2]=e;c[u+4>>2]=t;x=qf(a,78398,u)|0;D_(t);$B(a,x)|0;D_(q);D_(n);D_(o);D_(i);D_(x);l=v;return}function pf(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fC(a,78138,e);l=d;return}function qf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+1056|0;h=i;e=i+24|0;f=i+8|0;c[f>>2]=d;g=q0(e,1024,b,f)|0;do if((g|0)>=0)if((g|0)>1023){a=C_(g+1|0)|0;c[f>>2]=d;Z0(a,b,f)|0;break}else{a=n1(e)|0;break}else{a=c[(c[a+12>>2]|0)+16>>2]|0;c[h>>2]=c$(c[(O_()|0)>>2]|0)|0;ub[a&63](78583,h);a=n1(191979)|0}while(0);l=i;return a|0}function rf(a,b,e){a=a|0;b=b|0;e=+e;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0;q=l;l=l+112|0;o=q+104|0;j=q+96|0;i=q+64|0;n=q+48|0;p=q+32|0;m=q+16|0;k=q;g=c[b+32>>2]|0;a:do switch(g|0){case 5:{f=c[b>>2]|0;if(!(b$(f,133220)|0)){c[k>>2]=78420;h[k+8>>3]=e;f=qf(a,78403,k)|0;break a}if(!(b$(f,130350)|0)){c[m>>2]=78424;h[m+8>>3]=e;f=qf(a,78403,m)|0;break a}if(!(b$(f,128349)|0)){c[p>>2]=78430;h[p+8>>3]=e;f=qf(a,78403,p)|0;break a}else{c[n>>2]=f;h[n+8>>3]=e;f=qf(a,78403,n)|0;break a}}case 1:{s=+(d[b+1>>0]|0)*.00390625;r=+(d[b+2>>0]|0)*.00390625;h[i>>3]=+(d[b>>0]|0)*.00390625;h[i+8>>3]=s;h[i+16>>3]=r;h[i+24>>3]=e;f=qf(a,78435,i)|0;break}default:{p=c[15686]|0;n=c[b>>2]|0;c[j>>2]=g;c[j+4>>2]=n;g1(p,78474,j)|0;qa(135312,78524,436,78544)}}while(0);c[o>>2]=f;p=qf(a,78561,o)|0;D_(f);l=q;return p|0}function sf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;g=b;f=c[a+16>>2]|0;h=c[c[a+12>>2]>>2]|0;j=c[h>>2]|0;i=c[h+4>>2]|0;h=c[h+8>>2]|0;c[g>>2]=80990;c[g+4>>2]=j;c[g+8>>2]=i;c[g+12>>2]=h;fC(a,83609,g);f=ry(c[f+8>>2]|0)|0;c[e>>2]=80990;c[e+4>>2]=f;fC(a,83641,e);c[d>>2]=80990;fC(a,83655,d);l=b;return}function tf(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=80990;fC(a,83557,d);l=b;return}function uf(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,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;W=l;l=l+304|0;V=W+296|0;U=W+288|0;T=W+272|0;R=W+264|0;Q=W+256|0;P=W+248|0;O=W+240|0;N=W+232|0;M=W+224|0;L=W+216|0;K=W+208|0;J=W+200|0;I=W+192|0;H=W+184|0;G=W+176|0;F=W+168|0;E=W+160|0;C=W+152|0;A=W+144|0;z=W+136|0;y=W+128|0;x=W+120|0;w=W+112|0;v=W+104|0;u=W+96|0;t=W+88|0;s=W+80|0;r=W+72|0;q=W+64|0;p=W+56|0;o=W+48|0;S=W+40|0;B=W+24|0;n=W+16|0;m=W;g=c[a+456>>2]|0;i=c[a+460>>2]|0;j=c[a+464>>2]|0;k=c[a+468>>2]|0;f=a+360|0;a:do if(c[4025]|0){switch(c[f>>2]|0){case 90:case 0:break a;default:{}}Gf();c[4025]=0}while(0);e=(+(k|0)-+(i|0))*.013888888888888888;b=(+(j|0)-+(g|0))*.013888888888888888;k=(c[f>>2]|0)==90;d=k?e:b;e=k?b:e;h[m>>3]=d;h[m+8>>3]=e;fC(a,81177,m);c[n>>2]=80990;fC(a,81192,n);if(d>0.0){b=+j$(d);h[18829]=b;b=b+3.0-+(~~b|0)}else b=3.0;b=+D(10.0,+b);h[18829]=b;h[B>>3]=b;h[B+8>>3]=b;fC(a,81361,B);c[S>>2]=80990;fC(a,81396,S);c[o>>2]=80990;fC(a,81454,o);c[p>>2]=80990;fC(a,81514,p);c[q>>2]=80990;fC(a,81563,q);c[r>>2]=80990;fC(a,81602,r);c[s>>2]=80990;fC(a,81653,s);c[t>>2]=80990;fC(a,81715,t);c[u>>2]=80990;fC(a,81825,u);c[v>>2]=80990;fC(a,81916,v);c[w>>2]=80990;fC(a,81970,w);c[x>>2]=80990;fC(a,82039,x);fC(a,82075,y);c[z>>2]=80990;fC(a,82200,z);c[A>>2]=80990;fC(a,82229,A);fC(a,82269,C);c[E>>2]=80990;fC(a,82362,E);c[F>>2]=80990;fC(a,82421,F);c[G>>2]=80990;fC(a,82502,G);fC(a,82572,H);c[I>>2]=80990;fC(a,82661,I);c[J>>2]=80990;fC(a,82766,J);c[K>>2]=80990;fC(a,82842,K);c[L>>2]=80990;fC(a,82881,L);c[M>>2]=80990;fC(a,82980,M);c[N>>2]=80990;fC(a,83026,N);fC(a,83115,O);c[P>>2]=80990;fC(a,83156,P);c[Q>>2]=80990;fC(a,83239,Q);c[R>>2]=80990;fC(a,83340,R);h[T>>3]=e;h[T+8>>3]=d;fC(a,83404,T);fC(a,83432,U);fC(a,83440,V);l=W;return}function vf(a){a=a|0;var b=0;b=l;l=l+16|0;fC(a,81170,b);l=b;return}function wf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;q=r+24|0;p=r+8|0;o=r;switch(a[e+48>>0]|0){case 108:{k=d;i=+h[e+32>>3];j=+h[d>>3];break}case 114:{i=+h[e+32>>3];g=i;f=5;break}default:{i=+h[e+32>>3];g=i*.5;f=5}}if((f|0)==5){j=+h[d>>3]-g;h[d>>3]=j;k=d}m=e+4|0;f=c[m>>2]|0;g=+h[f+16>>3];d=d+8|0;n=+h[d>>3]+g*.004629629629629629;h[d>>3]=n;i=j+i*.006944444444444444;h[k>>3]=i;f=c[f>>2]|0;do if(f){d=c[45960]|0;if(d|0?(b$(d,f)|0)==0:0)break;c[o>>2]=Ef(f)|0;fC(b,81069,o);o=c[m>>2]|0;c[45960]=c[o>>2];g=+h[o+16>>3]}while(0);f=~~g;f=(f|0)>1?f:1;if((f|0)!=(c[45961]|0)){j=+h[18829];c[p>>2]=f;h[p+8>>3]=j;fC(b,81077,p);c[45961]=f}c[q>>2]=Ff(c[e>>2]|0)|0;h[q+8>>3]=i;h[q+16>>3]=n;fC(b,81098,q);l=r;return}function xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0;e=l;l=l+48|0;f=e;i=+h[b>>3];k=(+h[b+16>>3]-i)*.027777777777777776;g=+h[b+8>>3];j=(+h[b+24>>3]-g)*.027777777777777776;c[f>>2]=1;c[f+4>>2]=d|0?81011:191979;h[f+8>>3]=k;h[f+16>>3]=j;h[f+24>>3]=i*.013888888888888888;h[f+32>>3]=g*.013888888888888888;fC(a,81017,f);l=e;return}function yf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=l;l=l+16|0;Cf(c[a+16>>2]|0,e+8|0,e);Df(a,b,d,1);l=e;return}function zf(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0;t=l;l=l+128|0;s=t+112|0;q=t+104|0;p=t+96|0;e=t+88|0;n=t+16|0;o=t;k=c[a+16>>2]|0;j=C_((d*140|0)+140|0)|0;Cf(k,t+116|0,t+80|0);v=+h[b>>3];k=n+48|0;h[k>>3]=v;u=+h[b+8>>3];h[n+56>>3]=u;c[e>>2]=~~(v+(v>=0.0?.5:-.5));c[e+4>>2]=~~(u+(u>=0.0?.5:-.5));i=o+8|0;e=j+(Y0(j,80995,e)|0)|0;r=1;g=0;while(1){m=g+3|0;if((m|0)>=(d|0))break;c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[n+12>>2]=c[k+12>>2];f=1;while(1){if((f|0)==4){f=1;break}w=f+g|0;h[n+(f<<4)>>3]=+h[b+(w<<4)>>3];h[n+(f<<4)+8>>3]=+h[b+(w<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;XL(o,n,3,+(f|0)*.16666666666666666,0,0);u=+h[o>>3];v=+h[i>>3];c[p>>2]=~~(u+(u>=0.0?.5:-.5));c[p+4>>2]=~~(v+(v>=0.0?.5:-.5));f=f+1|0;e=e+(Y0(e,80995,p)|0)|0}r=r+6|0;g=m}c[q>>2]=j;fC(a,81002,q);D_(j);f=r+-1|0;e=0;while(1){if((e|0)>=(r|0))break;c[s>>2]=((e|0)%(f|0)|0|0)!=0&1;fC(a,81007,s);e=e+1|0}$B(a,150517)|0;l=t;return}function Af(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;Cf(c[a+16>>2]|0,e+8|0,e);Df(a,b,d,0);l=e;return}function Bf(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=80990;c[e+4>>2]=b;fC(a,80983,e);l=d;return}function Cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;switch(c[a+144>>2]|0){case 1:{e=10.0;a=1;break}case 2:{e=10.0;a=2;break}default:{e=0.0;a=0}}c[b>>2]=a;h[d>>3]=e;return}function Df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+16|0;i=j+8|0;g=j;f=0;while(1){if((f|0)>=(d|0))break;m=+h[b+(f<<4)>>3];k=+h[b+(f<<4)+8>>3];c[g>>2]=~~(m+(m>=0.0?.5:-.5));c[g+4>>2]=~~(k+(k>=0.0?.5:-.5));fC(a,80995,g);f=f+1|0}if(e|0){k=+h[b>>3];m=+h[b+8>>3];c[i>>2]=~~(k+(k>=0.0?.5:-.5));c[i+4>>2]=~~(m+(m>=0.0?.5:-.5));fC(a,80995,i)}$B(a,150517)|0;l=j;return}function Ef(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;a:while(1){d=15828;while(1){e=c[d+4>>2]|0;if(!e)break;if(!(b$(e,b)|0)){g=6;break a}d=d+8|0}c[f>>2]=81151;c[f+4>>2]=b;Pw(1,81125,f)|0;d=o1(b,45)|0;if(!d){d=81168;break}a[d>>0]=0}l=h;return d|0}function Ff(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i;d=c[45962]|0;if(!d){c[45963]=64;d=C_(64)|0;c[45962]=d;e=0}else e=0;while(1){g=b+1|0;f=a[b>>0]|0;if(!(f<<24>>24))break;b=c[45963]|0;if((e|0)>(b+-8|0)){d=b<<1;c[45963]=d;d=F_(c[45962]|0,d)|0;c[45962]=d;d=d+e|0}if(f<<24>>24<=-1){a[d>>0]=92;c[h>>2]=f&255;Y0(d+1|0,81120,h)|0;b=g;d=d+4|0;e=e+4|0;continue}if(f<<24>>24==92){a[d>>0]=92;e=e+1|0;d=d+1|0}a[d>>0]=f;b=g;d=d+1|0;e=e+1|0}a[d>>0]=0;l=i;return c[45962]|0}function Gf(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=81151;c[b+4>>2]=83548;Pw(0,83530,b)|0;l=a;return}function Hf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0;e=l;l=l+32|0;f=e+8|0;j=e;b=b+8|0;k=c[b>>2]|0;c[j>>2]=k;c[j+4>>2]=k;fC(a,84128,j);i=(+h[d>>3]+ +h[d+16>>3])*.5;g=(+h[d+8>>3]+ +h[d+24>>3])*.5;c[f>>2]=c[b>>2];h[f+8>>3]=i;h[f+16>>3]=g;fC(a,84170,f);l=e;return}function If(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0.0;e=l;l=l+48|0;f=e;i=+h[d>>3];k=+h[d+16>>3]-i;g=+h[d+24>>3];j=g-+h[d+8>>3];g=+(~~(+h[a+232>>3]-+h[a+216>>3])>>>0)-g;c[f>>2]=c[b+8>>2];h[f+8>>3]=k;h[f+16>>3]=j;h[f+24>>3]=i;h[f+32>>3]=g;fC(a,84215,f);$B(a,84307)|0;l=e;return}function Jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+160|0;s=t+152|0;r=t+136|0;q=t+120|0;k=t+112|0;n=t+104|0;m=t+88|0;j=t+72|0;i=t+64|0;o=t;if(!a)qa(108200,84312,212,84331);if(!b)qa(108230,84312,213,84331);p=b+8|0;if(!(c[p>>2]|0))qa(108233,84312,214,84331);if(c[b+52>>2]|0){c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];b=o+32|0;d=d+16|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];f=+h[o>>3];h[o+16>>3]=f;h[o+24>>3]=+h[o+40>>3];h[o+48>>3]=+h[b>>3];g=+h[o+8>>3];h[o+56>>3]=g;if(e<<24>>24){fC(a,84352,i);b=0;while(1){if((b|0)==4)break;u=+h[o+(b<<4)+8>>3];h[j>>3]=+h[o+(b<<4)>>3];h[j+8>>3]=u;fC(a,84355,j);b=b+1|0}h[m>>3]=f;h[m+8>>3]=g;fC(a,84355,m);m=c[p>>2]|0;c[n>>2]=4;c[n+4>>2]=m;fC(a,84362,n)}fC(a,84352,k);b=0;while(1){if((b|0)==4)break;u=+h[o+(b<<4)+8>>3];h[q>>3]=+h[o+(b<<4)>>3];h[q+8>>3]=u;fC(a,84355,q);b=b+1|0}h[r>>3]=f;h[r+8>>3]=g;fC(a,84355,r);r=c[p>>2]|0;c[s>>2]=4;c[s+4>>2]=r;fC(a,84377,s)}l=t;return}function Lf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+112|0;n=o+24|0;m=o+16|0;k=o;i=o+28|0;if(!b)qa(108200,84312,153,84393);if(!d)qa(108230,84312,154,84393);if(!(c[d+8>>2]|0))qa(108233,84312,155,84393);j=d+52|0;if(c[j>>2]|0){f=d+60|0;g=c[f>>2]|0;if((g|0)==98)g=18;else{tb[g&127](d);c[j>>2]=0;c[f>>2]=0;c[d+56>>2]=0;g=10}}else g=10;do if((g|0)==10){if(!((zC(d)|0)<<24>>24))break;f=j3(c[d+20>>2]|0)|0;if((c[d+24>>2]&-2|0)==6){J1(f,i)|0;i=c[i+36>>2]|0;c[d+56>>2]=i;f=U_(0,i,1,1,f,0)|0;c[j>>2]=f;a[d+16>>0]=1}else f=c[j>>2]|0;if(f|0)c[d+60>>2]=98;AC(d);if(c[j>>2]|0)g=18}while(0);if((g|0)==18){p=+h[e+8>>3]-+(c[d+36>>2]|0);h[k>>3]=+h[e>>3]-+(c[d+32>>2]|0);h[k+8>>3]=p;fC(b,84411,k);if(!(a[d+16>>0]|0)){c[m>>2]=c[d+12>>2];fC(b,84442,m)}else kJ(b,d);fC(b,84457,n)}l=o;return}function Mf(a){a=a|0;S_(c[a+52>>2]|0,c[a+56>>2]|0)|0;return}function Nf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+80|0;f=g+48|0;if(!a)qa(108200,84312,121,84467);e=c[a+16>>2]|0;if(!e)qa(96876,84312,123,84467);if(!b)qa(108230,84312,124,84467);d=b+8|0;if(!(c[d>>2]|0))qa(108233,84312,125,84467);if(!(c[e+8>>2]|0))qa(135797,84312,128,84467);else{fC(a,84487,g);fC(a,84496,g+8|0);fC(a,84523,g+16|0);fC(a,84548,g+24|0);fC(a,84577,g+32|0);fC(a,84605,g+40|0);c[f>>2]=c[d>>2];fC(a,84612,f);fC(a,84651,g+56|0);fC(a,107982,g+64|0);l=g;return}}function Of(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0.0;i=l;l=l+128|0;g=i+80|0;f=i;if(!a)qa(108200,84312,97,84656);if(!b)qa(108230,84312,98,84656);e=c[b+8>>2]|0;if(!e)qa(108233,84312,99,84656);else{m=+h[d>>3];j=~~(m+(m>=0.0?.5:-.5));m=+h[d+8>>3];b=~~(m+(m>=0.0?.5:-.5));m=+h[d+16>>3];k=~~(m+(m>=0.0?.5:-.5));m=+h[d+24>>3];d=~~(m+(m>=0.0?.5:-.5));c[f>>2]=2;c[f+4>>2]=5;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=-1;c[f+24>>2]=1;c[f+28>>2]=-1;c[f+32>>2]=0;h[f+40>>3]=0.0;c[f+48>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;c[f+60>>2]=0;c[f+64>>2]=0;c[f+68>>2]=5;c[f+72>>2]=0;c[f+76>>2]=e;fC(a,84675,f);c[g>>2]=j;c[g+4>>2]=b;c[g+8>>2]=j;c[g+12>>2]=d;c[g+16>>2]=k;c[g+20>>2]=d;c[g+24>>2]=k;c[g+28>>2]=b;c[g+32>>2]=j;c[g+36>>2]=b;fC(a,84733,g);l=i;return}}function Pf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;o=l;l=l+96|0;n=o+56|0;m=o+32|0;k=o;i=+h[d>>3];j=+h[d+16>>3]-i;f=+h[d+24>>3];g=f-+h[d+8>>3];if(!a)qa(108200,84312,53,84765);if(!b)qa(108230,84312,54,84765);e=b+8|0;if(!(c[e>>2]|0))qa(108233,84312,55,84765);$B(a,84784)|0;$B(a,c[e>>2]|0)|0;e=a+360|0;f=-f;if(!(c[e>>2]|0)){h[n>>3]=j;h[n+8>>3]=g;h[n+16>>3]=i;h[n+24>>3]=f;fC(a,84913,n)}else{h[k>>3]=g;h[k+8>>3]=j;h[k+16>>3]=i;h[k+24>>3]=f;fC(a,84804,k);c[m>>2]=c[e>>2];h[m+8>>3]=i;h[m+16>>3]=f;fC(a,84883,m)}$B(a,84992)|0;l=o;return}function Qf(a){a=a|0;var b=0,c=0;b=Sy(a)|0;while(1){if(!b)break;Rf(b);b=Ty(a,b)|0}c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;Sf(b);b=Gx(a,b)|0}c=Ty(a,c)|0}return}function Rf(a){a=a|0;var b=0,d=0;Az(a,134365,304,1)|0;dM(a);bN(a,c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&1);a=a+16|0;c[(c[a>>2]|0)+176>>2]=0;b=uH(20)|0;d=c[a>>2]|0;c[d+172>>2]=b;c[d+184>>2]=0;d=uH(20)|0;b=c[a>>2]|0;c[b+180>>2]=d;c[b+200>>2]=0;b=uH(12)|0;d=c[a>>2]|0;c[d+196>>2]=b;c[d+192>>2]=0;d=uH(12)|0;b=c[a>>2]|0;c[b+188>>2]=d;c[b+208>>2]=0;b=uH(12)|0;a=c[a>>2]|0;c[a+204>>2]=b;c[a+216>>2]=1;return}function Sf(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;Az(d,134378,176,1)|0;eM(d)|0;h=KL(d,c[46404]|0,1,0)|0;g=d+16|0;c[(c[g>>2]|0)+156>>2]=h;h=NL(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0,c[46398]|0,191979)|0;i=NL(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,c[46398]|0,191979)|0;e=c[g>>2]|0;f=e+154|0;b[f>>1]=1;b[e+168>>1]=1;if((h|0)==(i|0)&(a[h>>0]|0)!=0){b[f>>1]=1e3;i=e+156|0;c[i>>2]=(c[i>>2]|0)*100}if(Ok(d)|0){i=c[g>>2]|0;b[i+154>>1]=0;c[i+156>>2]=0}i=(KL(d,c[46417]|0,0,0)|0)&255;a[(c[g>>2]|0)+152>>0]=i;i=(KL(d,c[46405]|0,1,0)|0)&65535;b[(c[g>>2]|0)+170>>1]=i;return}function Tf(a){a=a|0;var b=0,d=0;Uf(c[(c[a+16>>2]|0)+192>>2]|0);d=Sy(a)|0;while(1){if(!d)break;b=Ex(a,d)|0;while(1){if(!b)break;JM(b);b=Gx(a,b)|0}Vf(d);d=Ty(a,d)|0}Wf(a);return}function Uf(b){b=b|0;var d=0,e=0,f=0,g=0;while(1){if(!b)break;f=b+16|0;g=c[(c[f>>2]|0)+164>>2]|0;Xf(b);d=c[f>>2]|0;if((a[d+156>>0]|0)!=1){b=g;continue}e=c[d+180>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+172>>2]|0;if(e){D_(e);d=c[f>>2]|0}D_(d);D_(b);b=g}return}function Vf(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;b=c[e>>2]|0;d=c[b+172>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+180>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+188>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+196>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+204>>2]|0;if(d){D_(d);b=c[e>>2]|0}nH(c[b+104>>2]|0);nH(c[(c[e>>2]|0)+108>>2]|0);b=c[(c[e>>2]|0)+8>>2]|0;if(b|0)tb[c[(c[b+4>>2]|0)+4>>2]&127](a);Cz(a,134365)|0;return}function Wf(a){a=a|0;var d=0,e=0,f=0;d=wA(a)|0;while(1){if(!d)break;Wf(d);d=xA(d)|0}if(Az(a,134401,0,1)|0){f=a+16|0;d=c[f>>2]|0;e=c[d+184>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+268>>2]|0;if(e){D_(e);d=c[f>>2]|0}e=c[d+216>>2]|0;if(e){D_(e);d=c[f>>2]|0}do if(c[d+196>>2]|0){e=b[d+236>>1]|0;while(1){if((e|0)>(b[d+238>>1]|0))break;D_(c[(c[d+196>>2]|0)+(e<<6)+12>>2]|0);e=e+1|0;d=c[f>>2]|0}e=c[d+196>>2]|0;if((b[d+236>>1]|0)==-1){D_(e+-64|0);break}else{D_(e);break}}while(0);if((fz(a)|0)!=(a|0)){nH(c[(c[f>>2]|0)+12>>2]|0);Cz(a,134401)|0}}return}function Xf(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;d=c[e>>2]|0;b=c[d+176>>2]|0;while(1){a=b+-1|0;if((b|0)<=0)break;b=c[(c[d+172>>2]|0)+(a<<2)>>2]|0;kh(b);D_(c[b+16>>2]|0);D_(b);b=a;d=c[e>>2]|0}b=c[d+184>>2]|0;while(1){a=b+-1|0;if((b|0)<=0)break;b=c[(c[(c[e>>2]|0)+180>>2]|0)+(a<<2)>>2]|0;kh(b);D_(c[b+16>>2]|0);D_(b);b=a}return}function Yf(a){a=a|0;if(ay(a)|0)Zf(a);eJ(a);return}function Zf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+48|0;g=h+32|0;f=h;b=YD(a,-1,8)|0;d=ZD(a,0,f)|0;XD(a,2,8,f)|0;d=(d|0)==0;e=(b|0)<0;if(e&d)_f(a);else{if(d)c[f+16>>2]=3;else b=e?8:b;c[f+8>>2]=b;c[f+20>>2]=0;e=rD(a,g,0)|0;b=c[g>>2]|0;do if((b|0)==1){_f(a);b=0}else{if(c[(c[(c[a+16>>2]|0)+8>>2]|0)+84>>2]|0){_f(a);b=0;break}c[f+12>>2]=1;d=0;while(1){if((d|0)>=(b|0))break;b=c[e+(d<<2)>>2]|0;$f(b,a);_f(b);d=d+1|0;b=c[g>>2]|0}ag(a);WD(c[g>>2]|0,e,a,f)|0;bg(a);cg(c[g>>2]|0,e,a);b=0}while(0);while(1){if((b|0)>=(c[g>>2]|0))break;f=e+(b<<2)|0;D_(c[(c[(c[f>>2]|0)+16>>2]|0)+8>>2]|0);Wf(c[f>>2]|0);dz(a,c[f>>2]|0)|0;b=b+1|0}D_(e)}l=h;return}function _f(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+40|0;e=m;i=KL(a,nx(a,0,85007,0)|0,-1,1)|0;$M(a,10);d=Nk(a,e)|0;eg(a,a);Qf(a);f=(i|0)==1;g=e+32|0;h=(i|0)==2;i=(i|0)==3;j=e+28|0;e=e+24|0;while(1){zj(a,d);if(f){d=3;break}if(c[g>>2]|0){Pw(0,85013,k)|0;c[e>>2]=0;d=0}Jh(a,(d|0)!=0&1);if(h){d=7;break}Mi(a,d);if(i){d=9;break}n=(c[j>>2]|0)+-1|0;c[j>>2]=n;if(!((n|0)!=0&(c[e>>2]|0)!=0)){d=11;break}}if((d|0)==3)fg(a,1);else if((d|0)==7)fg(a,2);else if((d|0)==9)fg(a,2);else if((d|0)==11){if(b[(c[a+16>>2]|0)+136>>1]&16)gg(a);tk(a);kg(a);if((QL(xx(a,85104)|0)|0)<<24>>24)nl(a)}l=m;return}function $f(b,d){b=b|0;d=d|0;var e=0,f=0;Az(b,134401,280,1)|0;e=uH(96)|0;b=c[b+16>>2]|0;c[b+8>>2]=e;d=c[d+16>>2]|0;f=c[d+8>>2]|0;h[e>>3]=+h[f>>3];h[e+24>>3]=+h[f+24>>3];c[b+144>>2]=c[d+144>>2];a[b+115>>0]=a[d+115>>0]|0;c[b+116>>2]=c[d+116>>2];c[b+248>>2]=c[d+248>>2];c[b+252>>2]=c[d+252>>2];c[b+244>>2]=c[d+244>>2];return}function ag(a){a=a|0;var b=0,d=0,e=0;b=uH((ay(a)|0)<<4)|0;d=Sy(a)|0;while(1){if(!d)break;e=c[d+16>>2]|0;c[e+132>>2]=b;h[b>>3]=+h[e+16>>3]*.013888888888888888;h[b+8>>3]=+h[e+24>>3]*.013888888888888888;b=b+16|0;d=Ty(a,d)|0}return}function bg(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[(c[(Sy(a)|0)+16>>2]|0)+132>>2]|0;b=e;d=Sy(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;c[f+132>>2]=0;h[f+16>>3]=+h[b>>3]*72.0;h[f+24>>3]=+h[b+8>>3]*72.0;b=b+16|0;d=Ty(a,d)|0}D_(e);return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=0;f=0;while(1){if((e|0)>=(a|0))break;i=(c[(c[(c[b+(e<<2)>>2]|0)+16>>2]|0)+180>>2]|0)+f|0;e=e+1|0;f=i}i=d+16|0;c[(c[i>>2]|0)+180>>2]=f;g=uH((f<<2)+4|0)|0;c[(c[i>>2]|0)+184>>2]=g;g=0;e=1;while(1){if((g|0)>=(a|0))break;h=(c[b+(g<<2)>>2]|0)+16|0;f=1;while(1){d=c[h>>2]|0;if((f|0)>(c[d+180>>2]|0))break;d=qD(c[(c[d+184>>2]|0)+(f<<2)>>2]|0)|0;c[(c[(c[i>>2]|0)+184>>2]|0)+(e<<2)>>2]=d;dg(c[(c[(c[h>>2]|0)+184>>2]|0)+(f<<2)>>2]|0,d);f=f+1|0;e=e+1|0}g=g+1|0}return}function dg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;Az(d,134401,280,1)|0;g=d+16|0;d=(c[g>>2]|0)+16|0;f=b+16|0;b=(c[f>>2]|0)+16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];c[d+24>>2]=c[b+24>>2];c[d+28>>2]=c[b+28>>2];b=c[f>>2]|0;d=c[g>>2]|0;a[d+275>>0]=a[b+275>>0]|0;d=d+48|0;b=b+48|0;e=d+64|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));b=c[(c[f>>2]|0)+180>>2]|0;c[(c[g>>2]|0)+180>>2]=b;d=uH((b<<2)+4|0)|0;c[(c[g>>2]|0)+184>>2]=d;d=1;while(1){e=c[f>>2]|0;if((d|0)>(b|0))break;e=qD(c[(c[e+184>>2]|0)+(d<<2)>>2]|0)|0;c[(c[(c[g>>2]|0)+184>>2]|0)+(d<<2)>>2]=e;dg(c[(c[(c[f>>2]|0)+184>>2]|0)+(d<<2)>>2]|0,e);d=d+1|0}f=e+12|0;c[(c[g>>2]|0)+12>>2]=c[f>>2];c[f>>2]=0;return}function eg(a,b){a=a|0;b=b|0;if((fz(a)|0)!=(a|0))Az(a,134401,280,1)|0;if((a|0)==(b|0))c[(c[(fz(a)|0)+16>>2]|0)+188>>2]=a;a=wA(a)|0;while(1){if(!a)break;eg(a,b);a=xA(a)|0}return}function fg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+1040|0;k=m+8|0;j=m;e=m+16|0;f=nx(a,1,87076,191979)|0;g=nx(a,1,85147,191979)|0;h=(b|0)>0;d=(b|0)==1;b=Sy(a)|0;while(1){if(!b)break;if(h?(i=b+16|0,c[j>>2]=c[(c[i>>2]|0)+232>>2],Y0(e,134313,j)|0,rx(b,f,e)|0,!d):0){c[k>>2]=c[(c[i>>2]|0)+236>>2];Y0(e,134313,k)|0;rx(b,g,e)|0}b=Ty(a,b)|0}l=m;return}function gg(a){a=a|0;var b=0,c=0,d=0;c=vA(a,86580,0)|0;if(c|0){b=Sy(c)|0;while(1){if(!b)break;d=Ty(c,b)|0;sh(a,b);hg(a,b);Vf(b);cz(a,b)|0;b=d}zA(a,c)|0}return}function hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=c[(c[b+16>>2]|0)+232>>2]|0;i=a+16|0;a=c[(c[i>>2]|0)+196>>2]|0;d=c[a+(j<<6)>>2]|0;h=a+(j<<6)+4|0;g=0;e=0;while(1){if((e|0)>=(d|0)){f=7;break}f=c[(c[h>>2]|0)+(e<<2)>>2]|0;e=e+1|0;if((f|0)==(b|0)){f=4;break}else g=f}if((f|0)==4){while(1){if((e|0)>=(d|0))break;f=c[a+(j<<6)+4>>2]|0;c[f+(e+-1<<2)>>2]=c[f+(e<<2)>>2];f=c[(c[i>>2]|0)+196>>2]|0;e=e+1|0;d=c[f+(j<<6)>>2]|0;a=f;f=4}c[a+(j<<6)>>2]=d+-1}else if((f|0)==7?(g|0)!=(b|0):0)qa(85113,85120,248,85130);return}function ig(a){a=a|0;return c[(c[(fz(a)|0)+16>>2]|0)+188>>2]|0}function jg(b,c){b=b|0;c=c|0;var d=0;d=a[b+28>>0]|0;if(a[c+28>>0]|0)if(d<<24>>24){d=~~(+h[b>>3]-+h[c>>3]);if(!d)d=~~(+h[b+8>>3]-+h[c+8>>3])}else d=-1;else d=d<<24>>24!=0&1;return d|0}function kg(a){a=a|0;lg(a,1);return}function lg(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=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.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,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,_=0.0;Z=l;l=l+656|0;O=Z+592|0;N=Z+552|0;f=Z+544|0;T=Z+96|0;U=Z;Y=Z+632|0;V=d+16|0;X=b[(c[V>>2]|0)+136>>1]&14;P=X&65535;Q=T+16|0;c[Q>>2]=Z+368;R=U+16|0;c[R>>2]=Z+192;do if(X<<16>>16){S=X<<16>>16==4;do if(S){mg(d);if(!(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1))A=9;else{Pw(0,85153,f)|0;A=9}}else if(X<<16>>16==8){mg(d);if(!(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1)){cN(d,0);n=0;m=0;k=0;break}else{ng(d);cN(d,1);n=0;m=0;k=0;break}}else A=9;while(0);if((A|0)==9){ll(d);if(qJ()|0)break;W=uH(96)|0;K=c[(c[V>>2]|0)+248>>2]|0;c[Y+8>>2]=(K|0)/4|0;c[Y+12>>2]=K;k=uH(512)|0;F=Y+4|0;c[F>>2]=0;c[Y>>2]=0;j=c[V>>2]|0;C=b[j+236>>1]|0;D=0;L=0;M=k;E=k;m=k;n=k;o=k;H=0;I=0;a:while(1){if((C|0)>(b[j+238>>1]|0))break;p=c[j+196>>2]|0;i=c[p+(C<<6)>>2]|0;G=i+D|0;g=c[p+(C<<6)+4>>2]|0;f=c[g>>2]|0;if(!f)f=H;else{_=+(H|0);f=c[f+16>>2]|0;y=+h[f+16>>3]-+h[f+88>>3];f=~~(y>_?_:y)}if((i|0)!=0?(J=c[g+(i+-1<<2)>>2]|0,(J|0)!=0):0){y=+(I|0);g=c[J+16>>2]|0;_=+h[g+96>>3]+ +h[g+16>>3];g=~~(_=(i|0))break;k=c[(c[f+(C<<6)+4>>2]|0)+(x<<2)>>2]|0;w=k+16|0;f=c[w>>2]|0;i=c[f+112>>2]|0;if(i){i=i+16|0;j=c[(c[i>>2]|0)+96>>2]|0;if(!j){A=21;break a}s=j+56|0;f=f+16|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];a[(c[(c[i>>2]|0)+96>>2]|0)+81>>0]=1;f=c[w>>2]|0}if((a[f+156>>0]|0)!=0?(kb[c[17300>>2]&63](k)|0)<<24>>24==0:0){q=t;f=r;j=u;k=v;i=o}else{s=0;q=t;j=u;k=v;A=25}b:do if((A|0)==25){while(1){A=0;p=c[w>>2]|0;i=c[(c[p+180>>2]|0)+(s<<2)>>2]|0;if(!i)break;switch(a[(c[i+16>>2]|0)+112>>0]|0){case 6:case 4:{f=q;i=r;break}default:{og(i,1,16,64);f=q+1|0;c[r+(q<<2)>>2]=i;if(!(f&127)){g=xH(g,(q<<2)+516|0)|0;i=g;j=g;k=g;n=g;o=g}else i=r}}s=s+1|0;q=f;r=i;A=25}f=c[p+188>>2]|0;c:do if(!f)i=o;else{s=0;i=o;while(1){f=c[f+(s<<2)>>2]|0;if(!f)break c;og(f,2,0,128);o=q+1|0;c[r+(q<<2)>>2]=f;if(!(o&127)){g=xH(i,(q<<2)+516|0)|0;f=g;j=g;k=g;n=g;i=g}else f=r;p=c[w>>2]|0;s=s+1|0;q=o;r=f;f=c[p+188>>2]|0}}while(0);f=c[p+204>>2]|0;if(!f)f=r;else{if(!(a[p+156>>0]|0)){v=p+96|0;_=+h[v>>3];s=p+240|0;h[v>>3]=+h[s>>3];h[s>>3]=_;s=0;p=r}else{s=0;p=r}while(1){f=c[f+(s<<2)>>2]|0;if(!f){f=p;break b}og(f,0,0,128);o=q+1|0;c[p+(q<<2)>>2]=f;if(!(o&127)){g=xH(n,(q<<2)+516|0)|0;f=g;j=g;k=g;n=g;i=g}else f=p;s=s+1|0;q=o;p=f;f=c[(c[w>>2]|0)+204>>2]|0}}}while(0);u=c[V>>2]|0;w=c[u+196>>2]|0;x=x+1|0;t=q;r=f;q=u;u=j;v=k;o=i;i=c[w+(C<<6)>>2]|0;f=w}C=C+1|0;D=G;L=t;M=r;E=u;j=q;m=v;k=g;H=B;I=z}if((A|0)==21)qa(85221,85234,313,85247);c[Y>>2]=H;c[F>>2]=I;_0(E,L,4,58);c[W+84>>2]=uH((D<<5)+11520|0)|0;c[Y+16>>2]=uH(C<<5)|0;d:do if(X<<16>>16==2){f=(c[V>>2]|0)+192|0;while(1){g=c[f>>2]|0;if(!g)break d;i=g+16|0;f=c[i>>2]|0;if((a[f+156>>0]|0)==1?(c[f+104>>2]|0)!=0:0){qg(g);f=c[i>>2]|0}f=f+164|0}}while(0);z=U+48|0;A=U+-48|0;B=T+48|0;C=T+-48|0;y=+(K|0);x=0;e:while(1){if((x|0)>=(L|0))break;v=M+(x<<2)|0;r=c[v>>2]|0;s=rg(r)|0;t=r+16|0;g=c[t>>2]|0;if(!(a[g+44>>0]|0)){g=(a[g+84>>0]|0)==0?s:r;f=g;g=c[g+16>>2]|0}else f=r;i=f+16|0;if(c[g+164>>2]&32){g=c[Q>>2]|0;F3(g|0,c[i>>2]|0,176)|0;n=T;o=f;p=n+48|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));c[Q>>2]=g;o=c[f>>2]&3;n=c[T>>2]&3;c[((n|0)==3?T:B)+40>>2]=c[((o|0)==2?f:f+-48|0)+40>>2];c[((n|0)==2?T:C)+40>>2]=c[((o|0)==3?f:f+48|0)+40>>2];n=g+16|0;o=(c[i>>2]|0)+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=g+56|0;o=(c[i>>2]|0)+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));a[g+112>>0]=1;c[g+116>>2]=f;f=T}q=f+16|0;w=1;f=x;while(1){u=f+1|0;if((u|0)>=(L|0))break;j=M+(u<<2)|0;f=c[j>>2]|0;if((s|0)!=(rg(f)|0))break;if(!(a[(c[t>>2]|0)+113>>0]|0)){k=f+16|0;g=c[k>>2]|0;if(!(a[g+44>>0]|0)){g=(a[g+84>>0]|0)==0?s:f;f=g;g=c[g+16>>2]|0}i=f+16|0;if(c[g+164>>2]&32){g=c[R>>2]|0;F3(g|0,c[i>>2]|0,176)|0;n=U;o=f;p=n+48|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));c[R>>2]=g;o=c[f>>2]&3;n=c[U>>2]&3;c[((n|0)==3?U:z)+40>>2]=c[((o|0)==2?f:f+-48|0)+40>>2];c[((n|0)==2?U:A)+40>>2]=c[((o|0)==3?f:f+48|0)+40>>2];n=g+16|0;o=(c[i>>2]|0)+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=g+56|0;o=(c[i>>2]|0)+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));a[g+112>>0]=1;c[g+116>>2]=f}i=c[q>>2]|0;f=g+16|0;n=N;o=i+16|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=O;o=f;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));if(jg(N,O)|0)break;f=g+56|0;n=N;o=i+56|0;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));n=O;o=f;p=n+40|0;do{c[n>>2]=c[o>>2];n=n+4|0;o=o+4|0}while((n|0)<(p|0));if(jg(N,O)|0)break;K=c[t>>2]|0;if((c[K+164>>2]&15|0)==2?(c[K+96>>2]|0)!=(c[(c[k>>2]|0)+96>>2]|0):0)break;if(c[(c[(c[j>>2]|0)+16>>2]|0)+164>>2]&64|0)break}w=w+1|0;f=u}if(S){if((w|0)==1)f=O;else f=uH(w<<2)|0;c[f>>2]=rg(c[v>>2]|0)|0;g=1;while(1){if((g|0)>=(w|0))break;c[f+(g<<2)>>2]=c[v+(g<<2)>>2];g=g+1|0}AJ(d,f,w,P,17296);if((w|0)>1)D_(f);x=u;continue}f=c[r>>2]&3;K=c[((f|0)==3?r:r+48|0)+40>>2]|0;f=c[((f|0)==2?r:r+-48|0)+40>>2]|0;g=c[K+16>>2]|0;i=c[g+232>>2]|0;if((K|0)!=(f|0))if((i|0)==(c[(c[f+16>>2]|0)+232>>2]|0)){sg(d,Y,W,M,x,w,P);x=u;continue}else{tg(d,Y,W,M,x,w,P);x=u;continue}f=c[V>>2]|0;do if((i|0)==(b[f+238>>1]|0))if((i|0)>0){f=~~(+h[(c[(c[c[(c[f+196>>2]|0)+(i+-1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[g+24>>3]);break}else{f=~~+h[g+80>>3];break}else if((i|0)==(b[f+236>>1]|0)){f=~~(+h[g+24>>3]-+h[(c[(c[c[(c[f+196>>2]|0)+(i+1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]);break}else{f=c[f+196>>2]|0;_=+h[g+24>>3];K=~~(+h[(c[(c[c[f+(i+-1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-_);f=~~(_-+h[(c[(c[c[f+(i+1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]);f=(K|0)<(f|0)?K:f;break}while(0);YK(W,M,x,w,y,+((f|0)/2|0|0),17296);f=0;while(1){if((f|0)>=(w|0)){x=u;continue e}g=c[(c[(c[M+(f+x<<2)>>2]|0)+16>>2]|0)+96>>2]|0;if(g|0)kM(d,g);f=f+1|0}}f=(c[V>>2]|0)+192|0;while(1){g=c[f>>2]|0;if(!g)break;i=g+16|0;f=c[i>>2]|0;if((a[f+156>>0]|0)==1?(c[f+104>>2]|0)!=0:0){qg(g);kM(d,c[(c[i>>2]|0)+104>>2]|0);f=c[i>>2]|0}f=f+164|0}if(!e){n=W;k=W}else{ug(d);n=W;k=W}}f:do if((c[46427]|0)!=0|(c[46428]|0)!=0?(c[46433]|0)!=0|(c[46432]|0)!=0:0){j=Sy(d)|0;while(1){if(!j)break f;g:do if(c[46427]|0){f=Hx(d,j)|0;while(1){if(!f)break g;g=f+-48|0;i=(c[f>>2]&3|0)==2?f:g;if(c[(c[i+16>>2]|0)+100>>2]|0){eL(i,1)|0;kM(d,c[(c[((c[f>>2]&3|0)==2?f:g)+16>>2]|0)+100>>2]|0)}f=Ix(d,f)|0}}while(0);h:do if(c[46428]|0){f=Ex(d,j)|0;while(1){if(!f)break h;g=f+16|0;if(c[(c[g>>2]|0)+104>>2]|0?eL(f,0)|0:0)kM(d,c[(c[g>>2]|0)+104>>2]|0);f=Gx(d,f)|0}}while(0);j=Ty(d,j)|0}}while(0);switch(X&15){case 4:case 8:break;default:{D_(m);D_(c[n+84>>2]|0);D_(k);D_(c[Y+16>>2]|0);rJ()}}c[46367]=1;c[46368]=1}while(0);l=Z;return}function mg(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=Sy(a)|0;while(1){if(!b)break;d=c[b+16>>2]|0;if(c[d+204>>2]|0){f=d+96|0;e=+h[f>>3];d=d+240|0;h[f>>3]=+h[d>>3];h[d>>3]=e}b=Ty(a,b)|0}return}function ng(b){b=b|0;var d=0,e=0,f=0,g=0;d=(c[b+16>>2]|0)+192|0;a:while(1){f=c[d>>2]|0;if(!f){d=12;break}g=f+16|0;d=c[g>>2]|0;do if((a[d+156>>0]|0)==1){e=c[d+112>>2]|0;if(!e){e=c[d+104>>2]|0;if(!e)break;qg(f);d=e}else{e=c[(c[e+16>>2]|0)+96>>2]|0;if(!e){d=6;break a}f=e+56|0;d=d+16|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];a[e+81>>0]=1;d=e}kM(b,d);d=c[g>>2]|0}while(0);d=d+164|0}if((d|0)==6)qa(85421,85234,234,85440);else if((d|0)==12)return}function og(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;do if(!d){g=c[b>>2]&3;d=c[((g|0)==3?b:b+48|0)+40>>2]|0;g=c[((g|0)==2?b:b+-48|0)+40>>2]|0;if((d|0)!=(g|0)){d=(c[(c[d+16>>2]|0)+232>>2]|0)==(c[(c[g+16>>2]|0)+232>>2]|0)?2:1;break}d=c[b+16>>2]|0;if(!(a[d+44>>0]|0))d=(a[d+84>>0]|0)==0?8:4;else d=4}while(0);a:do if(!e)switch(d|0){case 1:{e=c[b>>2]&3;e=(c[(c[(c[((e|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)<(c[(c[(c[((e|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)?16:32;break a}case 2:{e=c[b>>2]&3;e=(c[(c[(c[((e|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)<(c[(c[(c[((e|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)?16:32;break a}default:{e=16;break a}}while(0);c[(c[b+16>>2]|0)+164>>2]=d|f|e;return}function pg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+624|0;z=D+584|0;y=D+544|0;s=D+368|0;e=D+192|0;t=D+96|0;v=D;u=t+16|0;c[u>>2]=s;w=v+16|0;c[w>>2]=e;C=c[b>>2]|0;B=c[d>>2]|0;x=C+16|0;q=c[x>>2]|0;d=c[q+164>>2]|0;f=d&15;A=B+16|0;b=c[A>>2]|0;g=c[b+164>>2]&15;do if((g|0)==(f|0)){p=rg(C)|0;r=rg(B)|0;n=c[p>>2]|0;g=n&3;f=c[(c[((g|0)==3?p:p+48|0)+40>>2]|0)+16>>2]|0;g=c[(c[((g|0)==2?p:p+-48|0)+40>>2]|0)+16>>2]|0;i=(c[f+232>>2]|0)-(c[g+232>>2]|0)|0;o=c[r>>2]|0;m=o&3;k=c[(c[((m|0)==3?r:r+48|0)+40>>2]|0)+16>>2]|0;m=c[(c[((m|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0;j=(c[k+232>>2]|0)-(c[m+232>>2]|0)|0;i=(i|0)>-1?i:0-i|0;j=(j|0)>-1?j:0-j|0;if((i|0)!=(j|0)){b=i-j|0;break}g=~~(+h[f+16>>3]-+h[g+16>>3]);g=(g|0)>-1?g:0-g|0;f=~~(+h[k+16>>3]-+h[m+16>>3]);f=(f|0)>-1?f:0-f|0;if((g|0)!=(f|0)){b=g-f|0;break}g=n>>>4;f=o>>>4;if((g|0)!=(f|0)){b=g-f|0;break}if(!(a[q+44>>0]|0)){d=(a[q+84>>0]|0)==0?p:C;g=d;d=c[(c[d+16>>2]|0)+164>>2]|0}else g=C;f=g+16|0;if(d&32){F3(s|0,c[f>>2]|0,176)|0;i=t;j=g;k=i+48|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));c[u>>2]=s;j=c[g>>2]&3;i=c[t>>2]&3;c[((i|0)==3?t:t+48|0)+40>>2]=c[((j|0)==2?g:g+-48|0)+40>>2];c[((i|0)==2?t:t+-48|0)+40>>2]=c[((j|0)==3?g:g+48|0)+40>>2];i=s+16|0;j=(c[f>>2]|0)+56|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=s+56|0;j=(c[f>>2]|0)+16|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));a[s+112>>0]=1;c[s+116>>2]=g;g=t;b=c[A>>2]|0}if(!(a[b+44>>0]|0)){b=(a[b+84>>0]|0)==0?r:B;f=b;b=c[b+16>>2]|0}else f=B;d=f+16|0;if(!(c[b+164>>2]&32))e=b;else{F3(e|0,c[d>>2]|0,176)|0;i=v;j=f;k=i+48|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));c[w>>2]=e;j=c[f>>2]&3;i=c[v>>2]&3;c[((i|0)==3?v:v+48|0)+40>>2]=c[((j|0)==2?f:f+-48|0)+40>>2];c[((i|0)==2?v:v+-48|0)+40>>2]=c[((j|0)==3?f:f+48|0)+40>>2];i=e+16|0;j=(c[d>>2]|0)+56|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=e+56|0;j=(c[d>>2]|0)+16|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));a[e+112>>0]=1;c[e+116>>2]=f}d=c[g+16>>2]|0;b=e+16|0;i=y;j=d+16|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=z;j=b;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));b=jg(y,z)|0;if(!b){b=e+56|0;i=y;j=d+56|0;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));i=z;j=b;k=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0));b=jg(y,z)|0;if(!b){d=c[(c[x>>2]|0)+164>>2]&192;b=c[(c[A>>2]|0)+164>>2]&192;if((d|0)==(b|0)){b=((c[C>>2]|0)>>>4)-((c[B>>2]|0)>>>4)|0;break}else{b=d-b|0;break}}}}else b=g-f|0;while(0);l=D;return b|0}function qg(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0;f=b+16|0;d=c[f>>2]|0;if(c[d+176>>2]|0){d=c[d+180>>2]|0;while(1){d=(c[d>>2]|0)+16|0;e=c[d>>2]|0;if(!(a[e+112>>0]|0))break;else d=e+116|0}e=c[e+96>>2]|0;g=+h[e+24>>3];i=+h[e+32>>3];e=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)!=0;b=c[f>>2]|0;f=c[(c[d>>2]|0)+96>>2]|0;h[f+56>>3]=(e?i:g)*.5+ +h[b+16>>3];h[f+64>>3]=+h[b+24>>3];a[f+81>>0]=1}return}function rg(a){a=a|0;var b=0,d=0;while(1){b=c[a+16>>2]|0;d=c[b+172>>2]|0;if(!d)break;else a=d}while(1){b=c[b+116>>2]|0;if(!b)break;a=b;b=c[b+16>>2]|0}return a|0}function sg(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0;B=l;l=l+1712|0;x=B+1664|0;s=B+1488|0;t=B+1392|0;A=B+1696|0;y=B+696|0;z=B;p=t+16|0;c[p>>2]=s;q=c[f+(g<<2)>>2]|0;r=q+16|0;k=c[r>>2]|0;u=a[k+113>>0]|0;if(c[k+164>>2]&32){F3(s|0,k|0,176)|0;k=t;n=q;o=k+48|0;do{c[k>>2]=c[n>>2];k=k+4|0;n=n+4|0}while((k|0)<(o|0));c[p>>2]=s;k=c[t>>2]&3;c[((k|0)==3?t:t+48|0)+40>>2]=c[((c[q>>2]&3|0)==2?q:q+-48|0)+40>>2];c[((k|0)==2?t:t+-48|0)+40>>2]=c[((c[q>>2]&3|0)==3?q:q+48|0)+40>>2];k=s+16|0;n=(c[r>>2]|0)+56|0;o=k+40|0;do{c[k>>2]=c[n>>2];k=k+4|0;n=n+4|0}while((k|0)<(o|0));k=s+56|0;n=(c[r>>2]|0)+16|0;o=k+40|0;do{c[k>>2]=c[n>>2];k=k+4|0;n=n+4|0}while((k|0)<(o|0));a[s+112>>0]=1;c[s+116>>2]=q;q=t}k=1;while(1){if((k|0)>=(i|0)){w=6;break}if(!(a[(c[(c[f+(k+g<<2)>>2]|0)+16>>2]|0)+113>>0]|0))k=k+1|0;else{w=7;break}}a:do if((w|0)==6)if(!(u<<24>>24)){k=c[q+16>>2]|0;if(c[k+96>>2]|0){Sg(b,d,e,q,j);break}if((j|0)==2){A=c[q>>2]&3;Tg(c[((A|0)==3?q:q+48|0)+40>>2]|0,c[((A|0)==2?q:q+-48|0)+40>>2]|0,f,g,i,2);break}t=a[k+49>>0]|0;u=a[k+89>>0]|0;if(!(t<<24>>24==1&u<<24>>24!=4)?!(t<<24>>24!=4&u<<24>>24==1):0){p=c[q>>2]&3;o=c[((p|0)==3?q:q+48|0)+40>>2]|0;p=c[((p|0)==2?q:q+-48|0)+40>>2]|0;k=c[o+16>>2]|0;n=c[k+232>>2]|0;if((n|0)>0){u=c[(c[b+16>>2]|0)+196>>2]|0;t=n+~(a[(c[(c[b+60>>2]|0)+16>>2]|0)+113>>0]&1)|0;m=+h[(c[(c[c[u+(t<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[u+(t<<6)+16>>3]-+h[k+24>>3]-+h[u+(n<<6)+24>>3]}else m=+(c[(c[b+16>>2]|0)+252>>2]|0);C=+(i+1|0);v=+(c[d+12>>2]|0)/C;m=m/C;Vg(b,d,e,o,q,y,1);Vg(b,d,e,p,q,z,0);s=y+52|0;t=z+52|0;p=(j|0)==10;q=e+80|0;k=0;while(1){if((k|0)>=(i|0))break a;r=c[f+(k+g<<2)>>2]|0;o=c[s>>2]|0;n=o+-1|0;G=+h[y+56+(n<<5)>>3];F=+h[y+56+(n<<5)+16>>3];E=+h[y+56+(n<<5)+24>>3];h[18830]=G;h[18831]=E;k=k+1|0;C=+(k|0);D=v*C;h[18832]=F+D;C=E+m*C;h[18833]=C;h[18834]=G;h[18835]=C;n=(c[t>>2]|0)+-1|0;G=+h[z+56+(n<<5)+16>>3];h[18836]=G;h[18837]=C+m;E=+h[z+56+(n<<5)>>3];F=+h[z+56+(n<<5)+24>>3];h[18840]=G;h[18839]=F;h[18838]=E-D;h[18841]=C;n=0;while(1){if((n|0)>=(o|0)){n=0;break}o=y+56+(n<<5)|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];c[x+16>>2]=c[o+16>>2];c[x+20>>2]=c[o+20>>2];c[x+24>>2]=c[o+24>>2];c[x+28>>2]=c[o+28>>2];SK(e,x);n=n+1|0;o=c[s>>2]|0}while(1){if((n|0)==3)break;j=150640+(n<<5)|0;c[x>>2]=c[j>>2];c[x+4>>2]=c[j+4>>2];c[x+8>>2]=c[j+8>>2];c[x+12>>2]=c[j+12>>2];c[x+16>>2]=c[j+16>>2];c[x+20>>2]=c[j+20>>2];c[x+24>>2]=c[j+24>>2];c[x+28>>2]=c[j+28>>2];SK(e,x);n=n+1|0}o=c[t>>2]|0;while(1){n=o+-1|0;if((o|0)<=0)break;o=z+56+(n<<5)|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];c[x+16>>2]=c[o+16>>2];c[x+20>>2]=c[o+20>>2];c[x+24>>2]=c[o+24>>2];c[x+28>>2]=c[o+28>>2];SK(e,x);o=n}if(p)n=sJ(e,A)|0;else n=yJ(e,A)|0;o=c[A>>2]|0;if(!o)break a;QK(r,c[((c[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,n,o,17296);c[q>>2]=0}}Ug(b,d,e,f,g,i,q,(j|0)==10&1)}else w=7;while(0);if((w|0)==7)Rg(b,f,g,i,q,j);l=B;return}function tg(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;ba=l;l=l+2576|0;S=ba+2528|0;_=ba+2568|0;k=ba+2352|0;n=ba+2176|0;t=ba+1904|0;Y=ba+1808|0;$=ba+1712|0;T=ba+1016|0;U=ba+320|0;V=ba+256|0;X=ba+2564|0;Z=ba+2560|0;z=ba+288|0;A=ba+224|0;L=ba+192|0;M=ba+160|0;N=ba+128|0;P=ba+96|0;Q=ba+64|0;R=ba+32|0;W=ba;s=t+16|0;c[s>>2]=k;o=Y+16|0;c[o>>2]=n;aa=$+16|0;c[aa>>2]=ba+2e3;if(!(c[45964]|0)){c[45964]=vH(32e3)|0;c[45965]=vH(32e3)|0;c[45966]=2e3;c[45967]=2e3}u=c[f+(g<<2)>>2]|0;K=c[u>>2]&3;p=u+48|0;q=u+-48|0;K=(c[(c[(c[((K|0)==3?u:p)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((K|0)==2?u:q)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0;r=u+16|0;if((((K|0)>-1?K:0-K|0)|0)<=1){k=c[r>>2]|0;if(!(c[k+164>>2]&32)){K=u;n=0}else{n=c[s>>2]|0;F3(n|0,k|0,176)|0;w=t;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[s>>2]=n;w=c[t>>2]&3;c[((w|0)==3?t:t+48|0)+40>>2]=c[((c[u>>2]&3|0)==2?u:q)+40>>2];c[((w|0)==2?t:t+-48|0)+40>>2]=c[((c[u>>2]&3|0)==3?u:p)+40>>2];w=n+16|0;x=(c[r>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));k=c[s>>2]|0;w=k+56|0;x=(c[r>>2]|0)+16|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));a[k+112>>0]=1;n=0;J=12}}else{F3(k|0,c[r>>2]|0,176)|0;w=t;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));w=t+48|0;x=p;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[s>>2]=k;k=c[r>>2]|0;if(!(c[k+164>>2]&32)){F3(n|0,k|0,176)|0;w=Y;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[o>>2]=n;o=c[t>>2]|0;c[((o&3|0)==3?t:t+48|0)+40>>2]=c[((c[u>>2]&3|0)==3?u:p)+40>>2];w=Y+48|0;x=p;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0))}else{n=c[o>>2]|0;F3(n|0,k|0,176)|0;w=Y;x=u;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[o>>2]=n;w=c[Y>>2]&3;c[((w|0)==3?Y:Y+48|0)+40>>2]=c[((c[u>>2]&3|0)==2?u:q)+40>>2];c[((w|0)==2?Y:Y+-48|0)+40>>2]=c[((c[u>>2]&3|0)==3?u:p)+40>>2];w=n+16|0;x=(c[r>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));k=c[o>>2]|0;w=k+56|0;x=(c[r>>2]|0)+16|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));a[k+112>>0]=1;c[k+116>>2]=u;o=c[t>>2]|0;c[((o&3|0)==3?t:t+48|0)+40>>2]=c[((c[u>>2]&3|0)==2?u:q)+40>>2];w=(c[s>>2]|0)+16|0;x=(c[r>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0))}k=rg(u)|0;while(1){n=c[(c[k+16>>2]|0)+172>>2]|0;if(!n)break;else k=n}c[((o&3|0)==2?t:t+-48|0)+40>>2]=c[((c[k>>2]&3|0)==2?k:k+-48|0)+40>>2];k=c[s>>2]|0;a[k+84>>0]=0;a[k+112>>0]=1;n=k+56|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;n=1;J=12}if((J|0)==12){c[k+116>>2]=u;K=t}H=(j|0)==2;if(H?(v=xg(b,K,c[45964]|0,_)|0,c[Z>>2]=v,(v|0)!=0):0)J=63;else J=15;a:do if((J|0)==15){G=(j|0)==10;c[Z>>2]=0;o=c[K>>2]&3;k=c[((o|0)==3?K:K+48|0)+40>>2]|0;o=c[((o|0)==2?K:K+-48|0)+40>>2]|0;c[_>>2]=o;yg(z,b,d,k,0,K);c[T>>2]=c[z>>2];c[T+4>>2]=c[z+4>>2];c[T+8>>2]=c[z+8>>2];c[T+12>>2]=c[z+12>>2];c[T+16>>2]=c[z+16>>2];c[T+20>>2]=c[z+20>>2];c[T+24>>2]=c[z+24>>2];c[T+28>>2]=c[z+28>>2];c[V>>2]=c[z>>2];c[V+4>>2]=c[z+4>>2];c[V+8>>2]=c[z+8>>2];c[V+12>>2]=c[z+12>>2];c[V+16>>2]=c[z+16>>2];c[V+20>>2]=c[z+20>>2];TK(e,K,1,T,zg(k)|0);B=T+52|0;I=(c[B>>2]|0)+-1|0;D=V+24|0;h[D>>3]=+h[T+56+(I<<5)+24>>3];E=V+8|0;h[E>>3]=+h[T+56+(I<<5)+8>>3];I=c[k+16>>2]|0;F=b+16|0;m=+h[I+24>>3]-+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[I+232>>2]<<6)+16>>3];c[S>>2]=c[V>>2];c[S+4>>2]=c[V+4>>2];c[S+8>>2]=c[V+8>>2];c[S+12>>2]=c[V+12>>2];c[S+16>>2]=c[V+16>>2];c[S+20>>2]=c[V+20>>2];c[S+24>>2]=c[V+24>>2];c[S+28>>2]=c[V+28>>2];Ag(A,S,1,m);c[V>>2]=c[A>>2];c[V+4>>2]=c[A+4>>2];c[V+8>>2]=c[A+8>>2];c[V+12>>2]=c[A+12>>2];c[V+16>>2]=c[A+16>>2];c[V+20>>2]=c[A+20>>2];c[V+24>>2]=c[A+24>>2];c[V+28>>2]=c[A+28>>2];A=V+16|0;if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){I=c[B>>2]|0;c[B>>2]=I+1;I=T+56+(I<<5)|0;c[I>>2]=c[V>>2];c[I+4>>2]=c[V+4>>2];c[I+8>>2]=c[V+8>>2];c[I+12>>2]=c[V+12>>2];c[I+16>>2]=c[V+16>>2];c[I+20>>2]=c[V+20>>2];c[I+24>>2]=c[V+24>>2];c[I+28>>2]=c[V+28>>2]}w=b+60|0;C=U+52|0;x=e+56|0;y=e+69|0;j=e+16|0;z=e+29|0;I=K;q=0;r=-1;b:while(1){s=k;t=0;k=0;u=I;while(1){p=o;v=o;if((a[(c[p+16>>2]|0)+156>>0]|0)!=1)break b;if((kb[c[17300>>2]&63](p)|0)<<24>>24)break b;o=t|1;ca=150640+(t<<5)|0;Bg(L,d,b,c[(c[s+16>>2]|0)+232>>2]|0);c[ca>>2]=c[L>>2];c[ca+4>>2]=c[L+4>>2];c[ca+8>>2]=c[L+8>>2];c[ca+12>>2]=c[L+12>>2];c[ca+16>>2]=c[L+16>>2];c[ca+20>>2]=c[L+20>>2];c[ca+24>>2]=c[L+24>>2];c[ca+28>>2]=c[L+28>>2];if(!k){q=Cg(p)|0;k=(q|0)<((a[(c[(c[w>>2]|0)+16>>2]|0)+113>>0]<<1&2)+3&255|0);q=k?q:q+-2|0;r=k?r:1;k=(k^1)&1}if(!((k|0)==0|(r|0)>0))break;ca=150640+(o<<5)|0;yg(M,b,d,p,u,c[c[(c[p+16>>2]|0)+180>>2]>>2]|0);c[ca>>2]=c[M>>2];c[ca+4>>2]=c[M+4>>2];c[ca+8>>2]=c[M+8>>2];c[ca+12>>2]=c[M+12>>2];c[ca+16>>2]=c[M+16>>2];c[ca+20>>2]=c[M+20>>2];c[ca+24>>2]=c[M+24>>2];c[ca+28>>2]=c[M+28>>2];ca=c[c[(c[v+16>>2]|0)+180>>2]>>2]|0;o=c[ca>>2]&3;s=c[((o|0)==3?ca:ca+48|0)+40>>2]|0;o=c[((o|0)==2?ca:ca+-48|0)+40>>2]|0;c[_>>2]=o;t=t+2|0;r=r+-1|0;u=ca}yg(N,b,d,p,u,c[c[(c[p+16>>2]|0)+180>>2]>>2]|0);c[U>>2]=c[N>>2];c[U+4>>2]=c[N+4>>2];c[U+8>>2]=c[N+8>>2];c[U+12>>2]=c[N+12>>2];c[U+16>>2]=c[N+16>>2];c[U+20>>2]=c[N+20>>2];c[U+24>>2]=c[N+24>>2];c[U+28>>2]=c[N+28>>2];WK(e,u,1,U,zg(c[((c[u>>2]&3|0)==2?u:u+-48|0)+40>>2]|0)|0);ca=U+56+((c[C>>2]|0)+-1<<5)|0;t=c[v+16>>2]|0;m=+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[t+232>>2]<<6)+24>>3]+ +h[t+24>>3];c[S>>2]=c[ca>>2];c[S+4>>2]=c[ca+4>>2];c[S+8>>2]=c[ca+8>>2];c[S+12>>2]=c[ca+12>>2];c[S+16>>2]=c[ca+16>>2];c[S+20>>2]=c[ca+20>>2];c[S+24>>2]=c[ca+24>>2];c[S+28>>2]=c[ca+28>>2];Ag(V,S,4,m);if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){ca=c[C>>2]|0;c[C>>2]=ca+1;ca=U+56+(ca<<5)|0;c[ca>>2]=c[V>>2];c[ca+4>>2]=c[V+4>>2];c[ca+8>>2]=c[V+8>>2];c[ca+12>>2]=c[V+12>>2];c[ca+16>>2]=c[V+16>>2];c[ca+20>>2]=c[V+20>>2];c[ca+24>>2]=c[V+24>>2];c[ca+28>>2]=c[V+28>>2]}h[x>>3]=1.5707963267948966;a[y>>0]=1;Dg(e,I,u,T,U,o);if(!G){k=yJ(e,X)|0;o=c[X>>2]|0;if(H&(o|0)>4){ca=k+16|0;c[ca>>2]=c[k>>2];c[ca+4>>2]=c[k+4>>2];c[ca+8>>2]=c[k+8>>2];c[ca+12>>2]=c[k+12>>2];ca=k+32|0;o=k+(o+-1<<4)|0;c[ca>>2]=c[o>>2];c[ca+4>>2]=c[o+4>>2];c[ca+8>>2]=c[o+8>>2];c[ca+12>>2]=c[o+12>>2];G3(k+48|0,o|0,16)|0;c[X>>2]=4;o=4}else J=33}else{k=sJ(e,X)|0;o=c[X>>2]|0;J=33}if((J|0)==33){J=0;if(!o)break a}u=c[Z>>2]|0;p=u+o|0;if((p|0)>(c[45966]|0)){c[45966]=p<<1;t=xH(c[45964]|0,p<<5)|0;c[45964]=t;o=c[X>>2]|0}else t=c[45964]|0;s=0;p=u;while(1){if((s|0)>=(o|0))break;ca=t+(p<<4)|0;u=k+(s<<4)|0;c[ca>>2]=c[u>>2];c[ca+4>>2]=c[u+4>>2];c[ca+8>>2]=c[u+8>>2];c[ca+12>>2]=c[u+12>>2];s=s+1|0;p=p+1|0}c[Z>>2]=p;o=Eg(c[c[(c[v+16>>2]|0)+180>>2]>>2]|0,q,t,Z)|0;Fg(I,e);p=c[o>>2]&3;k=c[((p|0)==3?o:o+48|0)+40>>2]|0;p=c[((p|0)==2?o:o+-48|0)+40>>2]|0;c[_>>2]=p;I=k+16|0;yg(P,b,d,k,c[c[(c[I>>2]|0)+172>>2]>>2]|0,o);c[T>>2]=c[P>>2];c[T+4>>2]=c[P+4>>2];c[T+8>>2]=c[P+8>>2];c[T+12>>2]=c[P+12>>2];c[T+16>>2]=c[P+16>>2];c[T+20>>2]=c[P+20>>2];c[T+24>>2]=c[P+24>>2];c[T+28>>2]=c[P+28>>2];TK(e,o,1,T,zg(k)|0);ca=T+56+((c[B>>2]|0)+-1<<5)|0;I=c[I>>2]|0;m=+h[I+24>>3]-+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[I+232>>2]<<6)+16>>3];c[S>>2]=c[ca>>2];c[S+4>>2]=c[ca+4>>2];c[S+8>>2]=c[ca+8>>2];c[S+12>>2]=c[ca+12>>2];c[S+16>>2]=c[ca+16>>2];c[S+20>>2]=c[ca+20>>2];c[S+24>>2]=c[ca+24>>2];c[S+28>>2]=c[ca+28>>2];Ag(V,S,1,m);if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){ca=c[B>>2]|0;c[B>>2]=ca+1;ca=T+56+(ca<<5)|0;c[ca>>2]=c[V>>2];c[ca+4>>2]=c[V+4>>2];c[ca+8>>2]=c[V+8>>2];c[ca+12>>2]=c[V+12>>2];c[ca+16>>2]=c[V+16>>2];c[ca+20>>2]=c[V+20>>2];c[ca+24>>2]=c[V+24>>2];c[ca+28>>2]=c[V+28>>2]}h[j>>3]=-1.5707963267948966;a[z>>0]=1;I=o;o=p}k=t|1;r=150640+(t<<5)|0;Bg(Q,d,b,c[(c[s+16>>2]|0)+232>>2]|0);c[r>>2]=c[Q>>2];c[r+4>>2]=c[Q+4>>2];c[r+8>>2]=c[Q+8>>2];c[r+12>>2]=c[Q+12>>2];c[r+16>>2]=c[Q+16>>2];c[r+20>>2]=c[Q+20>>2];c[r+24>>2]=c[Q+24>>2];c[r+28>>2]=c[Q+28>>2];yg(R,b,d,p,u,0);c[U>>2]=c[R>>2];c[U+4>>2]=c[R+4>>2];c[U+8>>2]=c[R+8>>2];c[U+12>>2]=c[R+12>>2];c[U+16>>2]=c[R+16>>2];c[U+20>>2]=c[R+20>>2];c[U+24>>2]=c[R+24>>2];c[U+28>>2]=c[R+28>>2];c[V>>2]=c[R>>2];c[V+4>>2]=c[R+4>>2];c[V+8>>2]=c[R+8>>2];c[V+12>>2]=c[R+12>>2];c[V+16>>2]=c[R+16>>2];c[V+20>>2]=c[R+20>>2];c[V+24>>2]=c[R+24>>2];c[V+28>>2]=c[R+28>>2];r=(n|0)!=0;s=u+-48|0;WK(e,r?Y:u,1,U,zg(c[((c[u>>2]&3|0)==2?u:s)+40>>2]|0)|0);ca=(c[C>>2]|0)+-1|0;h[D>>3]=+h[U+56+(ca<<5)+24>>3];h[E>>3]=+h[U+56+(ca<<5)+8>>3];ca=c[v+16>>2]|0;m=+h[(c[(c[F>>2]|0)+196>>2]|0)+(c[ca+232>>2]<<6)+24>>3]+ +h[ca+24>>3];c[S>>2]=c[V>>2];c[S+4>>2]=c[V+4>>2];c[S+8>>2]=c[V+8>>2];c[S+12>>2]=c[V+12>>2];c[S+16>>2]=c[V+16>>2];c[S+20>>2]=c[V+20>>2];c[S+24>>2]=c[V+24>>2];c[S+28>>2]=c[V+28>>2];Ag(W,S,4,m);c[V>>2]=c[W>>2];c[V+4>>2]=c[W+4>>2];c[V+8>>2]=c[W+8>>2];c[V+12>>2]=c[W+12>>2];c[V+16>>2]=c[W+16>>2];c[V+20>>2]=c[W+20>>2];c[V+24>>2]=c[W+24>>2];c[V+28>>2]=c[W+28>>2];if(+h[V>>3]<+h[A>>3]?+h[E>>3]<+h[D>>3]:0){ca=c[C>>2]|0;c[C>>2]=ca+1;ca=U+56+(ca<<5)|0;c[ca>>2]=c[V>>2];c[ca+4>>2]=c[V+4>>2];c[ca+8>>2]=c[V+8>>2];c[ca+12>>2]=c[V+12>>2];c[ca+16>>2]=c[V+16>>2];c[ca+20>>2]=c[V+20>>2];c[ca+24>>2]=c[V+24>>2];c[ca+28>>2]=c[V+28>>2]}Dg(e,I,u,T,U,k);if(G)q=sJ(e,X)|0;else q=yJ(e,X)|0;k=c[X>>2]|0;if(!(H&(k|0)>4)){if(!k)break}else{ca=q+16|0;c[ca>>2]=c[q>>2];c[ca+4>>2]=c[q+4>>2];c[ca+8>>2]=c[q+8>>2];c[ca+12>>2]=c[q+12>>2];ca=q+32|0;k=q+(k+-1<<4)|0;c[ca>>2]=c[k>>2];c[ca+4>>2]=c[k+4>>2];c[ca+8>>2]=c[k+8>>2];c[ca+12>>2]=c[k+12>>2];G3(q+48|0,k|0,16)|0;c[X>>2]=4;k=4}o=c[Z>>2]|0;n=o+k|0;if((n|0)>(c[45966]|0)){c[45966]=n<<1;p=xH(c[45964]|0,n<<5)|0;c[45964]=p;k=c[X>>2]|0}else p=c[45964]|0;n=0;while(1){if((n|0)>=(k|0))break;ca=p+(o<<4)|0;X=q+(n<<4)|0;c[ca>>2]=c[X>>2];c[ca+4>>2]=c[X+4>>2];c[ca+8>>2]=c[X+8>>2];c[ca+12>>2]=c[X+12>>2];n=n+1|0;o=o+1|0}c[Z>>2]=o;Fg(I,e);if(r)k=(c[Y>>2]&3|0)==2?Y:Y+-48|0;else k=(c[u>>2]&3|0)==2?u:s;c[_>>2]=c[k+40>>2];v=o;J=63}while(0);c:do if((J|0)==63){if((i|0)==1){QK(K,c[_>>2]|0,c[45964]|0,v,17296);break}t=d+12|0;u=v+-1|0;m=+((O(c[t>>2]|0,i+-1|0)|0)/2|0|0);n=c[45964]|0;k=1;while(1){if((k|0)>=(u|0))break;ca=n+(k<<4)|0;h[ca>>3]=+h[ca>>3]-m;k=k+1|0}k=c[45966]|0;if((k|0)>(c[45967]|0)){c[45967]=k;o=xH(c[45965]|0,k<<4)|0;c[45965]=o;n=c[45964]|0}else o=c[45965]|0;k=0;while(1){if((k|0)>=(v|0))break;ca=o+(k<<4)|0;d=n+(k<<4)|0;c[ca>>2]=c[d>>2];c[ca+4>>2]=c[d+4>>2];c[ca+8>>2]=c[d+8>>2];c[ca+12>>2]=c[d+12>>2];k=k+1|0}QK(K,c[_>>2]|0,o,v,17296);r=$+48|0;s=$+-48|0;q=1;while(1){if((q|0)>=(i|0))break c;o=c[f+(q+g<<2)>>2]|0;p=o+16|0;k=c[p>>2]|0;if(c[k+164>>2]&32){n=c[aa>>2]|0;F3(n|0,k|0,176)|0;w=$;x=o;y=w+48|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));c[aa>>2]=n;w=c[$>>2]&3;c[((w|0)==3?$:r)+40>>2]=c[((c[o>>2]&3|0)==2?o:o+-48|0)+40>>2];c[((w|0)==2?$:s)+40>>2]=c[((c[o>>2]&3|0)==3?o:o+48|0)+40>>2];w=n+16|0;x=(c[p>>2]|0)+56|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));k=c[aa>>2]|0;w=k+56|0;x=(c[p>>2]|0)+16|0;y=w+40|0;do{c[w>>2]=c[x>>2];w=w+4|0;x=x+4|0}while((w|0)<(y|0));a[k+112>>0]=1;c[k+116>>2]=o;o=$}p=c[45964]|0;k=1;while(1){if((k|0)>=(u|0))break;ca=p+(k<<4)|0;h[ca>>3]=+h[ca>>3]+ +(c[t>>2]|0);k=k+1|0}n=c[45965]|0;k=0;while(1){if((k|0)>=(v|0))break;ca=n+(k<<4)|0;_=p+(k<<4)|0;c[ca>>2]=c[_>>2];c[ca+4>>2]=c[_+4>>2];c[ca+8>>2]=c[_+8>>2];c[ca+12>>2]=c[_+12>>2];k=k+1|0}QK(o,c[((c[o>>2]&3|0)==2?o:o+-48|0)+40>>2]|0,n,v,17296);q=q+1|0}}while(0);l=ba;return}function ug(a){a=a|0;var b=0,d=0,e=0;b=Sy(a)|0;while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;if((kb[c[4324]&63](d)|0)<<24>>24?(e=c[(c[d+16>>2]|0)+8>>2]|0,e|0):0)vg(e);d=Gx(a,d)|0}b=Ty(a,b)|0}return}function vg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[a+4>>2]|0;g=vH(f*48|0)|0;b=g;d=0;e=(c[a>>2]|0)+((f+-1|0)*48|0)|0;while(1){if((d|0)>=(f|0)){b=0;break}wg(e,b);b=b+48|0;d=d+1|0;e=e+-48|0}while(1){d=c[a>>2]|0;if((b|0)>=(f|0))break;D_(c[d+(b*48|0)>>2]|0);b=b+1|0}D_(d);c[a>>2]=g;return}function wg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=c[a+4>>2]|0;h=vH(g<<4)|0;d=h;e=0;f=(c[a>>2]|0)+(g+-1<<4)|0;while(1){if((e|0)>=(g|0))break;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];d=d+16|0;e=e+1|0;f=f+-16|0}c[b>>2]=h;c[b+4>>2]=g;c[b+8>>2]=c[a+12>>2];c[b+12>>2]=c[a+8>>2];h=b+16|0;g=a+32|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=b+32|0;g=a+16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];return}function xg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0.0,j=0.0,k=0.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;x=l;l=l+96|0;q=x+80|0;s=x+64|0;r=x+48|0;u=x+32|0;v=x+16|0;w=x;m=d;while(1){t=m+16|0;g=c[t>>2]|0;if(!(a[g+112>>0]|0))break;m=c[g+116>>2]|0}g=c[m>>2]&3;o=c[((g|0)==2?m:m+-48|0)+40>>2]|0;g=c[((g|0)==3?m:m+48|0)+40>>2]|0;m=o+16|0;n=g+16|0;y=(c[(c[m>>2]|0)+232>>2]|0)-(c[(c[n>>2]|0)+232>>2]|0)|0;switch(((y|0)>-1?y:0-y|0)|0){case 1:{g=0;break}case 2:{if(!(a[(c[(c[b+60>>2]|0)+16>>2]|0)+113>>0]&1))p=6;else g=0;break}default:p=6}do if((p|0)==6){if((c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)==(g|0)){c[f>>2]=o;y=(c[n>>2]|0)+16|0;p=(c[t>>2]|0)+16|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Pg(u,s,q);p=(c[m>>2]|0)+16|0;y=(c[t>>2]|0)+56|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];Pg(v,s,q)}else{c[f>>2]=g;y=(c[m>>2]|0)+16|0;p=(c[t>>2]|0)+56|0;c[s>>2]=c[y>>2];c[s+4>>2]=c[y+4>>2];c[s+8>>2]=c[y+8>>2];c[s+12>>2]=c[y+12>>2];c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Pg(u,s,q);p=(c[n>>2]|0)+16|0;y=(c[t>>2]|0)+16|0;c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];c[s+12>>2]=c[p+12>>2];c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];Pg(v,s,q)}g=c[(c[t>>2]|0)+96>>2]|0;if(!g){g=e+16|0;c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[g+12>>2]=c[u+12>>2];g=e+48|0;y=e+32|0;c[y>>2]=c[v>>2];c[y+4>>2]=c[v+4>>2];c[y+8>>2]=c[v+8>>2];c[y+12>>2]=c[v+12>>2];c[g>>2]=c[v>>2];c[g+4>>2]=c[v+4>>2];c[g+8>>2]=c[v+8>>2];c[g+12>>2]=c[v+12>>2];g=4;break}j=+h[g+24>>3];i=+h[g+32>>3];p=(c[(c[(ez(o)|0)+16>>2]|0)+116>>2]&1|0)==0;k=p?i:j;y=(c[(c[t>>2]|0)+96>>2]|0)+56|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2];c[w+8>>2]=c[y+8>>2];c[w+12>>2]=c[y+12>>2];c[r>>2]=c[v>>2];c[r+4>>2]=c[v+4>>2];c[r+8>>2]=c[v+8>>2];c[r+12>>2]=c[v+12>>2];c[s>>2]=c[u>>2];c[s+4>>2]=c[u+4>>2];c[s+8>>2]=c[u+8>>2];c[s+12>>2]=c[u+12>>2];c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];y=(Qg(r,s,q)|0)==0;i=(p?j:i)*.5;j=+h[w>>3];if(y){h[w>>3]=j-i;y=w+8|0;h[y>>3]=+h[y>>3]+k*.5}else{h[w>>3]=j+i;y=w+8|0;h[y>>3]=+h[y>>3]-k*.5}g=e+16|0;c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[g+12>>2]=c[u+12>>2];g=e+32|0;y=e+48|0;u=e+64|0;c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[y+8>>2]=c[w+8>>2];c[y+12>>2]=c[w+12>>2];c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2];g=e+80|0;y=e+96|0;c[y>>2]=c[v>>2];c[y+4>>2]=c[v+4>>2];c[y+8>>2]=c[v+8>>2];c[y+12>>2]=c[v+12>>2];c[g>>2]=c[v>>2];c[g+4>>2]=c[v+4>>2];c[g+8>>2]=c[v+8>>2];c[g+12>>2]=c[v+12>>2];g=7}while(0);l=x;return g|0}function yg(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0,l=0,m=0.0,n=0,o=0.0,p=0.0,q=0;q=c[f+16>>2]|0;p=+h[q+16>>3];j=p-+h[q+88>>3];m=j+-4.0;l=Lg(d,f,g,i,-1)|0;if(!l){n=~~(j+(m>=0.0?-3.5:-4.5));k=c[e>>2]|0;k=(k|0)>(n|0)?n:k}else{k=Mg(d,f,l)|0;do if(!k){n=c[l+16>>2]|0;j=+h[n+240>>3]+ +h[n+16>>3];if(!(a[n+156>>0]|0)){j=+(c[(c[d+16>>2]|0)+248>>2]|0)*.5+j;break}else{j=j+ +(c[e+8>>2]|0);break}}else j=+h[(c[k+16>>2]|0)+32>>3]+ +(c[e+8>>2]|0);while(0);o=j=0.0?.5:-.5))}o=+(k|0);n=(a[q+156>>0]|0)==1;if(n?(c[q+104>>2]|0)!=0:0)m=p+10.0;else m=p+4.0+ +h[q+96>>3];l=Lg(d,f,g,i,1)|0;if(!l){f=~~(m+(m>=0.0?.5:-.5));k=c[e+4>>2]|0;k=(k|0)<(f|0)?f:k}else{k=Mg(d,f,l)|0;do if(!k){f=c[l+16>>2]|0;j=+h[f+16>>3]-+h[f+88>>3];if(!(a[f+156>>0]|0)){j=j-+(c[(c[d+16>>2]|0)+248>>2]|0)*.5;break}else{j=j-+(c[e+8>>2]|0);break}}else j=+h[(c[k+16>>2]|0)+16>>3]-+(c[e+8>>2]|0);while(0);m=j>m?j:m;k=~~(m+(m>=0.0?.5:-.5))}j=+(k|0);if(n?(c[q+104>>2]|0)!=0:0){j=j-+h[q+96>>3];if(j>3];d=c[(c[d+16>>2]|0)+196>>2]|0;q=c[q+232>>2]|0;m=p-+h[d+(q<<6)+16>>3];p=+h[d+(q<<6)+24>>3]+p;h[b>>3]=o;h[b+8>>3]=m;h[b+16>>3]=j;h[b+24>>3]=p;return}function zg(b){b=b|0;b=c[b+16>>2]|0;if((a[b+156>>0]|0)==1)if((c[b+176>>2]|0)>1)b=1;else b=(c[b+184>>2]|0)>1&1;else b=0;return b|0}function Ag(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=l;l=l+32|0;f=g;switch(d|0){case 1:{Kg(f,+h[b>>3],e,+h[b+16>>3],+h[b+8>>3]);break}case 4:{Kg(f,+h[b>>3],+h[b+24>>3],+h[b+16>>3],e);break}default:{}}c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[a+28>>2]=c[f+28>>2];l=g;return}function Bg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0;l=c[b+16>>2]|0;k=l+(e<<5)|0;j=+h[k>>3];m=l+(e<<5)+8|0;g=+h[m>>3];n=l+(e<<5)+16|0;f=+h[n>>3];l=l+(e<<5)+24|0;i=+h[l>>3];if(j==f){d=c[(c[d+16>>2]|0)+196>>2]|0;o=e+1|0;j=+(c[b>>2]|0);g=+h[d+(o<<6)+24>>3]+ +h[(c[(c[c[d+(o<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];f=+(c[b+4>>2]|0);i=+h[(c[(c[c[d+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[d+(e<<6)+16>>3];h[k>>3]=j;h[m>>3]=g;h[n>>3]=f;h[l>>3]=i}h[a>>3]=j;h[a+8>>3]=g;h[a+16>>3]=f;h[a+24>>3]=i;return}function Cg(b){b=b|0;var d=0,e=0;b=c[b+16>>2]|0;e=b+16|0;d=0;while(1){b=c[c[b+180>>2]>>2]|0;b=c[(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0;if((a[b+156>>0]|0)!=1)break;if((c[b+184>>2]|0)!=1)break;if((c[b+176>>2]|0)!=1)break;if(+h[b+16>>3]!=+h[e>>3])break;d=d+1|0}return d|0}function Dg(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+32|0;j=k;h=Hg(b,-1)|0;b=Hg(b,1)|0;if(!((h|0)!=0?!(fL(h)|0):0))i=3;do if((i|0)==3){if(b|0?(fL(b)|0)==0:0)break;h=Ig(d,-1)|0;b=Ig(d,1)|0;if(h|0?(fL(h)|0)==0:0)break;if(b|0?(fL(b)|0)==0:0)break;h=e+52|0;b=0;while(1){if((b|0)>=(c[h>>2]|0))break;d=e+56+(b<<5)|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[j+16>>2]=c[d+16>>2];c[j+20>>2]=c[d+20>>2];c[j+24>>2]=c[d+24>>2];c[j+28>>2]=c[d+28>>2];SK(a,j);b=b+1|0}h=c[a+80>>2]|0;i=g+-3|0;b=0;while(1){if((b|0)>=(g|0))break;e=150640+(b<<5)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];c[j+16>>2]=c[e+16>>2];c[j+20>>2]=c[e+20>>2];c[j+24>>2]=c[e+24>>2];c[j+28>>2]=c[e+28>>2];SK(a,j);b=b+1|0}d=h+1|0;i=i+d|0;h=c[f+52>>2]|0;while(1){b=h+-1|0;if((h|0)<=0)break;h=f+56+(b<<5)|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];c[j+16>>2]=c[h+16>>2];c[j+20>>2]=c[h+20>>2];c[j+24>>2]=c[h+24>>2];c[j+28>>2]=c[h+28>>2];SK(a,j);h=b}Jg(a,d,i)}while(0);l=k;return}function Eg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[e>>2]|0;while(1){if(!b)break;a=c[c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0;b=b+-1|0}c[e>>2]=f+1;g=d+(f<<4)|0;b=d+(f+-1<<4)|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];f=c[e>>2]|0;c[e>>2]=f+1;f=d+(f<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=d+(c[e>>2]<<4)|0;e=(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+16|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];return a|0}function Fg(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0;m=d+84|0;l=d+80|0;e=0;d=b;a:while(1){j=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;k=j+16|0;if((a[(c[k>>2]|0)+156>>0]|0)!=1)break;if((kb[c[17300>>2]&63](j)|0)<<24>>24)break;d=c[l>>2]|0;while(1){if((e|0)>=(d|0))break a;if(!(+h[(c[m>>2]|0)+(e<<5)+8>>3]>+h[(c[k>>2]|0)+24>>3]))break;e=e+1|0}d=c[m>>2]|0;b=c[k>>2]|0;do if(!(+h[d+(e<<5)+24>>3]<+h[b+24>>3])){g=+h[d+(e<<5)>>3];i=~~g;f=+h[d+(e<<5)+16>>3];if(!(c[b+104>>2]|0)){Gg(j,i,~~((f+g)*.5),~~f);break}else{Gg(j,i,~~f,~~(+h[b+96>>3]+f));break}}while(0);d=c[c[(c[k>>2]|0)+180>>2]>>2]|0}return}function Gg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a+16>>2]|0;h[a+16>>3]=+(d|0);h[a+88>>3]=+(d-b|0);h[a+96>>3]=+(e-d|0);return}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]&3;i=c[(c[(c[((h|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+180>>2]|0;h=((h|0)==2?a:a+-48|0)+40|0;g=0;a=0;while(1){e=c[i+(g<<2)>>2]|0;if(!e)break;f=c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;do if((O(f-(c[(c[(c[h>>2]|0)+16>>2]|0)+236>>2]|0)|0,b)|0)>=1){d=c[e+16>>2]|0;if(!(c[d+8>>2]|0)){d=c[d+116>>2]|0;if(!d)break;if(!(c[(c[d+16>>2]|0)+8>>2]|0))break}if(a|0?(O((c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-f|0,b)|0)<=0:0)break;a=e}while(0);g=g+1|0}return a|0}function Ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]&3;i=c[(c[(c[((h|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+172>>2]|0;h=((h|0)==3?a:a+48|0)+40|0;g=0;a=0;while(1){e=c[i+(g<<2)>>2]|0;if(!e)break;f=c[(c[(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;do if((O(f-(c[(c[(c[h>>2]|0)+16>>2]|0)+236>>2]|0)|0,b)|0)>=1){d=c[e+16>>2]|0;if(!(c[d+8>>2]|0)){d=c[d+116>>2]|0;if(!d)break;if(!(c[(c[d+16>>2]|0)+8>>2]|0))break}if(a|0?(O((c[(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-f|0,b)|0)<=0:0)break;a=e}while(0);g=g+1|0}return a|0}function Jg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,l=0,m=0.0;l=a+84|0;i=b+-1|0;while(1){if((i|0)>(d|0))break;f=c[l>>2]|0;j=f+(i<<5)|0;e=+h[j>>3];if(!(i-b&1)){f=f+(i<<5)+16|0;m=+h[f>>3];g=~~((m+e)*.5);if(e>=m){h[j>>3]=+(g+-8|0);h[f>>3]=+(g+8|0)}}else{f=f+(i<<5)+16|0;m=+h[f>>3];g=~~((m+e)*.5);if(e+16.0>m){h[j>>3]=+(g+-8|0);h[f>>3]=+(g+8|0)}}i=i+1|0}k=(c[a+80>>2]|0)+-1|0;g=0;while(1){if((g|0)>=(k|0))break;i=c[l>>2]|0;f=i+(g<<5)|0;j=g+1|0;a=i+(j<<5)|0;if(!((g|0)<(b|0)|(g|0)>(d|0))?(g-b&1|0)==0:0){e=+h[f>>3]+16.0;f=i+(j<<5)+16|0;if(e>+h[f>>3])h[f>>3]=e;e=+h[i+(g<<5)+16>>3]+-16.0;if(!(e<+h[a>>3])){g=j;continue}h[a>>3]=e;g=j;continue}if(!((g|0)<(d|0)&(j|0)>=(b|0))){g=j;continue}if(j-b&1|0){g=j;continue}e=+h[i+(j<<5)+16>>3];if(+h[f>>3]+16.0>e)h[f>>3]=e+-16.0;f=i+(g<<5)+16|0;e=+h[a>>3];if(!(+h[f>>3]+-16.0>3]=e+16.0;g=j}return}function Kg(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;h[a>>3]=b;h[a+8>>3]=c;h[a+16>>3]=d;h[a+24>>3]=e;return}function Lg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=c[(c[b+16>>2]|0)+196>>2]|0;h=c[d+16>>2]|0;j=c[h+232>>2]|0;i=k+(j<<6)|0;j=k+(j<<6)+4|0;h=c[h+236>>2]|0;a:do{h=h+g|0;if((h|0)<=-1){b=0;break}if((h|0)>=(c[i>>2]|0)){b=0;break}b=c[(c[j>>2]|0)+(h<<2)>>2]|0;k=c[b+16>>2]|0;switch(a[k+156>>0]|0){case 0:break a;case 1:{if(c[k+104>>2]|0)break a;break}default:{}}}while((Og(b,d,e,f)|0)<<24>>24!=0);return b|0}function Mg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;d=c[d+16>>2]|0;if(!(a[d+156>>0]|0)){i=c[d+212>>2]|0;h=i}else{i=c[(c[(c[c[d+180>>2]>>2]|0)+16>>2]|0)+116>>2]|0;g=c[i>>2]&3;h=c[(c[(c[((g|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;i=c[(c[(c[((g|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0}d=c[e+16>>2]|0;if(!(a[d+156>>0]|0)){e=c[d+212>>2]|0;e=(e|0)==(b|0)?0:e;return ((e|0)==(h|0)|((e|0)==0|(e|0)==(i|0))?0:e)|0}f=c[(c[(c[c[d+180>>2]>>2]|0)+16>>2]|0)+116>>2]|0;g=c[f>>2]&3;d=c[(c[(c[((g|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;d=(d|0)==(b|0)?0:d;if(!(!((d|0)==(h|0)|((d|0)==0|(d|0)==(i|0)))?(Ng(d,e)|0)!=0:0)){d=c[(c[(c[((g|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;d=(d|0)==(b|0)?0:d;if((d|0)==(h|0)|((d|0)==0|(d|0)==(i|0)))d=0;else{e=(Ng(d,e)|0)==0;return (e?0:d)|0}}return d|0}function Ng(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0;d=c[a+16>>2]|0;a=c[b+16>>2]|0;f=+h[a+16>>3];if((+h[d+16>>3]<=f?f<=+h[d+32>>3]:0)?(e=+h[a+24>>3],+h[d+24>>3]<=e):0)a=e<=+h[d+40>>3]&1;else a=0;return a|0}function Og(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=c[b+16>>2]|0;j=(c[i+236>>2]|0)>(c[(c[d+16>>2]|0)+236>>2]|0);a:do if((c[i+184>>2]|0)==1){b:do if(f|0){h=0;b=c[c[i+180>>2]>>2]|0;while(1){if((h|0)>=2)break b;b=c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0;d=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((b|0)==(d|0))break b;g=c[b+16>>2]|0;b=c[d+16>>2]|0;if(j^(c[g+236>>2]|0)>(c[b+236>>2]|0)){b=1;break a}if((c[g+184>>2]|0)!=1)break b;if(!(a[g+156>>0]|0))break b;if((c[b+184>>2]|0)!=1)break b;if(!(a[b+156>>0]|0))break b;h=h+1|0;f=c[c[b+180>>2]>>2]|0;b=c[c[g+180>>2]>>2]|0}}while(0);if(e|0?(c[i+176>>2]|0)==1:0){g=0;d=e;b=c[c[i+172>>2]>>2]|0;while(1){if((g|0)>=2){b=0;break a}b=c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0;d=c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0;if((b|0)==(d|0)){b=0;break a}f=c[b+16>>2]|0;b=c[d+16>>2]|0;if(j^(c[f+236>>2]|0)>(c[b+236>>2]|0)){b=1;break a}if((c[f+176>>2]|0)!=1){b=0;break a}if(!(a[f+156>>0]|0)){b=0;break a}if((c[b+176>>2]|0)!=1){b=0;break a}if(!(a[b+156>>0]|0)){b=0;break a}g=g+1|0;d=c[c[b+172>>2]>>2]|0;b=c[c[f+172>>2]>>2]|0}}else b=0}else b=0;while(0);return b|0}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function Qg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0;d=+h[b+8>>3];e=+h[b>>3];return (~~((+h[c>>3]-e)*(+h[a+8>>3]-d)-(+h[a>>3]-e)*(+h[c+8>>3]-d))|0)>0|0}function Rg(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0.0,w=0.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,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;R=l;l=l+256|0;D=R+232|0;C=R+216|0;P=R+88|0;O=R+80|0;K=R+64|0;L=R+200|0;M=R+184|0;N=R;E=R+168|0;F=R+152|0;G=R+136|0;H=R+120|0;I=R+104|0;B=c[g>>2]&3;J=c[((B|0)==3?g:g+48|0)+40>>2]|0;B=c[((B|0)==2?g:g+-48|0)+40>>2]|0;do if((HJ(J)|0)!=2?(HJ(B)|0)!=2:0){g=0;j=0;k=0;while(1){if((k|0)>=(f|0))break;A=c[(c[d+(k+e<<2)>>2]|0)+16>>2]|0;g=g+((c[A+96>>2]|0)!=0&1)|0;if(!((a[A+44>>0]|0)==0?(a[A+84>>0]|0)==0:0))j=1;k=k+1|0}if(!j)if(!g){Tg(J,B,d,e,f,i);break}else{Yg(J,B,d,e,f,i,g);break}y=uH(156)|0;z=Zg(b,y)|0;t=vA(z,85383,1)|0;Az(t,134401,280,1)|0;zx(t,87076,87090)|0;m=+h[(c[B+16>>2]|0)+16>>3];s=+h[(c[J+16>>2]|0)+16>>3];A=b+16|0;q=(c[(c[A>>2]|0)+116>>2]&1|0)==0;r=q?B:J;q=q?J:B;t=_g(t,q)|0;u=_g(z,r)|0;g=0;p=0;while(1){if((p|0)>=(f|0))break;j=d+(p+e<<2)|0;while(1){o=c[j>>2]|0;n=o+16|0;j=c[n>>2]|0;if(!(a[j+112>>0]|0))break;else j=j+116|0}if((c[((c[o>>2]&3|0)==3?o:o+48|0)+40>>2]|0)==(q|0))k=$g(z,t,u,o)|0;else k=$g(z,u,t,o)|0;j=c[n>>2]|0;c[j+120>>2]=k;if(!g)if((a[j+44>>0]|0)==0?(a[j+84>>0]|0)==0:0){c[(c[k+16>>2]|0)+120>>2]=o;g=k}else g=0;p=p+1|0}if(!g)x=Rx(z,t,u,0,1)|0;else x=g;rx(x,c[46404]|0,85387)|0;g=z+16|0;n=c[g>>2]|0;c[n+144>>2]=c[(c[A>>2]|0)+144>>2];c[n+188>>2]=z;$M(z,i);Qf(z);zj(z,0);Jh(z,0);Mi(z,0);q=q+16|0;i=c[q>>2]|0;n=c[r+16>>2]|0;r=t+16|0;o=c[r>>2]|0;p=o+16|0;v=+(~~m|0);w=+(~~((+h[(c[u+16>>2]|0)+16>>3]+ +h[p>>3])*.5)|0);m=+(~~s|0);s=+(~~((+h[i+16>>3]-+h[i+96>>3]+ +h[n+16>>3]+ +h[n+88>>3])*.5)|0);n=o+24|0;g=(c[g>>2]|0)+192|0;while(1){j=c[g>>2]|0;if(!j)break;do if((j|0)!=(t|0)){g=c[j+16>>2]|0;k=g+24|0;if((j|0)==(u|0)){h[k>>3]=m;h[g+16>>3]=w;break}else{h[k>>3]=s;break}}else{h[n>>3]=v;h[p>>3]=w;g=o}while(0);g=g+164|0}tk(z);lg(z,0);eJ(z);k=c[q>>2]|0;g=c[r>>2]|0;if(!(c[(c[A>>2]|0)+116>>2]&1)){j=g+16|0;m=+h[k+24>>3]-+h[g+24>>3]}else{j=g+24|0;m=+h[g+16>>3]+ +h[k+24>>3]}h[K>>3]=+h[k+16>>3]-+h[j>>3];h[K+8>>3]=m;i=N+16|0;t=N+32|0;u=N+48|0;r=0;while(1){if((r|0)>=(f|0))break;g=d+(r+e<<2)|0;while(1){j=c[g>>2]|0;q=j+16|0;g=c[q>>2]|0;if(!(a[g+112>>0]|0))break;else g=g+116|0}o=c[g+120>>2]|0;p=o+16|0;g=c[p>>2]|0;if(!((o|0)==(x|0)&(c[g+120>>2]|0)==0)){n=c[c[g+8>>2]>>2]|0;o=n+4|0;j=PK(j,c[o>>2]|0)|0;c[j+8>>2]=c[n+8>>2];g=j+16|0;k=n+16|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(L,C,D,S);c[g>>2]=c[L>>2];c[g+4>>2]=c[L+4>>2];c[g+8>>2]=c[L+8>>2];c[g+12>>2]=c[L+12>>2];c[j+12>>2]=c[n+12>>2];g=j+32|0;S=n+32|0;k=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(M,C,D,k);c[g>>2]=c[M>>2];c[g+4>>2]=c[M+4>>2];c[g+8>>2]=c[M+8>>2];c[g+12>>2]=c[M+12>>2];g=0;while(1){if((g|0)>=(c[o>>2]|0))break;k=(c[j>>2]|0)+(g<<4)|0;T=(c[n>>2]|0)+(g<<4)|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[T>>2];c[C+4>>2]=c[T+4>>2];c[C+8>>2]=c[T+8>>2];c[C+12>>2]=c[T+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(E,C,D,S);c[k>>2]=c[E>>2];c[k+4>>2]=c[E+4>>2];c[k+8>>2]=c[E+8>>2];c[k+12>>2]=c[E+12>>2];c[N>>2]=c[E>>2];c[N+4>>2]=c[E+4>>2];c[N+8>>2]=c[E+8>>2];c[N+12>>2]=c[E+12>>2];k=g+1|0;if((k|0)>=(c[o>>2]|0)){Q=48;break}S=(c[j>>2]|0)+(k<<4)|0;k=(c[n>>2]|0)+(k<<4)|0;T=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(F,C,D,T);c[S>>2]=c[F>>2];c[S+4>>2]=c[F+4>>2];c[S+8>>2]=c[F+8>>2];c[S+12>>2]=c[F+12>>2];c[i>>2]=c[F>>2];c[i+4>>2]=c[F+4>>2];c[i+8>>2]=c[F+8>>2];c[i+12>>2]=c[F+12>>2];S=g+2|0;T=(c[j>>2]|0)+(S<<4)|0;S=(c[n>>2]|0)+(S<<4)|0;k=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[S>>2];c[C+4>>2]=c[S+4>>2];c[C+8>>2]=c[S+8>>2];c[C+12>>2]=c[S+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(G,C,D,k);c[T>>2]=c[G>>2];c[T+4>>2]=c[G+4>>2];c[T+8>>2]=c[G+8>>2];c[T+12>>2]=c[G+12>>2];c[t>>2]=c[G>>2];c[t+4>>2]=c[G+4>>2];c[t+8>>2]=c[G+8>>2];c[t+12>>2]=c[G+12>>2];T=g+3|0;k=(c[n>>2]|0)+(T<<4)|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(H,C,D,S);c[u>>2]=c[H>>2];c[u+4>>2]=c[H+4>>2];c[u+8>>2]=c[H+8>>2];c[u+12>>2]=c[H+12>>2];YE((c[A>>2]|0)+16|0,N);g=T}if((Q|0)==48)Q=0;g=c[(c[q>>2]|0)+96>>2]|0;if(g|0){T=g+56|0;p=(c[(c[p>>2]|0)+96>>2]|0)+56|0;S=c[(c[A>>2]|0)+116>>2]&1;c[C>>2]=c[p>>2];c[C+4>>2]=c[p+4>>2];c[C+8>>2]=c[p+8>>2];c[C+12>>2]=c[p+12>>2];c[D>>2]=c[K>>2];c[D+4>>2]=c[K+4>>2];c[D+8>>2]=c[K+8>>2];c[D+12>>2]=c[K+12>>2];ah(I,C,D,S);c[T>>2]=c[I>>2];c[T+4>>2]=c[I+4>>2];c[T+8>>2]=c[I+8>>2];c[T+12>>2]=c[I+12>>2];T=c[(c[q>>2]|0)+96>>2]|0;a[T+81>>0]=1;kM(b,T)}}r=r+1|0}bh(z,y)}else Q=3;while(0);if((Q|0)==3?(c[45968]|0)==0:0){c[45968]=1;Pw(0,85260,O)|0;Q=ry(J)|0;S=(ey(b)|0)!=0;T=ry(B)|0;c[P>>2]=Q;c[P+4>>2]=S?134656:138665;c[P+8>>2]=T;Pw(3,85366,P)|0}l=R;return}function Sg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0;z=l;l=l+1600|0;u=z+1552|0;n=z+1536|0;t=z+840|0;v=z+144|0;w=z+1584|0;j=z+32|0;s=z+16|0;o=z;q=c[f>>2]&3;p=c[((q|0)==3?f:f+48|0)+40>>2]|0;x=f+-48|0;q=c[((q|0)==2?f:x)+40>>2]|0;r=f+16|0;k=c[r>>2]|0;i=c[k+172>>2]|0;while(1){m=c[(c[i+16>>2]|0)+172>>2]|0;if(!m)break;else i=m}k=(c[k+96>>2]|0)+56|0;i=(c[((c[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)+16|0;m=(c[i>>2]|0)+16|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];k=c[r>>2]|0;a[(c[k+96>>2]|0)+81>>0]=1;if((g|0)!=2){k=c[i>>2]|0;C=+h[k+16>>3];E=C-+h[k+88>>3];C=+h[k+96>>3]+C;B=+h[k+24>>3];D=+h[k+80>>3]*.5+B;k=c[(c[b+16>>2]|0)+196>>2]|0;m=c[p+16>>2]|0;j=c[m+232>>2]|0;B=+(~~(+(~~(B-+h[k+(j<<6)+16>>3]-+h[m+24>>3]+ +h[k+(j<<6)+24>>3])|0)*.16666666666666666)|0);B=D-(B<5.0?5.0:B);Vg(b,d,e,p,f,t,1);Vg(b,d,e,q,f,v,0);j=t+52|0;k=c[j>>2]|0;m=k+-1|0;A=+h[t+56+(m<<5)>>3];h[18830]=A;h[18831]=+h[t+56+(m<<5)+24>>3];h[18832]=E;h[18833]=B;h[18834]=A;h[18835]=B;m=v+52|0;i=(c[m>>2]|0)+-1|0;A=+h[v+56+(i<<5)+16>>3];h[18836]=A;h[18837]=D;h[18838]=C;h[18841]=B;h[18839]=+h[v+56+(i<<5)+24>>3];h[18840]=A;i=0;while(1){if((i|0)>=(k|0)){i=0;break}k=t+56+(i<<5)|0;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[u+12>>2]=c[k+12>>2];c[u+16>>2]=c[k+16>>2];c[u+20>>2]=c[k+20>>2];c[u+24>>2]=c[k+24>>2];c[u+28>>2]=c[k+28>>2];SK(e,u);i=i+1|0;k=c[j>>2]|0}while(1){if((i|0)==3)break;t=150640+(i<<5)|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[u+12>>2]=c[t+12>>2];c[u+16>>2]=c[t+16>>2];c[u+20>>2]=c[t+20>>2];c[u+24>>2]=c[t+24>>2];c[u+28>>2]=c[t+28>>2];SK(e,u);i=i+1|0}j=c[m>>2]|0;while(1){i=j+-1|0;if((j|0)<=0)break;j=v+56+(i<<5)|0;c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];c[u+8>>2]=c[j+8>>2];c[u+12>>2]=c[j+12>>2];c[u+16>>2]=c[j+16>>2];c[u+20>>2]=c[j+20>>2];c[u+24>>2]=c[j+24>>2];c[u+28>>2]=c[j+28>>2];SK(e,u);j=i}if((g|0)==10)j=sJ(e,w)|0;else j=yJ(e,w)|0;i=c[w>>2]|0;if(i|0)y=17}else{i=(c[p+16>>2]|0)+16|0;v=k+16|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];c[u>>2]=c[v>>2];c[u+4>>2]=c[v+4>>2];c[u+8>>2]=c[v+8>>2];c[u+12>>2]=c[v+12>>2];Pg(s,n,u);v=(c[q+16>>2]|0)+16|0;i=(c[r>>2]|0)+56|0;c[n>>2]=c[v>>2];c[n+4>>2]=c[v+4>>2];c[n+8>>2]=c[v+8>>2];c[n+12>>2]=c[v+12>>2];c[u>>2]=c[i>>2];c[u+4>>2]=c[i+4>>2];c[u+8>>2]=c[i+8>>2];c[u+12>>2]=c[i+12>>2];Pg(o,n,u);i=c[(c[r>>2]|0)+96>>2]|0;D=+h[i+56>>3];E=+h[i+64>>3]-+h[i+32>>3]*.5;i=j+16|0;c[j>>2]=c[s>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[j+12>>2]=c[s+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];i=j+32|0;v=j+48|0;y=j+64|0;h[j+64>>3]=D;h[j+72>>3]=E;c[v>>2]=c[y>>2];c[v+4>>2]=c[y+4>>2];c[v+8>>2]=c[y+8>>2];c[v+12>>2]=c[y+12>>2];c[i>>2]=c[y>>2];c[i+4>>2]=c[y+4>>2];c[i+8>>2]=c[y+8>>2];c[i+12>>2]=c[y+12>>2];i=j+80|0;y=j+96|0;c[y>>2]=c[o>>2];c[y+4>>2]=c[o+4>>2];c[y+8>>2]=c[o+8>>2];c[y+12>>2]=c[o+12>>2];c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];c[w>>2]=7;i=7;y=17}if((y|0)==17)QK(f,c[((c[f>>2]&3|0)==2?f:x)+40>>2]|0,j,i,17296);l=z;return}function Tg(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;N=l;l=l+352|0;x=N+336|0;w=N+320|0;L=N+128|0;u=N+304|0;y=N+288|0;M=N+112|0;E=N+96|0;F=N+80|0;G=N+64|0;H=N+48|0;I=N+32|0;J=N+16|0;K=N;a=a+16|0;q=(c[a>>2]|0)+16|0;v=(c[d+(e<<2)>>2]|0)+16|0;s=(c[v>>2]|0)+16|0;c[w>>2]=c[q>>2];c[w+4>>2]=c[q+4>>2];c[w+8>>2]=c[q+8>>2];c[w+12>>2]=c[q+12>>2];c[x>>2]=c[s>>2];c[x+4>>2]=c[s+4>>2];c[x+8>>2]=c[s+8>>2];c[x+12>>2]=c[s+12>>2];Pg(u,w,x);C=+h[u>>3];D=+h[u+8>>3];u=(c[b+16>>2]|0)+16|0;v=(c[v>>2]|0)+56|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[w+12>>2]=c[u+12>>2];c[x>>2]=c[v>>2];c[x+4>>2]=c[v+4>>2];c[x+8>>2]=c[v+8>>2];c[x+12>>2]=c[v+12>>2];Pg(y,w,x);A=+h[y>>3];B=+h[y+8>>3];if((f|0)>1){z=+h[(c[a>>2]|0)+80>>3];i=z*.5;z=z/+(f+-1|0)}else{i=0.0;z=0.0}p=(g|8|0)==10;m=L+8|0;q=L+16|0;r=(A+C*2.0)*.3333333333333333;s=L+32|0;t=(A*2.0+C)*.3333333333333333;n=L+24|0;u=L+48|0;v=L+64|0;w=L+80|0;x=L+96|0;y=L+112|0;k=L+128|0;o=L+136|0;i=D-i;b=0;while(1){if((b|0)>=(f|0))break;j=c[d+(b+e<<2)>>2]|0;h[L>>3]=C;h[m>>3]=D;if(p){Xg(M,r,i);c[q>>2]=c[M>>2];c[q+4>>2]=c[M+4>>2];c[q+8>>2]=c[M+8>>2];c[q+12>>2]=c[M+12>>2];Xg(E,t,i);c[s>>2]=c[E>>2];c[s+4>>2]=c[E+4>>2];c[s+8>>2]=c[E+8>>2];c[s+12>>2]=c[E+12>>2];a=4;g=3}else{h[q>>3]=C;h[n>>3]=D;Xg(F,r,i);c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[s+8>>2]=c[F+8>>2];c[s+12>>2]=c[F+12>>2];Xg(G,r,i);c[u>>2]=c[G>>2];c[u+4>>2]=c[G+4>>2];c[u+8>>2]=c[G+8>>2];c[u+12>>2]=c[G+12>>2];Xg(H,r,i);c[v>>2]=c[H>>2];c[v+4>>2]=c[H+4>>2];c[v+8>>2]=c[H+8>>2];c[v+12>>2]=c[H+12>>2];Xg(I,t,i);c[w>>2]=c[I>>2];c[w+4>>2]=c[I+4>>2];c[w+8>>2]=c[I+8>>2];c[w+12>>2]=c[I+12>>2];Xg(J,t,i);c[x>>2]=c[J>>2];c[x+4>>2]=c[J+4>>2];c[x+8>>2]=c[J+8>>2];c[x+12>>2]=c[J+12>>2];Xg(K,t,i);c[y>>2]=c[K>>2];c[y+4>>2]=c[K+4>>2];c[y+8>>2]=c[K+8>>2];c[y+12>>2]=c[K+12>>2];h[k>>3]=A;h[o>>3]=B;a=10;g=9}h[L+(g<<4)>>3]=A;h[L+(g<<4)+8>>3]=B;QK(j,c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0,L,a,17296);i=i+z;b=b+1|0}l=N;return}function Ug(a,d,e,f,g,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0;x=l;l=l+1440|0;t=x+1392|0;v=x+1424|0;w=x+696|0;u=x;r=c[j>>2]&3;q=c[((r|0)==3?j:j+48|0)+40>>2]|0;r=c[((r|0)==2?j:j+-48|0)+40>>2]|0;m=c[q+16>>2]|0;o=c[m+232>>2]|0;p=c[a+16>>2]|0;if((o|0)<(b[p+238>>1]|0)){y=c[p+196>>2]|0;p=o+1|0;n=+h[m+24>>3]-+h[y+(o<<6)+32>>3]-+h[(c[(c[c[y+(p<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[y+(p<<6)+40>>3]}else n=+(c[p+252>>2]|0);z=+(i+1|0);s=+(c[d+12>>2]|0)/z;n=n/z;Wg(a,d,e,q,j,w,1);Wg(a,d,e,r,j,u,0);r=w+52|0;j=u+52|0;a=(k|0)==0;d=e+80|0;m=0;while(1){if((m|0)>=(i|0))break;q=c[f+(m+g<<2)>>2]|0;p=c[r>>2]|0;o=p+-1|0;D=+h[w+56+(o<<5)>>3];B=+h[w+56+(o<<5)+8>>3];C=+h[w+56+(o<<5)+16>>3];h[18830]=D;h[18833]=B;m=m+1|0;z=+(m|0);A=s*z;h[18832]=C+A;z=B-n*z;h[18831]=z;h[18834]=D;h[18837]=z;o=(c[j>>2]|0)+-1|0;D=+h[u+56+(o<<5)+16>>3];h[18836]=D;h[18835]=z-n;B=+h[u+56+(o<<5)>>3];C=+h[u+56+(o<<5)+8>>3];h[18840]=D;h[18841]=C;h[18838]=B-A;h[18839]=z;o=0;while(1){if((o|0)>=(p|0)){o=0;break}p=w+56+(o<<5)|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[t+16>>2]=c[p+16>>2];c[t+20>>2]=c[p+20>>2];c[t+24>>2]=c[p+24>>2];c[t+28>>2]=c[p+28>>2];SK(e,t);o=o+1|0;p=c[r>>2]|0}while(1){if((o|0)==3)break;y=150640+(o<<5)|0;c[t>>2]=c[y>>2];c[t+4>>2]=c[y+4>>2];c[t+8>>2]=c[y+8>>2];c[t+12>>2]=c[y+12>>2];c[t+16>>2]=c[y+16>>2];c[t+20>>2]=c[y+20>>2];c[t+24>>2]=c[y+24>>2];c[t+28>>2]=c[y+28>>2];SK(e,t);o=o+1|0}p=c[j>>2]|0;while(1){o=p+-1|0;if((p|0)<=0)break;p=u+56+(o<<5)|0;c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];c[t+12>>2]=c[p+12>>2];c[t+16>>2]=c[p+16>>2];c[t+20>>2]=c[p+20>>2];c[t+24>>2]=c[p+24>>2];c[t+28>>2]=c[p+28>>2];SK(e,t);p=o}if(a)o=yJ(e,v)|0;else o=sJ(e,v)|0;p=c[v>>2]|0;if(!p)break;QK(q,c[((c[q>>2]&3|0)==2?q:q+-48|0)+40>>2]|0,o,p,17296);c[d>>2]=0}l=x;return}function Vg(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0.0;n=l;l=l+128|0;j=n+96|0;k=n+64|0;o=n+32|0;m=n;yg(o,a,b,e,0,f);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[g+16>>2]=c[o+16>>2];c[g+20>>2]=c[o+20>>2];c[g+24>>2]=c[o+24>>2];c[g+28>>2]=c[o+28>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];c[g+48>>2]=4;if(!(i<<24>>24))WK(d,f,2,g,0);else TK(d,f,2,g,0);b=g+52|0;f=(c[b>>2]|0)+-1|0;o=k+24|0;h[o>>3]=+h[g+56+(f<<5)+24>>3];i=k+8|0;h[i>>3]=+h[g+56+(f<<5)+8>>3];e=c[e+16>>2]|0;p=+h[(c[(c[a+16>>2]|0)+196>>2]|0)+(c[e+232>>2]<<6)+24>>3]+ +h[e+24>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];c[j+16>>2]=c[k+16>>2];c[j+20>>2]=c[k+20>>2];c[j+24>>2]=c[k+24>>2];c[j+28>>2]=c[k+28>>2];Ag(m,j,4,p);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2];if(+h[k>>3]<+h[k+16>>3]?+h[i>>3]<+h[o>>3]:0){o=c[b>>2]|0;c[b>>2]=o+1;o=g+56+(o<<5)|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[o+16>>2]=c[k+16>>2];c[o+20>>2]=c[k+20>>2];c[o+24>>2]=c[k+24>>2];c[o+28>>2]=c[k+28>>2]}l=n;return}function Wg(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0.0;n=l;l=l+128|0;j=n+96|0;k=n+64|0;o=n+32|0;m=n;yg(o,a,b,e,0,f);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[g+16>>2]=c[o+16>>2];c[g+20>>2]=c[o+20>>2];c[g+24>>2]=c[o+24>>2];c[g+28>>2]=c[o+28>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];c[k+16>>2]=c[o+16>>2];c[k+20>>2]=c[o+20>>2];c[k+24>>2]=c[o+24>>2];c[k+28>>2]=c[o+28>>2];c[g+48>>2]=1;if(!(i<<24>>24))WK(d,f,2,g,0);else TK(d,f,2,g,0);b=g+52|0;f=(c[b>>2]|0)+-1|0;o=k+24|0;h[o>>3]=+h[g+56+(f<<5)+24>>3];i=k+8|0;h[i>>3]=+h[g+56+(f<<5)+8>>3];e=c[e+16>>2]|0;p=+h[e+24>>3]-+h[(c[(c[a+16>>2]|0)+196>>2]|0)+(c[e+232>>2]<<6)+24>>3];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];c[j+16>>2]=c[k+16>>2];c[j+20>>2]=c[k+20>>2];c[j+24>>2]=c[k+24>>2];c[j+28>>2]=c[k+28>>2];Ag(m,j,1,p);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[k+16>>2]=c[m+16>>2];c[k+20>>2]=c[m+20>>2];c[k+24>>2]=c[m+24>>2];c[k+28>>2]=c[m+28>>2];if(+h[k>>3]<+h[k+16>>3]?+h[i>>3]<+h[o>>3]:0){o=c[b>>2]|0;c[b>>2]=o+1;o=g+56+(o<<5)|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[o+16>>2]=c[k+16>>2];c[o+20>>2]=c[k+20>>2];c[o+24>>2]=c[k+24>>2];c[o+28>>2]=c[k+28>>2]}l=n;return}function Xg(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function Yg(b,d,e,f,g,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0.0,B=0.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.0;Y=l;l=l+288|0;R=Y+256|0;Q=Y+240|0;P=Y+224|0;V=Y+280|0;W=Y+272|0;X=Y+32|0;S=Y+16|0;T=Y;m=Y+208|0;n=Y+192|0;o=c[e+(f<<2)>>2]|0;U=uH(g<<2)|0;k=0;while(1){if((k|0)>=(g|0))break;c[U+(k<<2)>>2]=c[e+(k+f<<2)>>2];k=k+1|0}_0(U,g,4,59);e=b+16|0;f=(c[e>>2]|0)+16|0;o=o+16|0;C=(c[o>>2]|0)+16|0;c[Q>>2]=c[f>>2];c[Q+4>>2]=c[f+4>>2];c[Q+8>>2]=c[f+8>>2];c[Q+12>>2]=c[f+12>>2];c[R>>2]=c[C>>2];c[R+4>>2]=c[C+4>>2];c[R+8>>2]=c[C+8>>2];c[R+12>>2]=c[C+12>>2];Pg(m,Q,R);c[S>>2]=c[m>>2];c[S+4>>2]=c[m+4>>2];c[S+8>>2]=c[m+8>>2];c[S+12>>2]=c[m+12>>2];C=d+16|0;f=(c[C>>2]|0)+16|0;o=(c[o>>2]|0)+56|0;c[Q>>2]=c[f>>2];c[Q+4>>2]=c[f+4>>2];c[Q+8>>2]=c[f+8>>2];c[Q+12>>2]=c[f+12>>2];c[R>>2]=c[o>>2];c[R+4>>2]=c[o+4>>2];c[R+8>>2]=c[o+8>>2];c[R+12>>2]=c[o+12>>2];Pg(n,Q,R);c[T>>2]=c[n>>2];c[T+4>>2]=c[n+4>>2];c[T+8>>2]=c[n+8>>2];c[T+12>>2]=c[n+12>>2];w=+h[(c[e>>2]|0)+96>>3]+ +h[S>>3];x=+h[T>>3]-+h[(c[C>>2]|0)+88>>3];u=x+w;v=u*.5;C=c[U>>2]|0;c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];o=X+16|0;c[o>>2]=c[S>>2];c[o+4>>2]=c[S+4>>2];c[o+8>>2]=c[S+8>>2];c[o+12>>2]=c[S+12>>2];e=X+32|0;c[e>>2]=c[T>>2];c[e+4>>2]=c[T+4>>2];c[e+8>>2]=c[T+8>>2];c[e+12>>2]=c[T+12>>2];f=X+48|0;c[f>>2]=c[T>>2];c[f+4>>2]=c[T+4>>2];c[f+8>>2]=c[T+8>>2];c[f+12>>2]=c[T+12>>2];QK(C,c[((c[C>>2]&3|0)==2?C:C+-48|0)+40>>2]|0,X,4,17296);C=c[(c[C+16>>2]|0)+96>>2]|0;h[C+56>>3]=v;z=S+8|0;r=+h[z>>3];s=+h[C+32>>3];h[C+64>>3]=(s+6.0)*.5+r;a[C+81>>0]=1;r=r+3.0;B=+h[C+24>>3];A=(u-B)*.5;B=(B+u)*.5;C=X+24|0;D=X+40|0;E=X+56|0;F=X+64|0;G=T+8|0;H=X+72|0;I=X+80|0;J=X+88|0;K=X+96|0;L=X+104|0;M=X+112|0;N=X+120|0;O=V+4|0;n=(i|0)==6&1;q=0.0;p=0.0;s=s+r;m=1;while(1){if((m|0)>=(j|0)){y=6;break}d=c[U+(m<<2)>>2]|0;if(!(m&1)){c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=A;h[C>>3]=+h[z>>3];h[e>>3]=A;h[D>>3]=s;h[f>>3]=B;h[E>>3]=s;h[F>>3]=B;t=+h[G>>3];h[H>>3]=t;Z=+h[T>>3];h[I>>3]=Z;h[J>>3]=t;h[K>>3]=Z;Z=s+6.0;h[L>>3]=Z;h[M>>3]=+h[S>>3];h[N>>3]=Z;s=+h[(c[(c[d+16>>2]|0)+96>>2]|0)+32>>3];t=Z+s*.5;s=Z+s}else{k=d+16|0;b=c[(c[k>>2]|0)+96>>2]|0;if((m|0)==1){p=+h[b+24>>3];q=(p+u)*.5;p=(u-p)*.5}r=r+-6.0-+h[b+32>>3];c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=+h[S>>3];t=r+-6.0;h[C>>3]=t;h[e>>3]=+h[T>>3];h[D>>3]=t;c[f>>2]=c[T>>2];c[f+4>>2]=c[T+4>>2];c[f+8>>2]=c[T+8>>2];c[f+12>>2]=c[T+12>>2];h[F>>3]=q;h[H>>3]=+h[G>>3];h[I>>3]=q;h[J>>3]=r;h[K>>3]=p;h[L>>3]=r;h[M>>3]=p;h[N>>3]=+h[z>>3];t=+h[(c[(c[k>>2]|0)+96>>2]|0)+32>>3]*.5+r}c[O>>2]=8;c[V>>2]=X;c[P>>2]=c[S>>2];c[P+4>>2]=c[S+4>>2];c[P+8>>2]=c[S+8>>2];c[P+12>>2]=c[S+12>>2];c[Q>>2]=c[T>>2];c[Q+4>>2]=c[T+4>>2];c[Q+8>>2]=c[T+8>>2];c[Q+12>>2]=c[T+12>>2];c[R>>2]=c[V>>2];c[R+4>>2]=c[V+4>>2];k=oJ(P,Q,R,W,n)|0;b=c[W>>2]|0;if(!b)break;i=c[(c[d+16>>2]|0)+96>>2]|0;h[i+56>>3]=v;h[i+64>>3]=t;a[i+81>>0]=1;QK(d,c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,k,b,17296);m=m+1|0}a:do if((y|0)==6){v=(x+w*2.0)*.3333333333333333;u=(x*2.0+w)*.3333333333333333;while(1){if((m|0)>=(g|0))break;d=c[U+(m<<2)>>2]|0;if(!(m&1)){c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=A;h[C>>3]=+h[z>>3];h[e>>3]=A;h[D>>3]=s;h[f>>3]=B;h[E>>3]=s;h[F>>3]=B;t=+h[G>>3];h[H>>3]=t;Z=+h[T>>3];h[I>>3]=Z;h[J>>3]=t;h[K>>3]=Z;Z=s+6.0;h[L>>3]=Z;h[M>>3]=+h[S>>3];s=Z;t=p;p=Z}else{y=(m|0)==1;t=y?v:p;q=y?u:q;p=r+-6.0;c[X>>2]=c[S>>2];c[X+4>>2]=c[S+4>>2];c[X+8>>2]=c[S+8>>2];c[X+12>>2]=c[S+12>>2];h[o>>3]=+h[S>>3];r=r+-12.0;h[C>>3]=r;h[e>>3]=+h[T>>3];h[D>>3]=r;c[f>>2]=c[T>>2];c[f+4>>2]=c[T+4>>2];c[f+8>>2]=c[T+8>>2];c[f+12>>2]=c[T+12>>2];h[F>>3]=q;h[H>>3]=+h[G>>3];h[I>>3]=q;h[J>>3]=p;h[K>>3]=t;h[L>>3]=p;h[M>>3]=t;r=p;p=+h[z>>3]}h[N>>3]=p;c[O>>2]=8;c[V>>2]=X;c[P>>2]=c[S>>2];c[P+4>>2]=c[S+4>>2];c[P+8>>2]=c[S+8>>2];c[P+12>>2]=c[S+12>>2];c[Q>>2]=c[T>>2];c[Q+4>>2]=c[T+4>>2];c[Q+8>>2]=c[T+8>>2];c[Q+12>>2]=c[T+12>>2];c[R>>2]=c[V>>2];c[R+4>>2]=c[V+4>>2];k=oJ(P,Q,R,W,n)|0;b=c[W>>2]|0;if(!b)break a;QK(d,c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,k,b,17296);m=m+1|0;p=t}D_(U)}while(0);l=Y;return}function Zg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0;g=l;l=l+16|0;f=g;j=(ey(b)|0)==0;j=j?18488:18480;a[f>>0]=a[j>>0]|0;a[f+1>>0]=a[j+1>>0]|0;a[f+2>>0]=a[j+2>>0]|0;a[f+3>>0]=a[j+3>>0]|0;f=Xx(85398,f,0)|0;Az(f,134401,280,1)|0;nx(f,0,87076,191979)|0;j=uH(96)|0;e=c[f+16>>2]|0;c[e+8>>2]=j;i=c[b+16>>2]|0;k=c[i+8>>2]|0;h[j>>3]=+h[k>>3];h[j+24>>3]=+h[k+24>>3];a[e+115>>0]=a[i+115>>0]|0;c[e+116>>2]=c[i+116>>2]&1^1;c[e+248>>2]=c[i+248>>2];c[e+252>>2]=c[i+252>>2];e=sx(fz(b)|0,1,0)|0;while(1){if(!e)break;nx(f,1,c[e+8>>2]|0,c[e+12>>2]|0)|0;e=sx(fz(b)|0,1,e)|0}e=sx(fz(b)|0,2,0)|0;while(1){if(!e)break;nx(f,2,c[e+8>>2]|0,c[e+12>>2]|0)|0;e=sx(fz(b)|0,2,e)|0}if(!(nx(f,2,108382,0)|0))nx(f,2,108382,191979)|0;if(!(nx(f,2,108373,0)|0))nx(f,2,108373,191979)|0;ch(f,d);l=g;return f|0}function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;a=az(a,ry(b)|0,1)|0;Az(a,134365,304,1)|0;Bx(b,a)|0;if((HJ(b)|0)==2){f=b+16|0;b=vH((W_(c[c[(c[f>>2]|0)+104>>2]>>2]|0)|0)+3|0)|0;c[d>>2]=c[c[(c[f>>2]|0)+104>>2]>>2];Y0(b,85393,d)|0;zx(a,105198,b)|0}l=e;return a|0}function $g(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=Rx(a,b,c,0,1)|0;Az(c,134378,176,1)|0;Bx(d,c)|0;return c|0}function ah(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0;i=l;l=l+32|0;g=i+16|0;f=i;if(e|0){j=+h[b>>3];e=b+8|0;h[b>>3]=+h[e>>3];h[e>>3]=-j};c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];Pg(a,f,g);l=i;return}function bh(a,b){a=a|0;b=b|0;c[46419]=c[b>>2];c[46423]=c[b+4>>2];c[46424]=c[b+8>>2];c[46404]=c[b+12>>2];c[46405]=c[b+16>>2];c[46411]=c[b+20>>2];c[46410]=c[b+24>>2];c[46409]=c[b+28>>2];c[46435]=c[b+32>>2];c[46427]=c[b+36>>2];c[46412]=c[b+40>>2];c[46422]=c[b+44>>2];c[46431]=c[b+48>>2];c[46430]=c[b+52>>2];c[46429]=c[b+56>>2];c[46434]=c[b+60>>2];c[46428]=c[b+64>>2];c[46413]=c[b+68>>2];c[46375]=c[b+72>>2];c[46376]=c[b+76>>2];c[46377]=c[b+80>>2];c[46387]=c[b+84>>2];c[46380]=c[b+88>>2];c[46381]=c[b+92>>2];c[46382]=c[b+96>>2];c[46384]=c[b+100>>2];c[46385]=c[b+104>>2];c[46388]=c[b+108>>2];c[46391]=c[b+112>>2];c[46389]=c[b+116>>2];c[46390]=c[b+120>>2];c[46393]=c[b+124>>2];c[46392]=c[b+128>>2];c[46394]=c[b+132>>2];c[46395]=c[b+136>>2];c[46386]=c[b+140>>2];c[46398]=c[b+144>>2];c[46370]=c[b+148>>2];c[46367]=c[b+152>>2];D_(b);Tf(a);$x(a)|0;return}function ch(a,b){a=a|0;b=b|0;c[b>>2]=c[46419];c[b+4>>2]=c[46423];c[b+8>>2]=c[46424];c[b+12>>2]=c[46404];c[b+16>>2]=c[46405];c[b+20>>2]=c[46411];c[b+24>>2]=c[46410];c[b+28>>2]=c[46409];c[b+32>>2]=c[46435];c[b+36>>2]=c[46427];c[b+40>>2]=c[46412];c[b+44>>2]=c[46422];c[b+48>>2]=c[46431];c[b+52>>2]=c[46430];c[b+56>>2]=c[46429];c[b+60>>2]=c[46434];c[b+64>>2]=c[46428];c[b+68>>2]=c[46413];c[b+72>>2]=c[46375];c[b+76>>2]=c[46376];c[b+80>>2]=c[46377];c[b+84>>2]=c[46387];c[b+88>>2]=c[46380];c[b+92>>2]=c[46381];c[b+96>>2]=c[46382];c[b+100>>2]=c[46384];c[b+104>>2]=c[46385];c[b+108>>2]=c[46388];c[b+112>>2]=c[46391];c[b+116>>2]=c[46389];c[b+120>>2]=c[46390];c[b+124>>2]=c[46393];c[b+128>>2]=c[46392];c[b+132>>2]=c[46394];c[b+136>>2]=c[46395];c[b+140>>2]=c[46386];c[b+144>>2]=c[46398];c[b+152>>2]=c[46367];c[b+148>>2]=c[46370];c[46419]=0;c[46423]=nx(a,2,87317,0)|0;c[46424]=nx(a,2,87326,0)|0;b=nx(a,2,98515,0)|0;c[46404]=b;if(!b)c[46404]=nx(a,2,98515,191979)|0;c[46405]=0;c[46411]=0;c[46410]=nx(a,2,98411,0)|0;c[46409]=nx(a,2,98402,0)|0;c[46435]=nx(a,2,98691,0)|0;c[46427]=0;c[46412]=nx(a,2,105198,0)|0;c[46422]=nx(a,2,85403,0)|0;c[46431]=0;c[46430]=nx(a,2,98591,0)|0;c[46429]=nx(a,2,98577,0)|0;c[46434]=nx(a,2,98682,0)|0;c[46428]=0;c[46413]=0;c[46375]=nx(a,1,137966,0)|0;c[46376]=nx(a,1,138034,0)|0;c[46377]=nx(a,1,105204,0)|0;c[46387]=0;c[46380]=nx(a,1,98402,0)|0;c[46381]=nx(a,1,98411,0)|0;c[46382]=0;c[46384]=nx(a,1,105198,0)|0;c[46385]=0;c[46388]=0;c[46391]=nx(a,1,98383,0)|0;c[46389]=nx(a,1,137994,0)|0;c[46390]=nx(a,1,98446,0)|0;c[46393]=nx(a,1,98458,0)|0;c[46392]=nx(a,1,98322,0)|0;c[46394]=nx(a,1,98463,0)|0;c[46395]=nx(a,1,85415,0)|0;c[46386]=0;c[46398]=0;c[46370]=nx(a,0,98383,0)|0;return}function dh(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0.0;d=c[(c[(c[a>>2]|0)+16>>2]|0)+96>>2]|0;a=c[(c[(c[b>>2]|0)+16>>2]|0)+96>>2]|0;b=(a|0)!=0;if(d)if(b?(f=+h[d+24>>3],i=+h[d+32>>3],e=+h[a+24>>3],g=+h[a+32>>3],!(f>e)):0)if(!(fg)a=-1;else a=i>2]|0)+116>>2]|0;if(!b)break;else a=b}b=c[a>>2]&3;d=c[(c[((b|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0;e=c[d+232>>2]|0;a=c[(c[((b|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0;b=c[a+232>>2]|0;if((e|0)<=(b|0))if((e|0)<(b|0))a=1;else a=(c[d+236>>2]|0)<(c[a+236>>2]|0)&1;else a=0;return a|0}function fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d+8|0;f=d;h=(c[a+16>>2]|0)+180|0;g=(c[b+16>>2]|0)+172|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];b=gh(a,f,b,e)|0;l=d;return b|0}function gh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[b+4>>2]|0;a:do if((f|0)>0?(g=c[e+4>>2]|0,(g|0)>0):0)if((f|0)<(g|0)){f=c[b>>2]|0;e=0;while(1){b=c[f+(e<<2)>>2]|0;if(!b){b=0;break a}if((c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)==(d|0))break;else e=e+1|0}}else{f=c[e>>2]|0;e=0;while(1){b=c[f+(e<<2)>>2]|0;if(!b){b=0;break a}if((c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)==(a|0))break;else e=e+1|0}}else b=0;while(0);return b|0}function hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d+8|0;f=d;h=(c[a+16>>2]|0)+188|0;g=(c[b+16>>2]|0)+196|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];b=gh(a,f,b,e)|0;l=d;return b|0}function ih(a){a=a|0;var b=0,d=0,e=0,f=0;e=a+48|0;d=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;b=c[d+180>>2]|0;if(!b)b=vH((c[d+184>>2]<<2)+8|0)|0;else b=xH(b,(c[d+184>>2]<<2)+8|0)|0;c[(c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0)+180>>2]=b;f=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;d=c[f+180>>2]|0;f=f+184|0;b=c[f>>2]|0;c[f>>2]=b+1;c[d+(b<<2)>>2]=a;e=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;c[(c[e+180>>2]|0)+(c[e+184>>2]<<2)>>2]=0;e=a+-48|0;b=c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0;d=c[b+172>>2]|0;if(!d)b=vH((c[b+176>>2]<<2)+8|0)|0;else b=xH(d,(c[b+176>>2]<<2)+8|0)|0;c[(c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0)+172>>2]=b;b=c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0;d=c[b+172>>2]|0;b=b+176|0;f=c[b>>2]|0;c[b>>2]=f+1;c[d+(f<<2)>>2]=a;f=c[(c[((c[a>>2]&3|0)==2?a:e)+40>>2]|0)+16>>2]|0;c[(c[f+172>>2]|0)+(c[f+176>>2]<<2)>>2]=0;return a|0}function jh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+4|0;f=c[e>>2]|0;d=0;while(1){if((d|0)>=(f|0))break;g=c[a>>2]|0;h=g+(d<<2)|0;if((c[h>>2]|0)==(b|0)){i=4;break}else d=d+1|0}if((i|0)==4){i=f+-1|0;c[e>>2]=i;c[h>>2]=c[g+(i<<2)>>2];c[(c[a>>2]|0)+(i<<2)>>2]=0}return}function kh(a){a=a|0;if(!a)qa(85456,85466,117,85475);else{jh((c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+180|0,a);jh((c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+172|0,a);return}}function lh(a){a=a|0;var b=0,d=0,e=0,f=0;e=a+48|0;d=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;b=c[d+204>>2]|0;if(!b)b=vH((c[d+208>>2]<<2)+8|0)|0;else b=xH(b,(c[d+208>>2]<<2)+8|0)|0;c[(c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0)+204>>2]=b;f=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;b=c[f+204>>2]|0;f=f+208|0;d=c[f>>2]|0;c[f>>2]=d+1;c[b+(d<<2)>>2]=a;e=c[(c[((c[a>>2]&3|0)==3?a:e)+40>>2]|0)+16>>2]|0;c[(c[e+204>>2]|0)+(c[e+208>>2]<<2)>>2]=0;return}function mh(a){a=a|0;nh(a,(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+204|0);return}function nh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=b+4|0;e=c[h>>2]|0;f=c[b>>2]|0;d=0;while(1){if((d|0)>=(e|0)){g=4;break}if((c[f+(d<<2)>>2]|0)==(a|0))break;else d=d+1|0}if((g|0)==4){if(!f)d=vH((e<<2)+8|0)|0;else d=xH(f,(e<<2)+8|0)|0;c[b>>2]=d;f=c[h>>2]|0;g=f+1|0;c[h>>2]=g;c[d+(f<<2)>>2]=a;c[(c[b>>2]|0)+(g<<2)>>2]=0}return}function oh(d,e,f){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;n=uH(96)|0;g=n+48|0;c[g>>2]=c[g>>2]|3;c[n>>2]=c[n>>2]&-4|2;h=uH(176)|0;m=n+16|0;c[m>>2]=h;c[((c[n>>2]&3|0)==3?n:g)+40>>2]=d;j=n+-48|0;c[((c[n>>2]&3|0)==2?n:j)+40>>2]=e;a[h+112>>0]=1;if(!f){c[h+156>>2]=1;b[h+154>>1]=1;b[h+168>>1]=1;b[h+170>>1]=1}else{c[n>>2]=c[n>>2]&15|c[f>>2]&-16;c[g>>2]=c[g>>2]&15|c[f>>2]&-16;l=f+16|0;i=c[l>>2]|0;b[h+168>>1]=b[i+168>>1]|0;b[h+154>>1]=b[i+154>>1]|0;c[h+156>>2]=c[i+156>>2];b[h+170>>1]=b[i+170>>1]|0;d=c[((c[n>>2]&3|0)==3?n:g)+40>>2]|0;e=c[f>>2]&3;k=f+48|0;if((d|0)!=(c[((e|0)==3?f:k)+40>>2]|0)){g=f+-48|0;if((d|0)==(c[((e|0)==2?f:g)+40>>2]|0)){h=h+16|0;d=i+56|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0))}}else{h=h+16|0;d=i+16|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0));g=f+-48|0}d=c[((c[n>>2]&3|0)==2?n:j)+40>>2]|0;e=c[f>>2]&3;if((d|0)!=(c[((e|0)==2?f:g)+40>>2]|0)){if((d|0)==(c[((e|0)==3?f:k)+40>>2]|0)){h=(c[m>>2]|0)+56|0;d=(c[l>>2]|0)+16|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0))}}else{h=(c[m>>2]|0)+56|0;d=(c[l>>2]|0)+56|0;e=h+40|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(e|0))}d=(c[l>>2]|0)+172|0;if(!(c[d>>2]|0))c[d>>2]=n;c[(c[m>>2]|0)+116>>2]=f}return n|0}function ph(a,b,c){a=a|0;b=b|0;c=c|0;return ih(oh(a,b,c)|0)|0}function qh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;a=(c[a+16>>2]|0)+192|0;f=c[a>>2]|0;d=c[b+16>>2]|0;c[d+164>>2]=f;e=f;if(f|0)c[(c[e+16>>2]|0)+168>>2]=b;c[a>>2]=b;c[d+168>>2]=0;if((e|0)==(b|0))qa(85492,85466,215,85508);else return}function rh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((a|0)==(b|0))qa(85518,85466,220,85525);f=c[b+16>>2]|0;d=f+164|0;if(c[d>>2]|0)qa(85538,85466,221,85525);e=(c[a+16>>2]|0)+164|0;c[d>>2]=c[e>>2];d=c[e>>2]|0;if(d|0)c[(c[d+16>>2]|0)+168>>2]=b;c[f+168>>2]=a;c[e>>2]=b;return}function sh(a,b){a=a|0;b=b|0;var d=0,e=0;if(!(th(a,b)|0))qa(85557,85466,231,85578);b=c[b+16>>2]|0;d=c[b+164>>2]|0;e=d;b=b+168|0;if(d|0)c[(c[d+16>>2]|0)+168>>2]=c[b>>2];b=c[b>>2]|0;if(!b)c[(c[a+16>>2]|0)+192>>2]=e;else c[(c[b+16>>2]|0)+164>>2]=e;return}function th(a,b){a=a|0;b=b|0;a=(c[a+16>>2]|0)+192|0;while(1){a=c[a>>2]|0;if((a|0)==0|(a|0)==(b|0))break;a=(c[a+16>>2]|0)+164|0}return a|0}function uh(b){b=b|0;var d=0,e=0,f=0,g=0;d=uH(64)|0;c[d>>2]=c[d>>2]&-4|1;e=d+16|0;c[e>>2]=uH(304)|0;c[d+24>>2]=fz(b)|0;g=c[e>>2]|0;a[g+156>>0]=1;h[g+96>>3]=1.0;h[g+88>>3]=1.0;h[g+80>>3]=1.0;c[g+216>>2]=1;c[g+176>>2]=0;g=uH(20)|0;f=c[e>>2]|0;c[f+172>>2]=g;c[f+184>>2]=0;f=uH(20)|0;c[(c[e>>2]|0)+180>>2]=f;qh(b,d);b=(c[b+16>>2]|0)+232|0;c[b>>2]=(c[b>>2]|0)+1;return d|0}function vh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=d+48|0;e=c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0;f=c[e+188>>2]|0;if(!f)e=vH((c[e+192>>2]<<2)+8|0)|0;else e=xH(f,(c[e+192>>2]<<2)+8|0)|0;c[(c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0)+188>>2]=e;h=c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0;f=c[h+188>>2]|0;h=h+192|0;e=c[h>>2]|0;c[h>>2]=e+1;c[f+(e<<2)>>2]=d;g=c[(c[((c[d>>2]&3|0)==3?d:g)+40>>2]|0)+16>>2]|0;c[(c[g+188>>2]|0)+(c[g+192>>2]<<2)>>2]=0;g=d+-48|0;e=c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;f=c[e+196>>2]|0;if(!f)e=vH((c[e+200>>2]<<2)+8|0)|0;else e=xH(f,(c[e+200>>2]<<2)+8|0)|0;c[(c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0)+196>>2]=e;e=c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;f=c[e+196>>2]|0;e=e+200|0;h=c[e>>2]|0;c[e>>2]=h+1;c[f+(h<<2)>>2]=d;h=c[(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;c[(c[h+196>>2]|0)+(c[h+200>>2]<<2)>>2]=0;a[(c[b+16>>2]|0)+240>>0]=1;a[(c[(ig(b)|0)+16>>2]|0)+240>>0]=1;return}function wh(a){a=a|0;var b=0,d=0;if(!a)qa(85456,85466,269,85595);b=c[(c[a+16>>2]|0)+116>>2]|0;if(b|0?(d=(c[b+16>>2]|0)+172|0,(c[d>>2]|0)==(a|0)):0)c[d>>2]=0;jh((c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+188|0,a);jh((c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+196|0,a);return}function xh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;d=(c[a+16>>2]|0)+172|0;e=c[d>>2]|0;do if((e|0)!=(b|0))if(!e){c[d>>2]=b;yh(a,b);break}else qa(87498,85466,340,85633);else Pw(0,85612,f)|0;while(0);l=f;return}function yh(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0;f=(c[d+16>>2]|0)+170|0;i=c[a+16>>2]|0;a=b[i+170>>1]|0;if((e[f>>1]|0)<(a&65535))b[f>>1]=a;g=i+168|0;h=i+154|0;f=i+156|0;a=d;while(1){if(!a)break;d=c[a+16>>2]|0;i=d+168|0;b[i>>1]=(e[i>>1]|0)+(e[g>>1]|0);i=d+154|0;b[i>>1]=(e[i>>1]|0)+(e[h>>1]|0);i=d+156|0;c[i>>2]=(c[i>>2]|0)+(c[f>>2]|0);a=c[d+172>>2]|0}return}function zh(d){d=d|0;var e=0,f=0,g=0,h=0;f=d+16|0;e=c[(c[f>>2]|0)+172>>2]|0;a:while(1){if(!e)break;Ah(e,d);h=c[e+16>>2]|0;g=c[h+172>>2]|0;if(!(b[h+168>>1]|0))Bh(e);while(1){if((a[(c[e+16>>2]|0)+112>>0]|0)!=1){e=g;continue a}e=c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0;if((a[e+156>>0]|0)!=1){e=g;continue a}if((c[e+184>>2]|0)!=1){e=g;continue a}e=c[c[e+180>>2]>>2]|0;Ah(e,d)}}c[(c[f>>2]|0)+172>>2]=0;return}function Ah(a,d){a=a|0;d=d|0;var f=0;f=c[d+16>>2]|0;d=c[a+16>>2]|0;a=d+168|0;b[a>>1]=(e[a>>1]|0)-(e[f+168>>1]|0);a=d+154|0;b[a>>1]=(e[a>>1]|0)-(e[f+154>>1]|0);d=d+156|0;c[d>>2]=(c[d>>2]|0)-(c[f+156>>2]|0);return}function Bh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a)qa(85456,85466,128,85646);g=a+48|0;d=0;while(1){b=c[a>>2]|0;e=(c[(c[((b&3|0)==3?a:g)+40>>2]|0)+16>>2]|0)+180|0;f=c[(c[e>>2]|0)+(d<<2)>>2]|0;if(!f)break;if((f|0)==(a|0))jh(e,a);d=d+1|0}g=a+-48|0;f=0;while(1){d=(c[(c[((b&3|0)==2?a:g)+40>>2]|0)+16>>2]|0)+172|0;e=c[(c[d>>2]|0)+(f<<2)>>2]|0;if(!e)break;if((e|0)==(a|0)){jh(d,a);b=c[a>>2]|0}f=f+1|0}return}function Ch(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+1040|0;n=p+1032|0;o=p;m=p+8|0;k=d+16|0;d=c[k>>2]|0;j=b[d+236>>1]|0;while(1){if((j|0)>(b[d+238>>1]|0))break;i=c[d+196>>2]|0;h=i+(j<<6)|0;i=i+(j<<6)+4|0;g=0;d=0;while(1){if((g|0)>=(c[h>>2]|0))break;e=c[(c[i>>2]|0)+(g<<2)>>2]|0;f=e+16|0;if(c[(c[f>>2]|0)+112>>2]|0){if(!d){a[n>>0]=a[18484]|0;a[n+1>>0]=a[18485]|0;a[n+2>>0]=a[18486]|0;a[n+3>>0]=a[18487]|0;d=Xx(85668,n,0)|0}c[o>>2]=g;Y0(m,134313,o)|0;t=az(d,m,1)|0;Az(t,91080,24,1)|0;q=c[(c[f>>2]|0)+180>>2]|0;r=c[q>>2]|0;r=c[(c[(c[((c[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;q=c[q+4>>2]|0;q=c[(c[(c[((c[q>>2]&3|0)==2?q:q+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;s=(r|0)>(q|0);f=c[t+16>>2]|0;c[f+12>>2]=s?q:r;c[f+16>>2]=s?r:q;c[f+20>>2]=e}g=g+1|0}if(d|0){if((ay(d)|0)>1)Dh(d,h);$x(d)|0}j=j+1|0;d=c[k>>2]|0}l=p;return}function Dh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=0;h=Sy(a)|0;a:while(1){if(!h)break;i=Ty(a,h)|0;j=h+16|0;g=i;while(1){if(!g){h=i;continue a}f=c[g+16>>2]|0;e=c[j>>2]|0;if((c[f+16>>2]|0)>(c[e+12>>2]|0)){if((c[e+16>>2]|0)<=(c[f+12>>2]|0))Rx(a,h,g,0,1)|0}else{Rx(a,g,h,0,1)|0;d=1}g=Ty(a,g)|0}}do if(d|0){h=vA(a,85671,1)|0;j=uH((ay(a)|0)<<2)|0;i=uH((ay(a)|0)<<2)|0;f=b+4|0;e=Sy(a)|0;b:while(1){if(!e){d=23;break}if((c[(c[e+16>>2]|0)+8>>2]|0)==0?cy(a,e,1,1)|0:0){c:do if(Eh(a,e,h,i)|0){g=ay(h)|0;if((Fh(a,h,j)|0)!=(g|0)){d=17;break b}_0(i,g,4,60);d=0;while(1){if((d|0)>=(g|0))break c;b=i+(d<<2)|0;k=c[j+(d<<2)>>2]|0;c[(c[k+16>>2]|0)+236>>2]=c[b>>2];c[(c[f>>2]|0)+(c[b>>2]<<2)>>2]=k;d=d+1|0}}while(0);Hh(h)}e=Ty(a,e)|0}if((d|0)==17)qa(85676,85686,265,85697);else if((d|0)==23){D_(j);break}}while(0);return}function Eh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[b+16>>2]|0;c[h+8>>2]=1;h=c[(c[(c[h+20>>2]|0)+16>>2]|0)+236>>2]|0;c[e+((ay(d)|0)<<2)>>2]=h;Xy(d,b,1)|0;h=Ex(a,b)|0;f=0;while(1){if(!h)break;j=c[h>>2]&3;g=c[((j|0)==2?h:h+-48|0)+40>>2]|0;i=c[g+16>>2]|0;f=f+((c[(c[(c[i+20>>2]|0)+16>>2]|0)+236>>2]|0)>(c[(c[(c[(c[(c[((j|0)==3?h:h+48|0)+40>>2]|0)+16>>2]|0)+20>>2]|0)+16>>2]|0)+236>>2]|0)&1)|0;if(!(c[i+8>>2]|0))f=(Eh(a,g,d,e)|0)+f|0;h=Gx(a,h)|0}h=Hx(a,b)|0;while(1){if(!h)break;i=c[h>>2]&3;g=c[((i|0)==3?h:h+48|0)+40>>2]|0;j=c[g+16>>2]|0;f=f+((c[(c[(c[(c[(c[((i|0)==2?h:h+-48|0)+40>>2]|0)+16>>2]|0)+20>>2]|0)+16>>2]|0)+236>>2]|0)>(c[(c[(c[j+20>>2]|0)+16>>2]|0)+236>>2]|0)&1)|0;if(!(c[j+8>>2]|0))f=(Eh(a,g,d,e)|0)+f|0;h=Ix(a,h)|0}return f|0}function Fh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=0;while(1){e=Ih(a,b)|0;if(!e)break;c[d+(f<<2)>>2]=c[(c[e+16>>2]|0)+20>>2];cz(b,e)|0;e=Ex(a,e)|0;while(1){if(!e)break;g=Gx(a,e)|0;Ux(a,e)|0;e=g}f=f+1|0}return f|0}function Gh(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Hh(a){a=a|0;var b=0,c=0;b=Sy(a)|0;while(1){if(!b)break;c=Ty(a,b)|0;cz(a,b)|0;b=c}return}function Ih(a,b){a=a|0;b=b|0;var c=0;c=Sy(b)|0;while(1){if(!c){c=0;break}if(!(cy(a,c,1,0)|0))break;c=Ty(b,c)|0}return c|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;Kh(b);i=b+16|0;f=0;e=0;while(1){if((f|0)>=(c[(c[i>>2]|0)+220>>2]|0))break;Lh(b,f);f=f+1|0;e=(Mh(b,0,d)|0)+e|0}Nh(b);h=1;while(1){f=c[i>>2]|0;g=c[f+180>>2]|0;if((h|0)>(g|0))break;g=(Oh(c[(c[f+184>>2]|0)+(h<<2)>>2]|0,d)|0)+e|0;h=h+1|0;e=g}do if((g|0)>0){f=xx(b,85711)|0;if(f|0?(QL(f)|0)<<24>>24==0:0)break;ll(b);a[190689]=1;e=Mh(b,2,d)|0}while(0);Ph(b,e);return}function Kh(d){d=d|0;var e=0;if(0)EL();a[190689]=0;c[45971]=d;e=((by(ig(d)|0)|0)<<2)+4|0;c[45970]=uH(e)|0;c[45969]=uH(e)|0;Fi(d);e=d+16|0;if(b[(c[e>>2]|0)+136>>1]&16)Gi(d);Uk(d);Il(d,1);Hi(d);Wh(d);e=c[e>>2]|0;c[45972]=b[e+236>>1];c[45973]=b[e+238>>1];return}function Lh(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;a=c[a+16>>2]|0;c[a+192>>2]=c[(c[a+216>>2]|0)+(d<<2)>>2];a:do if((d|0)>0){d=b[a+238>>1]|0;e=a+196|0;a=b[a+236>>1]|0;while(1){if((a|0)>(d|0))break a;f=c[e>>2]|0;g=f+(a<<6)+4|0;f=f+(a<<6)|0;c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<2);c[f>>2]=0;a=a+1|0}}while(0);return}function Mh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;n=o;if((b|0)>1){e=ki(0)|0;li(a)}else e=2147483647;m=c[15686]|0;k=b;f=0;b=e;while(1){if((k|0)>=3)break;f=c[46365]|0;if((k|0)==2)if((e|0)>(b|0)){ni(a);e=b}else e=b;else{e=(f|0)<4?f:4;if((ig(a)|0)==(a|0))mi(a,k);if(!k)Xh(a);Yh(a);g=ki(0)|0;if((g|0)>(b|0)){f=e;e=g}else{li(a);f=e;e=g;b=g}}g=0;j=0;while(1){if((j|0)>=(f|0))break;if(0){c[n>>2]=k;c[n+4>>2]=j;c[n+8>>2]=g;c[n+12>>2]=e;c[n+16>>2]=b;g1(m,86104,n)|0}i=g+1|0;if((e|0)==0|(g|0)>=(c[45974]|0))break;oi(a,j);e=ki(0)|0;if((e|0)>(b|0))g=i;else{li(a);g=+h[22830]*+(b|0)>+(e|0)?0:i;b=e}j=j+1|0}if(!e){e=0;break}else k=k+1|0}if((e|0)>(b|0))ni(a);if((b|0)>0){pi(a,0);e=ki(0)|0}else e=b;a:do if(d|0){b=0;while(1){if((b|0)>=(f|0))break a;qi(a);b=b+1|0}}while(0);l=o;return e|0}function Nh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;ji(a);k=a+16|0;d=c[k>>2]|0;m=c[15686]|0;j=b[d+236>>1]|0;while(1){if((j|0)>(b[d+238>>1]|0))break;e=c[d+196>>2]|0;f=c[e+(j<<6)+8>>2]|0;c[e+(j<<6)>>2]=f;g=c[e+(j<<6)+12>>2]|0;c[e+(j<<6)+4>>2]=g;i=0;while(1){if((i|0)>=(f|0))break;h=c[g+(i<<2)>>2]|0;if(!h){o=6;break}c[(c[h+16>>2]|0)+236>>2]=i;i=i+1|0}if((o|0)==6){o=0;if(0){e=ry(a)|0;d=c[(c[(c[k>>2]|0)+196>>2]|0)+(j<<6)>>2]|0;c[n>>2]=e;c[n+4>>2]=j;c[n+8>>2]=i;c[n+12>>2]=d;g1(m,86054,n)|0;d=c[k>>2]|0;e=c[d+196>>2]|0}c[e+(j<<6)>>2]=i}j=j+1|0}l=p;return}function Oh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;fl(a);Wh(a);Xh(a);Yh(a);f=a+16|0;d=Mh(a,2,b)|0;e=1;while(1){g=c[f>>2]|0;if((e|0)>(c[g+180>>2]|0))break;d=(Oh(c[(c[g+184>>2]|0)+(e<<2)>>2]|0,b)|0)+d|0;e=e+1|0}Zh(a);return d|0}function Ph(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;p=q;f=c[45969]|0;if(f|0){D_(f);c[45969]=0}f=c[45970]|0;if(f|0){D_(f);c[45970]=0}o=d+16|0;f=1;while(1){g=c[o>>2]|0;if((f|0)>(c[g+180>>2]|0))break;Qh(c[(c[g+184>>2]|0)+(f<<2)>>2]|0);f=f+1|0}n=b[g+236>>1]|0;f=g;while(1){if((n|0)>(b[f+238>>1]|0))break;else m=0;while(1){f=c[f+196>>2]|0;if((m|0)>=(c[f+(n<<6)>>2]|0))break;k=(c[(c[f+(n<<6)+4>>2]|0)+(m<<2)>>2]|0)+16|0;f=c[k>>2]|0;c[f+236>>2]=m;f=c[f+188>>2]|0;a:do if(f|0){g=0;while(1){i=c[f+(g<<2)>>2]|0;if(!i)break a;j=i+16|0;if((a[(c[j>>2]|0)+112>>0]|0)==4){wh(i);D_(c[j>>2]|0);D_(i);g=g+-1|0;f=c[(c[k>>2]|0)+188>>2]|0}g=g+1|0}}while(0);m=m+1|0;f=c[o>>2]|0}Rh(c[f+(n<<6)+56>>2]|0);n=n+1|0;f=c[o>>2]|0}if(0){o=c[15686]|0;d=ry(d)|0;r=+FL();c[p>>2]=d;c[p+4>>2]=e;h[p+8>>3]=r;g1(o,85722,p)|0}l=q;return}function Qh(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=a+16|0;d=1;while(1){f=c[g>>2]|0;if((d|0)>(c[f+180>>2]|0))break;Qh(c[(c[f+184>>2]|0)+(d<<2)>>2]|0);d=d+1|0}a:do if(c[f+268>>2]|0){e=b[f+236>>1]|0;d=f;while(1){if((e|0)>(b[d+238>>1]|0))break a;j=c[(c[d+268>>2]|0)+(e<<2)>>2]|0;i=Sh(a,j,-1)|0;j=Sh(a,j,1)|0;c[(c[(c[g>>2]|0)+268>>2]|0)+(e<<2)>>2]=i;k=c[(c[(c[(ig(a)|0)+16>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0;i=c[(c[i+16>>2]|0)+236>>2]|0;f=c[g>>2]|0;h=c[f+196>>2]|0;c[h+(e<<6)+4>>2]=k+(i<<2);c[h+(e<<6)>>2]=(c[(c[j+16>>2]|0)+236>>2]|0)+1-i;e=e+1|0;d=f}}while(0);return}function Rh(a){a=a|0;if(a|0){D_(c[a+8>>2]|0);D_(a)}return}function Sh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=b;while(1){b=Th(b,c)|0;if(!b)break;if(Uh(a,b)|0){d=b;continue}e=(Vh(a,b)|0)==0;d=e?d:b}return d|0}function Th(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a)qa(85761,85686,1023,85763);if((b|0)<0){a=c[a+16>>2]|0;e=c[a+236>>2]|0;if((e|0)>0){a=(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(c[a+232>>2]<<6)+4|0;d=e+-1|0;f=7}else g=0}else{a=c[a+16>>2]|0;e=c[a+236>>2]|0;a=(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(c[a+232>>2]<<6)+4|0;d=e+1|0;f=7}if((f|0)==7){a=c[(c[a>>2]|0)+(d<<2)>>2]|0;if(a)if((O((c[(c[a+16>>2]|0)+236>>2]|0)-e|0,b)|0)>0)g=a;else qa(85772,85686,1029,85763);else g=0}return g|0}function Uh(b,d){b=b|0;d=d|0;if(!(a[(c[d+16>>2]|0)+156>>0]|0))b=(oz(b,d)|0)!=0&1;else b=0;return b|0}function Vh(b,d){b=b|0;d=d|0;var e=0,f=0;d=c[d+16>>2]|0;if(((a[d+156>>0]|0)==1?(c[d+176>>2]|0)==1:0)?(c[d+184>>2]|0)==1:0){d=c[d+180>>2]|0;while(1){d=c[d>>2]|0;e=c[d+16>>2]|0;if(!(a[e+112>>0]|0))break;else d=e+116|0}if(oz(b,d)|0)d=1;else f=7}else f=7;if((f|0)==7)d=0;return d|0}function Wh(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=c[46370]|0;a:do if((d|0)!=0|(c[46391]|0)!=0){d=NL(b,d,0)|0;if(d|0){switch(a[d>>0]|0){case 0:break a;case 111:{if(!(b$(d,85974)|0)){ei(b,1);break a}break}case 105:{if(!(b$(d,95660)|0)){ei(b,0);break a}break}default:{}}c[e>>2]=d;Pw(1,85978,e)|0;break}d=wA(b)|0;while(1){if(!d)break;if(!(Rj(d)|0))Wh(d);d=xA(d)|0}if(c[46391]|0)fi(b)}while(0);l=f;return}function Xh(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d+16|0;e=c[k>>2]|0;j=b[e+236>>1]|0;while(1){if((j|0)>(b[e+238>>1]|0))break;else{f=0;i=0}while(1){g=c[e+196>>2]|0;h=c[g+(j<<6)>>2]|0;if((i|0)>=(h|0))break;g=c[(c[(c[g+(j<<6)+4>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;a[g+158>>0]=0;a[g+157>>0]=0;c[g+284>>2]=i;if((f|0)==0&(c[g+192>>2]|0)>0){f=ci(h,h)|0;e=c[k>>2]|0;c[(c[e+196>>2]|0)+(j<<6)+56>>2]=f;f=1}i=i+1|0}a:do if(f){i=0;f=h;while(1){if((i|0)>=(f|0))break a;h=c[(c[g+(j<<6)+4>>2]|0)+(i<<2)>>2]|0;if(!(a[(c[h+16>>2]|0)+157>>0]|0)){di(d,h);e=c[k>>2]|0;f=c[e+196>>2]|0;g=f;f=c[f+(j<<6)>>2]|0}i=i+1|0}}while(0);j=j+1|0}return}function Yh(d){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;s=d+16|0;e=c[s>>2]|0;if(a[e+240>>0]|0){h=0;r=b[e+236>>1]|0;q=0;i=0;a:while(1){if((r|0)>(b[e+238>>1]|0))break;f=c[e+196>>2]|0;g=c[f+(r<<6)>>2]|0;if(!g){g=q;f=i}else{f=c[f+(r<<6)+4>>2]|0;o=c[(c[(c[f>>2]|0)+16>>2]|0)+236>>2]|0;e=0;while(1){if((e|0)>=(g|0))break;a[(c[(c[f+(e<<2)>>2]|0)+16>>2]|0)+157>>0]=0;e=e+1|0}e=(e<<2)+4|0;if(!h)p=vH(e)|0;else p=xH(i,e)|0;m=0;n=0;while(1){e=c[s>>2]|0;f=c[e+196>>2]|0;g=c[f+(r<<6)>>2]|0;if((g|0)<=(n|0))break;j=c[(c[f+(r<<6)+4>>2]|0)+(((c[e+116>>2]&1|0)==0?g+~n|0:n)<<2)>>2]|0;l=j+16|0;e=0;k=0;while(1){i=c[l>>2]|0;if((e|0)>=(c[i+200>>2]|0)){f=0;g=0;e=i;break}i=k+((_h(d,c[(c[i+196>>2]|0)+(e<<2)>>2]|0)|0)!=0&1)|0;e=e+1|0;k=i}while(1){if((g|0)>=(c[e+192>>2]|0))break;i=f+((_h(d,c[(c[e+188>>2]|0)+(g<<2)>>2]|0)|0)!=0&1)|0;f=i;g=g+1|0;e=c[l>>2]|0}if(f|k)if((k|0)==0&(a[e+157>>0]|0)==0)e=($h(d,j,p+(m<<2)|0,r)|0)+m|0;else e=m;else{c[p+(m<<2)>>2]=j;e=m+1|0}m=e;n=n+1|0}b:do if(m){c:do if(!(c[e+116>>2]&1)){f=p;e=p+(m<<2)|0;while(1){e=e+-4|0;if(f>>>0>=e>>>0){g=0;break c}n=c[f>>2]|0;c[f>>2]=c[e>>2];c[e>>2]=n;f=f+4|0}}else g=0;while(0);while(1){e=c[s>>2]|0;i=c[e+196>>2]|0;f=c[i+(r<<6)>>2]|0;if((g|0)>=(f|0)){m=0;g=i;break}n=c[p+(g<<2)>>2]|0;c[(c[i+(r<<6)+4>>2]|0)+(g<<2)>>2]=n;c[(c[n+16>>2]|0)+236>>2]=g+o;g=g+1|0}while(1){if((m|0)>=(f|0))break b;l=(c[(c[g+(r<<6)+4>>2]|0)+(m<<2)>>2]|0)+16|0;i=c[(c[l>>2]|0)+188>>2]|0;if(i){k=0;f=i;while(1){g=c[f+(k<<2)>>2]|0;e=c[s>>2]|0;if(!g)break;j=c[g>>2]&3;i=c[(c[(c[((j|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;j=c[(c[(c[((j|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;if(!(c[e+116>>2]&1))if((i|0)<(j|0))t=36;else e=k;else if((i|0)>(j|0))t=36;else e=k;if((t|0)==36){t=0;if(_h(d,g)|0){t=37;break a}wh(g);ai(d,g);e=k+-1|0;f=c[(c[l>>2]|0)+188>>2]|0}k=e+1|0}f=c[e+196>>2]|0;g=f;f=c[f+(r<<6)>>2]|0}m=m+1|0}}while(0);a[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(r<<6)+49>>0]=0;h=p;g=p;f=p}r=r+1|0;q=g;i=f}if((t|0)==37)qa(85820,85686,1561,85859);if(h|0)D_(q)}return}function Zh(a){a=a|0;var d=0,e=0;e=a+16|0;a=c[e>>2]|0;a:do if(c[a+268>>2]|0){d=b[a+236>>1]|0;while(1){if((d|0)>(b[a+238>>1]|0))break a;c[(c[a+268>>2]|0)+(d<<2)>>2]=c[c[(c[a+196>>2]|0)+(d<<6)+4>>2]>>2];d=d+1|0;a=c[e>>2]|0}}while(0);return}function _h(a,b){a=a|0;b=b|0;if((c[(c[b+16>>2]|0)+156>>2]|0)!=0?(bi(a,c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0)!=0:0)a=(bi(a,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)!=0&1;else a=0;return a|0}function $h(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=d+16|0;g=c[l>>2]|0;a[g+157>>0]=1;a:do if((c[g+192>>2]|0)>0){h=0;j=0;while(1){i=c[(c[g+188>>2]|0)+(j<<2)>>2]|0;if(!i)break a;if((_h(b,i)|0)!=0?(k=c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0,(a[(c[k+16>>2]|0)+157>>0]|0)==0):0)h=($h(b,k,e+(h<<2)|0,f)|0)+h|0;j=j+1|0;g=c[l>>2]|0}}else h=0;while(0);if((c[g+232>>2]|0)==(f|0)){c[e+(h<<2)>>2]=d;return h+1|0}else qa(85872,85686,1490,85888);return 0}function ai(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=c[d>>2]&3;j=c[((i|0)==2?d:d+-48|0)+40>>2]|0;f=c[(c[j+16>>2]|0)+188>>2]|0;a:do if(!f){e=d+48|0;m=15}else{l=d+48|0;g=((i|0)==3?d:l)+40|0;e=0;while(1){h=c[f+(e<<2)>>2]|0;if(!h){e=l;m=15;break a}if((c[((c[h>>2]&3|0)==2?h:h+-48|0)+40>>2]|0)==(c[g>>2]|0))break;else e=e+1|0}xh(d,h);e=(c[d+16>>2]|0)+172|0;if(!(c[e>>2]|0))c[e>>2]=h;e=c[h+16>>2]|0;if((a[e+112>>0]|0)==4?(k=e+116|0,(c[k>>2]|0)==0):0)c[k>>2]=d;e=c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0;f=c[e+204>>2]|0;if(!f)e=vH((c[e+208>>2]<<2)+8|0)|0;else e=xH(f,(c[e+208>>2]<<2)+8|0)|0;c[(c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0)+204>>2]=e;i=c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0;j=c[i+204>>2]|0;i=i+208|0;k=c[i>>2]|0;c[i>>2]=k+1;c[j+(k<<2)>>2]=d;d=c[(c[((c[d>>2]&3|0)==3?d:l)+40>>2]|0)+16>>2]|0;c[(c[d+204>>2]|0)+(c[d+208>>2]<<2)>>2]=0}while(0);if((m|0)==15){m=oh(j,c[((i|0)==3?d:e)+40>>2]|0,d)|0;l=c[d+16>>2]|0;d=c[m+16>>2]|0;a[d+112>>0]=(a[l+112>>0]|0)==4?4:3;c[d+96>>2]=c[l+96>>2];vh(b,m)}return}function bi(a,b){a=a|0;b=b|0;var c=0;c=Uh(a,b)|0;return Vh(a,b)|0|c|0}function ci(a,b){a=a|0;b=b|0;var d=0;d=uH(12)|0;c[d>>2]=a;c[d+4>>2]=b;c[d+8>>2]=uH(O(b,a)|0)|0;return d|0}function di(b,d){b=b|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;o=d+16|0;l=c[o>>2]|0;k=c[(c[(c[b+16>>2]|0)+196>>2]|0)+(c[l+232>>2]<<6)+56>>2]|0;a[l+157>>0]=1;a[l+158>>0]=1;l=(c[(c[(ig(b)|0)+16>>2]|0)+180>>2]|0)>0;e=c[o>>2]|0;f=c[e+188>>2]|0;a:do if(f){m=k+4|0;n=k+8|0;d=0;b:while(1){j=c[f+(d<<2)>>2]|0;if(!j){p=e;break a}if(l){if((oz(b,c[((c[j>>2]&3|0)==3?j:j+48|0)+40>>2]|0)|0)!=0?(oz(b,c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)|0)!=0:0)q=7}else q=7;do if((q|0)==7){q=0;h=j+16|0;if(c[(c[h>>2]|0)+156>>2]|0){e=c[j>>2]&3;g=j+-48|0;r=c[(c[((e|0)==2?j:g)+40>>2]|0)+16>>2]|0;i=c[r+284>>2]|0;f=(i|0)<(c[k>>2]|0);if((a[r+158>>0]|0)==1){if(!f){q=10;break b}e=c[(c[(c[((e|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+284>>2]|0;f=c[m>>2]|0;if((e|0)>=(f|0)){q=12;break b}a[(c[n>>2]|0)+((O(f,i)|0)+e)>>0]=1;wh(j);d=d+-1|0;if((a[(c[h>>2]|0)+112>>0]|0)==4)break;ai(b,j);break}else{if(!f){q=16;break b}e=c[(c[(c[((e|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+284>>2]|0;f=c[m>>2]|0;if((e|0)>=(f|0)){q=18;break b}a[(c[n>>2]|0)+((O(f,e)|0)+i)>>0]=1;e=c[((c[j>>2]&3|0)==2?j:g)+40>>2]|0;if(a[(c[e+16>>2]|0)+157>>0]|0)break;di(b,e);break}}}while(0);f=c[o>>2]|0;d=d+1|0;e=f;f=c[f+188>>2]|0}if((q|0)==10)qa(85898,85686,1251,85930);else if((q|0)==12)qa(85942,85686,1252,85930);else if((q|0)==16)qa(85898,85686,1260,85930);else if((q|0)==18)qa(85942,85686,1261,85930)}else p=e;while(0);a[p+158>>0]=0;return}function ei(a,b){a=a|0;b=b|0;var c=0;c=Sy(a)|0;while(1){if(!c)break;gi(a,c,b);c=Ty(a,c)|0}return}function fi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;f=g;d=Sy(b)|0;while(1){if(!d)break;e=NL(d,c[46391]|0,0)|0;a:do if(e|0){switch(a[e>>0]|0){case 0:break a;case 111:{if(!(b$(e,85974)|0)){gi(b,d,1);break a}break}case 105:{if(!(b$(e,95660)|0)){gi(b,d,0);break a}break}default:{}}h=ry(d)|0;c[f>>2]=e;c[f+4>>2]=h;Pw(1,86009,f)|0}while(0);d=Ty(b,d)|0}l=g;return}function gi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=c[45970]|0;h=d+16|0;f=c[h>>2]|0;a:do if(!(c[f+212>>2]|0)){i=(e|0)!=0;b:do if(i){g=0;d=0;e=f;while(1){f=c[(c[e+180>>2]|0)+(g<<2)>>2]|0;if(!f)break b;if(!(hi(f)|0)){c[j+(d<<2)>>2]=f;d=d+1|0;e=c[h>>2]|0}g=g+1|0}}else{g=0;d=0;e=f;while(1){f=c[(c[e+172>>2]|0)+(g<<2)>>2]|0;if(!f)break b;if(!(hi(f)|0)){c[j+(d<<2)>>2]=f;d=d+1|0;e=c[h>>2]|0}g=g+1|0}}while(0);if((d|0)>=2){c[j+(d<<2)>>2]=0;_0(j,d,4,61);h=i?2:3;g=i?-1:1;f=1;while(1){d=c[j+(f<<2)>>2]|0;if(!d)break a;e=c[j+(f+-1<<2)>>2]|0;e=c[((c[e>>2]&3|0)==(h|0)?e:e+(g*48|0)|0)+40>>2]|0;d=c[((c[d>>2]&3|0)==(h|0)?d:d+(g*48|0)|0)+40>>2]|0;if(hh(e,d)|0)break a;i=oh(e,d,0)|0;a[(c[i+16>>2]|0)+112>>0]=4;vh(b,i);f=f+1|0}}}while(0);return}function hi(a){a=a|0;var b=0;while(1){b=c[(c[a+16>>2]|0)+116>>2]|0;if(!b)break;else a=b}b=c[a>>2]&3;return (c[(c[(c[((b|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)!=(c[(c[(c[((b|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)|0}function ii(a,b){a=a|0;b=b|0;return ((c[c[a>>2]>>2]|0)>>>4)-((c[c[b>>2]>>2]|0)>>>4)|0}function ji(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=c[a+16>>2]|0;g=f+220|0;h=c[g>>2]|0;if((h|0)>=2){i=f+216|0;a=0;e=0;while(1){if((e|0)>=(h|0))break;d=c[(c[i>>2]|0)+(e<<2)>>2]|0;if(a|0)c[(c[a+16>>2]|0)+164>>2]=d;j=c[d+16>>2]|0;c[j+168>>2]=a;a=d;d=j;while(1){d=c[d+164>>2]|0;if(!d)break;a=d;d=c[d+16>>2]|0}e=e+1|0}c[g>>2]=1;c[f+192>>2]=c[c[f+216>>2]>>2];b[f+236>>1]=c[45972];b[f+238>>1]=c[45973]}return}function ki(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=c[45971]|0;j=i+16|0;f=c[j>>2]|0;g=0;h=b[f+236>>1]|0;while(1){if((h|0)>=(b[f+238>>1]|0))break;d=c[f+196>>2]|0;if(!(a[d+(h<<6)+49>>0]|0)){e=Di(i,h)|0;d=c[j>>2]|0;f=c[d+196>>2]|0;c[f+(h<<6)+52>>2]=e;a[f+(h<<6)+49>>0]=1}else{e=c[d+(h<<6)+52>>2]|0;d=f}g=e+g|0;h=h+1|0;f=d}return g|0}function li(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0;a=c[a+16>>2]|0;g=b[a+238>>1]|0;i=a+196|0;a=b[a+236>>1]|0;while(1){if((a|0)>(g|0))break;f=c[i>>2]|0;e=c[f+(a<<6)>>2]|0;f=f+(a<<6)+4|0;d=0;while(1){if((d|0)>=(e|0))break;j=c[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;h[j+16>>3]=+(c[j+236>>2]|0);d=d+1|0}a=a+1|0}return}function mi(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;m=r;n=d+16|0;o=GL(c[(c[n>>2]|0)+232>>2]|0)|0;j=c[n>>2]|0;f=j+192|0;g=f;while(1){g=c[g>>2]|0;if(!g)break;g=c[g+16>>2]|0;a[g+157>>0]=0;g=g+164|0}h=b[j+238>>1]|0;i=j+196|0;g=b[j+236>>1]|0;while(1){if((g|0)>(h|0))break;c[(c[i>>2]|0)+(g<<6)>>2]=0;g=g+1|0}i=(e|0)==0;while(1){g=c[f>>2]|0;if(!g)break;h=g+16|0;f=c[h>>2]|0;if((c[c[(i?f+172|0:f+180|0)>>2]>>2]|0)==0?(k=f+157|0,(a[k>>0]|0)==0):0){a[k>>0]=1;IL(o,g);while(1){f=JL(o)|0;if(!f)break;if((a[(c[f+16>>2]|0)+159>>0]|0)==7){kl(d,f,e,o);continue}else{Bi(d,f);Ci(o,f,e);continue}}f=c[h>>2]|0}f=f+164|0}if(JL(o)|0)Pw(1,86217,m)|0;f=c[n>>2]|0;j=b[f+236>>1]|0;while(1){if((j|0)>(b[f+238>>1]|0))break;a[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(j<<6)+49>>0]=0;if((c[f+116>>2]&1|0)!=0?(p=c[f+196>>2]|0,q=c[p+(j<<6)>>2]|0,(q|0)>0):0){g=c[p+(j<<6)+4>>2]|0;h=q+-1|0;i=(h|0)/2|0;f=0;while(1){if((f|0)>(i|0))break;vi(c[g+(f<<2)>>2]|0,c[g+(h-f<<2)>>2]|0);f=f+1|0}f=c[n>>2]|0}j=j+1|0}if((ig(d)|0)==(d|0)?(ki(0)|0)>0:0)pi(d,0);HL(o);l=r;return}function ni(d){d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=d+16|0;d=c[n>>2]|0;f=b[d+236>>1]|0;e=b[d+238>>1]|0;l=e<<16>>16;m=d+196|0;g=f;while(1){if((g|0)>(l|0))break;k=c[m>>2]|0;j=c[k+(g<<6)>>2]|0;k=k+(g<<6)+4|0;i=0;while(1){if((i|0)>=(j|0))break;o=c[(c[(c[k>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;c[o+236>>2]=~~+h[o+16>>3];i=i+1|0}g=g+1|0}while(1){if((f|0)>(e<<16>>16|0))break;a[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(f<<6)+49>>0]=0;o=c[d+196>>2]|0;_0(c[o+(f<<6)+4>>2]|0,c[o+(f<<6)>>2]|0,4,62);o=c[n>>2]|0;f=f+1|0;e=b[o+238>>1]|0;d=o}return}function oi(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=((d|0)%4|0|0)<2&1;e=c[a+16>>2]|0;if(!(d&1)){d=b[e+236>>1]|0;f=1;e=b[e+238>>1]|0;d=(d<<16>>16<=(b[(c[(c[45971]|0)+16>>2]|0)+236>>1]|0)&1)+(d<<16>>16)|0}else{d=b[e+238>>1]|0;f=-1;e=b[e+236>>1]|0;d=((d<<16>>16>=(b[(c[(c[45971]|0)+16>>2]|0)+238>>1]|0))<<31>>31)+(d<<16>>16)|0}e=f+e|0;while(1){if((d|0)==(e|0))break;yi(a,d,g,(xi(a,d,d-f|0)|0)&255);d=d+f|0}pi(a,g^1);return}function pi(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=d+16|0;g=c[k>>2]|0;i=b[g+236>>1]|0;j=b[g+238>>1]|0;h=g+196|0;f=i<<16>>16;while(1){if((f|0)>(j|0)){h=i;break}a[(c[h>>2]|0)+(f<<6)+48>>0]=1;f=f+1|0}while(1){f=0;h=h<<16>>16;while(1){if((h|0)>(b[g+238>>1]|0))break;if(a[(c[g+196>>2]|0)+(h<<6)+48>>0]|0){f=(wi(d,h,e)|0)+f|0;g=c[k>>2]|0}h=h+1|0}if((f|0)<=0)break;h=b[g+236>>1]|0}return}function qi(d){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;o=d+16|0;e=c[o>>2]|0;n=b[e+238>>1]|0;a:while(1){if((n|0)<(b[e+236>>1]|0)){e=16;break}f=c[e+196>>2]|0;a[f+(n<<6)+48>>0]=0;p=(n|0)>0;q=n+1|0;g=0;b:while(1){l=(c[f+(n<<6)>>2]|0)+-1|0;m=f+(n<<6)+4|0;k=f+(q<<6)|0;while(1){if((g|0)>=(l|0))break b;j=c[m>>2]|0;i=c[j+(g<<2)>>2]|0;g=g+1|0;j=c[j+(g<<2)>>2]|0;if((c[(c[i+16>>2]|0)+236>>2]|0)>=(c[(c[j+16>>2]|0)+236>>2]|0)){e=7;break a}if(ri(d,i,j)|0)continue;if(p){f=si(i,j)|0;h=si(j,i)|0}else{f=0;h=0}if((c[k>>2]|0)>0){f=(ti(i,j)|0)+f|0;h=(ti(j,i)|0)+h|0}if((h|0)<=(f|0))break}ui(d,n,i,j);e=c[o>>2]|0;f=c[e+196>>2]|0}n=n+-1|0}if((e|0)==7)qa(86168,85686,721,86194);else if((e|0)==16)return}function ri(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=c[d+16>>2]|0;i=c[j+212>>2]|0;f=c[e+16>>2]|0;g=c[f+212>>2]|0;h=(i|0)!=(g|0);do if(!(a[190689]|0))if((g|0)==0|((i|0)==0|h^1))k=9;else{if((a[j+159>>0]|0)==7?(a[j+156>>0]|0)==1:0){b=0;break}if((a[f+159>>0]|0)==7?(a[f+156>>0]|0)==1:0){b=0;break}b=1}else if(h)b=1;else k=9;while(0);if((k|0)==9){f=c[b+16>>2]|0;b=c[(c[f+196>>2]|0)+(c[j+232>>2]<<6)+56>>2]|0;if(!b)b=0;else{j=(c[f+116>>2]&1|0)==0;k=O(c[b+4>>2]|0,c[(c[(j?d:e)+16>>2]|0)+284>>2]|0)|0;b=a[(c[b+8>>2]|0)+((c[(c[(j?e:d)+16>>2]|0)+284>>2]|0)+k)>>0]|0}}return b|0}function si(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+16|0;j=c[(c[d+16>>2]|0)+172>>2]|0;d=0;while(1){a=c[j>>2]|0;if(!a)break;i=c[a+16>>2]|0;k=b[i+154>>1]|0;g=c[(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;i=i+16|0;f=c[(c[l>>2]|0)+172>>2]|0;a=d;while(1){d=c[f>>2]|0;if(!d)break;e=(c[(c[(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-g|0;if((e|0)<=0){if((e|0)==0?(m=c[d+16>>2]|0,+h[m+16>>3]>+h[i>>3]):0){d=m;n=9}}else{d=c[d+16>>2]|0;n=9}if((n|0)==9){n=0;a=(O(b[d+154>>1]|0,k)|0)+a|0}f=f+4|0}j=j+4|0;d=a}return d|0}function ti(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+16|0;j=c[(c[d+16>>2]|0)+180>>2]|0;d=0;while(1){a=c[j>>2]|0;if(!a)break;i=c[a+16>>2]|0;k=b[i+154>>1]|0;g=c[(c[(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;i=i+56|0;f=c[(c[l>>2]|0)+180>>2]|0;a=d;while(1){d=c[f>>2]|0;if(!d)break;e=(c[(c[(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-g|0;if((e|0)<=0){if((e|0)==0?(m=c[d+16>>2]|0,+h[m+56>>3]>+h[i>>3]):0){d=m;n=9}}else{d=c[d+16>>2]|0;n=9}if((n|0)==9){n=0;a=(O(b[d+154>>1]|0,k)|0)+a|0}f=f+4|0}j=j+4|0;d=a}return d|0}function ui(b,d,e,f){b=b|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;i=a[(c[e+16>>2]|0)+156>>0]|0;if(i<<24>>24!=(a[(c[f+16>>2]|0)+156>>0]|0)){j=b+16|0;l=c[(c[j>>2]|0)+196>>2]|0;k=c[l+(d<<6)>>2]|0;l=l+(d<<6)+4|0;b=0;g=0;h=0;while(1){if((b|0)>=(k|0))break;o=(a[(c[(c[(c[l>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)==0;b=b+1|0;g=g+(o&1)|0;h=h+((o^1)&1)|0}i=i<<24>>24==0;h=(g|0)<(h|0)?(i?e:f):i?f:e;i=0;b=0;while(1){if((b|0)>=(k|0))break;i=(c[(c[l>>2]|0)+(b<<2)>>2]|0)==(h|0)?b:i;b=b+1|0}o=(a[(c[h+16>>2]|0)+156>>0]|0)==0&1;n=0;g=i;while(1){b=g+-1|0;if((g|0)<=0){m=0;b=i;break}if((a[(c[(c[(c[l>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0)){m=0;b=i;break}n=n+1|0;g=b}while(1){b=b+1|0;if((b|0)>=(k|0))break;if((a[(c[(c[(c[l>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0))break;m=m+1|0}vi(e,f);j=c[(c[j>>2]|0)+196>>2]|0;k=c[j+(d<<6)>>2]|0;j=j+(d<<6)+4|0;b=0;while(1){if((b|0)>=(k|0)){h=0;g=i;break}i=(c[(c[j>>2]|0)+(b<<2)>>2]|0)==(h|0)?b:i;b=b+1|0}while(1){b=g+-1|0;if((g|0)<=0){g=0;b=i;break}if((a[(c[(c[(c[j>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0)){g=0;b=i;break}h=h+1|0;g=b}while(1){b=b+1|0;if((b|0)>=(k|0))break;if((a[(c[(c[(c[j>>2]|0)+(b<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(o|0))break;g=g+1|0}d=h-g|0;o=n-m|0;if((((d|0)>-1?d:0-d|0)|0)>(((o|0)>-1?o:0-o|0)|0))vi(e,f)}return}function vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a+16>>2]|0;e=c[f+232>>2]|0;f=f+236|0;d=c[f>>2]|0;g=b+16|0;h=c[(c[g>>2]|0)+236>>2]|0;c[f>>2]=h;f=(c[45971]|0)+16|0;c[(c[(c[(c[f>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(h<<2)>>2]=a;c[(c[g>>2]|0)+236>>2]=d;c[(c[(c[(c[f>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(d<<2)>>2]=b;return}function wi(d,e,f){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;q=d+16|0;n=c[(c[q>>2]|0)+196>>2]|0;a[n+(e<<6)+48>>0]=0;r=(e|0)>0;s=e+1|0;o=(f|0)!=0;p=e+-1|0;g=0;i=0;f=n;a:while(1){l=(c[f+(e<<6)>>2]|0)+-1|0;m=f+(e<<6)+4|0;h=f+(s<<6)|0;n=g;while(1){if((n|0)>=(l|0)){f=17;break a}k=c[m>>2]|0;j=c[k+(n<<2)>>2]|0;n=n+1|0;k=c[k+(n<<2)>>2]|0;if((c[(c[j+16>>2]|0)+236>>2]|0)>=(c[(c[k+16>>2]|0)+236>>2]|0)){f=5;break a}if(ri(d,j,k)|0)continue;if(r){f=si(j,k)|0;g=si(k,j)|0}else{f=0;g=0}if((c[h>>2]|0)>0){f=(ti(j,k)|0)+f|0;g=(ti(k,j)|0)+g|0}if((f|0)>(g|0))break;if((f|0)==(g|0)&(o&(f|0)>0)){f=g;break}}vi(j,k);i=f-g+i|0;g=c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0;a[g+(e<<6)+49>>0]=0;h=c[q>>2]|0;f=c[h+196>>2]|0;a[f+(e<<6)+48>>0]=1;if((b[h+236>>1]|0)<(e|0)){a[g+(p<<6)+49>>0]=0;a[f+(p<<6)+48>>0]=1}if((b[h+238>>1]|0)<=(e|0)){g=n;continue}a[g+(s<<6)+49>>0]=0;a[f+(s<<6)+48>>0]=1;g=n}if((f|0)==5)qa(86168,85686,770,86202);else if((f|0)==17)return i|0;return 0}function xi(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=c[45969]|0;q=a+16|0;a=c[(c[q>>2]|0)+196>>2]|0;r=c[a+(e<<6)+4>>2]|0;n=(f|0)>(e|0);o=p+4|0;m=0;while(1){f=c[a+(e<<6)>>2]|0;if((m|0)>=(f|0)){a=0;j=0;break}l=(c[r+(m<<2)>>2]|0)+16|0;a=c[l>>2]|0;a:do if(n){k=c[a+180>>2]|0;a=0;j=0;while(1){f=c[k+(j<<2)>>2]|0;if(!f)break a;g=c[f+16>>2]|0;if((b[g+154>>1]|0)>0){c[p+(a<<2)>>2]=c[(c[(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]<<8|d[g+88>>0];a=a+1|0}j=j+1|0}}else{k=c[a+172>>2]|0;j=0;a=0;while(1){f=c[k+(j<<2)>>2]|0;if(!f)break a;g=c[f+16>>2]|0;if((b[g+154>>1]|0)>0){c[p+(a<<2)>>2]=c[(c[(c[((c[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+236>>2]<<8|d[g+48>>0];a=a+1|0}j=j+1|0}}while(0);b:do switch(a|0){case 0:{i=-1.0;break}case 1:{i=+(c[p>>2]|0);break}case 2:{i=+(((c[o>>2]|0)+(c[p>>2]|0)|0)/2|0|0);break}default:{_0(p,a,4,60);f=(a|0)/2|0;if(a&1|0){i=+(c[p+(f<<2)>>2]|0);break b}j=c[p+(f<<2)>>2]|0;g=(c[p+(a+-1<<2)>>2]|0)-j|0;a=c[p+(f+-1<<2)>>2]|0;f=a-(c[p>>2]|0)|0;if((f|0)==(g|0)){i=+((a+j|0)/2|0|0);break b}else{i=+(((O(f,j)|0)+(O(a,g)|0)|0)/(f+g|0)|0|0);break b}}}while(0);h[(c[l>>2]|0)+240>>3]=i;m=m+1|0;a=c[(c[q>>2]|0)+196>>2]|0}while(1){if((j|0)>=(f|0))break;g=c[r+(j<<2)>>2]|0;p=c[g+16>>2]|0;if((c[p+184>>2]|0)==0?(c[p+176>>2]|0)==0:0){a=(zi(g)|0|a&255)&255;f=c[(c[(c[q>>2]|0)+196>>2]|0)+(e<<6)>>2]|0}j=j+1|0}return a|0}function yi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0;o=c[(c[b+16>>2]|0)+196>>2]|0;s=c[o+(d<<6)+4>>2]|0;o=c[o+(d<<6)>>2]|0;q=(e|0)!=0;p=(f|e|0)==0;f=0;e=o;o=s+(o<<2)|0;while(1){n=e+-1|0;if((e|0)>0)e=s;else break;a:while(1){b:while(1){if(e>>>0>=o>>>0)break a;while(1){if(e>>>0>=o>>>0)break a;l=c[e>>2]|0;m=+h[(c[l+16>>2]|0)+240>>3];if(!(m<0.0))break;e=e+4|0}k=0;while(1){g=k<<24>>24==0;while(1){e=e+4|0;if(e>>>0>=o>>>0)break a;if(g){g=11;break}i=c[e>>2]|0;if(!(c[(c[i+16>>2]|0)+212>>2]|0)){g=13;break}}if((g|0)==11){i=c[e>>2]|0;j=i}else if((g|0)==13)j=i;if(ri(b,l,j)|0)continue b;g=c[i+16>>2]|0;if(+h[g+240>>3]>=0.0)break;k=(c[g+212>>2]|0)==0?k:1}g=~~m;k=~~+h[(c[i+16>>2]|0)+240>>3];if((g|0)>(k|0)|q&(g|0)==(k|0))break}vi(l,j);f=f+1|0}e=n;o=p?o+-4|0:o}if(f|0?(r=c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0,a[r+(d<<6)+49>>0]=0,(d|0)>0):0)a[r+(d+-1<<6)+49>>0]=0;return}function zi(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;g=c[a+16>>2]|0;if((c[g+200>>2]|0)>0){f=c[g+196>>2]|0;a=c[f>>2]|0;a=c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0;d=1;while(1){e=c[f+(d<<2)>>2]|0;if(!e)break;e=c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0;a=(c[(c[e+16>>2]|0)+236>>2]|0)>(c[(c[a+16>>2]|0)+236>>2]|0)?e:a;d=d+1|0}b=+h[(c[a+16>>2]|0)+240>>3];if(!(b>=0.0))a=1;else{h[g+240>>3]=b+1.0;a=0}}else if((c[g+192>>2]|0)>0){e=c[g+188>>2]|0;d=c[e>>2]|0;a=1;d=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;while(1){f=c[e+(a<<2)>>2]|0;if(!f)break;f=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;a=a+1|0;d=(c[(c[f+16>>2]|0)+236>>2]|0)<(c[(c[d+16>>2]|0)+236>>2]|0)?f:d}b=+h[(c[d+16>>2]|0)+240>>3];if(b>0.0){h[g+240>>3]=b+-1.0;a=0}else a=1}else a=1;return a|0}function Ai(a,b){a=a|0;b=b|0;return (c[(c[(c[a>>2]|0)+16>>2]|0)+236>>2]|0)-(c[(c[(c[b>>2]|0)+16>>2]|0)+236>>2]|0)|0}function Bi(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+96|0;o=p+64|0;n=p+48|0;h=p+24|0;f=p;j=d+16|0;k=c[(c[j>>2]|0)+232>>2]|0;m=a+16|0;e=c[(c[m>>2]|0)+196>>2]|0;i=c[e+(k<<6)>>2]|0;do if((c[e+(k<<6)+8>>2]|0)>=1){c[(c[e+(k<<6)+4>>2]|0)+(i<<2)>>2]=d;c[(c[j>>2]|0)+236>>2]=i;a=c[m>>2]|0;f=c[a+196>>2]|0;e=f+(k<<6)|0;g=c[e>>2]|0;c[e>>2]=g+1;if((g|0)>=(c[f+(k<<6)+8>>2]|0))qa(86282,85686,1346,86318);g=c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(k<<6)+8>>2]|0;if((i|0)>(g|0)){m=ry(d)|0;n=c[(c[j>>2]|0)+236>>2]|0;o=c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(k<<6)+8>>2]|0;c[h>>2]=1359;c[h+4>>2]=m;c[h+8>>2]=n;c[h+12>>2]=k;c[h+16>>2]=o;Pw(1,86334,h)|0;break}e=b[a+236>>1]|0;a=b[a+238>>1]|0;if((k|0)<(e|0)|(k|0)>(a<<16>>16|0)){c[n>>2]=1364;c[n+4>>2]=k;c[n+8>>2]=e;c[n+12>>2]=a<<16>>16;Pw(1,86407,n)|0;break}if(((c[f+(k<<6)+4>>2]|0)+(i<<2)|0)>>>0>((c[f+(k<<6)+12>>2]|0)+(g<<2)|0)>>>0){i=ry(d)|0;n=c[(c[m>>2]|0)+196>>2]|0;m=(c[n+(k<<6)+4>>2]|0)+(c[(c[j>>2]|0)+236>>2]<<2)|0;n=(c[n+(k<<6)+12>>2]|0)+(c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(k<<6)+8>>2]<<2)|0;c[o>>2]=1370;c[o+4>>2]=k;c[o+8>>2]=i;c[o+12>>2]=m;c[o+16>>2]=k;c[o+20>>2]=k;c[o+24>>2]=n;Pw(1,86468,o)|0}}else{n=ry(a)|0;o=ry(d)|0;c[f>>2]=1339;c[f+4>>2]=n;c[f+8>>2]=o;c[f+12>>2]=k;c[f+16>>2]=i;Pw(1,86227,f)|0}while(0);l=p;return}function Ci(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=d+16|0;a:do if(!e){g=0;while(1){d=c[h>>2]|0;if((g|0)>=(c[d+184>>2]|0))break a;d=c[(c[d+180>>2]|0)+(g<<2)>>2]|0;e=d+-48|0;f=(c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0)+157|0;if(!(a[f>>0]|0)){a[f>>0]=1;IL(b,c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)}g=g+1|0}}else{g=0;while(1){d=c[h>>2]|0;if((g|0)>=(c[d+176>>2]|0))break a;d=c[(c[d+172>>2]|0)+(g<<2)>>2]|0;e=d+48|0;f=(c[(c[((c[d>>2]&3|0)==3?d:e)+40>>2]|0)+16>>2]|0)+157|0;if(!(a[f>>0]|0)){a[f>>0]=1;IL(b,c[((c[d>>2]&3|0)==3?d:e)+40>>2]|0)}g=g+1|0}}while(0);return}function Di(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;u=v;g=d+16|0;f=c[(c[g>>2]|0)+196>>2]|0;s=c[f+(e<<6)+4>>2]|0;t=e+1|0;d=c[(c[(c[(c[45971]|0)+16>>2]|0)+196>>2]|0)+(t<<6)>>2]|0;if((c[45975]|0)>(d|0))q=c[45976]|0;else{d=d+1|0;c[45975]=d;f=c[45976]|0;if(!f)d=vH(d<<2)|0;else d=xH(f,d<<2)|0;c[45976]=d;f=c[(c[g>>2]|0)+196>>2]|0;q=d}r=f+(t<<6)|0;d=0;while(1){if((d|0)>=(c[r>>2]|0))break;c[q+(d<<2)>>2]=0;d=d+1|0}p=f+(e<<6)|0;o=0;h=0;d=0;j=q;while(1){k=c[p>>2]|0;if((o|0)>=(k|0))break;n=c[(c[(c[s+(o<<2)>>2]|0)+16>>2]|0)+180>>2]|0;a:do if((h|0)>0){m=0;while(1){g=c[n+(m<<2)>>2]|0;if(!g)break a;k=g+16|0;i=c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;while(1){g=i+1|0;if((i|0)>=(h|0))break;i=g;d=(O(c[j+(g<<2)>>2]|0,b[(c[k>>2]|0)+154>>1]|0)|0)+d|0}m=m+1|0}}while(0);i=0;while(1){g=c[n+(i<<2)>>2]|0;if(!g)break;j=c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;m=q+(j<<2)|0;c[m>>2]=(c[m>>2]|0)+(b[(c[g+16>>2]|0)+154>>1]|0);h=(j|0)>(h|0)?j:h;i=i+1|0;j=q}o=o+1|0}i=f+(e<<6)+4|0;h=0;while(1){if((h|0)>=(k|0))break;g=c[(c[(c[i>>2]|0)+(h<<2)>>2]|0)+16>>2]|0;if(a[g+145>>0]|0){e=g+180|0;c[u>>2]=c[e>>2];c[u+4>>2]=c[e+4>>2];d=(Ei(u,1)|0)+d|0}h=h+1|0}i=c[r>>2]|0;h=f+(t<<6)+4|0;g=0;while(1){if((g|0)>=(i|0))break;f=c[(c[(c[h>>2]|0)+(g<<2)>>2]|0)+16>>2]|0;if(a[f+145>>0]|0){t=f+172|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];d=(Ei(u,-1)|0)+d|0}g=g+1|0}l=v;return d|0}function Ei(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=(d|0)<1;l=c[a>>2]|0;d=0;a=0;a:while(1){m=c[l+(d<<2)>>2]|0;if(!m)break;d=d+1|0;if(n){j=m+48|0;k=m+16|0;i=d;while(1){e=c[l+(i<<2)>>2]|0;if(!e)continue a;f=c[e+16>>2]|0;g=c[k>>2]|0;if((+h[f+56>>3]-+h[g+56>>3])*+((c[(c[(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-(c[(c[(c[((c[m>>2]&3|0)==3?m:j)+40>>2]|0)+16>>2]|0)+236>>2]|0)|0)<0.0)a=(O(b[f+154>>1]|0,b[g+154>>1]|0)|0)+a|0;i=i+1|0}}else{j=m+-48|0;k=m+16|0;i=d;while(1){e=c[l+(i<<2)>>2]|0;if(!e)continue a;f=c[e+16>>2]|0;g=c[k>>2]|0;if((+h[f+16>>3]-+h[g+16>>3])*+((c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-(c[(c[(c[((c[m>>2]&3|0)==2?m:j)+40>>2]|0)+16>>2]|0)+236>>2]|0)|0)<0.0)a=(O(b[f+154>>1]|0,b[g+154>>1]|0)|0)+a|0;i=i+1|0}}}return a|0}function Fi(a){a=a|0;var b=0.0,d=0.0;c[45974]=8;c[46365]=24;h[22830]=.995;a=xx(a,86590)|0;if(a|0?(b=+b2(a),b>0.0):0){d=b*+(c[45974]|0);c[45974]=~~(d>1.0?d:1.0);b=b*+(c[46365]|0);c[46365]=~~(b>1.0?b:1.0)}return}function Gi(a){a=a|0;var d=0,e=0;e=(b[(c[a+16>>2]|0)+238>>1]|0)+2|0;d=uH(e<<2)|0;Ii(a,d,e,0)|0;D_(d);return}function Hi(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+16|0;i=uH((b[(c[h>>2]|0)+238>>1]<<2)+8|0)|0;g=Sy(a)|0;while(1){if(!g)break;f=i+(c[(c[g+16>>2]|0)+232>>2]<<2)|0;c[f>>2]=(c[f>>2]|0)+1;f=Ex(a,g)|0;while(1){if(!f)break;j=c[f>>2]&3;d=c[(c[(c[((j|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;j=c[(c[(c[((j|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;k=(d|0)>(j|0);e=k?d:j;d=k?j:d;while(1){d=d+1|0;if((d|0)>=(e|0))break;k=i+(d<<2)|0;c[k>>2]=(c[k>>2]|0)+1}f=Gx(a,f)|0}g=Ty(a,g)|0}f=uH((b[(c[h>>2]|0)+238>>1]<<6)+128|0)|0;e=c[h>>2]|0;c[e+196>>2]=f;d=b[e+236>>1]|0;while(1){if((d|0)>(b[e+238>>1]|0))break;j=i+(d<<2)|0;e=c[j>>2]|0;c[f+(d<<6)>>2]=e;c[f+(d<<6)+8>>2]=e;j=uH((c[j>>2]<<2)+4|0)|0;e=c[h>>2]|0;k=c[e+196>>2]|0;c[k+(d<<6)+4>>2]=j;c[k+(d<<6)+12>>2]=j;d=d+1|0;f=k}D_(i);return}function Ii(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0;m=a+16|0;i=1;while(1){g=c[m>>2]|0;if((i|0)>(c[g+180>>2]|0))break;l=Ii(c[(c[g+184>>2]|0)+(i<<2)>>2]|0,d,e,f)|0;i=i+1|0;f=l}a:do if((ig(a)|0)!=(a|0)){H3(d|0,0,e<<2|0)|0;g=Sy(a)|0;while(1){if(!g)break;k=g+16|0;c[d+(c[(c[k>>2]|0)+232>>2]<<2)>>2]=1;i=Ex(a,g)|0;while(1){if(!i)break;l=i+-48|0;j=c[(c[k>>2]|0)+232>>2]|0;while(1){e=j+1|0;if((j|0)>=(c[(c[(c[((c[i>>2]&3|0)==2?i:l)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;c[d+(e<<2)>>2]=1;j=e}i=Gx(a,i)|0}g=Ty(a,g)|0}g=c[m>>2]|0;i=b[g+236>>1]|0;while(1){if((i|0)>(b[g+238>>1]|0))break a;if(!(c[d+(i<<2)>>2]|0)){if(!f)f=vA(ig(a)|0,86580,1)|0;g=az(f,0,1)|0;Az(g,134365,304,1)|0;l=g+16|0;j=c[l>>2]|0;c[j+232>>2]=i;h[j+96>>3]=.5;h[j+88>>3]=.5;h[j+80>>3]=1.0;c[j+216>>2]=1;c[j+176>>2]=0;j=uH(20)|0;k=c[l>>2]|0;c[k+172>>2]=j;c[k+184>>2]=0;k=uH(20)|0;c[(c[l>>2]|0)+180>>2]=k;Xy(a,g,1)|0;g=c[m>>2]|0}i=i+1|0}}while(0);return f|0}function Ji(a){a=a|0;var b=0,d=0;Zh(a);b=a+16|0;a=1;while(1){d=c[b>>2]|0;if((a|0)>(c[d+180>>2]|0))break;Ji(c[(c[d+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}return}function Ki(a){a=a|0;var b=0,d=0;b=c[a>>2]&3;d=Li(c[((b|0)==3?a:a+48|0)+40>>2]|0)|0;b=c[17308+(d*12|0)+((Li(c[((b|0)==2?a:a+-48|0)+40>>2]|0)|0)<<2)>>2]|0;a=(c[a+16>>2]|0)+156|0;c[a>>2]=O(c[a>>2]|0,b)|0;return}function Li(b){b=b|0;b=c[b+16>>2]|0;if((a[b+156>>0]|0)==1)b=2;else b=(a[b+160>>0]|0)<2&1;return b|0}function Mi(b,d){b=b|0;d=d|0;if(c[(c[b+16>>2]|0)+192>>2]|0){ll(b);Ni(b);if(a[191874]|0)zl(b);Oi(b);if(Rl(b)|0)Ni(b);Pi(b);if(fI(b,2,Qi(b)|0)|0?(Ri(b),fI(b,2,Qi(b)|0)|0):0)qa(86598,86626,134,86637);Si(b);Ti(b,d);Ui(b)}return}function Ni(d){d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.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.0,z=0.0;v=d+16|0;e=c[v>>2]|0;w=c[e+196>>2]|0;t=b[e+236>>1]|0;while(1){if((t|0)>(b[e+238>>1]|0))break;n=w+(t<<6)|0;o=w+(t<<6)+4|0;p=w+(t<<6)+40|0;q=w+(t<<6)+24|0;r=w+(t<<6)+32|0;s=w+(t<<6)+16|0;m=0;while(1){if((m|0)>=(c[n>>2]|0))break;l=(c[(c[o>>2]|0)+(m<<2)>>2]|0)+16|0;e=c[l>>2]|0;j=+h[e+80>>3]*.5;i=c[e+204>>2]|0;a:do if(i){g=0;while(1){f=c[i+(g<<2)>>2]|0;if(!f)break a;x=c[f>>2]&3;if((c[((x|0)==3?f:f+48|0)+40>>2]|0)==(c[((x|0)==2?f:f+-48|0)+40>>2]|0)?(u=c[(c[f+16>>2]|0)+96>>2]|0,(u|0)!=0):0){k=+h[u+32>>3]*.5;j=j>k?j:k}g=g+1|0}}while(0);if(+h[p>>3]>3]=j;h[p>>3]=j}if(+h[r>>3]>3]=j;h[r>>3]=j}f=c[e+212>>2]|0;if(f|0){if((f|0)==(d|0))g=0;else{g=KL(f,c[46374]|0,8,0)|0;e=c[l>>2]|0}i=c[e+232>>2]|0;f=c[f+16>>2]|0;e=f+128|0;j=j+ +(g|0);if((i|0)==(b[f+236>>1]|0)){k=+h[e>>3];h[e>>3]=k>j?k:j}e=f+120|0;if((i|0)==(b[f+238>>1]|0)){k=+h[e>>3];h[e>>3]=k>j?k:j}}m=m+1|0}t=t+1|0;e=c[v>>2]|0}m=tj(d)|0;g=c[v>>2]|0;e=b[g+238>>1]|0;h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+h[w+(e<<6)+16>>3];f=b[g+236>>1]|0;i=g+252|0;k=0.0;while(1){l=e+-1|0;if((e|0)<=(f|0))break;y=+h[w+(l<<6)+32>>3]+ +h[w+(e<<6)+40>>3]+ +(c[i>>2]|0);j=+h[w+(e<<6)+24>>3]+8.0+ +h[w+(l<<6)+16>>3];j=y>j?y:j;if((c[w+(l<<6)>>2]|0)>0)h[(c[(c[c[w+(l<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+j;k=k>j?k:j;e=l}b:do if((m|0)!=0?(c[g+116>>2]&1|0)!=0:0){uj(d,0);g=c[v>>2]|0;if(a[g+276>>0]|0){e=b[g+238>>1]|0;f=b[g+236>>1]|0;j=+h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];k=0.0;while(1){i=e+-1|0;if((e|0)<=(f|0))break b;z=+h[(c[(c[c[w+(i<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];y=z-j;j=z;k=k>y?k:y;e=i}}}while(0);c:do if(a[g+276>>0]|0){i=b[g+236>>1]|0;f=b[g+238>>1]|0;while(1){e=f+-1|0;if((f|0)<=(i|0))break c;if((c[w+(e<<6)>>2]|0)<=0){f=e;continue}h[(c[(c[c[w+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+h[(c[(c[c[w+(f<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+k;f=e}}while(0);e=g+192|0;while(1){e=c[e>>2]|0;if(!e)break;e=c[e+16>>2]|0;h[e+24>>3]=+h[(c[(c[c[w+(c[e+232>>2]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];e=e+164|0}return}function Oi(a){a=a|0;var b=0,d=0,e=0;pj(a);b=(c[a+16>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;e=b+16|0;b=c[e>>2]|0;d=c[b+224>>2]|0;if(d){qj(a,d);b=c[e>>2]|0}d=c[b+228>>2]|0;if(!d)d=b;else{qj(a,d);d=c[e>>2]|0}e=c[d+204>>2]|0;if(e|0){b=0;while(1)if(!(c[e+(b<<2)>>2]|0))break;else b=b+1|0}b=d+164|0}return}function Pi(a){a=a|0;bj(a);cj(a);dj(a);ej(a);fj(a);return}function Qi(a){a=a|0;var b=0,c=0.0;b=xx(a,86826)|0;if(!b)a=2147483647;else{c=+b2(b);a=~~(c*+(ay(a)|0))}return a|0}function Ri(d){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;r=d+16|0;e=c[r>>2]|0;q=b[e+236>>1]|0;while(1){p=b[e+238>>1]|0;if((q|0)>(p|0)){s=19;break}n=c[e+196>>2]|0;o=n+(q<<6)|0;m=c[o>>2]|0;n=n+(q<<6)+4|0;l=0;f=0;a:while(1){if((l|0)>=(m|0)){s=14;break}f=c[(c[n>>2]|0)+(l<<2)>>2]|0;h=c[f+16>>2]|0;i=c[h+256>>2]|0;b:do if(i|0){g=0;while(1){j=c[i+(g<<2)>>2]|0;if(!j)break b;k=c[j>>2]&3;if((c[(c[(c[((k|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;if((c[(c[(c[((k|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;else g=g+1|0}}while(0);h=c[h+248>>2]|0;c:do if(h|0){g=0;while(1){i=c[h+(g<<2)>>2]|0;if(!i)break c;j=c[i>>2]&3;if((c[(c[(c[((j|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;if((c[(c[(c[((j|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(q|0))break a;else g=g+1|0}}while(0);l=l+1|0}if((s|0)==14){s=0;if(f){f=c[c[n>>2]>>2]|0;e=c[c[o+(((q|0)<(p|0)?1:-1)<<6)+4>>2]>>2]|0;if(!e){s=16;break}o=uh(d)|0;p=o+16|0;a[(c[p>>2]|0)+156>>0]=2;$i(o,f,0.0,0)|0;$i(o,e,0.0,0)|0;c[(c[p>>2]|0)+232>>2]=c[(c[((c[(c[f+16>>2]|0)+232>>2]|0)<(c[(c[e+16>>2]|0)+232>>2]|0)?f:e)+16>>2]|0)+232>>2];e=c[r>>2]|0}}q=q+1|0}if((s|0)==16)qa(86734,86626,111,86737);else if((s|0)==19)return}function Si(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0;a=c[a+16>>2]|0;i=c[a+196>>2]|0;e=b[a+238>>1]|0;a=b[a+236>>1]|0;while(1){if((a|0)>(e|0))break;f=c[i+(a<<6)>>2]|0;g=i+(a<<6)+4|0;d=0;while(1){if((d|0)>=(f|0))break;k=c[(c[(c[g>>2]|0)+(d<<2)>>2]|0)+16>>2]|0;j=k+232|0;h[k+16>>3]=+(c[j>>2]|0);c[j>>2]=a;d=d+1|0}a=a+1|0}return}function Ti(a,d){a=a|0;d=d|0;var e=0,f=0.0,g=0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0;Vi(a,a);g=a+16|0;k=c[g>>2]|0;a:do if((b[k+238>>1]|0)>0?(j=c[k+8>>2]|0,e=c[j+84>>2]|0,e|0):0){o=~~(+h[k+32>>3]-+h[k+16>>3]);m=~~(+h[k+40>>3]-+h[k+24>>3]);p=(c[k+116>>2]&1|0)==0;n=p?m:o;m=p?o:m;if((e|0)==4){e=Wi(a)|0;k=c[g>>2]|0;j=c[k+8>>2]|0}else e=(e|0)==2&1;b:do if(!(e<<24>>24)){switch(c[j+84>>2]|0){case 5:{f=+h[j+64>>3];if(f<=0.0)break a;i=f/+h[k+32>>3];l=+h[j+72>>3]/+h[k+40>>3];f=i1.0&l>1.0){l=f;break b}else break a}case 1:break;default:break a}i=+h[j+16>>3];f=+(n|0)/+(m|0);if(f>3];if(f<=0.0)break a;i=f/+(m|0);f=+h[j+72>>3]/+(n|0);if(i<1.0|f<1.0)if(i>2]&1|0)==0;i=e?f:l;f=e?l:f;e=k+192|0;while(1){e=c[e>>2]|0;if(!e)break;e=c[e+16>>2]|0;p=e+16|0;l=+h[p>>3]*f;h[p>>3]=+(~~(l+(l>=0.0?.5:-.5))|0);p=e+24|0;l=+h[p>>3]*i;h[p>>3]=+(~~(l+(l>=0.0?.5:-.5))|0);e=e+164|0}Xi(a,f,i)}while(0);if(d|0)Yi(a,d);return}function Ui(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=b+16|0;b=(c[h>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;g=b+16|0;d=0;while(1){b=c[g>>2]|0;f=c[b+180>>2]|0;e=c[f+(d<<2)>>2]|0;if(!e)break;D_(c[e+16>>2]|0);D_(e);d=d+1|0}if(f){D_(f);b=c[g>>2]|0}d=c[b+172>>2]|0;if(d){D_(d);b=c[g>>2]|0}f=b+256|0;e=c[f+4>>2]|0;b=b+180|0;c[b>>2]=c[f>>2];c[b+4>>2]=e;b=c[g>>2]|0;e=b+248|0;f=c[e+4>>2]|0;b=b+172|0;c[b>>2]=c[e>>2];c[b+4>>2]=f;b=(c[g>>2]|0)+164|0}b=0;d=c[(c[h>>2]|0)+192>>2]|0;a:while(1){g=(b|0)==0;f=b+16|0;b=d;while(1){if(!b)break a;e=c[b+16>>2]|0;d=c[e+164>>2]|0;if((a[e+156>>0]|0)!=2)continue a;if(g)c[(c[h>>2]|0)+192>>2]=d;else c[(c[f>>2]|0)+164>>2]=d;D_(e);D_(b);b=d}}c[(c[(c[(c[h>>2]|0)+192>>2]|0)+16>>2]|0)+168>>2]=0;return}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=a+16|0;d=1;while(1){f=c[e>>2]|0;if((d|0)>(c[f+180>>2]|0))break;Vi(c[(c[f+184>>2]|0)+(d<<2)>>2]|0,b);d=d+1|0}_i(a,b);return}function Wi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;s=l;l=l+80|0;e=s+64|0;d=s+48|0;f=s+16|0;m=s;r=s+32|0;a=a+16|0;b=c[(c[a>>2]|0)+8>>2]|0;t=b+48|0;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];if((!(+h[f>>3]<.001)?(g=f+8|0,!(+h[g>>3]<.001)):0)?(i=b+32|0,c[m>>2]=c[i>>2],c[m+4>>2]=c[i+4>>2],c[m+8>>2]=c[i+8>>2],c[m+12>>2]=c[i+12>>2],c[d>>2]=c[f>>2],c[d+4>>2]=c[f+4>>2],c[d+8>>2]=c[f+8>>2],c[d+12>>2]=c[f+12>>2],c[e>>2]=c[i>>2],c[e+4>>2]=c[i+4>>2],c[e+8>>2]=c[i+8>>2],c[e+12>>2]=c[i+12>>2],Zi(r,d,e),c[f>>2]=c[r>>2],c[f+4>>2]=c[r+4>>2],c[f+8>>2]=c[r+8>>2],c[f+12>>2]=c[r+12>>2],c[d>>2]=c[r>>2],c[d+4>>2]=c[r+4>>2],c[d+8>>2]=c[r+8>>2],c[d+12>>2]=c[r+12>>2],c[e>>2]=c[m>>2],c[e+4>>2]=c[m+4>>2],c[e+8>>2]=c[m+8>>2],c[e+12>>2]=c[m+12>>2],Zi(f,d,e),i=c[a>>2]|0,j=+h[i+32>>3],k=+h[i+40>>3],n=+h[f>>3],o=n/j,p=+h[g>>3],q=p/k,!(o>=1.0&q>=1.0)):0){o=o.5?o:.5;q=+N(+(o*k/p))*p/k;p=+N(+(o*j/n))*n/j*j;a=c[i+8>>2]|0;h[a+64>>3]=p;h[a+72>>3]=q*k;a=1}else a=0;l=s;return a|0}function Xi(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;e=a+16|0;a=1;while(1){f=c[e>>2]|0;if((a|0)>(c[f+180>>2]|0))break;Xi(c[(c[f+184>>2]|0)+(a<<2)>>2]|0,b,d);a=a+1|0}e=f+16|0;h[e>>3]=+h[e>>3]*b;e=f+24|0;h[e>>3]=+h[e>>3]*d;e=f+32|0;h[e>>3]=+h[e>>3]*b;f=f+40|0;h[f>>3]=+h[f>>3]*d;return}function Yi(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+24|0;g=m+16|0;f=m;n=c[a+16>>2]|0;e=+h[n+32>>3]-+h[n+16>>3];d=+h[n+40>>3]-+h[n+24>>3];i=e/d;if(0){n=c[15686]|0;h[f>>3]=i;h[f+8>>3]=e*.0001*d;g1(n,86650,f)|0;c[g>>2]=zk(a)|0;g1(n,86675,g)|0}d=+h[b>>3];do if(!(i>d*1.1)){a=b+24|0;if(!(i<=d*.8)){c[a>>2]=0;k=9;break}c[a>>2]=-1;if(0){E1(86685,34,1,c[15686]|0)|0;k=9}}else{c[b+24>>2]=~~(d*+((c[b+20>>2]|0)-(c[b+16>>2]|0)|0)/i);k=9}while(0);if((k|0)==9?0:0){n=c[15686]|0;c[j>>2]=c[b+24>>2];g1(n,86720,j)|0}l=m;return}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function _i(d,e){d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;s=(ig(d)|0)==(d|0);v=d+16|0;w=c[v>>2]|0;a:do if(s){f=b[w+236>>1]|0;d=b[w+238>>1]|0;q=d<<16>>16;r=w+196|0;s=w+196|0;p=f<<16>>16;i=-2147483647.0;g=2147483647.0;while(1){if((p|0)>(q|0))break;j=c[r>>2]|0;o=c[j+(p<<6)>>2]|0;if((o|0)!=0?(t=c[j+(p<<6)+4>>2]|0,u=c[t>>2]|0,(u|0)!=0):0){l=1;j=u;while(1){j=c[j+16>>2]|0;k=a[j+156>>0]|0;if(!((l|0)<(o|0)&k<<24>>24!=0))break;j=c[t+(l<<2)>>2]|0;l=l+1|0}if(!(k<<24>>24)){m=+h[j+16>>3]-+h[j+88>>3];n=g>2]|0)+(p<<6)+4>>2]|0;k=o+-2|0;j=o+-1|0;while(1){j=c[(c[l+(j<<2)>>2]|0)+16>>2]|0;if(!(a[j+156>>0]|0))break;else{j=k;k=k+-1|0}}x=+h[j+96>>3]+ +h[j+16>>3];i=i>x?i:x;g=n?g:m}}p=p+1|0}k=c[w+180>>2]|0;l=w+184|0;j=1;while(1){if((j|0)>(k|0))break a;u=c[(c[(c[l>>2]|0)+(j<<2)>>2]|0)+16>>2]|0;x=+h[u+16>>3]+-8.0;m=+h[u+32>>3]+8.0;j=j+1|0;i=i>m?i:m;g=g>2]|0)+16>>2]|0)+232>>2]|0);g=+(c[(c[(c[w+256>>2]|0)+16>>2]|0)+232>>2]|0);f=b[w+236>>1]|0;d=b[w+238>>1]|0}while(0);e=c[(c[e+16>>2]|0)+196>>2]|0;m=+h[(c[(c[c[e+(d<<16>>16<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+h[w+120>>3];x=+h[w+128>>3]+ +h[(c[(c[c[e+(f<<16>>16<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];h[w+16>>3]=g;h[w+24>>3]=m;e=c[v>>2]|0;h[e+32>>3]=i;h[e+40>>3]=x;return}function $i(a,d,e,f){a=a|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0;i=uH(96)|0;j=i+48|0;c[j>>2]=c[j>>2]|3;c[i>>2]=c[i>>2]&-4|2;g=uH(176)|0;h=i+16|0;c[h>>2]=g;c[((c[i>>2]&3|0)==3?i:j)+40>>2]=a;c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]=d;if(e>65535.0){aj(e);e=65535.0;g=c[h>>2]|0}b[g+170>>1]=~~(e+(e>=0.0?.5:-.5));c[g+156>>2]=f;ih(i)|0;return i|0}function aj(a){a=+a;var b=0,d=0;b=l;l=l+16|0;d=b;h[d>>3]=a;c[d+8>>2]=65535;Pw(1,86750,d)|0;l=b;return}function bj(a){a=a|0;var b=0,d=0,e=0,f=0;a=(c[a+16>>2]|0)+192|0;while(1){a=c[a>>2]|0;if(!a)break;f=a+16|0;e=c[f>>2]|0;a=e+172|0;d=c[a+4>>2]|0;e=e+248|0;c[e>>2]=c[a>>2];c[e+4>>2]=d;e=c[f>>2]|0;d=e+180|0;a=c[d+4>>2]|0;e=e+256|0;c[e>>2]=c[d>>2];c[e+4>>2]=a;e=c[f>>2]|0;a=c[e+180>>2]|0;d=0;while(1)if(!(c[a+(d<<2)>>2]|0))break;else d=d+1|0;b=c[e+172>>2]|0;a=0;while(1)if(!(c[b+(a<<2)>>2]|0))break;else a=a+1|0;c[e+176>>2]=0;a=uH((a+d<<2)+16|0)|0;e=c[f>>2]|0;c[e+172>>2]=a;c[e+184>>2]=0;e=uH(16)|0;a=c[f>>2]|0;c[a+180>>2]=e;a=a+164|0}return}function cj(d){d=d|0;var f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+16|0;w=z;x=d+16|0;u=c[x>>2]|0;y=c[u+196>>2]|0;d=(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1)!=0;v=c[u+248>>2]|0;c[w>>2]=v;c[w+4>>2]=d?5:v;v=b[u+236>>1]|0;d=u;while(1){if((v|0)>(b[d+238>>1]|0))break;r=y+(v<<6)+4|0;c[(c[(c[c[r>>2]>>2]|0)+16>>2]|0)+232>>2]=0;s=y+(v<<6)|0;t=+(c[w+((v&1)<<2)>>2]|0);p=0.0;k=0;a:while(1){if((k|0)>=(c[s>>2]|0))break;f=c[r>>2]|0;m=c[f+(k<<2)>>2]|0;u=m+16|0;d=c[u>>2]|0;i=+h[d+96>>3];h[d+240>>3]=i;if((c[d+208>>2]|0)>0){j=0;f=0;while(1){g=c[(c[d+204>>2]|0)+(j<<2)>>2]|0;if(!g)break;q=c[g>>2]&3;if((c[((q|0)==3?g:g+48|0)+40>>2]|0)==(c[((q|0)==2?g:g+-48|0)+40>>2]|0)){f=(XK(g)|0)+f|0;d=c[u>>2]|0}j=j+1|0}q=d+96|0;i=+h[q>>3]+ +(f|0);h[q>>3]=i;f=c[r>>2]|0}q=k+1|0;f=c[f+(q<<2)>>2]|0;if(f){o=f+16|0;i=i+t+ +h[(c[o>>2]|0)+88>>3];$i(m,f,i,0)|0;d=~~(i+p);c[(c[o>>2]|0)+232>>2]=d;p=+(d|0);d=c[u>>2]|0}f=c[d+112>>2]|0;if(f){j=c[d+256>>2]|0;k=c[j>>2]|0;j=c[j+4>>2]|0;d=(c[(c[(c[((c[k>>2]&3|0)==2?k:k+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)>(c[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0);g=d?j:k;j=d?k:j;k=f+16|0;d=c[k>>2]|0;i=+((O(c[(c[x>>2]|0)+248>>2]|0,e[d+170>>1]|0)|0)/2|0|0);o=c[g>>2]&3;f=c[((o|0)==2?g:g+-48|0)+40>>2]|0;g=c[((o|0)==3?g:g+48|0)+40>>2]|0;if(!(nj(g,f)|0))$i(f,g,+(~~(+h[(c[f+16>>2]|0)+96>>3]+i+ +h[(c[g+16>>2]|0)+88>>3])|0),c[d+156>>2]|0)|0;d=c[j>>2]&3;f=c[((d|0)==3?j:j+48|0)+40>>2]|0;d=c[((d|0)==2?j:j+-48|0)+40>>2]|0;if(!(nj(d,f)|0)){$i(f,d,+(~~(+h[(c[f+16>>2]|0)+96>>3]+i+ +h[(c[d+16>>2]|0)+88>>3])|0),c[(c[k>>2]|0)+156>>2]|0)|0;o=0}else o=0}else o=0;while(1){d=c[u>>2]|0;if((o|0)>=(c[d+192>>2]|0)){k=q;continue a}m=c[(c[d+188>>2]|0)+(o<<2)>>2]|0;k=c[m>>2]&3;g=c[((k|0)==3?m:m+48|0)+40>>2]|0;k=c[((k|0)==2?m:m+-48|0)+40>>2]|0;j=(c[(c[g+16>>2]|0)+236>>2]|0)<(c[(c[k+16>>2]|0)+236>>2]|0);f=j?g:k;g=j?k:g;i=+h[(c[g+16>>2]|0)+88>>3]+ +h[(c[f+16>>2]|0)+96>>3];k=m+16|0;j=~~(i+ +(O(c[(c[x>>2]|0)+248>>2]|0,e[(c[k>>2]|0)+170>>1]|0)|0));n=fh(f,g)|0;if(!n){d=c[k>>2]|0;if(!(c[d+96>>2]|0))$i(f,g,+(j|0),c[d+156>>2]|0)|0}else{A=+(j|0);d=c[k>>2]|0;B=+h[d+136>>3];i=i+ +(c[(c[x>>2]|0)+248>>2]|0)+ +(~~(B+(B>=0.0?.5:-.5))|0);f=~~(i65535){aj(+(f|0));f=65535;d=c[k>>2]|0}k=c[n+16>>2]|0;j=k+170|0;g=e[j>>1]|0;b[j>>1]=(f|0)<(g|0)?g:f;k=k+156|0;c[k>>2]=c[(c[((c[k>>2]|0)>(c[d+156>>2]|0)?n:m)+16>>2]|0)+156>>2]}o=o+1|0}}v=v+1|0;d=c[x>>2]|0}l=z;return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=(c[b+16>>2]|0)+192|0;while(1){d=c[d>>2]|0;if(!d)break;g=d+16|0;d=c[g>>2]|0;e=c[d+256>>2]|0;a:do if(e){f=0;while(1){e=c[e+(f<<2)>>2]|0;if(!e)break a;n=uh(b)|0;d=n+16|0;a[(c[d>>2]|0)+156>>0]=2;l=e+16|0;k=c[l>>2]|0;i=~~(+h[k+56>>3]-+h[k+16>>3]);m=(i|0)>0;j=m?0:0-i|0;i=m?i:0;m=e+48|0;$i(n,c[((c[e>>2]&3|0)==3?e:m)+40>>2]|0,+(i+1|0),c[k+156>>2]|0)|0;k=e+-48|0;$i(n,c[((c[e>>2]&3|0)==2?e:k)+40>>2]|0,+(j+1|0),c[(c[l>>2]|0)+156>>2]|0)|0;l=c[e>>2]&3;i=(c[(c[(c[((l|0)==3?e:m)+40>>2]|0)+16>>2]|0)+232>>2]|0)-i|0;e=(c[(c[(c[((l|0)==2?e:k)+40>>2]|0)+16>>2]|0)+232>>2]|0)-j|0;c[(c[d>>2]|0)+232>>2]=((i|0)<(e|0)?i:e)+-1;d=c[g>>2]|0;f=f+1|0;e=c[d+256>>2]|0}}while(0);d=d+164|0}return}function ej(a){a=a|0;if((c[(c[a+16>>2]|0)+180>>2]|0)>0){ij(a);jj(a);kj(a);lj(a)}return}function fj(a){a=a|0;var b=0.0,d=0.0,e=0,f=0;e=a+16|0;f=c[(c[e>>2]|0)+8>>2]|0;if((c[f+84>>2]|0)==3?(b=+h[f+64>>3],d=+h[f+72>>3],!(d*b<=1.0)):0){gj(a);f=c[e>>2]|0;d=(c[f+116>>2]&1|0)==0?b:d;$i(c[f+256>>2]|0,c[f+260>>2]|0,d<65535.0?d:65535.0,1e3)|0}return}function gj(a){a=a|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;e=KL(a,c[46374]|0,8,0)|0;hj(a);i=a+16|0;g=c[i>>2]|0;j=c[g+256>>2]|0;k=c[g+260>>2]|0;f=+(e|0);e=b[g+236>>1]|0;while(1){if((e|0)>(b[g+238>>1]|0))break;d=c[g+196>>2]|0;do if(c[d+(e<<6)>>2]|0){d=c[c[d+(e<<6)+4>>2]>>2]|0;if(!d){c[m>>2]=ry(a)|0;c[m+4>>2]=e;Pw(1,86834,m)|0;break}else{$i(j,d,+h[(c[d+16>>2]|0)+88>>3]+f+ +h[g+96>>3],0)|0;g=c[i>>2]|0;d=c[g+196>>2]|0;d=c[(c[d+(e<<6)+4>>2]|0)+((c[d+(e<<6)>>2]|0)+-1<<2)>>2]|0;$i(d,k,+h[(c[d+16>>2]|0)+96>>3]+f+ +h[g+64>>3],0)|0;break}}while(0);e=e+1|0;g=c[i>>2]|0}l=n;return}function hj(b){b=b|0;var d=0,e=0,f=0;d=b+16|0;if(!(c[(c[d>>2]|0)+256>>2]|0)){f=uh(ig(b)|0)|0;a[(c[f+16>>2]|0)+156>>0]=2;e=uh(ig(b)|0)|0;a[(c[e+16>>2]|0)+156>>0]=2;if((c[(c[d>>2]|0)+12>>2]|0?(ig(b)|0)!=(b|0):0)?(c[(c[(fz(b)|0)+16>>2]|0)+116>>2]&1|0)==0:0){b=c[d>>2]|0;$i(f,e,+(~~+h[b+48+((+h[b+48>>3]>+h[b+80>>3]?0:2)<<4)>>3]|0),0)|0}d=c[d>>2]|0;c[d+256>>2]=f;c[d+260>>2]=e}return}function ij(a){a=a|0;var b=0,d=0;do if((ig(a)|0)!=(a|0)){gj(a);a=a+16|0;b=c[a>>2]|0;b=fh(c[b+256>>2]|0,c[b+260>>2]|0)|0;if(!b){d=c[a>>2]|0;$i(c[d+256>>2]|0,c[d+260>>2]|0,1.0,128)|0;break}else{d=(c[b+16>>2]|0)+156|0;c[d>>2]=(c[d>>2]|0)+128;break}}else a=a+16|0;while(0);b=1;while(1){d=c[a>>2]|0;if((b|0)>(c[d+180>>2]|0))break;ij(c[(c[d+184>>2]|0)+(b<<2)>>2]|0);b=b+1|0}return}function jj(d){d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0;k=KL(d,c[46374]|0,8,0)|0;o=d+16|0;e=c[o>>2]|0;m=+(k|0);k=b[e+236>>1]|0;while(1){if((k|0)>(b[e+238>>1]|0)){f=1;break}e=c[e+196>>2]|0;a:do if(c[e+(k<<6)>>2]|0?(l=c[c[e+(k<<6)+4>>2]>>2]|0,l|0):0){i=l+16|0;f=c[(c[i>>2]|0)+236>>2]|0;while(1){if((f|0)<=0)break;f=f+-1|0;j=c[(c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(k<<6)+4>>2]|0)+(f<<2)>>2]|0;g=j+16|0;e=c[g>>2]|0;if(!(a[e+156>>0]|0)){n=10;break}if(mj(d,j)|0){n=9;break}}if((n|0)==9){e=c[g>>2]|0;n=10}if((n|0)==10){n=0;$i(j,c[(c[o>>2]|0)+256>>2]|0,+h[e+96>>3]+m,0)|0}f=(c[(c[(c[o>>2]|0)+196>>2]|0)+(k<<6)>>2]|0)+(c[(c[i>>2]|0)+236>>2]|0)|0;while(1){if((f|0)>=(c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(k<<6)>>2]|0))break a;i=c[(c[(c[(c[(ig(d)|0)+16>>2]|0)+196>>2]|0)+(k<<6)+4>>2]|0)+(f<<2)>>2]|0;g=i+16|0;e=c[g>>2]|0;if(!(a[e+156>>0]|0))break;if(!(mj(d,i)|0))f=f+1|0;else{n=15;break}}if((n|0)==15){n=0;e=c[g>>2]|0}$i(c[(c[o>>2]|0)+260>>2]|0,i,+h[e+88>>3]+m,0)|0}while(0);k=k+1|0;e=c[o>>2]|0}while(1){if((f|0)>(c[e+180>>2]|0))break;jj(c[(c[e+184>>2]|0)+(f<<2)>>2]|0);f=f+1|0;e=c[o>>2]|0}return}function kj(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0;e=KL(a,c[46374]|0,8,0)|0;hj(a);b=a+16|0;d=+(e|0);a=1;while(1){e=c[b>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[(c[e+184>>2]|0)+(a<<2)>>2]|0;hj(e);f=c[b>>2]|0;g=e+16|0;$i(c[f+256>>2]|0,c[(c[g>>2]|0)+256>>2]|0,+h[f+96>>3]+d,0)|0;f=c[b>>2]|0;$i(c[(c[g>>2]|0)+260>>2]|0,c[f+260>>2]|0,+h[f+64>>3]+d,0)|0;kj(e);a=a+1|0}return}function lj(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0;d=KL(a,c[46374]|0,8,0)|0;n=a+16|0;a=1;while(1){f=c[n>>2]|0;e=c[f+180>>2]|0;if((a|0)>(e|0))break;hj(c[(c[f+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}m=+(d|0);l=1;a=e;d=f;while(1){if((l|0)>(a|0))break;k=l+1|0;j=k;while(1){e=c[d+184>>2]|0;f=c[e+(l<<2)>>2]|0;if((j|0)>(a|0))break;e=c[e+(j<<2)>>2]|0;g=(b[(c[f+16>>2]|0)+236>>1]|0)>(b[(c[e+16>>2]|0)+236>>1]|0);i=g?e:f;e=g?f:e;f=c[i+16>>2]|0;g=c[e+16>>2]|0;o=b[g+236>>1]|0;h=o<<16>>16;if((b[f+238>>1]|0)>=o<<16>>16){a=(c[(c[(c[c[(c[f+196>>2]|0)+(h<<6)+4>>2]>>2]|0)+16>>2]|0)+236>>2]|0)<(c[(c[(c[c[(c[g+196>>2]|0)+(h<<6)+4>>2]>>2]|0)+16>>2]|0)+236>>2]|0);$i(c[(c[(a?i:e)+16>>2]|0)+260>>2]|0,c[(c[(a?e:i)+16>>2]|0)+256>>2]|0,m,0)|0;a=c[n>>2]|0;d=a;a=c[a+180>>2]|0}j=j+1|0}lj(f);d=c[n>>2]|0;l=k;a=c[d+180>>2]|0}return}function mj(b,d){b=b|0;d=d|0;var e=0;d=c[d+16>>2]|0;if((a[d+156>>0]|0)==1){d=c[c[d+256>>2]>>2]|0;while(1){e=c[(c[d+16>>2]|0)+116>>2]|0;if(!e)break;else d=e}if(!(oz(b,c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0))d=(oz(b,c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0)==0&1;else d=0}else d=0;return d|0}function nj(a,b){a=a|0;b=b|0;return oj(a,b)|0}function oj(a,b){a=a|0;b=b|0;var d=0,e=0;a:do if((a|0)==(b|0))a=1;else{d=c[(c[a+16>>2]|0)+180>>2]|0;a=0;while(1){e=c[d+(a<<2)>>2]|0;if(!e){a=0;break a}if(!(oj(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,b)|0))a=a+1|0;else{a=1;break}}}while(0);return a|0}function pj(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d+16|0;d=c[k>>2]|0;j=b[d+236>>1]|0;while(1){if((j|0)>(b[d+238>>1]|0))break;h=c[d+196>>2]|0;g=c[h+(j<<6)>>2]|0;h=h+(j<<6)+4|0;i=0;f=0;while(1){if((f|0)>=(g|0))break;e=c[(c[(c[h>>2]|0)+(f<<2)>>2]|0)+16>>2]|0;c[e+236>>2]=i;if((a[e+159>>0]|0)==6)e=c[e+216>>2]|0;else e=1;i=e+i|0;f=f+1|0}if((i|0)>(g|0)){d=c[h>>2]|0;if(!d)d=vH((i<<2)+4|0)|0;else d=xH(d,(i<<2)+4|0)|0;f=c[(c[k>>2]|0)+196>>2]|0;c[f+(j<<6)+4>>2]=d;e=c[f+(j<<6)>>2]|0;while(1){d=e+-1|0;if((e|0)<=0)break;h=c[f+(j<<6)+4>>2]|0;e=c[h+(d<<2)>>2]|0;c[h+(c[(c[e+16>>2]|0)+236>>2]<<2)>>2]=e;e=d;f=c[(c[k>>2]|0)+196>>2]|0}c[f+(j<<6)>>2]=i;c[(c[f+(j<<6)+4>>2]|0)+(i<<2)>>2]=0;d=c[k>>2]|0}j=j+1|0}return}function qj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+48|0;n=o+32|0;m=o+8|0;d=o+24|0;k=o+16|0;j=o;e=b+16|0;f=c[e>>2]|0;a:do if((c[f+216>>2]|0)>=2){c[m>>2]=~~(+h[f+16>>3]-+h[f+88>>3]);c[m+4>>2]=~~+h[f+24>>3];c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];rj(d,b,n);g=d;i=c[g+4>>2]|0;d=m;c[d>>2]=c[g>>2];c[d+4>>2]=i;d=c[e>>2]|0;if((c[d+184>>2]|0)>0){j=c[c[d+180>>2]>>2]|0;d=(c[d+236>>2]|0)+1|0;j=Hx(a,c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)|0;while(1){if(!j)break a;i=(c[j>>2]&3|0)==2?j:j+-48|0;e=i+48|0;f=c[((c[i>>2]&3|0)==3?i:e)+40>>2]|0;if((f|0)!=(b|0)?(SL(f)|0)==(b|0):0){f=c[((c[i>>2]&3|0)==3?i:e)+40>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];sj(k,a,f,n,d);f=k;e=c[f+4>>2]|0;g=m;c[g>>2]=c[f>>2];c[g+4>>2]=e;zh(i);g=i+-48|0;e=c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0;f=c[e+172>>2]|0;if(!f)e=vH((c[e+176>>2]<<2)+8|0)|0;else e=xH(f,(c[e+176>>2]<<2)+8|0)|0;c[(c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0)+172>>2]=e;p=c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0;e=c[p+172>>2]|0;p=p+176|0;f=c[p>>2]|0;c[p>>2]=f+1;c[e+(f<<2)>>2]=i;i=c[(c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0)+16>>2]|0;c[(c[i+172>>2]|0)+(c[i+176>>2]<<2)>>2]=0;d=d+1|0}j=Ix(a,j)|0}}else{i=c[c[d+172>>2]>>2]|0;d=(c[d+236>>2]|0)+1|0;i=Ex(a,c[((c[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)|0;while(1){if(!i)break a;e=i+-48|0;f=c[((c[i>>2]&3|0)==2?i:e)+40>>2]|0;if((f|0)!=(b|0)?(SL(f)|0)==(b|0):0){f=c[((c[i>>2]&3|0)==2?i:e)+40>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];sj(j,a,f,n,d);f=j;e=c[f+4>>2]|0;g=m;c[g>>2]=c[f>>2];c[g+4>>2]=e;zh(i);g=i+48|0;e=c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0;f=c[e+180>>2]|0;if(!f)e=vH((c[e+184>>2]<<2)+8|0)|0;else e=xH(f,(c[e+184>>2]<<2)+8|0)|0;c[(c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0)+180>>2]=e;f=c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0;k=c[f+180>>2]|0;f=f+184|0;p=c[f>>2]|0;c[f>>2]=p+1;c[k+(p<<2)>>2]=i;p=c[(c[((c[i>>2]&3|0)==3?i:g)+40>>2]|0)+16>>2]|0;c[(c[p+180>>2]|0)+(c[p+184>>2]<<2)>>2]=0;d=d+1|0}i=Gx(a,i)|0}}}while(0);l=o;return}function rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0;bN(b,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1);e=c[b+16>>2]|0;h[e+24>>3]=+(c[d+4>>2]|0);f=+h[e+88>>3]+ +(c[d>>2]|0);h[e+16>>3]=f;f=f+ +h[e+96>>3];c[d>>2]=~~(f+ +(c[(c[(ez(b)|0)+16>>2]|0)+248>>2]|0));e=d;b=c[e+4>>2]|0;d=a;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function sj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;b=ig(b)|0;g=SL(d)|0;if((g|0)!=(d|0))rh(g,d);j=c[d+16>>2]|0;c[j+236>>2]=f;g=c[(c[g+16>>2]|0)+232>>2]|0;c[j+232>>2]=g;c[(c[(c[(c[b+16>>2]|0)+196>>2]|0)+(g<<6)+4>>2]|0)+(f<<2)>>2]=d;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];rj(a,d,h);l=i;return}function tj(a){a=a|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0.0,k=0,l=0,m=0,n=0.0;m=c[(c[(ig(a)|0)+16>>2]|0)+196>>2]|0;if((ig(a)|0)==(a|0))j=8.0;else j=+(KL(a,c[46374]|0,8,0)|0);l=a+16|0;g=c[l>>2]|0;f=0;k=1;e=+h[g+120>>3];d=+h[g+128>>3];while(1){if((k|0)>(c[g+180>>2]|0))break;i=c[(c[g+184>>2]|0)+(k<<2)>>2]|0;f=tj(i)|0|f;i=c[i+16>>2]|0;g=c[l>>2]|0;if((b[i+238>>1]|0)==(b[g+238>>1]|0)){n=+h[i+120>>3]+j;e=e>n?e:n}if((b[i+236>>1]|0)==(b[g+236>>1]|0)){n=+h[i+128>>3]+j;d=d>n?d:n}k=k+1|0}if((ig(a)|0)!=(a|0)?(c[(c[l>>2]|0)+12>>2]|0)!=0:0)if(!(c[(c[(fz(a)|0)+16>>2]|0)+116>>2]&1)){k=c[l>>2]|0;f=1;e=+h[k+56>>3]+e;d=+h[k+88>>3]+d}else f=1;k=c[l>>2]|0;h[k+120>>3]=e;h[k+128>>3]=d;if((ig(a)|0)!=(a|0)){l=c[l>>2]|0;a=m+(b[l+236>>1]<<6)+24|0;n=+h[a>>3];h[a>>3]=n>d?n:d;m=m+(b[l+238>>1]<<6)+16|0;n=+h[m>>3];h[m>>3]=n>e?n:e}return f|0}function uj(a,d){a=a|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0.0,q=0.0;o=c[(c[(ig(a)|0)+16>>2]|0)+196>>2]|0;if((ig(a)|0)==(a|0))e=0;else e=KL(a,c[46374]|0,8,0)|0;l=a+16|0;i=c[l>>2]|0;m=e+d|0;k=+(e|0);j=1;f=+h[i+128>>3];g=+h[i+120>>3];e=i;while(1){if((j|0)>(c[e+180>>2]|0))break;i=c[(c[e+184>>2]|0)+(j<<2)>>2]|0;uj(i,m);i=c[i+16>>2]|0;e=c[l>>2]|0;if((b[i+238>>1]|0)==(b[e+238>>1]|0)){q=+h[i+120>>3]+k;g=g>q?g:q}if((b[i+236>>1]|0)==(b[e+236>>1]|0)){q=+h[i+128>>3]+k;f=f>q?f:q}j=j+1|0}h[e+120>>3]=g;h[e+128>>3]=f;if(((ig(a)|0)!=(a|0)?(n=c[l>>2]|0,c[n+12>>2]|0):0)?(p=-g-f+ +h[n+48+((+h[n+104>>3]>+h[n+72>>3]?3:1)<<4)+8>>3]-+h[(c[(c[c[o+(b[n+236>>1]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+ +h[(c[(c[c[o+(b[n+238>>1]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3],p>0.0):0)vj(a,~~p,d);if((ig(a)|0)!=(a|0)){n=c[l>>2]|0;m=o+(b[n+236>>1]<<6)+24|0;q=+h[m>>3];p=+h[n+128>>3];h[m>>3]=q>p?q:p;o=o+(b[n+238>>1]<<6)+16|0;p=+h[o>>3];q=+h[n+120>>3];h[o>>3]=p>q?p:q}return}function vj(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0;k=c[(ig(a)|0)+16>>2]|0;q=c[k+196>>2]|0;p=c[a+16>>2]|0;a=b[p+238>>1]|0;f=b[p+236>>1]|0;l=(d+1|0)/2|0;m=p+120|0;n=+h[m>>3];o=+(l|0);i=+(e|0);e=~~(o+i+n-+h[q+(a<<6)+16>>3]);if((e|0)>0){g=+(e|0);while(1){if((a|0)<(f|0))break;if((c[q+(a<<6)>>2]|0)>0){r=(c[(c[c[q+(a<<6)+4>>2]>>2]|0)+16>>2]|0)+24|0;h[r>>3]=+h[r>>3]+g}a=a+-1|0}j=+h[p+128>>3];a=e;g=j+ +(d-l|0)}else{j=+h[p+128>>3];a=d-l|0;g=j}a=~~(+(a|0)+i+g-+h[q+(f<<6)+24>>3]);a:do if((a|0)>0){e=b[k+236>>1]|0;g=+(a|0);while(1){a=f+-1|0;if((f|0)<=(e|0))break a;if((c[q+(a<<6)>>2]|0)<=0){f=a;continue}f=(c[(c[c[q+(a<<6)+4>>2]>>2]|0)+16>>2]|0)+24|0;h[f>>3]=+h[f>>3]+g;f=a}}while(0);h[p+128>>3]=j+ +(d-l|0);h[m>>3]=n+o;return}function wj(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b+16>>2]|0;f=a[e+84>>0]|0;b=c[d+16>>2]|0;do if(f<<24>>24==(a[b+84>>0]|0)){if(+h[e+56>>3]==+h[b+56>>3]){if(!(f<<24>>24==0?1:+h[e+64>>3]==+h[b+64>>3])){b=0;break}}else if(f<<24>>24){b=0;break}if(+h[e+16>>3]==+h[b+16>>3]?+h[e+24>>3]==+h[b+24>>3]:0){b=1;break}b=(a[e+44>>0]|0)==0&1}else b=0;while(0);return b|0}function xj(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+16|0;d=c[i>>2]|0;b[d+236>>1]=32767;b[d+238>>1]=-1;d=0;h=Sy(a)|0;while(1){e=c[i>>2]|0;if(!h)break;f=e+238|0;g=c[(c[h+16>>2]|0)+232>>2]|0;if((g|0)>(b[f>>1]|0))b[f>>1]=g;e=e+236|0;if((g|0)<(b[e>>1]|0))b[e>>1]=g;if(!d)d=h;else d=(g|0)<(c[(c[d+16>>2]|0)+232>>2]|0)?h:d;h=Ty(a,h)|0}c[e+264>>2]=d;return}function yj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0;b=xx(a,86879)|0;if(!b)b=2147483647;else{g=+b2(b);b=~~(g*+(ay(a)|0))}e=a+16|0;d=0;while(1){f=c[e>>2]|0;if((d|0)>=(c[f+220>>2]|0))break;c[f+192>>2]=c[(c[f+216>>2]|0)+(d<<2)>>2];fI(a,(c[f+180>>2]|0)==0&1,b)|0;d=d+1|0}return}function zj(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;if(!(xx(a,86888)|0))Bj(a,d);else{g=(c[a+16>>2]|0)+136|0;b[g>>1]=b[g>>1]|16;Aj(a,d)}if(0){g=c[15686]|0;a=c[a+16>>2]|0;d=b[a+236>>1]|0;c[e>>2]=b[a+238>>1];c[e+4>>2]=d;g1(g,86896,e)|0}l=f;return}function Aj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0.0;i=l;l=l+16|0;h=i;c[45977]=0;a[h>>0]=a[18484]|0;a[h+1>>0]=a[18485]|0;a[h+2>>0]=a[18486]|0;a[h+3>>0]=a[18487]|0;h=Xx(87106,h,0)|0;Az(h,87135,280,1)|0;mz(h,17404,17344);Cj(b);e=xx(b,86879)|0;if(!e)f=2147483647;else{j=+b2(e);f=~~(j*+(ay(b)|0))}Sj(b,0);Tj(b,h);Uj(b,h);Vj(b,h,0,0);Wj(h);g=Xj(h)|0;Yj(h);if(d|0){Mk(h);Ak(h)}e=xx(b,99560)|0;if(!e)e=-1;else e=a2(e)|0;yH(h,1,f,e)|0;Zj(b,h,g);$x(h)|0;l=i;return}function Bj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+32|0;f=g+16|0;e=g+8|0;d=g;Cj(a);do if(!b){Dj(a,a);Pk(a);Ej(d,a);h=d;d=c[h+4>>2]|0;b=e;c[b>>2]=c[h>>2];c[b+4>>2]=d;Il(a,0);b=0}else{Mk(a);Ak(a);Dj(a,a);Pk(a);Ej(d,a);i=d;d=c[i+4>>2]|0;h=e;c[h>>2]=c[i>>2];c[h+4>>2]=d;Il(a,0);h=c[a+16>>2]|0;if((c[h+220>>2]|0)<=1?(c[h+180>>2]|0)<=0:0)break;c[b+32>>2]=1;b=0}while(0);xk(a);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];if(Fj(a,f)|0)Il(a,0);if(!b)yj(a);else Bk(a,b);Gj(a,b);Hj(a);l=g;return}function Cj(d){d=d|0;var f=0,g=0,h=0;if(a[(c[(c[d+60>>2]|0)+16>>2]|0)+113>>0]&1){g=Sy(d)|0;while(1){if(!g)break;f=Ex(d,g)|0;while(1){if(!f)break;h=(c[f+16>>2]|0)+170|0;b[h>>1]=(e[h>>1]|0)<<1;f=Gx(d,f)|0}g=Ty(d,g)|0}h=(c[d+16>>2]|0)+252|0;c[h>>2]=((c[h>>2]|0)+1|0)/2|0}return}function Dj(a,b){a=a|0;b=b|0;var d=0;b=wA(b)|0;while(1){if(!b)break;d=Pj(b)|0;do if(d)if((d|0)==7&(c[46364]|0)==100){Lj(a,b);break}else{Qj(a,b,d);break}else Dj(a,b);while(0);b=xA(b)|0}return}function Ej(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=d+16|0;e=c[i>>2]|0;d=c[e+228>>2]|0;e=c[e+224>>2]|0;f=(e|0)==0;if(!d)if(f){j=0;k=0}else g=4;else if(f)g=5;else g=4;if((g|0)==4){d=SL(e)|0;e=c[i>>2]|0;c[e+224>>2]=d;d=c[e+228>>2]|0;if(!d){h=0;d=e;g=12}else g=5}do if((g|0)==5){d=SL(d)|0;e=c[i>>2]|0;c[e+228>>2]=d;if(d){e=d+16|0;d=c[e>>2]|0;f=(a[d+159>>0]|0)==5&1;while(1){d=c[c[d+180>>2]>>2]|0;if(!d){g=11;break}h=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;if((h|0)!=(SL(h)|0)){g=9;break}wk(d);d=c[e>>2]|0}if((g|0)==9)qa(86999,86939,346,87031);else if((g|0)==11){h=f;d=c[i>>2]|0;g=12;break}}else{h=0;d=e;g=12}}while(0);a:do if((g|0)==12){d=c[d+224>>2]|0;if(!d){j=0;k=h}else{e=d+16|0;d=c[e>>2]|0;f=(a[d+159>>0]|0)==3&1;while(1){d=c[c[d+172>>2]>>2]|0;if(!d){j=f;k=h;break a}i=c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0;if((i|0)!=(SL(i)|0))break;wk(d);d=c[e>>2]|0}qa(87044,86939,353,87031)}}while(0);c[b>>2]=j;c[b+4>>2]=k;return}function Fj(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+16|0;i=c[j>>2]|0;if((c[i+228>>2]|0)==0?(c[i+224>>2]|0)==0:0)d=0;else e=3;a:do if((e|0)==3){g=Sy(a)|0;i=d+4|0;h=c[d>>2]&65535;d=0;while(1){if(!g)break a;if((g|0)==(SL(g)|0)){f=g+16|0;e=c[f>>2]|0;if((c[e+184>>2]|0)==0?(k=c[(c[j>>2]|0)+228>>2]|0,!((k|0)==0|(g|0)==(k|0))):0){d=ph(g,k,0)|0;e=c[d+16>>2]|0;b[e+170>>1]=c[i>>2];c[e+156>>2]=0;e=c[f>>2]|0}if((c[e+176>>2]|0)==0?(l=c[(c[j>>2]|0)+224>>2]|0,!((l|0)==0|(g|0)==(l|0))):0){d=ph(l,g,0)|0;f=c[d+16>>2]|0;b[f+170>>1]=h;c[f+156>>2]=0}}g=Ty(a,g)|0}}while(0);return (d|0)!=0|0}function Gj(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=Sy(d)|0;k=d+16|0;f=c[k>>2]|0;a:do if(g){b[f+236>>1]=32767;b[f+238>>1]=-1;j=(e|0)==0;while(1){if(!g)break;f=SL(g)|0;i=c[g+16>>2]|0;e=c[i+232>>2]|0;do if((f|0)!=(g|0)){if(!j)if(!e)e=0;else break;e=e+(c[(c[f+16>>2]|0)+232>>2]|0)|0;c[i+232>>2]=e}while(0);f=c[k>>2]|0;h=f+238|0;if((e|0)>(b[h>>1]|0))b[h>>1]=e;f=f+236|0;if((e|0)<(b[f>>1]|0))b[f>>1]=e;switch(a[i+159>>0]|0){case 6:case 0:break;default:UL(g)}g=Ty(d,g)|0}if((ig(d)|0)==(d|0)){if((c[46364]|0)==100)e=1;else{Kj(d);break}while(1){f=c[k>>2]|0;if((e|0)>(c[f+180>>2]|0))break a;Jj(c[(c[f+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}}}else{b[f+238>>1]=0;b[f+236>>1]=0}while(0);return}function Hj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=b+16|0;e=0;while(1){d=c[j>>2]|0;if((e|0)>=(c[d+220>>2]|0))break;i=c[(c[d+216>>2]|0)+(e<<2)>>2]|0;c[d+192>>2]=i;d=i;while(1){if(!d)break;i=d+16|0;Ij((c[i>>2]|0)+172|0);Ij((c[i>>2]|0)+180|0);i=c[i>>2]|0;a[i+157>>0]=0;d=c[i+164>>2]|0}e=e+1|0}i=Sy(b)|0;while(1){if(!i)break;h=Ex(b,i)|0;while(1){if(!h)break;f=h+16|0;d=c[f>>2]|0;g=c[d+172>>2]|0;if((g|0)!=0?(k=g+16|0,(h|0)==(c[(c[k>>2]|0)+116>>2]|0)):0){d=Sy(b)|0;while(1){if(!d)break;e=Ex(b,d)|0;while(1){if(!e)break;if((h|0)!=(e|0)?(l=(c[e+16>>2]|0)+172|0,m=c[l>>2]|0,(m|0)!=0&(g|0)==(m|0)):0)c[l>>2]=0;e=Gx(b,e)|0}d=Ty(b,d)|0}D_(c[k>>2]|0);D_(g);d=c[f>>2]|0}c[d+172>>2]=0;h=Gx(b,h)|0}i=Ty(b,i)|0}D_(c[(c[j>>2]|0)+216>>2]|0);m=c[j>>2]|0;c[m+216>>2]=0;c[m+220>>2]=0;return}function Ij(a){a=a|0;var b=0,d=0;d=a+4|0;b=c[d>>2]|0;while(1){if((b|0)<=-1)break;c[(c[a>>2]|0)+(b<<2)>>2]=0;b=b+-1|0}c[d>>2]=0;return}function Jj(a){a=a|0;var d=0,f=0,g=0;d=a+16|0;f=c[d>>2]|0;g=c[(c[(c[f+264>>2]|0)+16>>2]|0)+232>>2]|0;a=f+236|0;b[a>>1]=g+(e[a>>1]|0);a=f+238|0;b[a>>1]=g+(e[a>>1]|0);a=1;while(1){if((a|0)>(c[f+180>>2]|0))break;Jj(c[(c[f+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0;f=c[d>>2]|0}return}function Kj(b){b=b|0;var d=0;d=wA(ig(b)|0)|0;while(1){if(!d)break;if((a[(c[d+16>>2]|0)+274>>0]|0)==7)Lj(b,d);d=xA(d)|0}return}function Lj(a,b){a=a|0;b=b|0;var d=0;d=(c[b+16>>2]|0)+200|0;do if((c[d>>2]|0)==0?(c[d>>2]=a,Mj(a,b),Sy(b)|0):0){Nj(a,b);if((c[46364]|0)==100){Bj(b,0);Oj(b);break}else{xj(b);break}}while(0);return}function Mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=b+16|0;g=Sy(d)|0;while(1){if(!g)break;i=Ty(d,g)|0;j=g+16|0;if(!(a[(c[j>>2]|0)+159>>0]|0))f=1;else{dz(d,g)|0;g=i;continue}while(1){e=c[h>>2]|0;b=c[e+180>>2]|0;if((f|0)>=(b|0))break;if(oz(c[(c[e+184>>2]|0)+(f<<2)>>2]|0,g)|0){k=7;break}f=f+1|0}if((k|0)==7){k=0;b=c[(c[h>>2]|0)+180>>2]|0}if((f|0)<(b|0))dz(d,g)|0;c[(c[j>>2]|0)+212>>2]=0;g=i}e=Sy(d)|0;while(1){if(!e)break;b=Ex(ig(d)|0,e)|0;while(1){if(!b)break;if(oz(d,c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)Vx(d,b,1)|0;b=Gx(ig(d)|0,b)|0}e=Ty(d,e)|0}return}function Nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+16|0;d=c[e>>2]|0;g=d+180|0;a=c[g>>2]|0;f=a+1|0;c[g>>2]=f;d=c[d+184>>2]|0;if(!d)a=uH((a<<2)+8|0)|0;else a=wH(d,a+2|0,4,f)|0;c[(c[e>>2]|0)+184>>2]=a;c[a+(f<<2)>>2]=b;fH(b);return}function Oj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=c[b+16>>2]|0;d=g+192|0;h=0;while(1){d=c[d>>2]|0;if(!d)break;f=c[d+16>>2]|0;if(!(c[f+232>>2]|0))e=(a[f+156>>0]|0)==0?d:h;else e=h;d=f+164|0;h=e}if(!h)qa(86924,86939,238,86946);c[g+264>>2]=h;d=Sy(b)|0;while(1){if(!d){d=13;break}e=d+16|0;if(!((d|0)==(h|0)?1:(c[(c[e>>2]|0)+216>>2]|0)<2)){d=11;break}TL(d,h)|0;a[(c[e>>2]|0)+159>>0]=7;d=Ty(b,d)|0}if((d|0)==11)qa(86961,86939,242,86946);else if((d|0)==13)return}function Pj(b){b=b|0;var d=0;if(!(Rj(b)|0)){d=aM(xx(b,87076)|0,17356,17380)|0;a[(c[b+16>>2]|0)+274>>0]=d;b=d}else b=7;return b|0}function Qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=Sy(d)|0;a:do if(g|0){j=e&255;i=g+16|0;f=g;h=j;while(1){a[(c[f+16>>2]|0)+159>>0]=h;f=Ty(d,f)|0;if(!f)break;TL(g,f)|0;h=a[(c[i>>2]|0)+159>>0]|0}switch(e|0){case 3:case 2:{b=b+16|0;f=c[b>>2]|0;h=c[f+224>>2]|0;if(h){g=TL(h,g)|0;f=c[b>>2]|0}c[f+224>>2]=g;break}case 5:case 4:{b=b+16|0;f=c[b>>2]|0;h=c[f+228>>2]|0;if(h){g=TL(h,g)|0;f=c[b>>2]|0}c[f+228>>2]=g;break}default:break a}switch(e|0){case 3:{f=f+224|0;break}case 5:{f=f+228|0;break}default:break a}a[(c[(c[f>>2]|0)+16>>2]|0)+159>>0]=j}while(0);return}function Rj(a){a=a|0;return (z$(ry(a)|0,104980,7)|0)==0|0}function Sj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;g=m;if(!(lk(b)|0)){do if(qM(b)|0)if(!d){c[(c[b+16>>2]|0)+204>>2]=0;d=b;break}else{c[(c[b+16>>2]|0)+204>>2]=(c[(c[d+16>>2]|0)+204>>2]|0)+1;mk(b,d);d=b;break}while(0);e=wA(b)|0;while(1){if(!e)break;Sj(e,d);e=xA(e)|0}a:do if(qM(b)|0){e=Sy(b)|0;while(1){if(!e)break a;f=(c[e+16>>2]|0)+212|0;if(!(c[f>>2]|0))c[f>>2]=b;e=Ty(b,e)|0}}while(0);switch(nk(b)|0){case 3:{d=d+16|0;a[(c[d>>2]|0)+241>>0]=1;k=19;break}case 2:{d=d+16|0;k=19;break}case 5:{d=d+16|0;a[(c[d>>2]|0)+242>>0]=1;k=21;break}case 4:{d=d+16|0;k=21;break}case 1:{ok(b)|0;break}case 6:break;default:{e=ry(b)|0;f=xx(b,87076)|0;c[g>>2]=e;c[g+4>>2]=f;Pw(0,87259,g)|0}}if((k|0)==19){k=ok(b)|0;k=pk(k,c[(c[d>>2]|0)+208>>2]|0)|0;c[(c[d>>2]|0)+208>>2]=k}else if((k|0)==21){k=ok(b)|0;k=pk(k,c[(c[d>>2]|0)+212>>2]|0)|0;c[(c[d>>2]|0)+212>>2]=k}if((qM(b)|0?(h=b+16|0,i=c[h>>2]|0,j=c[i+208>>2]|0,j|0):0)?(j|0)==(c[i+212>>2]|0):0){j=ok(b)|0;k=c[h>>2]|0;c[k+208>>2]=j;c[k+212>>2]=j}}l=m;return}function Tj(a,b){a=a|0;b=b|0;var d=0,e=0;c[45977]=0;d=Sy(a)|0;while(1){if(!d)break;if((_j(d)|0)==(d|0)){e=bk(b,ry(d)|0)|0;c[(c[d+16>>2]|0)+148>>2]=e}d=Ty(a,d)|0}d=Sy(a)|0;while(1){if(!d)break;b=d+16|0;if(!(c[(c[b>>2]|0)+148>>2]|0)){e=c[(c[(_j(d)|0)+16>>2]|0)+148>>2]|0;c[(c[b>>2]|0)+148>>2]=e}d=Ty(a,d)|0}return}function Uj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=Sy(a)|0;while(1){if(!h)break;d=c[(c[h+16>>2]|0)+148>>2]|0;i=Ex(a,h)|0;while(1){if(!i)break;do if((gk(i)|0)==0?(j=i+-48|0,k=c[(c[(_j(c[((c[i>>2]&3|0)==2?i:j)+40>>2]|0)|0)+16>>2]|0)+148>>2]|0,(d|0)!=(k|0)):0){f=c[i>>2]&3;g=i+48|0;e=((f|0)==3?i:g)+40|0;f=c[(c[(c[((f|0)==2?i:j)+40>>2]|0)+16>>2]|0)+212>>2]|0;if(!(hk(i)|0)){if((fk(c[(c[(c[e>>2]|0)+16>>2]|0)+212>>2]|0)|0)==0?(fk(f)|0)==0:0){ik(b,d,k,i);break}jk(b,d,k,i);break}else{f=_j(c[e>>2]|0)|0;e=c[i>>2]&3;if((f|0)!=(c[(c[(c[(c[(c[((e|0)==3?i:g)+40>>2]|0)+16>>2]|0)+212>>2]|0)+16>>2]|0)+212>>2]|0)?(g=_j(c[((e|0)==2?i:j)+40>>2]|0)|0,(g|0)!=(c[(c[(c[(c[(c[((c[i>>2]&3|0)==2?i:j)+40>>2]|0)+16>>2]|0)+212>>2]|0)+16>>2]|0)+208>>2]|0)):0)e=k;else{e=d;d=k}ik(b,d,e,i);break}}while(0);i=Gx(a,i)|0}h=Ty(a,h)|0}return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((qM(a)|0)!=0?(fk(a)|0)!=0:0){g=Sy(a)|0;while(1){if(!g)break;if(!(Hx(a,g)|0)){f=c[(c[(_j(g)|0)+16>>2]|0)+148>>2]|0;if(!d)d=bk(b,87157)|0;Rx(b,d,f,0,1)|0}if(!(Ex(a,g)|0)){f=c[(c[(_j(g)|0)+16>>2]|0)+148>>2]|0;if(!e)e=bk(b,87162)|0;Rx(b,f,e,0,1)|0}g=Ty(a,g)|0}if((e|0)!=0&(d|0)!=0){ek(Rx(b,d,e,0,1)|0,0,1e3);f=d}else f=d}else f=d;d=wA(a)|0;while(1){if(!d)break;Vj(d,b,f,e);d=xA(d)|0}return}function Wj(b){b=b|0;var d=0,e=0;d=Sy(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;a[e+158>>0]=0;a[e+157>>0]=0;d=Ty(b,d)|0}d=Sy(b)|0;while(1){if(!d)break;ck(b,d);d=Ty(b,d)|0}return}function Xj(a){a=a|0;var b=0,d=0,e=0,f=0;b=Sy(a)|0;while(1){if(!b)break;c[(c[b+16>>2]|0)+128>>2]=0;b=Ty(a,b)|0}b=0;e=Sy(a)|0;while(1){if(!e)break;d=b+1|0;if(!(c[(c[e+16>>2]|0)+128>>2]|0)){ak(a,e,d);b=d}e=Ty(a,e)|0}a:do if((b|0)>1){f=bk(a,87151)|0;d=1;e=Sy(a)|0;while(1){if(!e)break a;if((c[(c[e+16>>2]|0)+128>>2]|0)==(d|0)){Rx(a,f,e,0,1)|0;d=d+1|0}e=Ty(a,e)|0}}while(0);return b|0}function Yj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;g=Sy(a)|0;while(1){if(!g)break;h=g+16|0;f=Ex(a,g)|0;while(1){if(!f)break;b=c[h>>2]|0;d=c[b+180>>2]|0;if(!d)b=vH((c[b+184>>2]<<2)+8|0)|0;else b=xH(d,(c[b+184>>2]<<2)+8|0)|0;d=c[h>>2]|0;c[d+180>>2]=b;d=d+184|0;e=c[d>>2]|0;c[d>>2]=e+1;c[b+(e<<2)>>2]=f;e=c[h>>2]|0;c[(c[e+180>>2]|0)+(c[e+184>>2]<<2)>>2]=0;e=f+-48|0;b=c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0;d=c[b+172>>2]|0;if(!d)b=vH((c[b+176>>2]<<2)+8|0)|0;else b=xH(d,(c[b+176>>2]<<2)+8|0)|0;c[(c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0)+172>>2]=b;i=c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0;b=c[i+172>>2]|0;i=i+176|0;d=c[i>>2]|0;c[i>>2]=d+1;c[b+(d<<2)>>2]=f;e=c[(c[((c[f>>2]&3|0)==2?f:e)+40>>2]|0)+16>>2]|0;c[(c[e+172>>2]|0)+(c[e+176>>2]<<2)>>2]=0;f=Gx(a,f)|0}g=Ty(a,g)|0}return}function Zj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+16|0;o=c[n>>2]|0;b[o+236>>1]=32767;b[o+238>>1]=-1;a:do if((f|0)>1){h=uH((f<<2)+4|0)|0;g=f+1|0;f=1;while(1){if((f|0)==(g|0)){m=h;o=h;break a}c[h+(f<<2)>>2]=32767;f=f+1|0}}else{m=0;o=0}while(0);i=(m|0)==0;h=Sy(a)|0;while(1){if(!h)break;j=c[(c[(c[(_j(h)|0)+16>>2]|0)+148>>2]|0)+16>>2]|0;k=c[j+232>>2]|0;l=c[h+16>>2]|0;c[l+232>>2]=k;f=c[n>>2]|0;g=f+238|0;if((k|0)>(b[g>>1]|0))b[g>>1]=k;f=f+236|0;if((k|0)<(b[f>>1]|0))b[f>>1]=k;if(!i){j=c[j+128>>2]|0;c[l+128>>2]=j;l=m+(j<<2)|0;j=c[l>>2]|0;c[l>>2]=(j|0)<(k|0)?j:k}h=Ty(a,h)|0}j=(m|0)!=0;b:do if(!j){m=b[(c[n>>2]|0)+236>>1]|0;g=m<<16>>16;if(m<<16>>16>0){f=Sy(a)|0;while(1){if(!f)break;m=(c[f+16>>2]|0)+232|0;c[m>>2]=(c[m>>2]|0)-g;f=Ty(a,f)|0}f=c[n>>2]|0;n=f+236|0;b[n>>1]=(e[n>>1]|0)-g;f=f+238|0;b[f>>1]=(e[f>>1]|0)-g;f=0}else f=0}else{f=Sy(a)|0;while(1){if(!f){f=1;break b}l=c[f+16>>2]|0;n=l+232|0;c[n>>2]=(c[n>>2]|0)-(c[m+(c[l+128>>2]<<2)>>2]|0);f=Ty(a,f)|0}}while(0);$j(a,f);i=Sy(d)|0;while(1){if(!i)break;g=i+16|0;f=c[g>>2]|0;h=c[f+172>>2]|0;if(h){D_(h);f=c[g>>2]|0}f=c[f+180>>2]|0;if(f|0)D_(f);i=Ty(d,i)|0}D_(c[(c[(Sy(a)|0)+16>>2]|0)+112>>2]|0);f=Sy(a)|0;while(1){if(!f)break;c[(c[f+16>>2]|0)+112>>2]=0;f=Ty(a,f)|0}if(j)D_(o);return}function _j(a){a=a|0;var b=0,d=0,e=0;b=a+16|0;d=(c[b>>2]|0)+152|0;e=c[d>>2]|0;if(e){if((e|0)!=(a|0)){e=_j(e)|0;c[(c[b>>2]|0)+152>>2]=e;return e|0}}else c[d>>2]=a;return a|0}function $j(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=a+16|0;e=1;while(1){f=c[i>>2]|0;if((e|0)>(c[f+180>>2]|0))break;$j(c[(c[f+184>>2]|0)+(e<<2)>>2]|0,0);e=e+1|0}if((d|0)!=0|(c[f+200>>2]|0)!=0){b[f+236>>1]=32767;b[f+238>>1]=-1;e=0;h=Sy(a)|0;while(1){if(!h)break;g=c[(c[h+16>>2]|0)+232>>2]|0;d=c[i>>2]|0;f=d+238|0;if((g|0)>(b[f>>1]|0))b[f>>1]=g;d=d+236|0;if((g|0)<(b[d>>1]|0)){b[d>>1]=g;e=h}h=Ty(a,h)|0}c[(c[i>>2]|0)+264>>2]=e}return}function ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=(c[b+16>>2]|0)+128|0;a:do if(!(c[e>>2]|0)){c[e>>2]=d;e=Ex(a,b)|0;while(1){if(!e)break;ak(a,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,d);e=Gx(a,e)|0}e=Hx(a,b)|0;while(1){if(!e)break a;ak(a,c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0,d);e=Ix(a,e)|0}}while(0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=az(a,b,1)|0;b=f+16|0;c[(c[b>>2]|0)+176>>2]=0;e=uH(20)|0;d=c[b>>2]|0;c[d+172>>2]=e;c[d+184>>2]=0;d=uH(20)|0;b=c[b>>2]|0;c[b+180>>2]=d;d=c[45977]|0;e=b+168|0;if(!d){c[e>>2]=0;c[(c[a+16>>2]|0)+192>>2]=f}else{c[e>>2]=d;c[(c[d+16>>2]|0)+164>>2]=f}c[45977]=f;c[b+164>>2]=0;return f|0}function ck(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=d+16|0;e=c[h>>2]|0;f=e+157|0;if(!(a[f>>0]|0)){a[f>>0]=1;a[e+158>>0]=1;d=Ex(b,d)|0;while(1){if(!d)break;e=Gx(b,d)|0;f=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;g=c[f+16>>2]|0;if(a[g+158>>0]|0){dk(b,d);d=e;continue}if(a[g+157>>0]|0){d=e;continue}ck(b,f);d=e}a[(c[h>>2]|0)+158>>0]=0}return}function dk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0;d=c[b>>2]&3;g=b+-48|0;f=b+48|0;d=Rx(a,c[((d|0)==2?b:g)+40>>2]|0,c[((d|0)==3?b:f)+40>>2]|0,0,0)|0;if(!d){d=c[b>>2]&3;d=Rx(a,c[((d|0)==2?b:g)+40>>2]|0,c[((d|0)==3?b:f)+40>>2]|0,0,1)|0}g=c[b+16>>2]|0;ek(d,e[g+170>>1]|0,c[g+156>>2]|0);dz(a,b)|0;return}function ek(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0;a=c[a+16>>2]|0;g=a+170|0;h=e[g>>1]|0;b[g>>1]=(h|0)>(d|0)?h:d;d=a+156|0;c[d>>2]=(c[d>>2]|0)+f;return}function fk(a){a=a|0;return (RL(xx(a,87167)|0,0)|0)&255|0}function gk(b){b=b|0;var d=0,e=0;d=c[46419]|0;if((((d|0)!=0?(e=yx(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0)?(QL(e)|0)<<24>>24==0:0)b=1;else b=0;return b|0}function hk(a){a=a|0;var b=0,d=0;d=c[a>>2]&3;b=c[(c[(c[((d|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;a=c[(c[(c[((d|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;if((b|0)==(a|0))return 1;else{d=kk(b,a)|0;return ((d|0)==(b|0)|(d|0)==(a|0))&1|0}return 0}function ik(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;h=j;g=Rx(a,b,d,0,0)|0;if(!g){g=Rx(a,d,b,0,0)|0;if(!g){g=Rx(a,b,d,0,1)|0;if(!g){b=ry(b)|0;f=ry(d)|0;c[h>>2]=b;c[h+4>>2]=f;Pw(1,87184,h)|0}else i=4}else i=4}else i=4;if((i|0)==4){i=c[f+16>>2]|0;ek(g,e[i+170>>1]|0,c[i+156>>2]|0)}l=j;return}function jk(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+112|0;j=m;i=m+4|0;h=Hx(a,d)|0;while(1){if(!h){k=6;break}n=Ex(a,c[((c[h>>2]&3|0)==3?h:h+48|0)+40>>2]|0)|0;if(n|0?(c[((c[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0)==(f|0):0)break;h=Ix(a,h)|0}if((k|0)==6){n=c[45978]|0;c[45978]=n+1;c[j>>2]=n;Y0(i,87175,j)|0;i=bk(a,i)|0;n=Rx(a,i,d,0,1)|0;i=Rx(a,i,f,0,1)|0;f=c[g+16>>2]|0;k=f+156|0;n=(c[n+16>>2]|0)+156|0;c[n>>2]=(c[n>>2]|0)+((c[k>>2]|0)*1e3|0);n=c[i+16>>2]|0;j=n+170|0;b[j>>1]=b[(c[((e[j>>1]|0)>(e[f+170>>1]|0)?i:g)+16>>2]|0)+170>>1]|0;n=n+156|0;c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0)}l=m;return}function kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;a:while(1){e=a+16|0;while(1){if((a|0)==(b|0))break a;f=c[e>>2]|0;d=c[b+16>>2]|0;if((c[f+204>>2]|0)>=(c[d+204>>2]|0))break;b=c[d+200>>2]|0}a=c[f+200>>2]|0}return a|0}function lk(a){a=a|0;return (Sy(a)|0)==0|0}function mk(a,b){a=a|0;b=b|0;c[(c[a+16>>2]|0)+200>>2]=b;Nj(b,a);Mj(b,a);return}function nk(b){b=b|0;var c=0;b=xx(b,87076)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0)if(b$(b,87086)|0)if(b$(b,87090)|0)if(b$(b,87097)|0)if(b$(b,87101)|0)if(!(b$(b,87081)|0))b=1;else c=8;else b=5;else b=4;else b=3;else b=2;else c=8;if((c|0)==8)b=6;return b|0}function ok(a){a=a|0;var b=0,c=0;c=Sy(a)|0;a:do if(!c)b=0;else{b=_j(c)|0;while(1){c=Ty(a,c)|0;if(!c)break a;pk(b,c)|0}}while(0);return b|0}function pk(a,b){a=a|0;b=b|0;if(b){a=_j(a)|0;c[(c[(_j(b)|0)+16>>2]|0)+152>>2]=a}return a|0}function qk(a,b,d){a=a|0;b=b|0;d=d|0;Az(b,87135,c[d>>2]|0,1)|0;return}function rk(a,b,d){a=a|0;b=b|0;d=d|0;Az(b,87302,c[d+4>>2]|0,1)|0;return}function sk(a,b,d){a=a|0;b=b|0;d=d|0;Az(b,87287,c[d+8>>2]|0,1)|0;return}function tk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+240|0;m=p+120|0;n=p;c[46423]=nx(b,2,87317,0)|0;k=nx(b,2,87326,0)|0;c[46424]=k;a:do if((k|0)!=0|(c[46423]|0)!=0){k=Sy(b)|0;while(1){if(!k)break a;j=0;d=0;i=Jx(b,k)|0;while(1){if(!i){f=0;break}e=c[i>>2]|0;g=e&3;f=c[((g|0)==2?i:i+-48|0)+40>>2]|0;h=i+48|0;b:do if((f|0)!=(c[((g|0)==3?i:h)+40>>2]|0)){g=c[46423]|0;do if((f|0)==(k|0)&(g|0)!=0){f=yx(i,g)|0;if(!(a[f>>0]|0)){e=c[i>>2]|0;break}else{e=j;d=uk(m,d,k,i,f)|0;break b}}while(0);f=c[46424]|0;if((f|0?(c[((e&3|0)==3?i:h)+40>>2]|0)==(k|0):0)?(o=yx(i,f)|0,(a[o>>0]|0)!=0):0)e=uk(n,j,k,i,o)|0;else e=j}else e=j;while(0);j=e;i=Kx(b,i,k)|0}while(1){if((f|0)>=(d|0)){e=0;break}e=m+(f*24|0)+4|0;if((c[m+(f*24|0)+8>>2]|0)>1)vk(k,e);e=c[e>>2]|0;if(e|0)D_(e);f=f+1|0}while(1){if((e|0)>=(j|0))break;d=n+(e*24|0)+4|0;if((c[n+(e*24|0)+8>>2]|0)>1)vk(k,d);d=c[d>>2]|0;if(d|0)D_(d);e=e+1|0}k=Ty(b,k)|0}}while(0);l=p;return}function uk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+16|0;k=p;m=p+12|0;n=p+8|0;o=0;while(1){if((o|0)>=(d|0)){j=10;break}j=c[b+(o*24|0)>>2]|0;if((a[j>>0]|0)==(a[g>>0]|0)?(b$(j,g)|0)==0:0){j=5;break}o=o+1|0}do if((j|0)==5){k=b+(o*24|0)+4|0;j=c[k>>2]|0;if(!j){j=b+(o*24|0)+8|0;g=j;j=vH((c[j>>2]<<2)+8|0)|0}else{q=b+(o*24|0)+8|0;g=q;j=xH(j,(c[q>>2]<<2)+8|0)|0}c[k>>2]=j;r=c[g>>2]|0;q=r+1|0;c[g>>2]=q;c[j+(r<<2)>>2]=f;c[(c[k>>2]|0)+(q<<2)>>2]=0;j=13}else if((j|0)==10)if((d|0)>4){r=ry(e)|0;c[k>>2]=5;c[k+4>>2]=r;Pw(1,87335,k)|0;break}else{s=b+(o*24|0)+8|0;c[s>>2]=0;k=uH(8)|0;r=b+(o*24|0)+4|0;c[r>>2]=k;q=c[s>>2]|0;j=q+1|0;c[s>>2]=j;c[k+(q<<2)>>2]=f;c[(c[r>>2]|0)+(j<<2)>>2]=0;c[b+(o*24|0)>>2]=g;c[b+(o*24|0)+12>>2]=0;h[b+(o*24|0)+16>>3]=0.0;d=d+1|0;j=13;break}while(0);if((j|0)==13){sE(f,m,n);j=(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)==(e|0)?c[n>>2]|0:c[m>>2]|0;if(j){r=b+(o*24|0)+12|0;s=c[r>>2]|0;c[r>>2]=s+1;if(!s)i=+wE(f,j);else i=0.0;h[b+(o*24|0)+16>>3]=i}}l=p;return d|0}function vk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;x=l;l=l+80|0;t=x+68|0;u=x+64|0;r=x;v=d+4|0;n=c[v>>2]|0;w=b+16|0;i=0;p=0.0;q=0.0;while(1){if((i|0)>=(n|0))break;f=c[(c[d>>2]|0)+(i<<2)>>2]|0;g=c[f>>2]&3;e=c[((g|0)==2?f:f+-48|0)+40>>2]|0;if((e|0)==(b|0))e=c[((g|0)==3?f:f+48|0)+40>>2]|0;g=c[e+16>>2]|0;s=c[w>>2]|0;k=+h[g+16>>3]-+h[s+16>>3];m=+h[g+24>>3]-+h[s+24>>3];o=+u$(k,m);i=i+1|0;p=k/o+p;q=m/o+q}j=+u$(p,q);s=c[w>>2]|0;k=+h[s+16>>3];m=+h[s+24>>3];y=+h[s+96>>3]+ +h[s+88>>3];o=+h[s+80>>3];s=y>o+ +(c[(c[(ez(b)|0)+16>>2]|0)+252>>2]|0);e=c[w>>2]|0;if(s)o=+h[e+96>>3]+ +h[e+88>>3];else{o=+h[e+80>>3];o=o+ +(c[(c[(ez(b)|0)+16>>2]|0)+252>>2]|0);e=c[w>>2]|0}y=+h[e+16>>3]+o*(p/j);j=+h[e+24>>3]+o*(q/j);h[r>>3]=k;n=r+8|0;h[n>>3]=m;h[r+16>>3]=(y+k*2.0)*.3333333333333333;h[r+24>>3]=(j+m*2.0)*.3333333333333333;h[r+32>>3]=(y*2.0+k)*.3333333333333333;h[r+40>>3]=(j*2.0+m)*.3333333333333333;h[r+48>>3]=y;h[r+56>>3]=j;NK(b,r);s=c[w>>2]|0;j=+h[r>>3]-+h[s+16>>3];k=+h[n>>3]-+h[s+24>>3];j=+(~~(j+(j>=0.0?.5:-.5))|0);k=+(~~(k+(k>=0.0?.5:-.5))|0);y=+h[s+88>>3];s=~~((y+j)*256.0/(+h[s+96>>3]+y))&255;r=0;while(1){if((r|0)>=(c[v>>2]|0))break;n=c[(c[d>>2]|0)+(r<<2)>>2]|0;sE(n,t,u);while(1){if(!n)break;else g=n;while(1){if(!g){i=n;break}e=c[g>>2]|0;i=g+-48|0;if((c[((e&3|0)==2?g:i)+40>>2]|0)==(b|0)){e=c[g+16>>2]|0;h[e+56>>3]=j;h[e+64>>3]=k;h[e+72>>3]=0.0;c[e+80>>2]=0;a[e+84>>0]=1;a[e+85>>0]=0;a[e+86>>0]=0;a[e+87>>0]=0;a[e+88>>0]=s;a[e+89>>0]=0;c[e+92>>2]=0;e=c[g>>2]|0}f=g+16|0;if((c[((e&3|0)==3?g:g+48|0)+40>>2]|0)==(b|0)){e=c[f>>2]|0;h[e+16>>3]=j;h[e+24>>3]=k;h[e+32>>3]=0.0;c[e+40>>2]=0;a[e+44>>0]=1;a[e+45>>0]=0;a[e+46>>0]=0;a[e+47>>0]=0;a[e+48>>0]=s;a[e+49>>0]=0;c[e+52>>2]=0}if((a[(c[f>>2]|0)+112>>0]|0)!=1){g=0;continue}e=c[(c[((c[g>>2]&3|0)==2?g:i)+40>>2]|0)+16>>2]|0;if((a[e+156>>0]|0)!=1){g=0;continue}if((c[e+184>>2]|0)!=1){g=0;continue}g=c[c[e+180>>2]>>2]|0}while(1){if(!i)break;e=c[i>>2]|0;if((c[((e&3|0)==2?i:i+-48|0)+40>>2]|0)==(b|0)){e=c[i+16>>2]|0;h[e+56>>3]=j;h[e+64>>3]=k;h[e+72>>3]=0.0;c[e+80>>2]=0;a[e+84>>0]=1;a[e+85>>0]=0;a[e+86>>0]=0;a[e+87>>0]=0;a[e+88>>0]=s;a[e+89>>0]=0;c[e+92>>2]=0;e=c[i>>2]|0}f=i+48|0;g=i+16|0;if((c[((e&3|0)==3?i:f)+40>>2]|0)==(b|0)){e=c[g>>2]|0;h[e+16>>3]=j;h[e+24>>3]=k;h[e+32>>3]=0.0;c[e+40>>2]=0;a[e+44>>0]=1;a[e+45>>0]=0;a[e+46>>0]=0;a[e+47>>0]=0;a[e+48>>0]=s;a[e+49>>0]=0;c[e+52>>2]=0}if((a[(c[g>>2]|0)+112>>0]|0)!=1){i=0;continue}e=c[(c[((c[i>>2]&3|0)==3?i:f)+40>>2]|0)+16>>2]|0;if((a[e+156>>0]|0)!=1){i=0;continue}if((c[e+176>>2]|0)!=1){i=0;continue}i=c[c[e+172>>2]>>2]|0}n=c[(c[n+16>>2]|0)+172>>2]|0}r=r+1|0}a[(c[w>>2]|0)+145>>0]=1;l=x;return}function wk(a){a=a|0;var b=0,d=0,e=0;kh(a);b=c[a>>2]&3;d=a+-48|0;e=a+48|0;b=fh(c[((b|0)==2?a:d)+40>>2]|0,c[((b|0)==3?a:e)+40>>2]|0)|0;if(!b){b=c[a>>2]&3;ph(c[((b|0)==2?a:d)+40>>2]|0,c[((b|0)==3?a:e)+40>>2]|0,a)|0}else xh(a,b);return}function xk(b){b=b|0;var d=0,e=0,f=0,g=0;f=b+16|0;e=0;while(1){b=c[f>>2]|0;if((e|0)>=(c[b+220>>2]|0))break;d=c[(c[b+216>>2]|0)+(e<<2)>>2]|0;c[b+192>>2]=d;b=d;d=b;while(1){if(!d)break;g=c[d+16>>2]|0;a[g+157>>0]=0;d=c[g+164>>2]|0}while(1){if(!b)break;yk(b);b=c[(c[b+16>>2]|0)+164>>2]|0}e=e+1|0}return}function yk(b){b=b|0;var d=0,e=0,f=0,g=0;g=b+16|0;d=c[g>>2]|0;b=d+157|0;if(!(a[b>>0]|0)){a[b>>0]=1;a[d+158>>0]=1;b=0;while(1){f=c[(c[d+180>>2]|0)+(b<<2)>>2]|0;if(!f)break;d=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;e=c[d+16>>2]|0;if(!(a[e+158>>0]|0)){if(!(a[e+157>>0]|0))yk(d)}else{wk(f);b=b+-1|0}b=b+1|0;d=c[g>>2]|0}a[d+158>>0]=0}return}function zk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=Sy(a)|0;b=0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;g=c[d>>2]&3;h=c[(c[(c[((g|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;g=c[(c[(c[((g|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;f=h-g|0;d=Gx(a,d)|0;b=((h|0)==(g|0)?0:((f|0)>-1?f:0-f|0)+-1|0)+b|0}e=Ty(a,e)|0}return b|0}function Ak(b){b=b|0;var d=0,e=0,f=0,g=0;e=Sy(b)|0;while(1){if(!e)break;g=c[e+16>>2]|0;f=c[g+176>>2]|0;g=g+172|0;d=0;while(1){if((d|0)>=(f|0))break;a[(c[(c[(c[g>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+112>>0]=0;d=d+1|0}e=Ty(b,e)|0}return}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;o=q;j=c[b+24>>2]|0;Ck(a);k=(j|0)==-1;m=b+8|0;i=k^1;n=c[15686]|0;f=1797693134862315708145274.0e284;g=0;while(1){if(!(k|(g|0)<(j|0)))break;d=Sy(a)|0;while(1){if(!d)break;c[(c[d+16>>2]|0)+232>>2]=0;d=Ty(a,d)|0}yj(a);e=+Dk(a);h[m>>3]=e;if(0){h[o>>3]=e;g1(n,87387,o)|0;e=+h[m>>3]}if(!(!(e<=+h[b>>3])&(!(f<=e)|i))){p=9;break}Ek(a);f=e;g=g+1|0}if((p|0)==9){p=b+20|0;c[b+16>>2]=c[p>>2];c[p>>2]=g}yj(a);Fk(a);Gk();h[m>>3]=+Dk(a);l=q;return}function Ck(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0;c[45982]=vH((ay(a)|0)*24|0)|0;c[45981]=0;b=Sy(a)|0;while(1){if(!b)break;c[(c[b+16>>2]|0)+120>>2]=-1;b=Ty(a,b)|0}i=Sy(a)|0;while(1){if(!i)break;j=i+16|0;do if(!(c[(c[j>>2]|0)+216>>2]|0)){f=uH(4)|0;g=c[45982]|0;k=c[45981]|0;c[g+(k*24|0)>>2]=f;c[f>>2]=i;c[g+(k*24|0)+4>>2]=1;j=c[j>>2]|0;h[g+(k*24|0)+8>>3]=+h[j+32>>3];h[g+(k*24|0)+16>>3]=+h[j+40>>3];c[j+120>>2]=k;c[45981]=k+1}else{g=SL(i)|0;k=g+16|0;b=c[k>>2]|0;d=c[b+120>>2]|0;if((d|0)>-1){g=c[45982]|0;f=c[g+(d*24|0)>>2]|0;e=g+(d*24|0)+4|0;k=c[e>>2]|0;c[e>>2]=k+1;c[f+(k<<2)>>2]=i;k=c[j>>2]|0;j=g+(d*24|0)+8|0;h[j>>3]=+h[j>>3]+ +h[k+32>>3];j=g+(d*24|0)+16|0;l=+h[j>>3];m=+h[k+40>>3];h[j>>3]=l>2]=d;break}d=uH(c[b+216>>2]<<2)|0;e=c[45982]|0;f=c[45981]|0;b=e+(f*24|0)|0;c[b>>2]=d;c[d>>2]=g;if((g|0)==(i|0)){h[e+(f*24|0)+8>>3]=+h[(c[k>>2]|0)+32>>3];d=1;b=i}else{c[(c[b>>2]|0)+4>>2]=i;n=c[k>>2]|0;b=c[j>>2]|0;h[e+(f*24|0)+8>>3]=+h[b+32>>3]+ +h[n+32>>3];d=2;b=+h[n+40>>3]<+h[b+40>>3]?i:g}c[e+(f*24|0)+4>>2]=d;h[e+(f*24|0)+16>>3]=+h[(c[b+16>>2]|0)+40>>3];c[(c[k>>2]|0)+120>>2]=f;c[(c[j>>2]|0)+120>>2]=f;c[45981]=f+1}while(0);i=Ty(a,i)|0}return}function Dk(a){a=a|0;var b=0.0,d=0.0,e=0,f=0,g=0,i=0.0,j=0.0;Fk(a);g=c[45979]|0;e=c[a+16>>2]|0;b=+(O(c[e+252>>2]|0,g+-1|0)|0);f=c[45980]|0;e=e+248|0;a=0;d=0.0;while(1){if((a|0)>=(g|0))break;i=+h[f+(a*40|0)+24>>3]+ +(O(c[e>>2]|0,c[f+(a*40|0)+16>>2]|0)|0);j=+h[f+(a*40|0)+32>>3]+b;a=a+1|0;b=j;d=d=(ay(a)|0))break;c[(c[45983]|0)+(b<<2)>>2]=b;b=b+1|0}Fk(a);Hk(a);Ik(a);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0,l=0;c[45979]=0;b=c[45980]|0;if(b|0){e=0;while(1){if((e|0)>=(c[45981]|0))break;d=c[b+(e*40|0)+4>>2]|0;if(d){D_(d);b=c[45980]|0}d=c[b+(e*40|0)+8>>2]|0;if(d){D_(d);b=c[45980]|0}e=e+1|0}D_(b)}c[45980]=uH((c[45981]|0)*40|0)|0;b=0;while(1){d=c[45981]|0;if((b|0)>=(d|0))break;k=uH(d<<2)|0;c[(c[45980]|0)+(b*40|0)+4>>2]=k;k=uH(c[45981]<<2)|0;l=c[45980]|0;c[l+(b*40|0)+8>>2]=k;c[l+(b*40|0)>>2]=b;c[l+(b*40|0)+12>>2]=0;c[l+(b*40|0)+16>>2]=0;l=l+(b*40|0)+24|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;b=b+1|0}e=Sy(a)|0;while(1){if(!e)break;d=Ex(a,e)|0;while(1){if(!d)break;i=c[d>>2]|0;f=d+-48|0;g=c[45980]|0;b=c[(c[(c[((i&3|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;while(1){b=b+1|0;if((b|0)>=(c[(c[(c[((i&3|0)==2?d:f)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;i=g+(b*40|0)+16|0;c[i>>2]=(c[i>>2]|0)+1;i=c[d>>2]|0}d=Gx(a,d)|0}e=Ty(a,e)|0}i=c[45981]|0;k=c[45982]|0;l=c[45980]|0;d=a+16|0;b=0;while(1){if((b|0)>=(i|0))break;e=(c[c[k+(b*24|0)>>2]>>2]|0)+16|0;f=c[(c[e>>2]|0)+232>>2]|0;if((f|0)>=(c[45979]|0))c[45979]=f+1;g=l+(f*40|0)+24|0;j=+h[g>>3];h[g>>3]=j+ +h[k+(b*24|0)+8>>3]*72.0+(j>0.0?+(c[(c[d>>2]|0)+248>>2]|0):0.0);g=l+(f*40|0)+32|0;j=+h[k+(b*24|0)+16>>3]*72.0;if(+h[g>>3]>3]=j;c[(c[l+(f*40|0)+4>>2]|0)+(c[l+(f*40|0)+12>>2]<<2)>>2]=k+(b*24|0);a=l+((c[(c[e>>2]|0)+232>>2]|0)*40|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;b=b+1|0}return}function Gk(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=c[45979]|0;l=c[45980]|0;j=0;b=0;a=0;while(1){if((j|0)>=(k|0))break;d=l+(j*40|0)|0;i=c[l+(j*40|0)+12>>2]|0;e=(b|0)==0;a:do if(i)if(!e){if((c[d>>2]|0)>(a|0)){f=l+(j*40|0)+4|0;d=0;while(1){if((d|0)>=(i|0))break a;g=c[(c[f>>2]|0)+(d<<2)>>2]|0;h=c[g+4>>2]|0;e=0;while(1){if((e|0)>=(h|0))break;m=(c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0)+232|0;c[m>>2]=(c[m>>2]|0)-b;e=e+1|0}d=d+1|0}}}else b=0;else{if(e)a=c[d>>2]|0;b=b+1|0}while(0);j=j+1|0}return}function Hk(a){a=a|0;var b=0;b=c[45983]|0;_0(b,ay(a)|0,4,63);return}function Ik(b){b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0;j=c[45979]|0;k=c[45980]|0;g=c[45983]|0;i=0;while(1){if((i|0)>=(j|0)){e=0;d=0.0;break}e=c[g+(i<<2)>>2]|0;f=i+1|0;if((c[k+(e*40|0)+12>>2]|0)<2)i=f;else{l=4;break}}if((l|0)==4)if((j|0)>(f|0))d=+h[k+((c[g+(f<<2)>>2]|0)*40|0)+24>>3];else d=0.0;a:do if((i|0)!=(j|0)){_0(c[k+(e*40|0)+4>>2]|0,c[k+(e*40|0)+12>>2]|0,4,64);g=c[45980]|0;r=+h[g+(e*40|0)+24>>3];r=!(d<=r*.25)&!(d>=r*.75)?d:r*.5;s=c[g+(e*40|0)+12>>2]|0;q=b+16|0;n=0;o=0;d=0.0;f=0;p=0;while(1){if((p|0)>=(f+s|0))break a;do if(!(c[(c[g+(e*40|0)+8>>2]|0)+(p<<2)>>2]|0)){l=c[(c[g+(e*40|0)+4>>2]|0)+(p<<2)>>2]|0;b=l+8|0;m=+h[b>>3]*72.0+d+(d>0.0?+(c[(c[q>>2]|0)+248>>2]|0):0.0);i=(o|0)!=0;if(!(i&!(m<=r))){j=i?n:l;i=i?o:1;d=m;break}j=n+4|0;k=l+4|0;i=0;while(1){if((i|0)<(c[j>>2]|0))g=0;else break;while(1){if((g|0)>=(c[k>>2]|0))break;a[(c[(ph(c[(c[n>>2]|0)+(i<<2)>>2]|0,c[(c[l>>2]|0)+(g<<2)>>2]|0,0)|0)+16>>2]|0)+112>>0]=1;g=g+1|0}i=i+1|0}g=c[45980]|0;c[(c[g+(e*40|0)+8>>2]|0)+(p<<2)>>2]=1;j=g+(e*40|0)+12|0;c[j>>2]=(c[j>>2]|0)+-1;j=g+(e*40|0)+16|0;c[j>>2]=(c[j>>2]|0)+1;j=g+(e*40|0)+24|0;h[j>>3]=+h[b>>3]*-72.0-+(c[(c[q>>2]|0)+248>>2]|0)+ +h[j>>3];j=n;i=o}else{j=n;i=o;f=f+1|0}while(0);n=j;o=i;p=p+1|0}}while(0);return}function Jk(a,b){a=a|0;b=b|0;a=Kk(c[a>>2]|0)|0;b=Kk(c[b>>2]|0)|0;return ((b|0)<(a|0)&1)-((b|0)>(a|0)&1)|0}function Kk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+4|0;d=0;b=0;while(1){if((d|0)>=(c[f>>2]|0))break;e=c[(c[a>>2]|0)+(d<<2)>>2]|0;g=ez(e)|0;e=Ex(g,e)|0;while(1){if(!e)break;e=Gx(g,e)|0;b=b+1|0}d=d+1|0}return b|0}function Lk(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0;f=c[45980]|0;e=+h[f+((c[b>>2]|0)*40|0)+24>>3];d=+h[f+((c[a>>2]|0)*40|0)+24>>3];return (e>d&1)-(e>2]|0)+216>>2]=0;b=Ty(a,b)|0}return}function Nk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+32|0;f=g+16|0;e=g+8|0;d=g+20|0;c[d>>2]=5;a=xx(a,96579)|0;if(a|0?(c[e>>2]=g,c[e+4>>2]=d,(N1(a,87402,e)|0)>=1):0)Pw(0,87409,f)|0;c[b+24>>2]=0;c[b+32>>2]=0;l=g;return 0}function Ok(b){b=b|0;var d=0,e=0;d=c[46419]|0;if((((d|0)!=0?(e=yx(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0)?(QL(e)|0)<<24>>24==0:0)b=1;else b=0;return b|0}function Pk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;il(a);b=Sy(a)|0;while(1){if(!b)break;d=Ex(a,b)|0;while(1){if(!d)break;do if(((c[(c[d+16>>2]|0)+172>>2]|0)==0?(Ok(d)|0)==0:0)?(e=d+48|0,f=SL(c[((c[d>>2]&3|0)==3?d:e)+40>>2]|0)|0,g=d+-48|0,h=SL(c[((c[d>>2]&3|0)==2?d:g)+40>>2]|0)|0,(f|0)!=(h|0)):0){if((c[(c[f+16>>2]|0)+212>>2]|0)==0?(c[(c[h+16>>2]|0)+212>>2]|0)==0:0){i=fh(f,h)|0;if(!i){ph(f,h,d)|0;break}else{xh(d,i);break}}i=c[d>>2]&3;Qk(a,c[((i|0)==3?d:e)+40>>2]|0,c[((i|0)==2?d:g)+40>>2]|0,d)}while(0);d=Gx(a,d)|0}b=Ty(a,b)|0}return}function Qk(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=c[g>>2]&3;h=c[(c[((j|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0;i=c[h+212>>2]|0;if(!i)k=0;else k=(c[h+232>>2]|0)-(c[(c[(c[(c[i+16>>2]|0)+264>>2]|0)+16>>2]|0)+232>>2]|0)|0;h=c[(c[((j|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0;i=c[h+212>>2]|0;if(!i)h=0;else h=(c[(c[(c[(c[i+16>>2]|0)+264>>2]|0)+16>>2]|0)+232>>2]|0)-(c[h+232>>2]|0)|0;j=g+16|0;k=h+k+(e[(c[j>>2]|0)+170>>1]|0)|0;b=uh(b)|0;a[(c[b+16>>2]|0)+156>>0]=2;i=SL(d)|0;d=SL(f)|0;f=$i(b,i,(k|0)>0?0.0:+(0-k|0),(c[(c[j>>2]|0)+156>>2]|0)*10|0)|0;c[(c[($i(b,d,+(((k|0)>0?k:0)|0),c[(c[j>>2]|0)+156>>2]|0)|0)+16>>2]|0)+116>>2]=g;c[(c[f+16>>2]|0)+116>>2]=g;return}function Rk(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=c[d>>2]&3;i=(j|0)==3?d:d+48|0;j=(j|0)==2?d:d+-48|0;j=c[(c[(c[((c[(c[(c[i+40>>2]|0)+16>>2]|0)+232>>2]|0)>(c[(c[(c[j+40>>2]|0)+16>>2]|0)+232>>2]|0)?i:j)+40>>2]|0)+16>>2]|0)+232>>2]|0;i=d+16|0;d=(c[i>>2]|0)+172|0;if(c[d>>2]|0)qa(87498,87520,148,87529);c[d>>2]=f;h=(g|0)==0;do{d=c[i>>2]|0;if(h)g=c[f+16>>2]|0;else{g=c[f+16>>2]|0;k=g+168|0;b[k>>1]=(e[k>>1]|0)+(e[d+168>>1]|0)}k=g+154|0;b[k>>1]=(e[k>>1]|0)+(e[d+154>>1]|0);g=g+156|0;c[g>>2]=(c[g>>2]|0)+(c[d+156>>2]|0);d=f+-48|0;g=c[((c[f>>2]&3|0)==2?f:d)+40>>2]|0;if((c[(c[g+16>>2]|0)+232>>2]|0)==(j|0))break;Sk(a,g);f=c[c[(c[(c[((c[f>>2]&3|0)==2?f:d)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((f|0)!=0);return}function Sk(a,b){a=a|0;b=b|0;var d=0.0;d=+((c[(c[a+16>>2]|0)+248>>2]|0)/2|0|0);b=c[b+16>>2]|0;a=b+88|0;h[a>>3]=+h[a>>3]+d;b=b+96|0;h[b>>3]=+h[b>>3]+d;return}function Tk(a,b){a=a|0;b=b|0;var d=0,e=0;if(((((a|0)!=0&(b|0)!=0?(e=c[a>>2]&3,d=c[b>>2]&3,(c[((e|0)==3?a:a+48|0)+40>>2]|0)==(c[((d|0)==3?b:b+48|0)+40>>2]|0)):0)?(c[((e|0)==2?a:a+-48|0)+40>>2]|0)==(c[((d|0)==2?b:b+-48|0)+40>>2]|0):0)?(c[(c[a+16>>2]|0)+96>>2]|0)==(c[(c[b+16>>2]|0)+96>>2]|0):0)?(wj(a,b)|0)!=0:0)a=1;else a=0;return a|0}function Uk(b){b=b|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;r=b+16|0;d=c[r>>2]|0;c[d+192>>2]=0;c[d+232>>2]=0;il(b);d=1;while(1){e=c[r>>2]|0;if((d|0)>(c[e+180>>2]|0))break;jl(b,c[(c[e+184>>2]|0)+(d<<2)>>2]|0);d=d+1|0}h=Sy(b)|0;while(1){if(!h)break;g=Ex(b,h)|0;while(1){if(!g)break;d=c[g>>2]|0;e=(c[(c[((d&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+160|0;f=a[e>>0]|0;if(f<<24>>24<3){a[e>>0]=f+1<<24>>24;d=c[g>>2]|0}d=(c[(c[((d&3|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+160|0;e=a[d>>0]|0;if(e<<24>>24<3)a[d>>0]=e+1<<24>>24;g=Gx(b,g)|0}h=Ty(b,h)|0}m=Sy(b)|0;while(1){if(!m)break;if((c[(c[m+16>>2]|0)+212>>2]|0)==0?(m|0)==(SL(m)|0):0){qh(b,m);l=(c[r>>2]|0)+232|0;c[l>>2]=(c[l>>2]|0)+1}d=0;l=Ex(b,m)|0;while(1){if(!l)break;k=l+16|0;h=c[k>>2]|0;a:do if(!(c[h+172>>2]|0)){if(Vk(l)|0){if(!(Tk(d,l)|0)){Wk(b,l);d=l;break}e=c[(c[d+16>>2]|0)+172>>2]|0;if(e|0){Rk(b,l,e,0);lh(l);break}k=c[l>>2]&3;if((c[(c[(c[((k|0)==3?l:l+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)!=(c[(c[(c[((k|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;xh(l,d);lh(l);break}if(d){i=c[l>>2]&3;e=l+48|0;f=c[((i|0)==3?l:e)+40>>2]|0;g=c[d>>2]&3;if((f|0)==(c[((g|0)==3?d:d+48|0)+40>>2]|0)?(n=c[((i|0)==2?l:l+-48|0)+40>>2]|0,(n|0)==(c[((g|0)==2?d:d+-48|0)+40>>2]|0)):0){if((c[(c[f+16>>2]|0)+232>>2]|0)==(c[(c[n+16>>2]|0)+232>>2]|0)){xh(l,d);lh(l);break}if(((c[h+96>>2]|0)==0?(o=d+16|0,(c[(c[o>>2]|0)+96>>2]|0)==0):0)?(wj(l,d)|0)!=0:0)if(!(a[191874]|0)){Rk(b,l,c[(c[o>>2]|0)+172>>2]|0,1);lh(l);break}else{a[(c[k>>2]|0)+112>>0]=6;break}else i=e}else i=e}else i=l+48|0;h=c[l>>2]&3;e=c[((h|0)==3?l:i)+40>>2]|0;j=l+-48|0;if((e|0)==(c[((h|0)==2?l:j)+40>>2]|0)){lh(l);d=l;break}e=SL(e)|0;f=SL(c[((c[l>>2]&3|0)==2?l:j)+40>>2]|0)|0;h=c[l>>2]&3;if((c[((h|0)==3?l:i)+40>>2]|0)==(e|0)?(c[((h|0)==2?l:j)+40>>2]|0)==(f|0):0){g=c[(c[e+16>>2]|0)+232>>2]|0;h=c[(c[f+16>>2]|0)+232>>2]|0;if((g|0)==(h|0)){vh(b,l);d=l;break}if((h|0)>(g|0)){Xk(b,e,f,l);d=l;break}e=Rx(b,f,e,0,0)|0;do if(e|0?(p=c[e>>2]&3,q=c[((p|0)==2?e:e+-48|0)+40>>2]|0,(q|0)!=(c[((c[l>>2]&3|0)==2?l:j)+40>>2]|0)):0){f=e+16|0;if(!(c[(c[f>>2]|0)+172>>2]|0))Xk(b,c[((p|0)==3?e:e+48|0)+40>>2]|0,q,e);if((c[(c[k>>2]|0)+96>>2]|0)==0?(c[(c[f>>2]|0)+96>>2]|0)==0:0){if(!(wj(l,e)|0))break;if(!(a[191874]|0)){lh(l);Rk(b,l,c[(c[f>>2]|0)+172>>2]|0,1);break a}else{a[(c[k>>2]|0)+112>>0]=6;a[(c[f>>2]|0)+153>>0]=1;break a}}}while(0);d=c[l>>2]&3;Xk(b,c[((d|0)==2?l:j)+40>>2]|0,c[((d|0)==3?l:i)+40>>2]|0,l);d=l}}else d=l;while(0);l=Gx(b,l)|0}m=Ty(b,m)|0}if((ig(b)|0)!=(b|0)){d=c[(c[r>>2]|0)+216>>2]|0;if(!d)d=vH(4)|0;else d=xH(d,4)|0;r=c[r>>2]|0;c[r+216>>2]=d;c[d>>2]=c[r+192>>2]}return}function Vk(b){b=b|0;var d=0;d=c[b>>2]&3;if((a[(c[(c[((d|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+159>>0]|0)==7)b=1;else b=(a[(c[(c[((d|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+159>>0]|0)==7&1;return b|0}function Wk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=_k(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;g=_k(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;i=(c[(c[f+16>>2]|0)+232>>2]|0)>(c[(c[g+16>>2]|0)+232>>2]|0);e=i?f:g;f=i?g:f;g=f+16|0;i=e+16|0;a:do if((c[(c[g>>2]|0)+212>>2]|0)!=(c[(c[i>>2]|0)+212>>2]|0)){h=fh(f,e)|0;if(h|0){Rk(b,d,h,1);break}if((c[(c[g>>2]|0)+232>>2]|0)!=(c[(c[i>>2]|0)+232>>2]|0)){Xk(b,f,e,d);e=(c[d+16>>2]|0)+172|0;while(1){e=c[e>>2]|0;if(!e)break a;f=e+-48|0;if((c[(c[(c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(c[(c[i>>2]|0)+232>>2]|0))break a;a[(c[e+16>>2]|0)+112>>0]=5;e=c[(c[(c[((c[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+180>>2]|0}}}while(0);return}function Xk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=e+16|0;f=c[k>>2]|0;if(!(c[f+96>>2]|0))j=-1;else j=((c[(c[d+16>>2]|0)+232>>2]|0)+(c[(c[b+16>>2]|0)+232>>2]|0)|0)/2|0;if(c[f+172>>2]|0)qa(87541,87520,89,87566);i=d+16|0;h=c[(c[b+16>>2]|0)+232>>2]|0;while(1){g=h+1|0;f=c[(c[i>>2]|0)+232>>2]|0;if((h|0)>=(f|0))break;if((g|0)<(f|0)){if((g|0)==(j|0))f=Yk(a,e)|0;else f=Zk(a)|0;c[(c[f+16>>2]|0)+232>>2]=g}else f=d;Ki(ph(b,f,e)|0);h=g;b=f}if(!(c[(c[k>>2]|0)+172>>2]|0))qa(87577,87520,103,87566);else return}function Yk(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0.0;i=d+16|0;g=c[(c[i>>2]|0)+96>>2]|0;e=+h[g+24>>3];f=+h[g+32>>3];g=uh(b)|0;d=g+16|0;c[(c[d>>2]|0)+104>>2]=c[(c[i>>2]|0)+96>>2];j=+(c[(c[(fz(g)|0)+16>>2]|0)+248>>2]|0);h[(c[d>>2]|0)+88>>3]=j;if(!(a[(c[i>>2]|0)+114>>0]|0)){b=(c[(c[(fz(b)|0)+16>>2]|0)+116>>2]&1|0)==0;i=c[d>>2]|0;h[i+80>>3]=b?f:e;h[i+96>>3]=b?e:f}return g|0}function Zk(a){a=a|0;var b=0;b=uh(a)|0;Sk(a,b);return b|0}function _k(b){b=b|0;var d=0;d=c[b+16>>2]|0;if((a[d+159>>0]|0)==7)b=c[(c[(c[(c[d+212>>2]|0)+16>>2]|0)+268>>2]|0)+(c[d+232>>2]<<2)>>2]|0;else b=SL(b)|0;return b|0}function $k(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=ig(a)|0;h=Sy(a)|0;while(1){if(!h)break;b=Jx(j,h)|0;i=0;while(1){if(!b)break;l=Kx(j,b,h)|0;if(oz(a,b)|0){k=i;b=l;i=k;continue}k=(c[b>>2]&3|0)==2?b:b+-48|0;m=(Tk(i,k)|0)==0;e=c[k>>2]&3;b=c[((e|0)==3?k:k+48|0)+40>>2]|0;d=c[(c[b+16>>2]|0)+232>>2]|0;e=c[((e|0)==2?k:k+-48|0)+40>>2]|0;f=c[(c[e+16>>2]|0)+232>>2]|0;g=(d|0)==(f|0);if(!m){c[(c[k+16>>2]|0)+172>>2]=g?i:0;b=c[(c[i+16>>2]|0)+172>>2]|0;if(!b){m=i;b=l;i=m;continue}Rk(a,k,b,0);mh(k);m=i;b=l;i=m;continue}if(!g)if((f|0)>(d|0)){al(b,e,k);b=l;i=k;continue}else{al(e,b,k);b=l;i=k;continue}b=hh(b,e)|0;if(!b){vh(j,k);b=l;i=k;continue}if((k|0)==(b|0)){m=i;b=l;i=m;continue}mh(k);if(c[(c[k+16>>2]|0)+172>>2]|0){m=i;b=l;i=m;continue}xh(k,b);m=i;b=l;i=m}h=Ty(a,h)|0}return}function al(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=bl(a)|0;e=bl(b)|0;cl(f,e,d,c[(c[d+16>>2]|0)+172>>2]|0,(f|0)==(a|0)&(e|0)==(b|0)?1:5);return}function bl(b){b=b|0;var d=0,e=0,f=0;d=c[b+16>>2]|0;e=c[d+212>>2]|0;if((e|0)!=0?(f=c[e+16>>2]|0,(a[f+272>>0]|0)==0):0)b=c[(c[f+268>>2]|0)+(c[d+232>>2]<<2)>>2]|0;return b|0}function cl(d,e,f,g,h){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;n=d+16|0;k=c[(c[n>>2]|0)+232>>2]|0;o=e+16|0;i=c[(c[o>>2]|0)+232>>2]|0;if((i|0)<=(k|0))qa(87602,87630,81,87640);m=c[g>>2]&3;if(!((c[((m|0)==3?g:g+48|0)+40>>2]|0)==(d|0)?(c[((m|0)==2?g:g+-48|0)+40>>2]|0)==(e|0):0))l=5;a:do if((l|0)==5){if((b[(c[g+16>>2]|0)+168>>1]|0)>1){c[(c[f+16>>2]|0)+172>>2]=0;if(((i-k|0)==1?(j=fh(d,e)|0,j|0):0)?wj(f,j)|0:0){xh(f,j);if(a[(c[n>>2]|0)+156>>0]|0)break;if(a[(c[o>>2]|0)+156>>0]|0)break;lh(f);break}m=h&255;h=d;l=c[(c[n>>2]|0)+232>>2]|0;while(1){i=c[(c[o>>2]|0)+232>>2]|0;if((l|0)>=(i|0))break a;if((l|0)<(i+-1|0)){i=ig(d)|0;j=g+-48|0;i=dl(i,c[((c[g>>2]&3|0)==2?g:j)+40>>2]|0)|0;k=g}else{i=e;j=g+-48|0;k=g}a[(c[(ph(h,i,f)|0)+16>>2]|0)+112>>0]=m;n=(c[g+16>>2]|0)+168|0;b[n>>1]=(b[n>>1]|0)+-1<<16>>16;h=i;l=l+1|0;g=c[c[(c[(c[((c[k>>2]&3|0)==2?g:j)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}}do if((i-k|0)==1){g=fh(d,e)|0;if(g|0?wj(f,g)|0:0){c[(c[f+16>>2]|0)+172>>2]=g;m=c[g+16>>2]|0;a[m+112>>0]=h;m=m+168|0;b[m>>1]=(b[m>>1]|0)+1<<16>>16;if(a[(c[n>>2]|0)+156>>0]|0)break;if(a[(c[o>>2]|0)+156>>0]|0)break;lh(f);break}c[(c[f+16>>2]|0)+172>>2]=0;g=ph(d,e,f)|0;a[(c[g+16>>2]|0)+112>>0]=h}while(0);i=c[(c[o>>2]|0)+232>>2]|0;if((i-(c[(c[n>>2]|0)+232>>2]|0)|0)>1){if((c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)==(d|0))l=i;else{n=f+16|0;c[(c[n>>2]|0)+172>>2]=0;l=ph(d,c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0,f)|0;c[(c[n>>2]|0)+172>>2]=l;kh(g);g=l;l=c[(c[o>>2]|0)+232>>2]|0}while(1){i=c[g>>2]&3;j=c[((i|0)==2?g:g+-48|0)+40>>2]|0;k=c[j+16>>2]|0;if((c[k+232>>2]|0)==(l|0))break;g=c[c[k+180>>2]>>2]|0}if((j|0)!=(e|0)){a[(c[(ph(c[((i|0)==3?g:g+48|0)+40>>2]|0,e,f)|0)+16>>2]|0)+112>>0]=h;kh(g)}}}while(0);return}function dl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b+16|0;b=c[d>>2]|0;e=c[b+232>>2]|0;el(a,e,c[b+236>>2]|0,2);b=uh(a)|0;d=c[d>>2]|0;f=c[b+16>>2]|0;h[f+88>>3]=+h[d+88>>3];h[f+96>>3]=+h[d+96>>3];c[f+232>>2]=c[d+232>>2];d=(c[d+236>>2]|0)+1|0;c[f+236>>2]=d;c[(c[(c[(c[a+16>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(d<<2)>>2]=b;return b|0}function el(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=a+16|0;f=c[(c[h>>2]|0)+196>>2]|0;i=c[f+(b<<6)+4>>2]|0;a:do if((e|0)<1){d=d-e|0;while(1){g=d+1|0;a=c[f+(b<<6)>>2]|0;if((g|0)>=(a|0))break;a=c[i+(g<<2)>>2]|0;f=d+e|0;c[(c[a+16>>2]|0)+236>>2]=f;c[i+(f<<2)>>2]=a;d=g;f=c[(c[h>>2]|0)+196>>2]|0}g=e+-1|0;d=g+a|0;while(1){if((d|0)>=(a|0))break a;c[i+(d<<2)>>2]=0;f=c[(c[h>>2]|0)+196>>2]|0;d=d+1|0;a=c[f+(b<<6)>>2]|0}}else{g=e+-1|0;a=c[f+(b<<6)>>2]|0;while(1){a=a+-1|0;if((a|0)<=(d|0))break;j=c[i+(a<<2)>>2]|0;f=g+a|0;c[(c[j+16>>2]|0)+236>>2]=f;c[i+(f<<2)>>2]=j}f=e+d|0;a=d;while(1){a=a+1|0;if((a|0)>=(f|0))break;c[i+(a<<2)>>2]=0}a=c[(c[h>>2]|0)+196>>2]|0;f=a;a=c[a+(b<<6)>>2]|0}while(0);c[f+(b<<6)>>2]=g+a;return}function fl(a){a=a|0;var b=0;Uk(a);b=c[a+16>>2]|0;c[b+220>>2]=1;c[c[b+216>>2]>>2]=c[b+192>>2];Hi(a);mi(a,0);gl(a);$k(a);hl(a);return}function gl(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=ig(d)|0;l=d+16|0;f=c[l>>2]|0;j=b[f+236>>1]|0;e=j<<16>>16;m=k+16|0;if(j<<16>>16>0)a[(c[(c[m>>2]|0)+196>>2]|0)+(e+-1<<6)+49>>0]=0;j=e;while(1){if((j|0)>(b[f+238>>1]|0))break;i=c[(c[(c[(c[f+268>>2]|0)+(j<<2)>>2]|0)+16>>2]|0)+236>>2]|0;el(k,j,i,c[(c[f+196>>2]|0)+(j<<6)>>2]|0);g=0;h=i;while(1){f=c[l>>2]|0;e=c[f+196>>2]|0;if((g|0)>=(c[e+(j<<6)>>2]|0))break;e=c[(c[e+(j<<6)+4>>2]|0)+(g<<2)>>2]|0;c[(c[(c[(c[m>>2]|0)+196>>2]|0)+(j<<6)+4>>2]|0)+(h<<2)>>2]=e;f=c[e+16>>2]|0;c[f+236>>2]=h;if((a[f+156>>0]|0)==1)c[e+24>>2]=fz(k)|0;sh(d,e);qh(k,e);f=(c[m>>2]|0)+232|0;c[f>>2]=(c[f>>2]|0)+1;g=g+1|0;h=h+1|0}h=c[(c[m>>2]|0)+196>>2]|0;c[e+(j<<6)+4>>2]=(c[h+(j<<6)+4>>2]|0)+(i<<2);a[h+(j<<6)+49>>0]=0;j=j+1|0}e=c[m>>2]|0;if((j|0)<(b[e+238>>1]|0))a[(c[e+196>>2]|0)+(j<<6)+49>>0]=0;a[f+272>>0]=1;return}function hl(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+16|0;d=c[i>>2]|0;h=b[d+236>>1]|0;while(1){if((h|0)>(b[d+238>>1]|0))break;f=c[(c[d+268>>2]|0)+(h<<2)>>2]|0;g=f+16|0;while(1){d=c[g>>2]|0;e=c[c[d+180>>2]>>2]|0;if(!e)break;kh(e)}while(1){d=c[c[d+172>>2]>>2]|0;if(!d)break;kh(d);d=c[g>>2]|0}sh(ig(a)|0,f);c[(c[(c[i>>2]|0)+268>>2]|0)+(h<<2)>>2]=0;h=h+1|0;d=c[i>>2]|0}return}function il(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;f=Sy(b)|0;while(1){if(!f)break;e=f+16|0;d=c[e>>2]|0;if((a[d+159>>0]|0)==7){UL(f);d=c[e>>2]|0}c[d+212>>2]=0;f=Ty(b,f)|0}m=b+16|0;k=1;while(1){d=c[m>>2]|0;if((k|0)>(c[d+180>>2]|0))break;h=c[(c[d+184>>2]|0)+(k<<2)>>2]|0;i=h+16|0;d=Sy(h)|0;a:while(1){if(!d)break;j=Ty(h,d)|0;e=d+16|0;if(a[(c[e>>2]|0)+159>>0]|0){f=ry(d)|0;g=ry(b)|0;c[n>>2]=f;c[n+4>>2]=g;Pw(0,87649,n)|0;dz(h,d)|0;d=j;continue}VL(d,c[(c[i>>2]|0)+264>>2]|0);g=c[e>>2]|0;c[g+212>>2]=h;a[g+159>>0]=7;g=Ex(h,d)|0;while(1){if(!g){d=j;continue a}d=c[(c[g+16>>2]|0)+172>>2]|0;b:do if(d|0)do{e=d+-48|0;f=c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0;if((a[f+156>>0]|0)!=1)break b;c[f+212>>2]=h;d=c[c[(c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((d|0)!=0);while(0);g=Gx(h,g)|0}}k=k+1|0}l=o;return}function jl(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=e+16|0;g=uH((b[(c[k>>2]|0)+238>>1]<<2)+8|0)|0;f=c[k>>2]|0;c[f+268>>2]=g;g=0;h=b[f+236>>1]|0;while(1){if((h|0)>(b[f+238>>1]|0))break;f=uh(d)|0;c[(c[(c[k>>2]|0)+268>>2]|0)+(h<<2)>>2]=f;j=c[f+16>>2]|0;c[j+232>>2]=h;a[j+159>>0]=7;c[j+212>>2]=e;if(g|0){j=(c[(ph(g,f,0)|0)+16>>2]|0)+154|0;b[j>>1]=(b[j>>1]|0)*1e3}g=f;h=h+1|0;f=c[k>>2]|0}j=Sy(e)|0;while(1){f=c[k>>2]|0;if(!j)break;h=(c[(c[f+268>>2]|0)+(c[(c[j+16>>2]|0)+232>>2]<<2)>>2]|0)+16|0;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=Ex(e,j)|0;while(1){if(!f)break;i=c[f>>2]|0;d=f+-48|0;g=c[(c[(c[((i&3|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;while(1){if((g|0)>=(c[(c[(c[((i&3|0)==2?f:d)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;i=(c[(c[c[(c[h>>2]|0)+180>>2]>>2]|0)+16>>2]|0)+168|0;b[i>>1]=(b[i>>1]|0)+1<<16>>16;g=g+1|0;i=c[f>>2]|0}f=Gx(e,f)|0}j=Ty(e,j)|0}d=b[f+238>>1]|0;i=f+268|0;f=b[f+236>>1]|0;while(1){if((f|0)>(d|0))break;g=(c[(c[(c[i>>2]|0)+(f<<2)>>2]|0)+16>>2]|0)+216|0;h=c[g>>2]|0;if((h|0)>1)c[g>>2]=h+-1;f=f+1|0}return}function kl(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=(c[(c[e+16>>2]|0)+212>>2]|0)+16|0;e=c[k>>2]|0;j=f+1|0;if((j|0)!=(a[e+273>>0]|0)){i=b[e+236>>1]|0;while(1){h=b[e+238>>1]|0;if((i|0)>(h<<16>>16|0))break;Bi(d,c[(c[e+268>>2]|0)+(i<<2)>>2]|0);i=i+1|0;e=c[k>>2]|0}i=b[e+236>>1]|0;while(1){if((i|0)>(h<<16>>16|0))break;Ci(g,c[(c[e+268>>2]|0)+(i<<2)>>2]|0,f);d=c[k>>2]|0;i=i+1|0;h=b[d+238>>1]|0;e=d}a[e+273>>0]=j}return}function ll(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Sy(b)|0;while(1){if(!h)break;c[(c[h+16>>2]|0)+212>>2]=0;g=Ex(b,h)|0;while(1){if(!g)break;d=c[(c[g+16>>2]|0)+172>>2]|0;a:do if(d|0)do{e=d+-48|0;f=c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0;if((a[f+156>>0]|0)!=1)break a;c[f+212>>2]=0;d=c[c[(c[(c[((c[d>>2]&3|0)==2?d:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((d|0)!=0);while(0);g=Gx(b,g)|0}h=Ty(b,h)|0}ml(b);return}function ml(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=b+16|0;d=1;while(1){f=c[e>>2]|0;if((d|0)>(c[f+180>>2]|0))break;ml(c[(c[f+184>>2]|0)+(d<<2)>>2]|0);d=d+1|0}i=Sy(b)|0;while(1){if(!i)break;d=(c[i+16>>2]|0)+212|0;if(!(c[d>>2]|0))c[d>>2]=b;h=Ex(b,i)|0;while(1){if(!h)break;d=c[(c[h+16>>2]|0)+172>>2]|0;a:do if(d|0)do{e=c[d>>2]|0;g=d+-48|0;f=c[(c[((e&3|0)==2?d:g)+40>>2]|0)+16>>2]|0;if((a[f+156>>0]|0)!=1)break a;f=f+212|0;if(!(c[f>>2]|0)){c[f>>2]=b;e=c[d>>2]|0}d=c[c[(c[(c[((e&3|0)==2?d:g)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((d|0)!=0);while(0);h=Gx(b,h)|0}i=Ty(b,i)|0}return}function nl(a){a=a|0;var b=0,c=0,d=0;d=tM(a)|0;c=Sy(a)|0;while(1){if(!c)break;b=Ex(a,c)|0;while(1){if(!b)break;ol(b,d);b=Gx(a,b)|0}c=Ty(a,c)|0}yw(d)|0;return} +function yH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0,n=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;r=u+40|0;q=u+32|0;n=u+24|0;m=u;s=4;t=C_(40)|0;c[t>>2]=0;f=u+68|0;g=u+64|0;if(0){o=0;ka(62,a|0,f|0,g|0);i=o;o=0;if((i|0)!=0&(p|0)!=0){j=E3(c[i>>2]|0,t|0,s|0)|0;if(!j)bb(i|0,p|0);z=p}else j=-1;if((j|0)!=1){j=c[15686]|0;i=c[f>>2]|0;f=c[g>>2]|0;o=0;c[m>>2]=99176;c[m+4>>2]=i;c[m+8>>2]=f;c[m+12>>2]=d;c[m+16>>2]=b;ca(29,j|0,99132,m|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){o=0;ha(1);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1)j=6;else{f=z;j=15}}else{f=z;j=15}}else{f=z;j=15}}else j=6;do if((j|0)==6){o=0;f=$(27,a|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,t|0,s|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)!=1){if(!f){o=0;ha(2);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;break}}if((d|0)<1){o=0;ha(3);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;break}f=0;break}else{c[46441]=(e|0)>-1?e:30;t=D3(185768,1,t|0,s|0)|0;s=z;o=0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;break}f=0;j=15;break}}else{f=z;j=15}}while(0);a:do if((j|0)==15){b:while(1){if(f|0){f=2;break a}o=0;ha(4);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue}a=c[15686]|0;m=0;while(1){o=0;j=_(2)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}if(!j)break;o=0;f=$(28,j|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,t|0,s|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)==1){f=z;j=15;continue b}o=0;ja(25,j|0,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}m=m+1|0;do if(((m|0)%100|0|0)==0&0!=0){f=(m|0)%1e3|0;if((f|0)==100){o=0;aa(91,99176,a|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}o=0;c[n>>2]=m;ca(29,a|0,99194,n|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}break}o=0;c[q>>2]=m;ca(29,a|0,99194,q|0)|0;g=o;o=0;if((g|0)!=0&(p|0)!=0){i=E3(c[g>>2]|0,t|0,s|0)|0;if(!i)bb(g|0,p|0);z=p}else i=-1;if((i|0)==1){f=z;j=15;continue b}if(!f){o=0;aa(92,10,a|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}}}while(0);if((m|0)>=(d|0))break}switch(b|0){case 1:{o=0;ha(5);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}break}case 2:{o=0;ha(6);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}break}default:{o=0;ha(7);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}o=0;ha(3);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue b}}}if(!0){f=0;break a}if((m|0)>99){o=0;aa(92,10,a|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15;continue}}f=c[46481]|0;g=c[46482]|0;o=0;k=+X(1);i=o;o=0;if((i|0)!=0&(p|0)!=0){j=E3(c[i>>2]|0,t|0,s|0)|0;if(!j)bb(i|0,p|0);z=p}else j=-1;if((j|0)==1){f=z;j=15;continue}o=0;c[r>>2]=99176;c[r+4>>2]=f;c[r+8>>2]=g;c[r+12>>2]=m;h[r+16>>3]=k;ca(29,a|0,99198,r|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,t|0,s|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){f=z;j=15}else break}f=0}while(0);D_(t|0);l=u;return f|0}function zH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a=(c[a+16>>2]|0)+192|0;e=0;h=0;while(1){a=c[a>>2]|0;if(!a)break;g=c[a+16>>2]|0;f=c[g+180>>2]|0;a=0;while(1){if(!(c[f+(a<<2)>>2]|0))break;a=a+1|0;e=e+1|0}a=g+164|0;h=h+1|0}c[b>>2]=h;c[d>>2]=e;return}function AH(b){b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c[46484]=b;c[46491]=0;c[46482]=0;c[46481]=0;i=b+16|0;b=(c[i>>2]|0)+192|0;h=0;f=0;while(1){b=c[b>>2]|0;if(!b)break;g=c[b+16>>2]|0;a[g+157>>0]=0;h=h+1|0;c[46481]=h;d=c[g+180>>2]|0;b=0;while(1){if(!(c[d+(b<<2)>>2]|0))break;k=f+1|0;c[46482]=k;b=b+1|0;f=k}b=g+164|0}b=c[46492]|0;if(!b)b=vH(h<<2)|0;else b=xH(b,h<<2)|0;c[46492]=b;c[46493]=0;b=c[46486]|0;if(!b)b=vH(c[46481]<<2)|0;else b=xH(b,c[46481]<<2)|0;c[46486]=b;c[46485]=0;d=1;b=(c[i>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;k=b+16|0;i=c[k>>2]|0;j=i+292|0;c[j>>2]=0;i=c[i+172>>2]|0;h=d;g=0;b=0;while(1){d=c[i+(g<<2)>>2]|0;if(!d)break;f=b+1|0;c[j>>2]=f;b=c[d+16>>2]|0;c[b+160>>2]=0;c[b+164>>2]=-1;if(!h)b=0;else{l=c[d>>2]&3;b=((c[(c[(c[((l|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((l|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)<(e[b+170>>1]|0|0)?0:h}h=b;g=g+1|0;b=f}b=uH((g<<2)+4|0)|0;d=c[k>>2]|0;c[d+264>>2]=b;c[d+268>>2]=0;d=c[d+180>>2]|0;b=0;do{l=b;b=b+1|0}while((c[d+(l<<2)>>2]|0)!=0);d=uH(b<<2)|0;b=c[k>>2]|0;c[b+272>>2]=d;c[b+276>>2]=0;d=h;b=b+164|0}return d|0}function BH(){var a=0,b=0,d=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o+8|0;k=o;m=GL(c[46481]|0)|0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[a>>2]|0;if(!b){j=0;break}d=b+16|0;a=c[d>>2]|0;if(!(c[a+292>>2]|0)){IL(m,b);a=c[d>>2]|0}a=a+164|0}while(1){a=JL(m)|0;if(!a)break;i=a+16|0;a=c[i>>2]|0;f=a+232|0;c[f>>2]=0;d=c[a+172>>2]|0;b=0;h=0;while(1){g=c[d+(b<<2)>>2]|0;if(!g){f=0;break}g=(c[(c[(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)+(e[(c[g+16>>2]|0)+170>>1]|0)|0;g=(h|0)>(g|0)?h:g;c[f>>2]=g;b=b+1|0;h=g}while(1){b=c[(c[a+180>>2]|0)+(f<<2)>>2]|0;if(!b)break;d=b+-48|0;g=(c[(c[((c[b>>2]&3|0)==2?b:d)+40>>2]|0)+16>>2]|0)+292|0;h=c[g>>2]|0;c[g>>2]=h+-1;if((h|0)<2){IL(m,c[((c[b>>2]&3|0)==2?b:d)+40>>2]|0);a=c[i>>2]|0}f=f+1|0}j=j+1|0}a:do if((j|0)!=(c[46481]|0)){Pw(1,99530,k)|0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[a>>2]|0;if(!b)break a;d=b+16|0;a=c[d>>2]|0;if(c[a+292>>2]|0){k=ry(b)|0;a=c[(c[d>>2]|0)+292>>2]|0;c[n>>2]=k;c[n+4>>2]=a;Pw(3,99552,n)|0;a=c[d>>2]|0}a=a+164|0}}while(0);HL(m);l=o;return}function CH(){var b=0,d=0,e=0;b=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[b>>2]|0;if(!b)break;e=b+16|0;b=c[e>>2]|0;d=c[b+264>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+272>>2]|0;if(d){D_(d);b=c[e>>2]|0}a[b+157>>0]=0;b=b+164|0}return}function DH(){var a=0,b=0,d=0,e=0,f=0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){a=c[a>>2]|0;if(!a)break;a=c[a+16>>2]|0;c[a+280>>2]=0;a=a+164|0}f=uH(c[46481]<<2)|0;e=0;a=(c[(c[46484]|0)+16>>2]|0)+192|0;while(1){b=c[a>>2]|0;if(!b)break;d=b+16|0;a=c[d>>2]|0;if(!(c[a+280>>2]|0)){c[f+(e<<2)>>2]=QH(b)|0;b=e+1|0;a=c[d>>2]|0}else b=e;e=b;a=a+164|0}a=RH(f,e)|0;while(1){if((SH(a)|0)<=1)break;WH(a,c[(VH(UH(TH(a)|0)|0)|0)+8>>2]|0)}D_(a);a=0;while(1){if((a|0)>=(e|0))break;D_(c[f+(a<<2)>>2]|0);a=a+1|0}D_(f);if((c[46485]|0)==((c[46481]|0)+-1|0)){XH();return}else qa(99275,99305,523,99310)}function EH(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=c[46491]|0;f=c[46485]|0;j=c[46486]|0;k=c[46441]|0;b=0;a=0;g=i;while(1){if((g|0)>=(f|0)){h=8;break}e=c[j+(g<<2)>>2]|0;d=c[(c[e+16>>2]|0)+160>>2]|0;if((d|0)<0){if(!a)a=e;else a=(c[(c[a+16>>2]|0)+160>>2]|0)>(d|0)?e:a;b=b+1|0;if((b|0)>=(k|0))break}e=g+1|0;c[46491]=e;g=e}if((h|0)==8)if((i|0)>0){f=0;while(1){if((f|0)>=(i|0))break;d=c[j+(f<<2)>>2]|0;e=c[(c[d+16>>2]|0)+160>>2]|0;if((e|0)<0){if(!a)a=d;else a=(c[(c[a+16>>2]|0)+160>>2]|0)>(e|0)?d:a;b=b+1|0;if((b|0)>=(k|0))break}f=f+1|0}c[46491]=f}return a|0}function FH(a){a=a|0;var b=0,d=0;b=c[a>>2]&3;d=c[((b|0)==3?a:a+48|0)+40>>2]|0;a=c[((b|0)==2?a:a+-48|0)+40>>2]|0;b=(c[(c[d+16>>2]|0)+288>>2]|0)<(c[(c[a+16>>2]|0)+288>>2]|0);a=b?d:a;c[46487]=0;c[46488]=2147483647;d=c[a+16>>2]|0;c[46489]=c[d+284>>2];c[46490]=c[d+288>>2];if(b)PH(a);else OH(a);return c[46487]|0}function GH(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;g=c[b>>2]&3;m=b+-48|0;j=b+48|0;k=b+16|0;g=(c[(c[(c[((g|0)==2?b:m)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((g|0)==3?b:j)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[k>>2]|0)+170>>1]|0)|0;do if((g|0)>0){d=c[a>>2]&3;h=c[((d|0)==3?a:a+48|0)+40>>2]|0;i=c[h+16>>2]|0;if(((c[i+276>>2]|0)+(c[i+268>>2]|0)|0)==1){KH(h,g);break}d=c[((d|0)==2?a:a+-48|0)+40>>2]|0;f=c[d+16>>2]|0;if(((c[f+276>>2]|0)+(c[f+268>>2]|0)|0)==1){KH(d,0-g|0);break}if((c[i+288>>2]|0)<(c[f+288>>2]|0)){KH(h,g);break}else{KH(d,0-g|0);break}}while(0);d=a+16|0;f=c[(c[d>>2]|0)+160>>2]|0;g=c[b>>2]&3;g=LH(c[((g|0)==3?b:j)+40>>2]|0,c[((g|0)==2?b:m)+40>>2]|0,f,1)|0;i=c[b>>2]&3;if((LH(c[((i|0)==2?b:m)+40>>2]|0,c[((i|0)==3?b:j)+40>>2]|0,f,0)|0)==(g|0)){c[(c[k>>2]|0)+160>>2]=0-f;c[(c[d>>2]|0)+160>>2]=0;MH(a,b);n=c[g+16>>2]|0;NH(g,c[n+280>>2]|0,c[n+284>>2]|0)|0;l=o;return}else{Pw(1,99236,n)|0;bb(185768,1)}}function HH(){var b=0,d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;JH();m=uH((c[46483]<<2)+4|0)|0;d=c[46483]|0;b=0;while(1){if((b|0)>(d|0))break;c[m+(b<<2)>>2]=0;b=b+1|0}b=(c[(c[46484]|0)+16>>2]|0)+192|0;d=b;while(1){d=c[d>>2]|0;if(!d)break;d=c[d+16>>2]|0;if(!(a[d+156>>0]|0)){l=m+(c[d+232>>2]<<2)|0;c[l>>2]=(c[l>>2]|0)+1}d=d+164|0}while(1){b=c[b>>2]|0;if(!b)break;l=b+16|0;b=c[l>>2]|0;if(!(a[b+156>>0]|0)){h=c[46483]|0;f=c[b+172>>2]|0;k=0;j=0;d=0;while(1){g=c[f+(d<<2)>>2]|0;if(!g)break;n=c[g+16>>2]|0;i=(c[(c[(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)+(e[n+170>>1]|0)|0;k=(c[n+156>>2]|0)+k|0;j=(j|0)>(i|0)?j:i;d=d+1|0}g=c[b+180>>2]|0;i=0;d=0;while(1){f=c[g+(d<<2)>>2]|0;if(!f)break;o=c[f+16>>2]|0;n=(c[(c[(c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[o+170>>1]|0)|0;i=(c[o+156>>2]|0)+i|0;h=(h|0)<(n|0)?h:n;d=d+1|0}d=(j|0)>0?j:0;if((k|0)==(i|0)){g=d;f=d;while(1){d=f+1|0;if((f|0)>=(h|0))break;g=(c[m+(d<<2)>>2]|0)<(c[m+(g<<2)>>2]|0)?d:g;f=d}o=b+232|0;n=m+(c[o>>2]<<2)|0;c[n>>2]=(c[n>>2]|0)+-1;n=m+(g<<2)|0;c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=g}d=c[b+264>>2]|0;if(d){D_(d);b=c[l>>2]|0}d=c[b+272>>2]|0;if(d){D_(d);b=c[l>>2]|0}a[b+157>>0]=0}b=b+164|0}D_(m);return}function IH(){var a=0,b=0,d=0,f=0,g=0,h=0;b=0;while(1){if((b|0)>=(c[46485]|0))break;a=c[(c[46486]|0)+(b<<2)>>2]|0;do if(((c[(c[a+16>>2]|0)+160>>2]|0)==0?(d=FH(a)|0,d|0):0)?(f=c[d>>2]&3,f=(c[(c[(c[((f|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((f|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[d+16>>2]|0)+170>>1]|0)|0,(f|0)>=2):0){h=c[a>>2]&3;g=c[((h|0)==3?a:a+48|0)+40>>2]|0;a=c[((h|0)==2?a:a+-48|0)+40>>2]|0;if((c[(c[g+16>>2]|0)+288>>2]|0)<(c[(c[a+16>>2]|0)+288>>2]|0)){KH(g,f>>>1);break}else{KH(a,(f|0)/-2|0);break}}while(0);b=b+1|0}CH();return}function JH(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=0;c[h>>2]=2147483647;c[46483]=-2147483647;b=(c[(c[46484]|0)+16>>2]|0)+192|0;e=b;g=2147483647;f=-2147483647;while(1){d=c[e>>2]|0;if(!d)break;e=c[d+16>>2]|0;if(!(a[e+156>>0]|0)){j=c[e+232>>2]|0;d=(g|0)<(j|0)?g:j;c[h>>2]=d;f=(f|0)>(j|0)?f:j;c[46483]=f}else d=g;e=e+164|0;g=d}if(g|0){while(1){b=c[b>>2]|0;if(!b)break;b=c[b+16>>2]|0;j=b+232|0;c[j>>2]=(c[j>>2]|0)-g;b=b+164|0}c[46483]=f-g;c[h>>2]=0}l=i;return}function KH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+16|0;a=c[f>>2]|0;e=a+232|0;c[e>>2]=(c[e>>2]|0)-b;e=0;while(1){d=c[(c[a+272>>2]|0)+(e<<2)>>2]|0;if(!d){e=0;break}if((d|0)!=(c[a+280>>2]|0)){KH(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,b);a=c[f>>2]|0}e=e+1|0}while(1){d=c[(c[a+264>>2]|0)+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(c[a+280>>2]|0)){KH(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0,b);a=c[f>>2]|0}e=e+1|0}return}function LH(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=(e|0)==0&1;h=0-d|0;f=c[(c[b+16>>2]|0)+288>>2]|0;b=a;while(1){a=c[b+16>>2]|0;if((c[a+284>>2]|0)<=(f|0)?(f|0)<=(c[a+288>>2]|0):0)break;a=c[a+280>>2]|0;i=a+48|0;j=(c[a+16>>2]|0)+160|0;c[j>>2]=(((b|0)==(c[((c[a>>2]&3|0)==3?a:i)+40>>2]|0)?e:g)|0?d:h)+(c[j>>2]|0);j=c[a>>2]&3;i=c[((j|0)==3?a:i)+40>>2]|0;a=c[((j|0)==2?a:a+-48|0)+40>>2]|0;b=(c[(c[i+16>>2]|0)+288>>2]|0)>(c[(c[a+16>>2]|0)+288>>2]|0)?i:a}return b|0}function MH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+16|0;e=(c[i>>2]|0)+164|0;c[(c[b+16>>2]|0)+164>>2]=c[e>>2];c[(c[46486]|0)+(c[e>>2]<<2)>>2]=b;c[(c[i>>2]|0)+164>>2]=-1;i=(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16|0;e=c[i>>2]|0;g=e+276|0;f=c[g>>2]|0;j=f+-1|0;c[g>>2]=j;g=e+272|0;h=0;while(1){if((h|0)>=(f|0)){k=3;break}d=c[g>>2]|0;if((c[d+(h<<2)>>2]|0)==(a|0))break;h=h+1|0}if((k|0)==3)d=c[e+272>>2]|0;c[d+(h<<2)>>2]=c[d+(j<<2)>>2];c[(c[(c[i>>2]|0)+272>>2]|0)+(j<<2)>>2]=0;i=(c[((c[a>>2]&3|0)==2?a:a+-48|0)+40>>2]|0)+16|0;e=c[i>>2]|0;g=e+268|0;f=c[g>>2]|0;j=f+-1|0;c[g>>2]=j;g=e+264|0;h=0;while(1){if((h|0)>=(f|0)){k=8;break}d=c[g>>2]|0;if((c[d+(h<<2)>>2]|0)==(a|0))break;h=h+1|0}if((k|0)==8)d=c[e+264>>2]|0;c[d+(h<<2)>>2]=c[d+(j<<2)>>2];c[(c[(c[i>>2]|0)+264>>2]|0)+(j<<2)>>2]=0;k=(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)+16|0;a=c[k>>2]|0;j=c[a+272>>2]|0;a=a+276|0;i=c[a>>2]|0;c[a>>2]=i+1;c[j+(i<<2)>>2]=b;k=c[k>>2]|0;c[(c[k+272>>2]|0)+(c[k+276>>2]<<2)>>2]=0;k=(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)+16|0;i=c[k>>2]|0;j=c[i+264>>2]|0;i=i+268|0;a=c[i>>2]|0;c[i>>2]=a+1;c[j+(a<<2)>>2]=b;k=c[k>>2]|0;c[(c[k+264>>2]|0)+(c[k+268>>2]<<2)>>2]=0;return}function NH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+16|0;a=c[g>>2]|0;c[a+280>>2]=b;c[a+284>>2]=d;f=0;while(1){e=c[(c[a+272>>2]|0)+(f<<2)>>2]|0;if(!e){f=0;break}if((e|0)!=(b|0)){d=NH(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,e,d)|0;a=c[g>>2]|0}f=f+1|0}while(1){e=c[(c[a+264>>2]|0)+(f<<2)>>2]|0;if(!e)break;if((e|0)!=(b|0)){d=NH(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0,e,d)|0;a=c[g>>2]|0}f=f+1|0}c[a+288>>2]=d;return d+1|0}function OH(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0,j=0;i=a+16|0;g=0;while(1){a=c[i>>2]|0;d=c[(c[a+180>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;break}f=c[d+16>>2]|0;if((c[f+164>>2]|0)<0){a=c[d>>2]&3;b=c[(c[((a|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0;j=c[b+288>>2]|0;if((c[46489]|0)>(j|0)|(j|0)>(c[46490]|0)?(h=(c[b+232>>2]|0)-(c[(c[(c[((a|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[f+170>>1]|0)|0,(h|0)<(c[46488]|0)|(c[46487]|0)==0):0){c[46487]=d;c[46488]=h}}else{b=c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0))OH(b)}g=g+1|0}while(1){b=c[(c[a+264>>2]|0)+(d<<2)>>2]|0;if(!((b|0)!=0&(c[46488]|0)>0))break;b=c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0)){OH(b);a=c[i>>2]|0}d=d+1|0}return}function PH(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0,j=0;i=a+16|0;g=0;while(1){a=c[i>>2]|0;d=c[(c[a+172>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;break}f=c[d+16>>2]|0;if((c[f+164>>2]|0)<0){a=c[d>>2]&3;b=c[(c[((a|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0;j=c[b+288>>2]|0;if((c[46489]|0)>(j|0)|(j|0)>(c[46490]|0)?(h=(c[(c[(c[((a|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[b+232>>2]|0)-(e[f+170>>1]|0)|0,(h|0)<(c[46488]|0)|(c[46487]|0)==0):0){c[46487]=d;c[46488]=h}}else{b=c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0))PH(b)}g=g+1|0}while(1){b=c[(c[a+272>>2]|0)+(d<<2)>>2]|0;if(!((b|0)!=0&(c[46488]|0)>0))break;b=c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0;if((c[(c[b+16>>2]|0)+288>>2]|0)<(c[a+288>>2]|0)){PH(b);a=c[i>>2]|0}d=d+1|0}return}function QH(a){a=a|0;var b=0;b=uH(16)|0;c[b>>2]=a;c[b+4>>2]=eI(a,b)|0;c[b+12>>2]=b;return b|0}function RH(a,b){a=a|0;b=b|0;var d=0,e=0;e=uH(8)|0;c[e>>2]=a;c[e+4>>2]=b;d=0;while(1){if((d|0)>=(b|0))break;c[(c[a+(d<<2)>>2]|0)+8>>2]=d;d=d+1|0}d=(b|0)/2|0;while(1){if((d|0)<=-1)break;WH(e,d);d=d+-1|0}return e|0}function SH(a){a=a|0;return c[a+4>>2]|0}function TH(a){a=a|0;var b=0,d=0,e=0,f=0;f=c[a>>2]|0;b=c[f>>2]|0;c[b+8>>2]=-1;d=a+4|0;e=(c[d>>2]|0)+-1|0;c[f>>2]=c[f+(e<<2)>>2];f=c[a>>2]|0;c[(c[f>>2]|0)+8>>2]=0;c[f+(e<<2)>>2]=b;c[d>>2]=e;WH(a,0);return b|0}function UH(a){a=a|0;return dI(c[a>>2]|0,0,0)|0}function VH(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0;b=a+16|0;if((c[(c[b>>2]|0)+164>>2]|0)>-1)qa(99324,99305,463,99338);g=a+48|0;d=$H(c[((c[a>>2]&3|0)==3?a:g)+40>>2]|0)|0;i=a+-48|0;f=$H(c[((c[a>>2]&3|0)==2?a:i)+40>>2]|0)|0;h=c[a>>2]&3;b=(c[(c[(c[((h|0)==2?a:i)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((h|0)==3?a:g)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[b>>2]|0)+170>>1]|0)|0;if((c[d+8>>2]|0)==-1)aI(c[d>>2]|0,0,b);else aI(c[f>>2]|0,0,0-b|0);bI(a);return cI(d,f)|0}function WH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]|0;g=c[a+4>>2]|0;while(1){a=b<<1;f=a+2|0;a=a|1;if(!((a|0)<(g|0)?(c[(c[h+(a<<2)>>2]|0)+4>>2]|0)<(c[(c[h+(b<<2)>>2]|0)+4>>2]|0):0))a=b;if((f|0)>=(g|0))break;d=h+(f<<2)|0;e=c[d>>2]|0;if((f|0)==(b|0)?1:(c[e+4>>2]|0)>=(c[(c[h+(a<<2)>>2]|0)+4>>2]|0))break;i=h+(b<<2)|0;a=c[i>>2]|0;c[i>>2]=e;c[d>>2]=a;c[(c[i>>2]|0)+8>>2]=b;c[a+8>>2]=f;b=f}return}function XH(){NH(c[(c[(c[46484]|0)+16>>2]|0)+192>>2]|0,0,1)|0;YH(c[(c[(c[46484]|0)+16>>2]|0)+192>>2]|0,0);return}function YH(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+16|0;d=0;while(1){a=c[f>>2]|0;e=c[(c[a+272>>2]|0)+(d<<2)>>2]|0;if(!e){e=0;break}if((e|0)!=(b|0))YH(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,e);d=d+1|0}while(1){d=c[(c[a+264>>2]|0)+(e<<2)>>2]|0;if(!d)break;if((d|0)!=(b|0)){YH(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0,d);a=c[f>>2]|0}e=e+1|0}if(b|0)ZH(b);return}function ZH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=c[a>>2]&3;d=c[((b|0)==3?a:a+48|0)+40>>2]|0;e=c[d+16>>2]|0;if((c[e+280>>2]|0)==(a|0))i=1;else{e=c[((b|0)==2?a:a+-48|0)+40>>2]|0;i=-1;d=e;e=c[e+16>>2]|0}g=c[e+180>>2]|0;b=0;f=0;while(1){h=c[g+(f<<2)>>2]|0;if(!h)break;b=(_H(h,d,i)|0)+b|0;f=f+1|0}g=c[e+172>>2]|0;e=0;while(1){f=c[g+(e<<2)>>2]|0;if(!f)break;b=(_H(f,d,i)|0)+b|0;e=e+1|0}c[(c[a+16>>2]|0)+160>>2]=b;return}function _H(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=c[a>>2]&3;i=(h|0)==3?a:a+48|0;e=c[i+40>>2]|0;if((e|0)==(b|0))e=c[((h|0)==2?a:a+-48|0)+40>>2]|0;g=c[b+16>>2]|0;f=c[(c[e+16>>2]|0)+288>>2]|0;if((c[g+284>>2]|0)<=(f|0)?(f|0)<=(c[g+288>>2]|0):0){f=c[a+16>>2]|0;if((c[f+164>>2]|0)>-1)e=c[f+160>>2]|0;else e=0;g=1;e=e-(c[f+156>>2]|0)|0}else{g=0;e=c[(c[a+16>>2]|0)+156>>2]|0}i=(c[((d|0)>0?((h|0)==2?a:a+-48|0):i)+40>>2]|0)==(b|0)?1:-1;return (((g?i:0-i|0)|0)<0?0-e|0:e)|0}function $H(a){a=a|0;var b=0,d=0;a=c[(c[a+16>>2]|0)+280>>2]|0;while(1){b=a+12|0;d=c[b>>2]|0;if(!((d|0)!=(a|0)&(d|0)!=0))break;a=c[d+12>>2]|0;if(!a){a=d;continue}c[b>>2]=a}return a|0}function aI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=a+16|0;e=c[h>>2]|0;g=e+232|0;c[g>>2]=(c[g>>2]|0)+d;g=0;while(1){f=c[(c[e+264>>2]|0)+(g<<2)>>2]|0;if(!f){g=0;break}f=c[((c[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0;if((f|0)!=(b|0)){aI(f,a,d);e=c[h>>2]|0}g=g+1|0}while(1){f=c[(c[e+272>>2]|0)+(g<<2)>>2]|0;if(!f)break;f=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((f|0)!=(b|0)){aI(f,a,d);e=c[h>>2]|0}g=g+1|0}return}function bI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;d=(c[b+16>>2]|0)+164|0;if((c[d>>2]|0)>-1){Pw(1,99427,h)|0;bb(185768,1)}g=c[46485]|0;c[d>>2]=g;d=c[46486]|0;c[46485]=g+1;c[d+(g<<2)>>2]=b;d=c[b>>2]|0;g=b+48|0;e=c[((d&3|0)==3?b:g)+40>>2]|0;if(!(a[(c[e+16>>2]|0)+157>>0]|0)){f=c[46492]|0;d=c[46493]|0;c[46493]=d+1;c[f+(d<<2)>>2]=e;d=c[b>>2]|0}f=b+-48|0;e=c[((d&3|0)==2?b:f)+40>>2]|0;if(!(a[(c[e+16>>2]|0)+157>>0]|0)){i=c[46492]|0;d=c[46493]|0;c[46493]=d+1;c[i+(d<<2)>>2]=e;d=c[b>>2]|0}i=(c[((d&3|0)==3?b:g)+40>>2]|0)+16|0;d=c[i>>2]|0;a[d+157>>0]=1;e=c[d+272>>2]|0;d=d+276|0;g=c[d>>2]|0;c[d>>2]=g+1;c[e+(g<<2)>>2]=b;g=c[i>>2]|0;c[(c[g+272>>2]|0)+(c[g+276>>2]<<2)>>2]=0;i=c[i>>2]|0;if(!(c[(c[i+180>>2]|0)+((c[i+276>>2]|0)+-1<<2)>>2]|0)){Pw(1,99461,h+8|0)|0;bb(185768,1)}i=(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)+16|0;e=c[i>>2]|0;a[e+157>>0]=1;f=c[e+264>>2]|0;e=e+268|0;g=c[e>>2]|0;c[e>>2]=g+1;c[f+(g<<2)>>2]=b;b=c[i>>2]|0;c[(c[b+264>>2]|0)+(c[b+268>>2]<<2)>>2]=0;i=c[i>>2]|0;if(!(c[(c[i+172>>2]|0)+((c[i+268>>2]|0)+-1<<2)>>2]|0)){Pw(1,99496,h+16|0)|0;bb(185768,1)}else{l=h;return}}function cI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;while(1){g=a+12|0;d=c[g>>2]|0;if((d|0)==0|(d|0)==(a|0))break;else a=d}while(1){f=b+12|0;d=c[f>>2]|0;if((d|0)==0|(d|0)==(b|0))break;else b=d}if((a|0)!=(b|0)){e=c[a+8>>2]|0;d=c[b+8>>2]|0;do if((e|0)>-1)if((d|0)==-1)h=a;else j=10;else if((d|0)>-1)if((e|0)==-1){h=b;break}else{j=10;break}else qa(99350,99305,327,99397);while(0);if((j|0)==10)h=(c[b+4>>2]|0)<(c[a+4>>2]|0)?a:b;c[f>>2]=h;c[g>>2]=h;c[h+4>>2]=(c[b+4>>2]|0)+(c[a+4>>2]|0);if((c[h+8>>2]|0)>-1)i=h;else qa(99408,99305,335,99397)}else i=a;return i|0}function dI(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=$H(a)|0;if(d){k=c[d>>2]&3;if(((c[(c[(c[((k|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((k|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)!=(e[(c[d+16>>2]|0)+170>>1]|0|0))f=3}else{d=0;f=3}a:do if((f|0)==3){k=a+16|0;j=0;while(1){f=c[k>>2]|0;i=c[(c[f+180>>2]|0)+(j<<2)>>2]|0;if(!i){j=0;break}f=i+16|0;g=i+-48|0;h=c[((c[i>>2]&3|0)==2?i:g)+40>>2]|0;do if((c[(c[f>>2]|0)+164>>2]|0)>-1){if((h|0)!=(b|0))d=dI(h,a,d)|0}else if(($H(h)|0)!=(l|0)){if(d|0?(m=c[i>>2]&3,h=c[d>>2]&3,((c[(c[(c[((m|0)==2?i:g)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((m|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[f>>2]|0)+170>>1]|0)|0)>=((c[(c[(c[((h|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((h|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[d+16>>2]|0)+170>>1]|0)|0)):0)break;d=i}while(0);j=j+1|0}while(1){f=c[(c[f+172>>2]|0)+(j<<2)>>2]|0;if(!f)break a;g=f+16|0;h=f+48|0;i=c[((c[f>>2]&3|0)==3?f:h)+40>>2]|0;do if((c[(c[g>>2]|0)+164>>2]|0)>-1){if((i|0)!=(b|0))d=dI(i,a,d)|0}else if(($H(i)|0)!=(l|0)){if(d|0?(i=c[f>>2]&3,m=c[d>>2]&3,((c[(c[(c[((i|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((i|0)==3?f:h)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[g>>2]|0)+170>>1]|0)|0)>=((c[(c[(c[((m|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[(c[(c[((m|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(e[(c[d+16>>2]|0)+170>>1]|0)|0)):0)break;d=f}while(0);j=j+1|0;f=c[k>>2]|0}}while(0);return d|0}function eI(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;d=c[l>>2]|0;c[d+280>>2]=b;a=1;h=0;while(1){g=c[(c[d+172>>2]|0)+(h<<2)>>2]|0;if(!g){h=0;break}f=c[g+16>>2]|0;if(((c[f+164>>2]|0)<=-1?(i=c[g>>2]&3,j=g+48|0,k=c[(c[((i|0)==3?g:j)+40>>2]|0)+16>>2]|0,(c[k+280>>2]|0)==0):0)?((c[(c[(c[((i|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(c[k+232>>2]|0)|0)==(e[f+170>>1]|0|0):0){bI(g);a=(eI(c[((c[g>>2]&3|0)==3?g:j)+40>>2]|0,b)|0)+a|0;d=c[l>>2]|0}h=h+1|0}while(1){f=c[(c[d+180>>2]|0)+(h<<2)>>2]|0;if(!f)break;g=c[f+16>>2]|0;if(((c[g+164>>2]|0)<=-1?(m=c[f>>2]&3,n=f+-48|0,o=c[(c[((m|0)==2?f:n)+40>>2]|0)+16>>2]|0,(c[o+280>>2]|0)==0):0)?((c[o+232>>2]|0)-(c[(c[(c[((m|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)==(e[g+170>>1]|0|0):0){bI(f);a=(eI(c[((c[f>>2]&3|0)==2?f:n)+40>>2]|0,b)|0)+a|0;d=c[l>>2]|0}h=h+1|0}return a|0}function fI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=xx(a,99560)|0;if(!d)d=30;else d=a2(d)|0;return yH(a,b,c,d)|0}function gI(a){a=+a;return +((c[46369]|0)==0?a:+h[22916]-a)}function hI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0;r=l;l=l+16|0;q=r;c[46494]=c[(c[(c[d+64>>2]|0)+8>>2]|0)+4>>2];iI(d);i=c[d+16>>2]|0;t=+h[i+32>>3];s=+h[i+40>>3];jI(e,99571,+h[b+352>>3]);jI(e,99578,t*.013888888888888888);jI(e,99578,s*.013888888888888888);kI(e);i=Sy(d)|0;while(1){if(!i)break;g=i+16|0;if(!(a[(c[g>>2]|0)+118>>0]|0)){lI(e,99580,JA(ry(i)|0)|0);p=(c[g>>2]|0)+16|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];mI(e,q);if(!(a[(c[(c[g>>2]|0)+104>>2]|0)+82>>0]|0)){b=ez(i)|0;b=nI(b,c[c[(c[g>>2]|0)+104>>2]>>2]|0)|0}else b=JA(yx(i,c[46384]|0)|0)|0;jI(e,99578,+h[(c[g>>2]|0)+32>>3]);jI(e,99578,+h[(c[g>>2]|0)+40>>3]);lI(e,99578,b);lI(e,99578,OL(i,c[46387]|0,108041)|0);lI(e,99578,c[c[(c[g>>2]|0)+8>>2]>>2]|0);lI(e,99578,OL(i,c[46378]|0,134232)|0);b=OL(i,c[46379]|0,191979)|0;if(!(a[b>>0]|0))b=OL(i,c[46378]|0,131718)|0;lI(e,99578,b);kI(e)}i=Ty(d,i)|0}o=f<<24>>24==0;n=Sy(d)|0;while(1){if(!n)break;m=Ex(d,n)|0;while(1){if(!m)break;if(o){f=191979;j=191979}else{j=xx(m,108373)|0;f=xx(m,108382)|0;f=f|0?f:191979;j=j|0?j:191979}p=m+16|0;b=c[p>>2]|0;k=c[b+8>>2]|0;a:do if(k){i=c[k+4>>2]|0;b=0;g=0;while(1){if((b|0)>=(i|0))break;u=(c[(c[k>>2]|0)+(b*48|0)+4>>2]|0)+g|0;b=b+1|0;g=u}lI(e,0,108368);oI(e,c[((c[m>>2]&3|0)==3?m:m+48|0)+40>>2]|0,j);oI(e,c[((c[m>>2]&3|0)==2?m:m+-48|0)+40>>2]|0,f);pI(e,g);f=0;while(1){b=c[p>>2]|0;g=c[b+8>>2]|0;if((f|0)>=(c[g+4>>2]|0))break a;i=c[g>>2]|0;g=c[i+(f*48|0)>>2]|0;i=c[i+(f*48|0)+4>>2]|0;b=0;while(1){if((b|0)>=(i|0))break;u=g+(b<<4)|0;c[q>>2]=c[u>>2];c[q+4>>2]=c[u+4>>2];c[q+8>>2]=c[u+8>>2];c[q+12>>2]=c[u+12>>2];mI(e,q);b=b+1|0}f=f+1|0}}while(0);if(c[b+96>>2]|0){u=ez(c[((c[m>>2]&3|0)==3?m:m+48|0)+40>>2]|0)|0;lI(e,99578,nI(u,c[c[(c[p>>2]|0)+96>>2]>>2]|0)|0);u=(c[(c[p>>2]|0)+96>>2]|0)+56|0;c[q>>2]=c[u>>2];c[q+4>>2]=c[u+4>>2];c[q+8>>2]=c[u+8>>2];c[q+12>>2]=c[u+12>>2];mI(e,q)}lI(e,99578,OL(m,c[46415]|0,108041)|0);lI(e,99578,OL(m,c[46406]|0,134232)|0);kI(e);m=Gx(d,m)|0}n=Ty(d,n)|0}qI(99586,e);l=r;return}function iI(a){a=a|0;var b=0.0;if(c[46369]|0){a=c[a+16>>2]|0;b=+h[a+24>>3]+ +h[a+40>>3];h[22916]=b;h[22917]=b*.013888888888888888}return}function jI(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,f=0;f=l;l=l+1040|0;e=f;d=f+8|0;if(b|0)qI(b,a);h[e>>3]=c;Y0(d,99592,e)|0;qI(d,a);l=f;return}function kI(b){b=b|0;a[191875]=10;lb[c[46494]&127](b,191875)|0;return}function lI(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)qI(b,a);qI(c,a);return}function mI(a,b){a=a|0;b=b|0;var d=0.0;jI(a,99578,+h[b>>3]*.013888888888888888);if(!(c[46369]|0))d=+h[b+8>>3];else d=+h[22916]-+h[b+8>>3];jI(a,99578,d*.013888888888888888);return}function nI(a,b){a=a|0;b=b|0;var c=0;c=Oz(a,b)|0;b=JA(c)|0;Qz(a,c)|0;return b|0}function oI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!(a[(c[d+16>>2]|0)+118>>0]|0))d=JA(ry(d)|0)|0;else{f=ez(d)|0;d=nI(f,(A$(ry(d)|0,58)|0)+1|0)|0}lI(b,99578,d);if(e|0?a[e>>0]|0:0)lI(b,104958,JA(e)|0);return}function pI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+1040|0;f=d;e=d+8|0;qI(99578,a);c[f>>2]=b;Y0(e,134313,f)|0;qI(e,a);l=d;return}function qI(a,b){a=a|0;b=b|0;lb[c[46494]&127](b,a)|0;return}function rI(d,f,g){d=d|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0.0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,G=0,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;Y=l;l=l+2288|0;W=Y+208|0;V=Y+192|0;U=Y+176|0;T=Y+160|0;S=Y+144|0;R=Y+128|0;P=Y+112|0;O=Y+96|0;N=Y+80|0;M=Y+64|0;L=Y+56|0;K=Y+48|0;X=Y+32|0;Q=Y+24|0;J=Y;G=Y+1264|0;H=Y+224|0;I=d+16|0;C=(e[(c[I>>2]|0)+178>>1]|0)>2;CG(1);iI(d);Tw(H,1024,Y+240|0);LM(d,1,99597,191979)|0;LM(d,1,99601,191979)|0;c[46376]=LM(d,1,138034,191979)|0;c[46375]=LM(d,1,137966,191979)|0;LM(d,2,99597,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0;if(i&16){LM(d,1,99607,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&1){LM(d,2,99611,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&32){LM(d,2,99607,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&2){LM(d,2,99614,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(i&4){LM(d,2,99622,191979)|0;i=a[(c[I>>2]|0)+113>>0]|0}if(!(i&8)){v=0;w=0;x=0}else{x=LM(d,0,99611,191979)|0;w=LM(d,0,99630,191979)|0;v=LM(d,0,99637,191979)|0}z=LM(d,0,99645,191979)|0;A=H+4|0;B=H+8|0;u=0;i=0;y=Sy(d)|0;while(1){if(!y)break;t=y+16|0;k=c[t>>2]|0;o=+h[k+16>>3];j=(c[46369]|0)==0;if(C){if(j)m=+h[k+24>>3];else m=+h[22916]-+h[k+24>>3];q=+h[(c[k+132>>2]|0)+16>>3]*72.0;h[J>>3]=o;h[J+8>>3]=m;h[J+16>>3]=q;Y0(G,99648,J)|0;Ww(H,G)|0;j=3;while(1){if((j|0)>=(e[(c[I>>2]|0)+178>>1]|0))break;h[Q>>3]=+h[(c[(c[t>>2]|0)+132>>2]|0)+(j<<3)>>3]*72.0;Y0(G,99663,Q)|0;Ww(H,G)|0;j=j+1|0}j=c[A>>2]|0;if(j>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;j=c[A>>2]|0}a[j>>0]=0;s=c[H>>2]|0;c[A>>2]=s;zx(y,99597,s)|0;s=y}else{if(j)m=+h[k+24>>3];else m=+h[22916]-+h[k+24>>3];h[X>>3]=o;h[X+8>>3]=m;Y0(G,99669,X)|0;zx(y,99597,G)|0;s=y}h[K>>3]=+h[(c[t>>2]|0)+80>>3]*.013888888888888888;Y0(G,99592,K)|0;rx(s,c[46375]|0,G)|0;j=c[t>>2]|0;h[L>>3]=(+h[j+96>>3]+ +h[j+88>>3])*.013888888888888888;Y0(G,99592,L)|0;rx(s,c[46376]|0,G)|0;j=c[t>>2]|0;k=c[j+108>>2]|0;if((k|0)!=0?(a[k+81>>0]|0)!=0:0){q=+h[k+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[M>>3]=+h[k+56>>3];h[M+8>>3]=q;Y0(G,99669,M)|0;zx(s,99607,G)|0;j=c[t>>2]|0}if(b$(c[c[j+8>>2]>>2]|0,103194)|0){if(c[46400]|0?(UJ(y)|0)<<24>>24:0){k=c[(c[t>>2]|0)+12>>2]|0;r=k+8|0;j=c[r>>2]|0;if((j|0)<3){j=xx(s,99679)|0;if(!j)j=8;else j=a2(j)|0;j=(j|0)<3?8:j}p=k+44|0;q=1.0/+(j|0);n=0;while(1){if((n|0)>=(j|0))break;if((n|0)>0){k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}c[A>>2]=k+1;a[k>>0]=32}if((c[r>>2]|0)>2){k=c[p>>2]|0;if(!(c[46369]|0))m=+h[k+(n<<4)+8>>3]*.013888888888888888;else m=+h[22917]-+h[k+(n<<4)+8>>3]*.013888888888888888;h[N>>3]=+h[k+(n<<4)>>3]*.013888888888888888;h[N+8>>3]=m;Y0(G,99692,N)|0}else{k=c[t>>2]|0;m=q*+(n|0)*6.283185307179586;o=+h[k+32>>3]*.5*+E(+m);if(!(c[46369]|0))m=+h[k+40>>3]*.5*+F(+m);else m=+h[22917]-+h[k+40>>3]*.5*+F(+m);h[O>>3]=o;h[O+8>>3]=m;Y0(G,99692,O)|0}Ww(H,G)|0;n=n+1|0}k=c[46400]|0;j=c[A>>2]|0;if(j>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;j=c[A>>2]|0}a[j>>0]=0;t=c[H>>2]|0;c[A>>2]=t;rx(s,k,t)|0}}else{sI(y,c[j+12>>2]|0,H);Yw(H)|0;j=c[A>>2]|0;if(j>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;j=c[A>>2]|0}a[j>>0]=0;t=c[H>>2]|0;c[A>>2]=t;zx(s,99601,t)|0}a:do if((c[46367]|0)>0){t=Ex(d,y)|0;j=u;while(1){if(!t)break a;s=t+16|0;k=c[s>>2]|0;do if((a[k+112>>0]|0)!=6?(D=c[k+8>>2]|0,(D|0)!=0):0){r=0;k=D;while(1){if((r|0)>=(c[k+4>>2]|0))break;if((r|0)>0){k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}c[A>>2]=k+1;a[k>>0]=59;k=c[(c[s>>2]|0)+8>>2]|0}k=c[k>>2]|0;if(c[k+(r*48|0)+8>>2]|0){if(!(c[46369]|0))m=+h[k+(r*48|0)+24>>3];else m=+h[22916]-+h[k+(r*48|0)+24>>3];h[P>>3]=+h[k+(r*48|0)+16>>3];h[P+8>>3]=m;Y0(G,99702,P)|0;Ww(H,G)|0;i=1;k=c[c[(c[s>>2]|0)+8>>2]>>2]|0}if(c[k+(r*48|0)+12>>2]|0){if(!(c[46369]|0))m=+h[k+(r*48|0)+40>>3];else m=+h[22916]-+h[k+(r*48|0)+40>>3];h[R>>3]=+h[k+(r*48|0)+32>>3];h[R+8>>3]=m;Y0(G,99715,R)|0;Ww(H,G)|0;j=1}p=0;while(1){k=c[(c[s>>2]|0)+8>>2]|0;n=c[k>>2]|0;if((p|0)>=(c[n+(r*48|0)+4>>2]|0))break;if((p|0)>0){k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}c[A>>2]=k+1;a[k>>0]=32;k=c[c[(c[s>>2]|0)+8>>2]>>2]|0}else k=n;u=c[k+(r*48|0)>>2]|0;q=+h[u+(p<<4)+8>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[S>>3]=+h[u+(p<<4)>>3];h[S+8>>3]=q;Y0(G,99669,S)|0;Ww(H,G)|0;p=p+1|0}r=r+1|0}k=c[A>>2]|0;if(k>>>0>=(c[B>>2]|0)>>>0){Uw(H,1)|0;k=c[A>>2]|0}a[k>>0]=0;k=c[H>>2]|0;c[A>>2]=k;zx(t,99597,k)|0;k=c[s>>2]|0;n=c[k+96>>2]|0;if(n){q=+h[n+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[T>>3]=+h[n+56>>3];h[T+8>>3]=q;Y0(G,99669,T)|0;zx(t,99611,G)|0;k=c[s>>2]|0}n=c[k+108>>2]|0;do if(n){if(!(a[n+81>>0]|0))break;q=+h[n+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[U>>3]=+h[n+56>>3];h[U+8>>3]=q;Y0(G,99669,U)|0;zx(t,99607,G)|0;k=c[s>>2]|0}while(0);n=c[k+100>>2]|0;if(n){q=+h[n+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[V>>3]=+h[n+56>>3];h[V+8>>3]=q;Y0(G,99669,V)|0;zx(t,99614,G)|0;k=c[s>>2]|0}k=c[k+104>>2]|0;if(!k)break;q=+h[k+64>>3];q=(c[46369]|0)==0?q:+h[22916]-q;h[W>>3]=+h[k+56>>3];h[W+8>>3]=q;Y0(G,99669,W)|0;zx(t,99622,G)|0}while(0);t=Gx(d,t)|0}}else j=u;while(0);u=j;y=Ty(d,y)|0}tI(d,z,x,w,v);Xw(H);if(b[(c[I>>2]|0)+136>>1]&1)FM(d);c[f>>2]=i;c[g>>2]=u;CG(0);l=Y;return}function sI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+1056|0;k=n;j=n+32|0;m=b+48|0;if(!(c[m>>2]|0)){e=c[a+16>>2]|0;i=+h[e+16>>3];if(!(c[46369]|0)){g=+h[e+24>>3];f=g+ +h[b+24>>3];g=g+ +h[b+40>>3]}else{g=+h[e+24>>3];f=+h[22916]-+h[b+24>>3]-g;g=+h[22916]-+h[b+40>>3]-g}o=i+ +h[b+32>>3];h[k>>3]=i+ +h[b+16>>3];h[k+8>>3]=f;h[k+16>>3]=o;h[k+24>>3]=g;Y0(j,99753,k)|0;Ww(d,j)|0}b=b+56|0;e=0;while(1){if((e|0)>=(c[m>>2]|0))break;sI(a,c[(c[b>>2]|0)+(e<<2)>>2]|0,d);e=e+1|0}l=n;return}function tI(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+1088|0;o=s+56|0;q=s+48|0;p=s+32|0;j=s;n=s+64|0;r=b+16|0;i=c[r>>2]|0;if(!(c[46369]|0)){k=+h[i+24>>3];m=+h[i+40>>3]}else{m=+h[22916];k=m-+h[i+24>>3];m=m-+h[i+40>>3]}t=+h[i+32>>3];h[j>>3]=+h[i+16>>3];h[j+8>>3]=k;h[j+16>>3]=t;h[j+24>>3]=m;Y0(n,99728,j)|0;rx(b,d,n)|0;i=c[(c[r>>2]|0)+12>>2]|0;if((i|0)!=0?(a[c[i>>2]>>0]|0)!=0:0){t=+h[i+64>>3];t=(c[46369]|0)==0?t:+h[22916]-t;h[p>>3]=+h[i+56>>3];h[p+8>>3]=t;Y0(n,99669,p)|0;rx(b,e,n)|0;i=c[(c[r>>2]|0)+12>>2]|0;t=+h[i+32>>3];h[q>>3]=+h[i+24>>3]*.013888888888888888;Y0(n,99748,q)|0;rx(b,f,n)|0;h[o>>3]=t*.013888888888888888;Y0(n,99748,o)|0;rx(b,g,n)|0;i=1}else i=1;while(1){j=c[r>>2]|0;if((i|0)>(c[j+180>>2]|0))break;tI(c[(c[j+184>>2]|0)+(i<<2)>>2]|0,d,e,f,g);i=i+1|0}l=s;return}function uI(a){a=a|0;var b=0;b=l;l=l+16|0;rI(a,b,b+4|0);l=b;return}function vI(){return Cw(20636,c[4555]|0)|0}function wI(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function xI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if((a|0)<=(e|0))if((a|0)<(e|0))a=-1;else{b=c[b+4>>2]|0;d=c[d+4>>2]|0;return ((b|0)>(d|0)?1:((b|0)<(d|0))<<31>>31)|0}else a=1;return a|0}function yI(a){a=a|0;yw(a)|0;return}function zI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];b=AI(e)|0;if((nb[c[a>>2]&63](a,b,1)|0)!=(b|0))D_(b);l=d;return}function AI(a){a=a|0;var b=0,d=0,e=0;b=uH(16)|0;e=a;d=c[e+4>>2]|0;a=b+8|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;return b|0}function BI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+8|0;g=e;c[g>>2]=b;c[g+4>>2]=d;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];b=AI(f)|0;if((nb[c[a>>2]&63](a,b,1)|0)!=(b|0))D_(b);l=e;return}function CI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+16|0;e=d;g=b;f=c[g+4>>2]|0;b=e+8|0;c[b>>2]=c[g>>2];c[b+4>>2]=f;b=(nb[c[a>>2]&63](a,e,4)|0)!=0&1;l=d;return b|0}function DI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f+8>>2]=b;c[f+12>>2]=d;d=(nb[c[a>>2]&63](a,f,4)|0)!=0&1;l=e;return d|0}function EI(a){a=a|0;return Ew(a)|0}function FI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=uH((Ew(a)|0)<<3)|0;b=d;a=Aw(a)|0;while(1){if(!a)break;g=a+8|0;f=c[g+4>>2]|0;e=b;c[e>>2]=c[g>>2];c[e+4>>2]=f;b=b+8|0;a=c[a>>2]|0}return d|0}function GI(){var a=0,b=0,d=0,e=0;a=vH(40)|0;b=a;d=20672;e=b+36|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0));c[a+36>>2]=0;return Cw(a,c[4555]|0)|0}function HI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;d=d+36|0;a=c[d>>2]|0;if(!a)a=vH(20)|0;else c[d>>2]=c[a>>2];f=b+8|0;e=c[f+4>>2]|0;d=a+8|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+16>>2]=c[b+16>>2];return a|0}function II(a,b,d){a=a|0;b=b|0;d=d|0;d=d+36|0;c[b>>2]=c[d>>2];c[d>>2]=b;return}function JI(a){a=a|0;nb[c[a>>2]&63](a,0,64)|0;return}function KI(a){a=a|0;var b=0,d=0;b=c[a+4>>2]|0;yw(a)|0;a=c[b+36>>2]|0;while(1){if(!a)break;d=c[a>>2]|0;D_(a);a=d}D_(b);return}function LI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+32|0;g=f;c[g+8>>2]=b;c[g+12>>2]=d;c[g+16>>2]=e;e=c[(nb[c[a>>2]&63](a,g,1)|0)+16>>2]|0;l=f;return e|0}function MI(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+160|0;q=t+144|0;d=t+48|0;j=t+128|0;k=t+112|0;m=t+96|0;n=t+80|0;o=t+32|0;p=t+16|0;r=t;s=a+16|0;a=c[s>>2]|0;e=+h[a+16>>3];f=+h[a+24>>3];g=+h[a+32>>3];i=+h[a+40>>3];if((b+-1|0)>>>0<2){NI(j,e,i);c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[q+12>>2]=c[j+12>>2];OI(d,q);p=d+16|0;NI(k,g,f);c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];c[q+8>>2]=c[k+8>>2];c[q+12>>2]=c[k+12>>2];OI(m,q);c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2]}else{NI(n,e,f);c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];OI(d,q);n=d+16|0;NI(o,g,i);c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[q+12>>2]=c[o+12>>2];OI(p,q);c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2]}a=(c[s>>2]|0)+16|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c[d+16>>2];c[a+20>>2]=c[d+20>>2];c[a+24>>2]=c[d+24>>2];c[a+28>>2]=c[d+28>>2];a=c[(c[s>>2]|0)+12>>2]|0;if(!a)a=1;else{a=a+56|0;c[q>>2]=c[a>>2];c[q+4>>2]=c[a+4>>2];c[q+8>>2]=c[a+8>>2];c[q+12>>2]=c[a+12>>2];OI(r,q);c[a>>2]=c[r>>2];c[a+4>>2]=c[r+4>>2];c[a+8>>2]=c[r+8>>2];c[a+12>>2]=c[r+12>>2];a=1}while(1){d=c[s>>2]|0;if((a|0)>(c[d+180>>2]|0))break;MI(c[(c[d+184>>2]|0)+(a<<2)>>2]|0,b);a=a+1|0}l=t;return}function NI(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function OI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;g=d+16|0;e=d;f=(c[46495]|0)*90|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];ZG(e,g,f);c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];h[b>>3]=+h[b>>3]-+h[22918];e=b+8|0;h[e>>3]=+h[e>>3]-+h[22919];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function PI(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+1168|0;s=w+144|0;v=w+96|0;u=w+64|0;t=w+48|0;o=w+32|0;p=w+16|0;q=w;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;r=b+16|0;m=c[(c[r>>2]|0)+116>>2]|0;c[46495]=m&3;m=m&1;a[191877]=m;if(!(m<<24>>24))RI(b);else QI(b);SI(b);m=c[r>>2]|0;e=c[m+12>>2]|0;do if(e|0?(a[e+81>>0]|0)==0:0){g=e+24|0;c[t>>2]=c[g>>2];c[t+4>>2]=c[g+4>>2];c[t+8>>2]=c[g+8>>2];c[t+12>>2]=c[g+12>>2];n=+h[t>>3]+16.0;h[t>>3]=n;g=t+8|0;f=+h[g>>3]+8.0;h[g>>3]=f;g=(a[m+275>>0]&1)!=0;if(a[191877]|0){if(g){i=m+32|0;h[i>>3]=+h[i>>3]+f}else{i=m+16|0;h[i>>3]=+h[i>>3]-f}g=m+40|0;f=+h[g>>3];i=m+24|0;j=+h[i>>3];k=f-j;if(!(n>k))break;n=(n-k)*.5;h[i>>3]=j-n;h[g>>3]=f+n;break}i=(c[46495]|0)==0;do if(g)if(i){i=m+40|0;h[i>>3]=+h[i>>3]+f;break}else{i=m+24|0;h[i>>3]=+h[i>>3]-f;break}else if(i){i=m+24|0;h[i>>3]=+h[i>>3]-f;break}else{i=m+40|0;h[i>>3]=+h[i>>3]+f;break}while(0);g=m+32|0;f=+h[g>>3];i=m+16|0;j=+h[i>>3];k=f-j;if(n>k){n=(n-k)*.5;h[i>>3]=j-n;h[g>>3]=f+n}}while(0);if(d){switch(c[46495]|0){case 0:{q=m+16|0;c[45836]=c[q>>2];c[45837]=c[q+4>>2];c[45838]=c[q+8>>2];c[45839]=c[q+12>>2];break}case 1:{NI(o,-+h[m+40>>3],+h[m+16>>3]);c[45836]=c[o>>2];c[45837]=c[o+4>>2];c[45838]=c[o+8>>2];c[45839]=c[o+12>>2];break}case 2:{NI(p,+h[m+16>>3],-+h[m+40>>3]);c[45836]=c[p>>2];c[45837]=c[p+4>>2];c[45838]=c[p+8>>2];c[45839]=c[p+12>>2];break}case 3:{NI(q,+h[m+24>>3],+h[m+16>>3]);c[45836]=c[q>>2];c[45837]=c[q+4>>2];c[45838]=c[q+8>>2];c[45839]=c[q+12>>2];break}default:{}}TI(b);e=c[(c[r>>2]|0)+12>>2]|0}if(e|0?(a[e+81>>0]|0)==0:0){c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];c[s+12>>2]=c[t+12>>2];UI(b,s)}if(!0){l=w;return}if(!(a[191877]|0)){n=+h[22919];k=+h[22918];h[v>>3]=n;h[v+8>>3]=k;h[v+16>>3]=n;h[v+24>>3]=k;h[v+32>>3]=-k;h[v+40>>3]=-n;Y0(s,99989,v)|0}else{k=+h[22918];n=+h[22919];h[u>>3]=k;h[u+8>>3]=n;h[u+16>>3]=k;h[u+24>>3]=n;Y0(s,99774,u)|0}n1(s)|0;ab()}function QI(b){b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0;j=b+16|0;if(((fz(b)|0)!=(b|0)?(g=c[j>>2]|0,i=c[g+12>>2]|0,(i|0)!=0):0)?(a[i+81>>0]|0)==0:0){d=a[g+275>>0]|0;if(!(d&1)){f=+h[g+16>>3]+ +h[g+96>>3]*.5;b=g+104|0}else{f=+h[g+32>>3]-+h[g+64>>3]*.5;b=g+72|0}e=+h[b>>3];b=d<<24>>24;do if(!(b&4))if(!(b&2)){e=(+h[g+40>>3]+ +h[g+24>>3])*.5;break}else{e=+h[g+40>>3]-e*.5;break}else e=+h[g+24>>3]+e*.5;while(0);h[i+56>>3]=f;h[i+64>>3]=e;a[(c[(c[j>>2]|0)+12>>2]|0)+81>>0]=1;b=1}else b=1;while(1){d=c[j>>2]|0;if((b|0)>(c[d+180>>2]|0))break;QI(c[(c[d+184>>2]|0)+(b<<2)>>2]|0);b=b+1|0}return}function RI(b){b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0;k=b+16|0;if(((fz(b)|0)!=(b|0)?(i=c[k>>2]|0,j=c[i+12>>2]|0,(j|0)!=0):0)?(a[j+81>>0]|0)==0:0){d=a[i+275>>0]|0;if(!(d&1)){g=+h[i+24>>3]+ +h[i+56>>3]*.5;b=i+48|0}else{g=+h[i+40>>3]-+h[i+88>>3]*.5;b=i+80|0}f=+h[b>>3];b=d<<24>>24;do if(!(b&4)){e=+h[i+16>>3];if(!(b&2)){e=(+h[i+32>>3]+e)*.5;break}else{e=e+f*.5;break}}else e=+h[i+32>>3]-f*.5;while(0);h[j+56>>3]=e;h[j+64>>3]=g;a[(c[(c[k>>2]|0)+12>>2]|0)+81>>0]=1;b=1}else b=1;while(1){d=c[k>>2]|0;if((b|0)>(c[d+180>>2]|0))break;RI(c[(c[d+184>>2]|0)+(b<<2)>>2]|0);b=b+1|0}return}function SI(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=l;l=l+544|0;L=S+504|0;R=S+416|0;Q=S+376|0;K=S+352|0;J=S+312|0;I=S+288|0;H=S+248|0;M=S+200|0;B=S+152|0;O=S+96|0;p=S+488|0;C=S+456|0;D=S+424|0;E=S+384|0;F=S+360|0;G=S+320|0;w=S+296|0;x=S+256|0;y=S+232|0;z=S+168|0;A=S+136|0;f=S+56|0;N=S+16|0;P=S;o=e+16|0;u=c[o>>2]|0;g=b[u+136>>1]&14;u=d[u+113>>0]|0;if(!((u&54|0)==0?(u&1|0)==0|(c[46368]|0)!=0:0)){u=g<<16>>16==0;n=Sy(e)|0;h=0;j=0;i=0;while(1){if(!n)break;g=c[(c[n+16>>2]|0)+108>>2]|0;do if(g)if(!(a[g+81>>0]|0)){i=i+1|0;break}else{h=h+1|0;break}while(0);m=Ex(e,n)|0;g=j;while(1){if(!m)break;k=c[m+16>>2]|0;j=c[k+108>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);j=c[k+100>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);j=c[k+104>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);j=c[k+96>>2]|0;do if(j){if(a[j+81>>0]|0){h=h+1|0;break}if(!u)g=g+((c[k+8>>2]|0)!=0&1)|0}while(0);m=Gx(e,m)|0}n=Ty(e,n)|0;j=g}if(!(a[(c[o>>2]|0)+113>>0]&8))o=0;else o=WI(e)|0;t=j+i|0;if(t|0){q=h+j+o+(ay(e)|0)|0;r=uH(q*40|0)|0;s=uH(t*40|0)|0;NI(M,2147483647.0,2147483647.0);g=M+16|0;NI(p,-2147483647.0,-2147483647.0);c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];g=s;i=r;n=Sy(e)|0;while(1){if(!n)break;c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];XI(C,n,i,L);c[M>>2]=c[C>>2];c[M+4>>2]=c[C+4>>2];c[M+8>>2]=c[C+8>>2];c[M+12>>2]=c[C+12>>2];c[M+16>>2]=c[C+16>>2];c[M+20>>2]=c[C+20>>2];c[M+24>>2]=c[C+24>>2];c[M+28>>2]=c[C+28>>2];h=c[(c[n+16>>2]|0)+108>>2]|0;do if(h)if(!(a[h+81>>0]|0)){c[L>>2]=c[B>>2];c[L+4>>2]=c[B+4>>2];c[L+8>>2]=c[B+8>>2];c[L+12>>2]=c[B+12>>2];ZI(h,i,g,0,L);g=g+40|0;break}else{i=i+40|0;c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(D,h,i,L);c[M>>2]=c[D>>2];c[M+4>>2]=c[D+4>>2];c[M+8>>2]=c[D+8>>2];c[M+12>>2]=c[D+12>>2];c[M+16>>2]=c[D+16>>2];c[M+20>>2]=c[D+20>>2];c[M+24>>2]=c[D+24>>2];c[M+28>>2]=c[D+28>>2];break}while(0);m=Ex(e,n)|0;i=i+40|0;while(1){if(!m)break;k=m+16|0;h=c[k>>2]|0;j=c[h+96>>2]|0;a:do if(!j)v=52;else{do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){gL(F,e,m);c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];c[L+8>>2]=c[F+8>>2];c[L+12>>2]=c[F+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[H>>2]=c[j>>2];Pw(0,100801,H)|0;break a}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(E,j,i,L);c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[M+8>>2]=c[E+8>>2];c[M+12>>2]=c[E+12>>2];c[M+16>>2]=c[E+16>>2];c[M+20>>2]=c[E+20>>2];c[M+24>>2]=c[E+24>>2];c[M+28>>2]=c[E+28>>2]}while(0);i=i+40|0;h=c[k>>2]|0;v=52}while(0);b:do if((v|0)==52){v=0;j=c[h+104>>2]|0;if(j){do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){_I(w,m);c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];c[L+8>>2]=c[w+8>>2];c[L+12>>2]=c[w+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[I>>2]=c[j>>2];Pw(0,100836,I)|0;break b}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(G,j,i,L);c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];c[M+8>>2]=c[G+8>>2];c[M+12>>2]=c[G+12>>2];c[M+16>>2]=c[G+16>>2];c[M+20>>2]=c[G+20>>2];c[M+24>>2]=c[G+24>>2];c[M+28>>2]=c[G+28>>2]}while(0);i=i+40|0;h=c[k>>2]|0}j=c[h+100>>2]|0;if(j){do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){$I(y,m);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];c[L+8>>2]=c[y+8>>2];c[L+12>>2]=c[y+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[J>>2]=c[j>>2];Pw(0,100876,J)|0;break b}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(x,j,i,L);c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];c[M+8>>2]=c[x+8>>2];c[M+12>>2]=c[x+12>>2];c[M+16>>2]=c[x+16>>2];c[M+20>>2]=c[x+20>>2];c[M+24>>2]=c[x+24>>2];c[M+28>>2]=c[x+28>>2]}while(0);i=i+40|0;h=c[k>>2]|0}j=c[h+108>>2]|0;if(j){do if(!(a[j+81>>0]|0)){if(!u?c[h+8>>2]|0:0){gL(A,e,m);c[L>>2]=c[A>>2];c[L+4>>2]=c[A+4>>2];c[L+8>>2]=c[A+8>>2];c[L+12>>2]=c[A+12>>2];ZI(j,i,g,1,L);g=g+40|0;break}c[K>>2]=c[j>>2];Pw(0,100916,K)|0;break b}else{c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];c[L+16>>2]=c[M+16>>2];c[L+20>>2]=c[M+20>>2];c[L+24>>2]=c[M+24>>2];c[L+28>>2]=c[M+28>>2];YI(z,j,i,L);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];c[M+8>>2]=c[z+8>>2];c[M+12>>2]=c[z+12>>2];c[M+16>>2]=c[z+16>>2];c[M+20>>2]=c[z+20>>2];c[M+24>>2]=c[z+24>>2];c[M+28>>2]=c[z+28>>2]}while(0);i=i+40|0}}while(0);m=Gx(e,m)|0}n=Ty(e,n)|0}if(o|0){c[f>>2]=c[M>>2];c[f+4>>2]=c[M+4>>2];c[f+8>>2]=c[M+8>>2];c[f+12>>2]=c[M+12>>2];c[f+16>>2]=c[M+16>>2];c[f+20>>2]=c[M+20>>2];c[f+24>>2]=c[M+24>>2];c[f+28>>2]=c[M+28>>2];c[f+32>>2]=i;h=L;g=h+40|0;do{c[h>>2]=c[f>>2];h=h+4|0;f=f+4|0}while((h|0)<(g|0));aJ(N,e,L);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];c[M+16>>2]=c[N+16>>2];c[M+20>>2]=c[N+20>>2];c[M+24>>2]=c[N+24>>2];c[M+28>>2]=c[N+28>>2]}a[O+32>>0]=PL(e,nx(e,0,100952,0)|0,1)|0;c[O>>2]=c[M>>2];c[O+4>>2]=c[M+4>>2];c[O+8>>2]=c[M+8>>2];c[O+12>>2]=c[M+12>>2];c[O+16>>2]=c[M+16>>2];c[O+20>>2]=c[M+20>>2];c[O+24>>2]=c[M+24>>2];c[O+28>>2]=c[M+28>>2];SP(r,q,s,t,O)|0;if(0)bJ(r,q,s,t,O);f=0;g=0;h=s;while(1){if((g|0)>=(t|0))break;if(a[h+36>>0]|0){O=c[h+32>>2]|0;a[O+81>>0]=1;N=O+56|0;cJ(P,h);c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];c[N+12>>2]=c[P+12>>2];kM(e,O);f=f+1|0}g=g+1|0;h=h+40|0}if(!0){if((f|0)!=(t|0)){c[R>>2]=f;c[R+4>>2]=t;Pw(0,100997,R)|0}}else{R=c[15686]|0;c[Q>>2]=f;c[Q+4>>2]=t;g1(R,100964,Q)|0}D_(r);D_(s)}}l=S;return}function TI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;i=l;l=l+48|0;e=i+32|0;f=i+16|0;g=i;if(+h[22918]!=0.0|+h[22919]!=0.0|(c[46495]|0)!=0){d=Sy(a)|0;while(1){if(!d)break;if(c[46495]|0)bN(d,0);b=d+16|0;j=(c[b>>2]|0)+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];OI(f,e);c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];b=c[(c[b>>2]|0)+108>>2]|0;if(b|0){j=b+56|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];OI(g,e);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2]}a:do if((c[46367]|0)==1){b=Ex(a,d)|0;while(1){if(!b)break a;VI(b);b=Gx(a,b)|0}}while(0);d=Ty(a,d)|0}MI(a,c[(c[a+16>>2]|0)+116>>2]&3)}l=i;return}function UI(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0;i=b+16|0;j=c[i>>2]|0;g=a[j+275>>0]|0;b=g<<24>>24;do if(!(b&4)){e=+h[j+16>>3];if(!(b&2)){f=(+h[j+32>>3]+e)*.5;break}else{f=+h[d>>3]*.5+e;break}}else f=+h[j+32>>3]-+h[d>>3]*.5;while(0);if(!(g&1))e=+h[d+8>>3]*.5+ +h[j+24>>3];else e=+h[j+40>>3]-+h[d+8>>3]*.5;j=c[j+12>>2]|0;h[j+56>>3]=f;h[j+64>>3]=e;a[(c[(c[i>>2]|0)+12>>2]|0)+81>>0]=1;return}function VI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+144|0;q=s+120|0;e=s+16|0;i=s+104|0;j=s+88|0;k=s+72|0;m=s+56|0;n=s+40|0;o=s+24|0;r=s;p=b+16|0;d=c[p>>2]|0;f=c[d+8>>2]|0;if(!f){if((a[191874]|0)==0?(a[d+112>>0]|0)!=6:0){q=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;r=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[e>>2]=q;c[e+4>>2]=r;Pw(1,100784,e)|0}}else{h=0;b=f;while(1){if((h|0)>=(c[b+4>>2]|0))break;g=c[b>>2]|0;b=c[g+(h*48|0)>>2]|0;e=c[g+(h*48|0)+4>>2]|0;f=c[g+(h*48|0)+8>>2]|0;g=c[g+(h*48|0)+12>>2]|0;d=0;while(1){if((d|0)>=(e|0))break;t=b+(d<<4)|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(i,q);c[t>>2]=c[i>>2];c[t+4>>2]=c[i+4>>2];c[t+8>>2]=c[i+8>>2];c[t+12>>2]=c[i+12>>2];d=d+1|0}if(f|0){t=(c[c[(c[p>>2]|0)+8>>2]>>2]|0)+(h*48|0)+16|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(j,q);c[t>>2]=c[j>>2];c[t+4>>2]=c[j+4>>2];c[t+8>>2]=c[j+8>>2];c[t+12>>2]=c[j+12>>2]}if(g|0){t=(c[c[(c[p>>2]|0)+8>>2]>>2]|0)+(h*48|0)+32|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(k,q);c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2]}d=c[p>>2]|0;h=h+1|0;b=c[d+8>>2]|0}b=c[d+96>>2]|0;if(b){d=b+56|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];OI(m,q);c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];d=c[p>>2]|0}b=c[d+108>>2]|0;if(b){d=b+56|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];OI(n,q);c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];d=c[p>>2]|0}b=c[d+100>>2]|0;if(b){d=b+56|0;c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];OI(o,q);c[d>>2]=c[o>>2];c[d+4>>2]=c[o+4>>2];c[d+8>>2]=c[o+8>>2];c[d+12>>2]=c[o+12>>2];d=c[p>>2]|0}d=c[d+104>>2]|0;if(d|0){t=d+56|0;c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];OI(r,q);c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2]}}l=s;return}function WI(b){b=b|0;var d=0,e=0,f=0;f=b+16|0;if((fz(b)|0)!=(b|0)?(d=c[(c[f>>2]|0)+12>>2]|0,(d|0)!=0):0){e=1;b=(a[d+81>>0]|0)!=0&1}else{e=1;b=0}while(1){d=c[f>>2]|0;if((e|0)>(c[d+180>>2]|0))break;d=(WI(c[(c[d+184>>2]|0)+(e<<2)>>2]|0)|0)+b|0;e=e+1|0;b=d}return b|0}function XI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0,n=0;g=l;l=l+32|0;i=g;n=(a[191877]|0)==0;d=d+16|0;m=c[d>>2]|0;k=+h[(n?m+32|0:m+40|0)>>3];h[e+16>>3]=k*72.0;j=+h[(n?m+40|0:m+32|0)>>3];h[e+24>>3]=j*72.0;d=(c[d>>2]|0)+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];h[e>>3]=+h[e>>3]-k*36.0;d=e+8|0;h[d>>3]=+h[d>>3]-j*36.0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];dJ(b,e,i);l=g;return}function YI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0.0,m=0,n=0;g=l;l=l+32|0;i=g;n=(a[191877]|0)==0;m=d+24|0;k=+h[(n?m:d+32|0)>>3];h[e+16>>3]=k;j=+h[(n?d+32|0:m)>>3];h[e+24>>3]=j;d=d+56|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];h[e>>3]=+h[e>>3]-k*.5;d=e+8|0;h[d>>3]=+h[d>>3]-j*.5;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];dJ(b,e,i);l=g;return}function ZI(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(f|0){f=d+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2]}if(!(a[191877]|0)){g=b+24|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2]}else{h[e>>3]=+h[b+32>>3];h[e+8>>3]=+h[b+24>>3]}c[e+32>>2]=b;a[e+36>>0]=0;c[d+32>>2]=e;return}function _I(a,b){a=a|0;b=b|0;b=fL(b)|0;do if(b){b=c[b>>2]|0;if(!(c[b+8>>2]|0)){b=c[b>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}else{b=b+16|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];break}}else{c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}while(0);return}function $I(a,b){a=a|0;b=b|0;var d=0;b=fL(b)|0;do if(b){d=c[b>>2]|0;b=(c[b+4>>2]|0)+-1|0;if(!(c[d+(b*48|0)+12>>2]|0)){d=(c[d+(b*48|0)>>2]|0)+((c[d+(b*48|0)+4>>2]|0)+-1<<4)|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}else{d=d+(b*48|0)+32|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];break}}else{c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}while(0);return}function aJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+112|0;k=q+72|0;n=q+32|0;o=q;p=d+16|0;j=1;while(1){f=c[p>>2]|0;if((j|0)>(c[f+180>>2]|0))break;f=c[(c[f+184>>2]|0)+(j<<2)>>2]|0;g=k;h=e;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));aJ(n,f,k);g=e;h=n;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));j=j+1|0}if(((fz(d)|0)!=(d|0)?(m=c[(c[p>>2]|0)+12>>2]|0,m|0):0)?a[m+81>>0]|0:0){p=e+32|0;n=c[p>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[k+16>>2]=c[e+16>>2];c[k+20>>2]=c[e+20>>2];c[k+24>>2]=c[e+24>>2];c[k+28>>2]=c[e+28>>2];YI(o,m,n,k);c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];c[e+16>>2]=c[o+16>>2];c[e+20>>2]=c[o+20>>2];c[e+24>>2]=c[o+24>>2];c[e+28>>2]=c[o+28>>2];c[p>>2]=(c[p>>2]|0)+40}g=b;h=e;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));l=q;return}function bJ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+160|0;r=s+96|0;p=s+48|0;o=s;q=c[15686]|0;n=d[g+32>>0]|0;i=+h[g>>3];j=+h[g+8>>3];k=+h[g+16>>3];m=+h[g+24>>3];c[o>>2]=b;c[o+4>>2]=f;c[o+8>>2]=n;h[o+16>>3]=i;h[o+24>>3]=j;h[o+32>>3]=k;h[o+40>>3]=m;g1(q,101039,o)|0;a:do if(0>=2){E1(101099,8,1,q)|0;o=0;while(1){if((o|0)>=(b|0))break;g=c[a+32>>2]|0;i=+h[a>>3];j=+h[a+8>>3];k=+h[a+16>>3];m=+h[a+24>>3];if(!g)n=191979;else n=c[c[g+32>>2]>>2]|0;c[p>>2]=o;h[p+8>>3]=i;h[p+16>>3]=j;h[p+24>>3]=k;h[p+32>>3]=m;c[p+40>>2]=g;c[p+44>>2]=n;g1(q,101108,p)|0;o=o+1|0;a=a+40|0}E1(101151,8,1,q)|0;g=0;while(1){if((g|0)>=(f|0))break a;b=d[e+36>>0]|0;i=+h[e+16>>3];j=+h[e+24>>3];k=+h[e>>3];m=+h[e+8>>3];p=c[c[e+32>>2]>>2]|0;c[r>>2]=g;c[r+4>>2]=e;c[r+8>>2]=b;h[r+16>>3]=i;h[r+24>>3]=j;h[r+32>>3]=k;h[r+40>>3]=m;c[r+48>>2]=p;g1(q,101160,r)|0;e=e+40|0;g=g+1|0}}while(0);l=s;return}function cJ(a,b){a=a|0;b=b|0;var c=0.0;c=+h[b+8>>3]*.5+ +h[b+24>>3];h[a>>3]=+h[b>>3]*.5+ +h[b+16>>3];h[a+8>>3]=c;return}function dJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0.0;e=l;l=l+16|0;f=e;j=+h[b>>3];h[d>>3]=+h[(+h[d>>3]>3];g=d+8|0;i=+h[b+8>>3];h[g>>3]=+h[(+h[g>>3]>3];j=+h[b+16>>3]+j;h[f>>3]=j;i=+h[b+24>>3]+i;h[f+8>>3]=i;g=d+16|0;h[g>>3]=+h[(+h[g>>3]>j?g:f)>>3];b=d+24|0;h[b>>3]=+h[(+h[b>>3]>i?g:f)+8>>3];c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c[d+16>>2];c[a+20>>2]=c[d+20>>2];c[a+24>>2]=c[d+24>>2];c[a+28>>2]=c[d+28>>2];l=e;return}function eJ(a){a=a|0;PI(a,1);return}function fJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e;b=ZL(xx(a,102500)|0)|0;if(b){b=gJ(b)|0;if(b|0){f=c[b+40>>2]|0;d=c[b+44>>2]|0;g=a+16|0;a=c[g>>2]|0;h[a+32>>3]=+(f|0)*.013888888888888888;h[a+40>>3]=+(d|0)*.013888888888888888;a=uH(12)|0;c[(c[g>>2]|0)+12>>2]=a;c[a>>2]=c[b+12>>2];c[a+4>>2]=((f|0)/-2|0)-(c[b+32>>2]|0);c[a+8>>2]=((d|0)/-2|0)-(c[b+36>>2]|0)}}else{c[d>>2]=ry(a)|0;Pw(0,101208,d)|0}l=e;return}function gJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+1152|0;i=p+24|0;h=p+8|0;e=p;f=p+120|0;j=p+44|0;k=p+40|0;m=p+36|0;n=p+32|0;o=p+28|0;d=c[46496]|0;if(!d){d=Cw(20708,c[4555]|0)|0;c[46496]=d}d=nb[c[d>>2]&63](d,b,512)|0;do if(!d){g=L1(b,135739)|0;if(!g){c[e>>2]=b;Pw(0,101257,e)|0;d=0;break}else{d=0;e=0}while(1){if(!(O0(f,1024,g)|0)){f=11;break}c[h>>2]=k;c[h+4>>2]=m;c[h+8>>2]=n;c[h+12>>2]=o;q=(N1(f,101285,h)|0)==4;e=q?1:e;if((a[f>>0]|0)!=37){q=(P0(f,101314)|0)==0;d=q?d:1}if((e|0)!=0&(d|0)!=0){f=12;break}}if((f|0)==11)if(!e){c[i>>2]=b;Pw(0,101319,i)|0;d=0}else f=12;if((f|0)==12){q=vH(64)|0;k=c[k>>2]|0;c[q+32>>2]=k;m=c[m>>2]|0;c[q+40>>2]=(c[n>>2]|0)-k;c[q+36>>2]=(c[o>>2]|0)-m;c[q+8>>2]=b;o=c[46497]|0;c[46497]=o+1;c[q+12>>2]=o;J1(j3(g)|0,j)|0;o=c[j+36>>2]|0;n=vH(o+1|0)|0;c[q+52>>2]=n;Z1(g,0,0)|0;g3(n,o,1,g)|0;a[n+o>>0]=0;o=c[46496]|0;nb[c[o>>2]&63](o,q,1)|0;a[q+16>>0]=d;d=q}s1(g)|0}while(0);l=p;return d|0}function hJ(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b+52>>2]|0);return}function iJ(a){a=a|0;D_(c[(c[a+16>>2]|0)+12>>2]|0);return}function jJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n+8|0;k=n;j=(d|0)!=0;a:do if(j){h=0;f=0;b:while(1)while(1){if(h)break a;g=c[d+(f<<2)>>2]|0;if(!g){i=6;break a}f=f+1|0;if(!(a[g>>0]|0)){h=1;continue b}}}else i=6;while(0);c:do if((i|0)==6)while(1){f=c[e>>2]|0;if(!f)break c;$B(b,f)|0;$B(b,150517)|0;e=e+4|0;i=6}while(0);d:do if(j){h=0;while(1){f=c[d+(h<<2)>>2]|0;if(!f)break d;do if(a[f>>0]|0){e=ZL(f)|0;if(!e){c[k>>2]=f;Pw(0,101358,k)|0;break}g=L1(e,135739)|0;if(!g){c[m>>2]=e;Pw(0,101386,m)|0;break}while(1){f=YL(g)|0;if(!f)break;$B(b,f)|0}$B(b,150517)|0;s1(g)|0}while(0);h=h+1|0}}while(0);l=n;return}function kJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;d=c[d+52>>2]|0;a:while(1){e=a[d>>0]|0;b:do switch(e<<24>>24){case 0:break a;case 37:{if((a[d+1>>0]|0)==37){e=d+2|0;if((((V$(e,101414,3)|0)!=0?(V$(e,101418,5)|0)!=0:0)?(V$(e,101424,3)|0)!=0:0)?(V$(e,101428,7)|0)!=0:0){e=37;break b}else g=37;c:while(1){switch(g<<24>>24){case 13:{f=10;break c}case 10:case 0:{f=12;break c}default:{}}g=d+1|0;d=g;g=a[g>>0]|0}if((f|0)==10){e=d+1|0;if((a[e>>0]|0)==10){d=d+2|0;continue a}}else if((f|0)==12)e=d+1|0;d=g<<24>>24==0?d:e;continue a}else e=37;break}default:{}}while(0);d:while(1){switch(e<<24>>24){case 10:case 13:case 0:break d;default:{}}aC(b,e<<24>>24)|0;g=d+1|0;d=g;e=a[g>>0]|0}f=d+1|0;if(e<<24>>24==13?(a[f>>0]|0)==10:0)d=d+2|0;else d=e<<24>>24==0?d:f;aC(b,10)|0}return}function lJ(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;d=c[46496]|0;a:do if(d|0){d=nb[c[d>>2]&63](d,0,128)|0;while(1){if(!d)break a;if(!(a[d+16>>0]|0)){c[e>>2]=c[d+12>>2];fC(b,101436,e);$B(b,101454)|0;kJ(b,d);$B(b,101472)|0;$B(b,101487)|0}g=c[46496]|0;d=nb[c[g>>2]&63](g,d,8)|0}}while(0);l=f;return}function mJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;e=g;a:do switch(d|0){case 0:{f=b;break}case 1:{f=SM(b)|0;break}default:{switch(nJ(b)|0){case 2:break;case 1:{f=SM(b)|0;break a}default:{f=b;break a}}if(!(c[46498]|0)){Pw(0,101499,e)|0;c[46498]=1;f=b}else f=b}}while(0);if(!(c[46499]|0))Tw(185996,0,0);d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}c[46500]=d+1;a[d>>0]=40;e=f;b:while(1){switch(a[e>>0]|0){case 0:break b;case 92:case 41:case 40:{d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}c[46500]=d+1;a[d>>0]=92;break}default:{}}d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}h=a[e>>0]|0;c[46500]=d+1;a[d>>0]=h;e=e+1|0}d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}c[46500]=d+1;a[d>>0]=41;if((f|0)!=(b|0))D_(f);d=c[46500]|0;if(d>>>0>=(c[46501]|0)>>>0){Uw(185996,1)|0;d=c[46500]|0}a[d>>0]=0;h=c[46499]|0;c[46500]=h;l=g;return h|0}function nJ(b){b=b|0;var c=0,d=0;c=0;a:while(1){while(1){d=a[b>>0]|0;if(!(d<<24>>24))break a;if((d&255)<127)b=b+1|0;else break}if((d&-4)<<24>>24==-64){c=1;b=b+2|0}else{c=2;break}}return c|0}function oJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+96|0;i=n+80|0;j=n+72|0;m=n+64|0;g=n+32|0;k=n;h[g>>3]=+h[a>>3];h[g+8>>3]=+h[a+8>>3];h[g+16>>3]=+h[b>>3];h[g+24>>3]=+h[b+8>>3];do if((TU(d,g,j)|0)>=0){if(!f){b=d+4|0;a=c[b>>2]|0;f=c[46504]|0;if((a|0)>(c[46503]|0)){if(!f)a=vH(a<<5)|0;else a=xH(f,a<<5)|0;c[46504]=a;g=c[b>>2]|0;c[46503]=g;f=a}else g=a;b=c[d>>2]|0;a=0;while(1){if((a|0)>=(g|0))break;o=f+(a<<5)|0;d=b+(a<<4)|0;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];o=f+(a<<5)+16|0;d=a+1|0;p=b+(((d|0)%(g|0)|0)<<4)|0;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];a=d}c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];if((xU(f,g,i,k,m)|0)<0){a=0;break}}else{c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];oV(i,m)}a=m+4|0;if(!(pJ(c[a>>2]|0)|0)){g=c[a>>2]|0;a=c[46505]|0;f=c[m>>2]|0;b=0;while(1){if((b|0)>=(g|0))break;p=a+(b<<4)|0;o=f+(b<<4)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[p+12>>2]=c[o+12>>2];b=b+1|0}c[e>>2]=g}else a=0}else a=0;while(0);l=n;return a|0}function pJ(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=c[46506]|0;do if((b|0)<(a|0)){a=a+300-((a|0)%300|0)+b|0;b=xH(c[46505]|0,a<<4)|0;c[46505]=b;if(!b){Pw(1,101589,d)|0;a=1;break}else{c[46506]=a;a=0;break}}else a=0;while(0);l=e;return a|0}function qJ(){var a=0,b=0,d=0;b=l;l=l+16|0;a=b;d=c[46507]|0;c[46507]=d+1;do if((d|0)<=0){d=vH(4800)|0;c[46505]=d;if(!d){Pw(1,101612,a)|0;a=1;break}c[46506]=300;c[46508]=0;c[46509]=0;if(0){EL();a=0}else a=0}else a=0;while(0);l=b;return a|0}function rJ(){var a=0,b=0,d=0,e=0.0,f=0,g=0;b=l;l=l+16|0;a=b;d=c[46507]|0;c[46507]=d+-1;if((d|0)<=1?(D_(c[46505]|0),0):0){d=c[15686]|0;g=c[46508]|0;f=c[46509]|0;e=+FL();c[a>>2]=g;c[a+4>>2]=f;h[a+8>>3]=e;g1(d,101650,a)|0}l=b;return}function sJ(a,b){a=a|0;b=b|0;return tJ(a,b,0)|0}function tJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;L=l;l=l+176|0;G=L+168|0;K=L+128|0;x=L+120|0;v=L+112|0;i=L+104|0;s=L+88|0;n=L+72|0;g=L+64|0;t=L+160|0;I=L+152|0;y=L+144|0;u=L+32|0;w=L;J=L+136|0;c[46508]=(c[46508]|0)+1;H=c[b+80>>2]|0;c[46509]=(c[46509]|0)+H;f=b+88|0;while(1){C=c[f>>2]|0;if(!C){D=4;break}f=c[C+16>>2]|0;if(!(a[f+112>>0]|0)){D=5;break}else f=f+116|0}do if((D|0)==4){Pw(1,101693,g)|0;f=0}else if((D|0)==5){B=c[b+84>>2]|0;if(!(uJ(H,B,b)|0)){g=H<<3;if((g|0)>(c[46510]|0)){f=c[46511]|0;if(!f)f=vH(H<<7)|0;else f=xH(f,H<<7)|0;c[46511]=f;c[46510]=g}a:do if((H|0)>1?+h[B+8>>3]>+h[B+40>>3]:0){f=0;while(1){if((f|0)==(H|0)){p=1;break a}z=B+(f<<5)+24|0;m=+h[z>>3];A=B+(f<<5)+8|0;h[z>>3]=-+h[A>>3];h[A>>3]=-m;f=f+1|0}}else p=0;while(0);r=c[C>>2]&3;z=C+48|0;f=c[((r|0)==3?C:z)+40>>2]|0;A=C+-48|0;if((f|0)==(c[((r|0)==2?C:A)+40>>2]|0)){c[i>>2]=ry(f)|0;Pw(1,101800,i)|0;f=0;break}o=H+-1|0;q=c[46511]|0;r=q;f=0;j=0;b:while(1){if((j|0)>=(H|0)){j=o;n=f;break}if((j|0)>0)g=+h[B+(j<<5)+8>>3]>+h[B+(j+-1<<5)+8>>3]?-1:1;else g=0;if((j|0)<(o|0))i=+h[B+(j+1<<5)+8>>3]>+h[B+(j<<5)+8>>3]?1:-1;else i=0;c:do if((g|0)!=(i|0))if((g|0)==1|(i|0)==-1){g=B+(j<<5)|0;h[q+(f<<4)>>3]=+h[g>>3];i=f+1|0;h[q+(f<<4)+8>>3]=+h[B+(j<<5)+24>>3];h[q+(i<<4)>>3]=+h[g>>3];g=B+(j<<5)+8|0;D=29;break}else{g=B+(j<<5)+16|0;h[q+(f<<4)>>3]=+h[g>>3];i=f+1|0;h[q+(f<<4)+8>>3]=+h[B+(j<<5)+8>>3];h[q+(i<<4)>>3]=+h[g>>3];g=B+(j<<5)+24|0;D=29;break}else{switch(g|0){case -1:break c;case 0:break;default:{D=28;break b}}g=B+(j<<5)|0;h[q+(f<<4)>>3]=+h[g>>3];i=f+1|0;h[q+(f<<4)+8>>3]=+h[B+(j<<5)+24>>3];h[q+(i<<4)>>3]=+h[g>>3];g=B+(j<<5)+8|0;D=29}while(0);if((D|0)==29){D=0;h[q+(i<<4)+8>>3]=+h[g>>3];f=f+2|0}j=j+1|0}if((D|0)==28){c[n>>2]=g;c[n+4>>2]=g;c[n+8>>2]=480;Pw(1,101735,n)|0;f=0;break}d:while(1){if((j|0)<=-1)break;if((j|0)<(o|0))f=+h[B+(j<<5)+8>>3]>+h[B+(j+1<<5)+8>>3]?-1:1;else f=0;if((j|0)>0)g=+h[B+(j+-1<<5)+8>>3]>+h[B+(j<<5)+8>>3]?1:-1;else g=0;e:do if((f|0)!=(g|0))if((f|0)==1|(g|0)==-1){f=B+(j<<5)|0;h[q+(n<<4)>>3]=+h[f>>3];g=n+1|0;h[q+(n<<4)+8>>3]=+h[B+(j<<5)+24>>3];h[q+(g<<4)>>3]=+h[f>>3];f=B+(j<<5)+8|0;i=2;break}else{f=B+(j<<5)+16|0;h[q+(n<<4)>>3]=+h[f>>3];g=n+1|0;h[q+(n<<4)+8>>3]=+h[B+(j<<5)+8>>3];h[q+(g<<4)>>3]=+h[f>>3];f=B+(j<<5)+24|0;i=2;break}else switch(f|0){case 0:{f=B+(j<<5)+16|0;h[q+(n<<4)>>3]=+h[f>>3];g=n+1|0;h[q+(n<<4)+8>>3]=+h[B+(j<<5)+8>>3];h[q+(g<<4)>>3]=+h[f>>3];f=B+(j<<5)+24|0;i=2;break e}case -1:{N=B+(j<<5)+16|0;h[q+(n<<4)>>3]=+h[N>>3];f=B+(j<<5)+8|0;i=n+1|0;h[q+(n<<4)+8>>3]=+h[f>>3];h[q+(i<<4)>>3]=+h[N>>3];N=B+(j<<5)+24|0;M=n+2|0;h[q+(i<<4)+8>>3]=+h[N>>3];i=B+(j<<5)|0;h[q+(M<<4)>>3]=+h[i>>3];g=n+3|0;h[q+(M<<4)+8>>3]=+h[N>>3];h[q+(g<<4)>>3]=+h[i>>3];i=4;break e}default:{D=42;break d}}while(0);h[q+(g<<4)+8>>3]=+h[f>>3];j=j+-1|0;n=n+i|0}if((D|0)==42){c[s>>2]=f;c[s+4>>2]=f;c[s+8>>2]=513;Pw(1,101735,s)|0;f=0;break}f:do if(!p)f=0;else{f=0;while(1){if((f|0)>=(H|0)){f=0;break}M=B+(f<<5)+24|0;m=+h[M>>3];N=B+(f<<5)+8|0;h[M>>3]=-+h[N>>3];h[N>>3]=-m;f=f+1|0}while(1){if((f|0)>=(n|0)){f=0;break f}N=q+(f<<4)+8|0;h[N>>3]=-+h[N>>3];f=f+1|0}}while(0);while(1){if((f|0)>=(H|0))break;h[B+(f<<5)>>3]=2147483647.0;h[B+(f<<5)+16>>3]=-2147483648.0;f=f+1|0}c[t>>2]=r;i=t+4|0;c[i>>2]=n;h[u>>3]=+h[b>>3];h[u+8>>3]=+h[b+8>>3];h[u+16>>3]=+h[b+40>>3];h[u+24>>3]=+h[b+48>>3];if((TU(t,u,I)|0)<0){Pw(1,101839,v)|0;f=0;break}if(!e){g=c[i>>2]|0;f=c[46504]|0;if((g|0)>(c[46503]|0)){if(!f)f=vH(g<<5)|0;else f=xH(f,g<<5)|0;c[46504]=f;g=c[i>>2]|0;c[46503]=g}j=c[46511]|0;i=0;while(1){if((i|0)>=(g|0))break;M=f+(i<<5)|0;N=j+(i<<4)|0;c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];M=f+(i<<5)+16|0;N=i+1|0;v=j+(((N|0)%(g|0)|0)<<4)|0;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[M+8>>2]=c[v+8>>2];c[M+12>>2]=c[v+12>>2];i=N}if(!(a[b+29>>0]|0)){k=0.0;m=0.0}else{m=+h[b+16>>3];k=+E(+m);m=+F(+m)}h[w+8>>3]=m;h[w>>3]=k;if(!(a[b+69>>0]|0)){k=0.0;m=0.0}else{m=+h[b+56>>3];k=-+E(+m);m=-+F(+m)}h[w+24>>3]=m;h[w+16>>3]=k;c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];if((xU(f,g,G,w,y)|0)<0){Pw(1,101878,x)|0;f=0;break}}else{c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];oV(G,y)}n=y+4|0;if(!(pJ(c[n>>2]|0)|0)){f=0;while(1){if((f|0)>=(H|0))break;h[B+(f<<5)>>3]=2147483647.0;h[B+(f<<5)+16>>3]=-2147483648.0;f=f+1|0}i=c[n>>2]|0;j=c[46505]|0;g=c[y>>2]|0;f=0;while(1){if((f|0)>=(i|0)){i=1;f=10;g=0;break}N=j+(f<<4)|0;M=g+(f<<4)|0;c[N>>2]=c[M>>2];c[N+4>>2]=c[M+4>>2];c[N+8>>2]=c[M+8>>2];c[N+12>>2]=c[M+12>>2];f=f+1|0}while(1){if(!((g|0)<15&i<<24>>24!=0))break;vJ(B,H,c[46505]|0,c[n>>2]|0,f);j=0;while(1){if((j|0)>=(H|0))break;if(+h[B+(j<<5)>>3]==2147483647.0){D=82;break}if(+h[B+(j<<5)+16>>3]==-2147483648.0){D=82;break}j=j+1|0}if((D|0)==82){D=0;N=f<<1;f=N;g=(N|0)>(2147483647/(H|0)|0|0)?15:g}i=(j|0)==(H|0)?0:i;g=g+1|0}if(i<<24>>24){M=ry(c[((c[C>>2]&3|0)==3?C:z)+40>>2]|0)|0;N=ry(c[((c[C>>2]&3|0)==2?C:A)+40>>2]|0)|0;c[K>>2]=M;c[K+4>>2]=N;Pw(0,101916,K)|0;c[G>>2]=c[I>>2];c[G+4>>2]=c[I+4>>2];oV(G,J);vJ(B,H,c[J>>2]|0,c[J+4>>2]|0,10);D_(c[J>>2]|0)}c[d>>2]=c[n>>2];f=c[46505]|0}else f=0}else f=0}while(0);l=L;return f|0}function uJ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0,M=0,N=0,O=0.0,P=0,Q=0,R=0;R=l;l=l+32|0;I=R+16|0;H=R+8|0;k=R;e=0;j=0;while(1){if((j|0)>=(a|0))break;i=b+(j<<5)|0;s=+h[b+(j<<5)+8>>3]-+h[b+(j<<5)+24>>3];if(!((s>=0.0?s:-s)<.01)?(s=+h[i>>3]-+h[b+(j<<5)+16>>3],!((s>=0.0?s:-s)<.01)):0){if((e|0)!=(j|0)){P=b+(e<<5)|0;c[P>>2]=c[i>>2];c[P+4>>2]=c[i+4>>2];c[P+8>>2]=c[i+8>>2];c[P+12>>2]=c[i+12>>2];c[P+16>>2]=c[i+16>>2];c[P+20>>2]=c[i+20>>2];c[P+24>>2]=c[i+24>>2];c[P+28>>2]=c[i+28>>2]}e=e+1|0}j=j+1|0}J=b+16|0;do if(!(+h[b>>3]>+h[J>>3])?(L=b+8|0,N=b+24|0,!(+h[L>>3]>+h[N>>3])):0){P=e+-1|0;M=c[15686]|0;w=0;while(1){if((w|0)>=(P|0))break;D=w+1|0;E=b+(D<<5)|0;f=+h[E>>3];F=b+(D<<5)+16|0;g=+h[F>>3];if(f>g){Q=16;break}A=b+(D<<5)+8|0;m=+h[A>>3];B=b+(D<<5)+24|0;n=+h[B>>3];if(m>n){Q=16;break}G=b+(w<<5)+16|0;v=+h[G>>3]>3]>g;a=u&1;z=b+(w<<5)+24|0;t=+h[z>>3]>3]>n;i=k&1;x=a+e+j+i|0;o=(x|0)!=0;if(!(0==0|o^1)){c[I>>2]=w;c[I+4>>2]=D;g1(M,102116,I)|0;wJ(d)}a:do if(o){if(!v)if(!u)if(!t){if(k){k=0;o=e;e=B;i=y;Q=24}}else{k=i;j=0;o=e;e=A;i=z;Q=24}else{k=i;a=0;o=e;e=F;i=C;Q=24}else{k=i;o=0;e=E;i=G;Q=24}if((Q|0)==24){Q=0;w=~~+h[i>>3];h[i>>3]=+h[e>>3];h[e>>3]=+(w|0);i=k;e=o}o=x+-1|0;k=0;while(1){if((k|0)>=(o|0))break a;do if((e|0)!=1){if((a|0)==1){s=+(~~((+h[F>>3]+ +h[C>>3])*.5+.5)|0);h[F>>3]=s;h[C>>3]=s;a=0;break}if((j|0)==1){s=+(~~((+h[A>>3]+ +h[z>>3])*.5+.5)|0);h[A>>3]=s;h[z>>3]=s;j=0;break}if((i|0)==1){s=+(~~((+h[B>>3]+ +h[y>>3])*.5+.5)|0);h[B>>3]=s;h[y>>3]=s;i=0}}else{s=+(~~((+h[E>>3]+ +h[G>>3])*.5+.5)|0);h[E>>3]=s;h[G>>3]=s;e=0}while(0);k=k+1|0}}while(0);p=+h[C>>3];q=+h[G>>3];r=+h[E>>3];s=+h[F>>3];i=xJ(~~p,~~q,~~r,~~s)|0;n=+h[y>>3];m=+h[z>>3];g=+h[A>>3];f=+h[B>>3];e=xJ(~~n,~~m,~~g,~~f)|0;if(!((i|0)!=0&(e|0)!=0)){w=D;continue}if((i|0)<(e|0)){B=q-p>s-r;w=q>3]=B?(w?r:s):w?q:p;w=D;continue}else{B=m-n>f-g;w=m>3]=B?(w?g:f):w?m:n;w=D;continue}}if((Q|0)==16){c[H>>2]=D;Pw(1,102070,H)|0;wJ(d);e=1;break}f=+h[d>>3];g=+h[b>>3];if(!(((!(f+h[J>>3]):0)?(K=+h[d+8>>3],!(K<+h[L>>3])):0)?!(K>+h[N>>3]):0)){if(0){E1(102159,42,1,M)|0;wJ(d);g=+h[b>>3];f=+h[d>>3]}if(f>3]=g;else g=f;f=+h[J>>3];if(g>f)h[d>>3]=f;e=d+8|0;g=+h[e>>3];f=+h[L>>3];if(g>3]=f;g=f}f=+h[N>>3];if(g>f)h[e>>3]=f}i=d+40|0;f=+h[i>>3];e=b+(P<<5)|0;g=+h[e>>3];if(((!(f+h[b+(P<<5)+16>>3]):0)?(O=+h[d+48>>3],!(O<+h[b+(P<<5)+8>>3])):0)?!(O>+h[b+(P<<5)+24>>3]):0){e=0;break}if(0){E1(102202,39,1,M)|0;wJ(d);g=+h[e>>3];f=+h[i>>3]}if(f>3]=g;f=g}g=+h[b+(P<<5)+16>>3];if(f>g)h[i>>3]=g;e=d+48|0;f=+h[e>>3];g=+h[b+(P<<5)+8>>3];if(f>3]=g;else g=f;f=+h[b+(P<<5)+24>>3];if(g>f){h[e>>3]=f;e=0}else e=0}else Q=12;while(0);if((Q|0)==12){Pw(1,102025,k)|0;wJ(d);e=1}l=R;return e|0}function vJ(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,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0;s=O(e,b)|0;t=1.0/+(s|0);e=0;a:while(1){u=e+3|0;if((u|0)>=(d|0))break;o=c+(e<<4)|0;p=c+(e<<4)+8|0;r=e+1|0;q=c+(r<<4)|0;r=c+(r<<4)+8|0;j=e+2|0;i=c+(j<<4)|0;j=c+(j<<4)+8|0;k=c+(u<<4)|0;l=c+(u<<4)+8|0;g=0;while(1){if((g|0)>(s|0)){e=u;continue a}v=t*+(g|0);m=+h[o>>3];n=+h[p>>3];y=+h[q>>3];w=+h[r>>3];z=+h[i>>3];x=+h[j>>3];m=(y-m)*v+m;n=(w-n)*v+n;y=(z-y)*v+y;w=(x-w)*v+w;m=(y-m)*v+m;n=(w-n)*v+n;m=((z-y+(+h[k>>3]-z)*v)*v+y-m)*v+m;n=((x-w+(+h[l>>3]-x)*v)*v+w-n)*v+n;f=0;while(1){if((f|0)>=(b|0))break;if(n<=+h[a+(f<<5)+24>>3]+.0001?n>=+h[a+(f<<5)+8>>3]+-.0001:0){e=a+(f<<5)|0;if(+h[e>>3]>m)h[e>>3]=m;e=a+(f<<5)+16|0;if(+h[e>>3]>3]=m}f=f+1|0}g=g+1|0}}return}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=l;l=l+112|0;j=m+80|0;k=m+48|0;i=m+8|0;g=m;e=c[15686]|0;f=b+80|0;c[g>>2]=c[f>>2];g1(e,102242,g)|0;g=b+84|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break;r=c[g>>2]|0;q=+h[r+(d<<5)>>3];p=+h[r+(d<<5)+8>>3];o=+h[r+(d<<5)+16>>3];n=+h[r+(d<<5)+24>>3];c[i>>2]=d;h[i+8>>3]=q;h[i+16>>3]=p;h[i+24>>3]=o;h[i+32>>3]=n;g1(e,102253,i)|0;d=d+1|0}q=+h[b+8>>3];p=+h[b+16>>3];r=a[b+29>>0]|0?102284:102296;h[k>>3]=+h[b>>3];h[k+8>>3]=q;h[k+16>>3]=p;c[k+24>>2]=r;g1(e,102312,k)|0;p=+h[b+48>>3];q=+h[b+56>>3];r=a[b+69>>0]|0?102284:102296;h[j>>3]=+h[b+40>>3];h[j+8>>3]=p;h[j+16>>3]=q;c[j+24>>2]=r;g1(e,102363,j)|0;l=m;return}function xJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;do if((b|0)>(c|0)&(d|0)>(a|0)){if(!((c|0)>(a|0)|(d|0)<(a|0))){a=d-a|0;break}if((b|0)<(c|0)|(b|0)>(d|0)){b=b-a|0;a=d-c|0;a=(b|0)<(a|0)?b:a;break}else{a=b-c|0;break}}else a=0;while(0);return a|0}function yJ(a,b){a=a|0;b=b|0;return tJ(a,b,1)|0}function zJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+80|0;g=j;i=1;f=b;while(1){h=f;f=c[(c[f+16>>2]|0)+172>>2]|0;if(!((f|0)!=0&(h|0)!=(f|0)))break;else i=i+1|0}if((i|0)>=21)g=uH(i<<2)|0;h=0;f=b;while(1){if((h|0)>=(i|0))break;c[g+(h<<2)>>2]=f;h=h+1|0;f=c[(c[f+16>>2]|0)+172>>2]|0}AJ(a,g,i,d,e);if((i|0)>20)D_(g);l=j;return}function AJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0.0,N=0.0,P=0,Q=0;K=l;l=l+304|0;A=K+272|0;z=K+208|0;G=K+96|0;H=K+32|0;I=K+16|0;J=K;r=K+192|0;y=K+176|0;i=K+160|0;B=K+296|0;D=K+288|0;j=c[d>>2]|0;w=c[j>>2]&3;k=j+-48|0;E=c[((w|0)==2?j:k)+40>>2]|0;t=G+16|0;w=(c[(c[((w|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+16|0;x=j+16|0;F=(c[x>>2]|0)+16|0;c[z>>2]=c[w>>2];c[z+4>>2]=c[w+4>>2];c[z+8>>2]=c[w+8>>2];c[z+12>>2]=c[w+12>>2];c[A>>2]=c[F>>2];c[A+4>>2]=c[F+4>>2];c[A+8>>2]=c[F+8>>2];c[A+12>>2]=c[F+12>>2];BJ(r,z,A);c[G>>2]=c[r>>2];c[G+4>>2]=c[r+4>>2];c[G+8>>2]=c[r+8>>2];c[G+12>>2]=c[r+12>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];c[I>>2]=c[r>>2];c[I+4>>2]=c[r+4>>2];c[I+8>>2]=c[r+8>>2];c[I+12>>2]=c[r+12>>2];r=G+32|0;F=G+48|0;w=(c[E+16>>2]|0)+16|0;x=(c[x>>2]|0)+56|0;c[z>>2]=c[w>>2];c[z+4>>2]=c[w+4>>2];c[z+8>>2]=c[w+8>>2];c[z+12>>2]=c[w+12>>2];c[A>>2]=c[x>>2];c[A+4>>2]=c[x+4>>2];c[A+8>>2]=c[x+8>>2];c[A+12>>2]=c[x+12>>2];BJ(y,z,A);c[F>>2]=c[y>>2];c[F+4>>2]=c[y+4>>2];c[F+8>>2]=c[y+8>>2];c[F+12>>2]=c[y+12>>2];c[r>>2]=c[y>>2];c[r+4>>2]=c[y+4>>2];c[r+8>>2]=c[y+8>>2];c[r+12>>2]=c[y+12>>2];c[J>>2]=c[y>>2];c[J+4>>2]=c[y+4>>2];c[J+8>>2]=c[y+8>>2];c[J+12>>2]=c[y+12>>2];a:do if((e|0)!=1&(a[191874]|0)==0){m=+h[G>>3];n=+h[F>>3];L=m-n;o=+h[G+8>>3];p=+h[G+56>>3];s=o-p;q=s*s;if(q+L*L<1.0e-06){c[t>>2]=c[G>>2];c[t+4>>2]=c[G+4>>2];c[t+8>>2]=c[G+8>>2];c[t+12>>2]=c[G+12>>2];c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];y=G+24|0;x=G+40|0;n=0.0;m=0.0}else{M=n-m;L=+C(+(q+M*M));w=c[(c[(c[b+60>>2]|0)+16>>2]|0)+248>>2]|0;N=+((O(w,e+-1|0)|0)/2|0|0);q=s*N/L;h[t>>3]=q+m;m=M*N/L;y=G+24|0;h[y>>3]=m+o;h[r>>3]=q+n;x=G+40|0;h[x>>3]=p+m;m=+(0-w|0);n=M*m/L;m=s*m/L}f=(f|0)==6;u=D+4|0;v=B+4|0;j=0;while(1){if((j|0)>=(e|0))break a;w=c[d+(j<<2)>>2]|0;k=w+-48|0;b:do if((c[((c[w>>2]&3|0)==2?w:k)+40>>2]|0)==(E|0)){c[I>>2]=c[G>>2];c[I+4>>2]=c[G+4>>2];c[I+8>>2]=c[G+8>>2];c[I+12>>2]=c[G+12>>2];c[J>>2]=c[F>>2];c[J+4>>2]=c[F+4>>2];c[J+8>>2]=c[F+8>>2];c[J+12>>2]=c[F+12>>2];i=0;while(1){if((i|0)==4)break b;P=H+(i<<4)|0;Q=G+(i<<4)|0;c[P>>2]=c[Q>>2];c[P+4>>2]=c[Q+4>>2];c[P+8>>2]=c[Q+8>>2];c[P+12>>2]=c[Q+12>>2];i=i+1|0}}else{c[I>>2]=c[F>>2];c[I+4>>2]=c[F+4>>2];c[I+8>>2]=c[F+8>>2];c[I+12>>2]=c[F+12>>2];c[J>>2]=c[G>>2];c[J+4>>2]=c[G+4>>2];c[J+8>>2]=c[G+8>>2];c[J+12>>2]=c[G+12>>2];i=0;while(1){if((i|0)==4)break b;Q=H+(3-i<<4)|0;P=G+(i<<4)|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];i=i+1|0}}while(0);if(f){c[u>>2]=4;c[D>>2]=z;i=0;while(1){if((i|0)==4)break;Q=z+(i<<4)|0;P=H+(i<<4)|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];i=i+1|0}c[A>>2]=c[D>>2];c[A+4>>2]=c[D+4>>2];oV(A,B);QK(w,c[((c[w>>2]&3|0)==2?w:k)+40>>2]|0,c[B>>2]|0,c[v>>2]|0,g)}else QK(w,c[((c[w>>2]&3|0)==2?w:k)+40>>2]|0,H,4,g);c[z>>2]=c[I>>2];c[z+4>>2]=c[I+4>>2];c[z+8>>2]=c[I+8>>2];c[z+12>>2]=c[I+12>>2];c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];jL(b,w,z,A);h[t>>3]=+h[t>>3]+m;h[y>>3]=+h[y>>3]+n;h[r>>3]=+h[r>>3]+m;h[x>>3]=+h[x>>3]+n;j=j+1|0}}else{if((f|0)==4){CJ(i,b);c[A>>2]=c[i>>2];c[A+4>>2]=c[i+4>>2];c[A+8>>2]=c[i+8>>2];c[A+12>>2]=c[i+12>>2];DJ(G,A)}QK(j,c[((c[j>>2]&3|0)==2?j:k)+40>>2]|0,G,4,g);c[z>>2]=c[I>>2];c[z+4>>2]=c[I+4>>2];c[z+8>>2]=c[I+8>>2];c[z+12>>2]=c[I+12>>2];c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];jL(b,j,z,A)}while(0);l=K;return}function BJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function CJ(a,b){a=a|0;b=b|0;b=c[b+16>>2]|0;h[22920]=(+h[b+32>>3]+ +h[b+16>>3])*.5;h[22921]=(+h[b+40>>3]+ +h[b+24>>3])*.5;c[a>>2]=c[45840];c[a+4>>2]=c[45841];c[a+8>>2]=c[45842];c[a+12>>2]=c[45843];return}function DJ(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0;f=+h[a>>3];d=+h[a+48>>3];i=(d+f)*.5;g=+h[a+8>>3];c=+h[a+56>>3];e=(c+g)*.5;f=d-f;g=c-g;f=+C(+(g*g+f*f))*.2;g=+h[b>>3]-i;c=+h[b+8>>3]-e;d=+C(+(c*c+g*g));if(!(d==0.0)){g=i-g/d*f;i=e-c/d*f;h[a+32>>3]=g;h[a+16>>3]=g;h[a+40>>3]=i;h[a+24>>3]=i}return}function EJ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0.0,G=0,H=0.0,I=0.0,J=0.0;E=l;l=l+208|0;t=E+192|0;s=E+176|0;B=E+32|0;w=E+16|0;x=E;y=E+160|0;z=E+144|0;u=E+128|0;v=E+112|0;g=e&2130706432;A=(e&8|0)==0?((g|0)==0?4:g):8;if((A|0)==436207616)FJ(a,b,d,f);else{D=uH((d<<6)+64|0)|0;p=d+-1|0;q=x+8|0;r=w+8|0;o=12.0;e=0;while(1){if((e|0)>=(d|0))break;n=b+(e<<4)|0;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];c[w+8>>2]=c[n+8>>2];c[w+12>>2]=c[n+12>>2];if((e|0)<(p|0)){e=e+1|0;n=b+(e<<4)|0;c[x>>2]=c[n>>2];c[x+4>>2]=c[n+4>>2];c[x+8>>2]=c[n+8>>2];c[x+12>>2]=c[n+12>>2]}else{c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2];e=e+1|0}m=+h[x>>3]-+h[w>>3];F=+h[q>>3]-+h[r>>3];m=+C(+(F*F+m*m))*.3333333333333333;o=o=(d|0))break;g=b+(i<<4)|0;c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[w+12>>2]=c[g+12>>2];if((i|0)<(p|0)){g=b+(i+1<<4)|0;c[x>>2]=c[g>>2];c[x+4>>2]=c[g+4>>2];c[x+8>>2]=c[g+8>>2];c[x+12>>2]=c[g+12>>2]}else{c[x>>2]=c[b>>2];c[x+4>>2]=c[b+4>>2];c[x+8>>2]=c[b+8>>2];c[x+12>>2]=c[b+12>>2]}m=+h[x>>3]-+h[w>>3];F=+h[q>>3]-+h[r>>3];m=o/+C(+(F*F+m*m));m=k?m*.3333333333333333:j?m*.5:m;g=D+(e<<4)|0;if(n){c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(y,m*.5,s,t);c[g>>2]=c[y>>2];c[g+4>>2]=c[y+4>>2];c[g+8>>2]=c[y+8>>2];c[g+12>>2]=c[y+12>>2]}else{c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2]}g=D+(e+1<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(z,m,s,t);c[g>>2]=c[z>>2];c[g+4>>2]=c[z+4>>2];c[g+8>>2]=c[z+8>>2];c[g+12>>2]=c[z+12>>2];g=e+3|0;G=D+(e+2<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(u,1.0-m,s,t);c[G>>2]=c[u>>2];c[G+4>>2]=c[u+4>>2];c[G+8>>2]=c[u+8>>2];c[G+12>>2]=c[u+12>>2];if(n){G=D+(g<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[t>>2]=c[x>>2];c[t+4>>2]=c[x+4>>2];c[t+8>>2]=c[x+8>>2];c[t+12>>2]=c[x+12>>2];GJ(v,1.0-m*.5,s,t);c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[G+8>>2]=c[v+8>>2];c[G+12>>2]=c[v+12>>2];e=e+4|0}else e=g;i=i+1|0}k=D+(e<<4)|0;c[k>>2]=c[D>>2];c[k+4>>2]=c[D+4>>2];c[k+8>>2]=c[D+8>>2];c[k+12>>2]=c[D+12>>2];k=D+(e+1<<4)|0;j=D+16|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];e=D+(e+2<<4)|0;k=D+32|0;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2];e=A&2147483647;a:do if((e|0)<201326592){if((e|0)>=83886080){if((e|0)<134217728){if((e|0)<100663296){switch(e|0){case 83886080:break;default:break a}if((d|0)==4){G=uH(192)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];p=G+16|0;t=b+16|0;c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];p=D+48|0;t=D+64|0;o=+h[t>>3];n=G+32|0;h[n>>3]=o;q=D+56|0;r=D+72|0;H=+h[r>>3];z=G+40|0;h[z>>3]=H;F=+h[p>>3]+o-+h[k>>3];u=G+48|0;h[u>>3]=F;J=+h[q>>3]+H-+h[D+40>>3];x=G+56|0;h[x>>3]=J;I=+h[t>>3]+F-+h[p>>3];p=G+64|0;h[p>>3]=I;m=+h[r>>3]+J-+h[q>>3];q=G+72|0;h[q>>3]=m;r=G+80|0;h[r>>3]=o+I-F;h[G+88>>3]=H+m-J;t=D+96|0;v=D+80|0;J=+h[v>>3];d=G+144|0;h[d>>3]=J;w=D+104|0;s=D+88|0;m=+h[s>>3];h[G+152>>3]=m;H=+h[t>>3]+J-+h[D+112>>3];y=G+128|0;h[y>>3]=H;F=+h[w>>3]+m-+h[D+120>>3];A=G+136|0;h[A>>3]=F;I=+h[v>>3]+H-+h[t>>3];t=G+112|0;h[t>>3]=I;o=+h[s>>3]+F-+h[w>>3];w=G+120|0;h[w>>3]=o;s=G+96|0;h[s>>3]=J+I-H;v=G+104|0;h[v>>3]=m+o-F;k=G+160|0;j=b+32|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];k=G+176|0;b=b+48|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];_O(a,G,12,f);c[B>>2]=c[n>>2];c[B+4>>2]=c[n+4>>2];c[B+8>>2]=c[n+8>>2];c[B+12>>2]=c[n+12>>2];F=+h[n>>3];o=+h[u>>3];F=F+F-o;u=B+16|0;h[u>>3]=F;m=+h[z>>3];H=+h[x>>3];m=m+m-H;x=B+24|0;h[x>>3]=m;z=B+32|0;h[z>>3]=+h[p>>3]+F-o;b=B+40|0;h[b>>3]=+h[q>>3]+m-H;f=B+48|0;c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];bP(a,B,4);c[B>>2]=c[s>>2];c[B+4>>2]=c[s+4>>2];c[B+8>>2]=c[s+8>>2];c[B+12>>2]=c[s+12>>2];H=+h[s>>3];m=+h[t>>3];H=H-(m-H);h[u>>3]=H;o=+h[v>>3];F=+h[w>>3];o=o-(F-o);h[x>>3]=o;h[z>>3]=+h[y>>3]+H-m;h[b>>3]=+h[A>>3]+o-F;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];bP(a,B,4);D_(G);break}else qa(102412,102423,737,102432)}if((e|0)<117440512){switch(e|0){case 100663296:break;default:break a}y=d+5|0;G=uH(y<<4)|0;z=b+16|0;H=+h[z>>3];H=(+h[b>>3]-H)*.625+H;h[G>>3]=H;A=b+40|0;J=+h[A>>3];d=b+24|0;v=D+48|0;w=D+56|0;x=D+72|0;J=(+h[d>>3]-J)*.5+J+(+h[w>>3]-+h[x>>3])*1.5;h[G+8>>3]=J;I=+h[z>>3];I=(+h[b>>3]-I)*.25+I;h[G+16>>3]=I;h[G+24>>3]=J;h[G+32>>3]=I;F=+h[A>>3];h[G+40>>3]=(+h[d>>3]-F)*.5+F;I=(+h[k>>3]-+h[v>>3])*.5+I;h[G+48>>3]=I;F=+h[A>>3];h[G+56>>3]=(+h[d>>3]-F)*.5+F;h[G+64>>3]=I;I=+h[A>>3];I=(+h[d>>3]-I)*.5+I+(+h[w>>3]-+h[x>>3]);h[G+72>>3]=I;h[G+80>>3]=H;h[G+88>>3]=I;h[G+96>>3]=H;I=I-(+h[w>>3]-+h[x>>3])*.25;h[G+104>>3]=I;h[G+112>>3]=+h[k>>3]+H-+h[v>>3];h[G+120>>3]=(+h[w>>3]-+h[x>>3])*.5+I;h[G+128>>3]=+h[G>>3];h[G+136>>3]=(+h[w>>3]-+h[x>>3])*.25+J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 117440512:break;default:break a}d=d+1|0;G=uH(d<<4)|0;h[G>>3]=+h[j>>3];z=D+56|0;A=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[z>>3]-+h[A>>3])*.5;h[G+16>>3]=+h[D+48>>3];J=+h[z>>3];h[G+24>>3]=J-(J-+h[A>>3])*.5;h[G+32>>3]=+h[b+32>>3];B=b+40|0;h[G+40>>3]=(+h[z>>3]-+h[A>>3])*.5+ +h[B>>3];h[G+48>>3]=+h[j>>3];h[G+56>>3]=(+h[z>>3]-+h[A>>3])*.5+ +h[B>>3];J=+h[b+8>>3];h[G+72>>3]=J-(J-+h[b+56>>3])*.5;h[G+64>>3]=+h[b>>3];_O(a,G,d,f);D_(G);break}}if((e|0)<167772160)if((e|0)<150994944){switch(e|0){case 134217728:break;default:break a}y=d+4|0;G=uH(y<<4)|0;z=b+16|0;F=+h[z>>3];x=D+48|0;F=(+h[b>>3]-F)*.5+F+(+h[k>>3]-+h[x>>3])*.25;h[G>>3]=F;A=b+40|0;J=+h[A>>3];d=b+24|0;J=(+h[d>>3]-J)*.5+J;h[G+8>>3]=J;h[G+16>>3]=F;v=D+56|0;w=D+72|0;H=(+h[v>>3]-+h[w>>3])*.5+J;h[G+24>>3]=H;F=(+h[k>>3]-+h[x>>3])*.5+F;h[G+32>>3]=F;h[G+40>>3]=H;h[G+48>>3]=F;F=(+h[v>>3]-+h[w>>3])*.5+H;h[G+56>>3]=F;I=+h[z>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*-.75;h[G+64>>3]=I;h[G+72>>3]=F;h[G+80>>3]=I;h[G+88>>3]=H;I=+h[z>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*-.25;h[G+96>>3]=I;h[G+104>>3]=H;h[G+112>>3]=I;h[G+120>>3]=J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 150994944:break;default:break a}y=d+2|0;G=uH(y<<4)|0;z=b+16|0;H=+h[z>>3];x=D+48|0;H=(+h[b>>3]-H)*.5+H+(+h[k>>3]-+h[x>>3])*.75;h[G>>3]=H;A=b+40|0;J=+h[A>>3];d=b+24|0;J=(+h[d>>3]-J)*.5+J;h[G+8>>3]=J;h[G+16>>3]=H;v=D+56|0;w=D+72|0;H=(+h[v>>3]-+h[w>>3])*.25+J;h[G+24>>3]=H;I=+h[z>>3];h[G+32>>3]=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*.25;I=(+h[v>>3]-+h[w>>3])*.5+H;h[G+40>>3]=I;F=+h[z>>3];h[G+48>>3]=(+h[b>>3]-F)*.5+F+(+h[k>>3]-+h[x>>3])*-.25;h[G+56>>3]=I;I=+h[z>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[x>>3])*-.75;h[G+64>>3]=I;h[G+72>>3]=H;h[G+80>>3]=I;h[G+88>>3]=J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else if((e|0)<184549376){switch(e|0){case 167772160:break;default:break a}y=d+1|0;G=uH(y<<4)|0;z=b+16|0;H=+h[z>>3];v=D+48|0;H=+h[k>>3]+H+(+h[b>>3]-H)*.5-+h[v>>3];h[G>>3]=H;A=b+40|0;J=+h[A>>3];d=b+24|0;w=D+56|0;x=D+72|0;J=(+h[d>>3]-J)*.5+J+(+h[w>>3]-+h[x>>3])*.25;h[G+8>>3]=J;H=H-+h[k>>3]+ +h[v>>3];h[G+16>>3]=H;h[G+24>>3]=+h[w>>3]+J-+h[x>>3];h[G+32>>3]=H;H=(+h[w>>3]-+h[x>>3])*.5+J;h[G+40>>3]=H;I=+h[z>>3];I=(+h[b>>3]-I)*.25+I;h[G+48>>3]=I;h[G+56>>3]=H;h[G+64>>3]=I;h[G+72>>3]=J;_O(a,G,y,f);h[B>>3]=+h[z>>3];J=+h[A>>3];h[B+8>>3]=(+h[d>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 184549376:break;default:break a}z=d+4|0;G=uH(z<<4)|0;y=b+16|0;H=+h[y>>3];I=+h[b>>3]-H;u=D+48|0;I=I*.125+H+(+h[k>>3]-+h[u>>3]+I)*.5;h[G>>3]=I;w=b+40|0;H=+h[w>>3];x=b+24|0;d=D+56|0;v=D+72|0;H=(+h[x>>3]-H)*.5+H+(+h[d>>3]-+h[v>>3])*.25;h[G+8>>3]=H;J=+h[y>>3];J=(+h[b>>3]-J)*.375+J;h[G+16>>3]=J;h[G+24>>3]=H;h[G+32>>3]=J;H=(+h[d>>3]-+h[v>>3])*.5+H;h[G+40>>3]=H;J=J-(+h[k>>3]-+h[u>>3])*.5;h[G+48>>3]=J;h[G+56>>3]=H;A=G+64|0;h[A>>3]=J;J=+h[w>>3];J=(+h[x>>3]-J)*.5+J+(+h[d>>3]-+h[v>>3])*-.25;h[G+72>>3]=J;H=I-(+h[k>>3]-+h[u>>3])*.5;h[G+80>>3]=H;h[G+88>>3]=J;h[G+96>>3]=H;J=J-(+h[d>>3]-+h[v>>3])*.5;h[G+104>>3]=J;v=G+112|0;h[v>>3]=I;h[G+120>>3]=J;_O(a,G,z,f);h[B>>3]=+h[y>>3];J=+h[w>>3];y=B+8|0;h[y>>3]=(+h[x>>3]-J)*.5+J;z=B+16|0;h[z>>3]=+h[A>>3];A=b+8|0;d=b+56|0;f=B+24|0;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);h[B>>3]=+h[v>>3];J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[z>>3]=+h[b>>3];h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);D_(G);break}}if((e|0)<33554432){if((e|0)<8){switch(e|0){case 4:break;default:break a}i=vH((d*96|0)+32|0)|0;e=0;g=0;while(1){j=g|1;k=i+(g<<4)|0;if((e|0)>=(d|0))break;b=e<<2;G=D+(b<<4)|0;c[k>>2]=c[G>>2];c[k+4>>2]=c[G+4>>2];c[k+8>>2]=c[G+8>>2];c[k+12>>2]=c[G+12>>2];G=i+(j<<4)|0;B=D+((b|1)<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+2<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+3<<4)|0;B=D+((b|2)<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+4<<4)|0;c[G>>2]=c[B>>2];c[G+4>>2]=c[B+4>>2];c[G+8>>2]=c[B+8>>2];c[G+12>>2]=c[B+12>>2];G=i+(g+5<<4)|0;b=D+((b|3)<<4)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];e=e+1|0;g=g+6|0}c[k>>2]=c[i>>2];c[k+4>>2]=c[i+4>>2];c[k+8>>2]=c[i+8>>2];c[k+12>>2]=c[i+12>>2];d=i+(j<<4)|0;G=i+16|0;c[d>>2]=c[G>>2];c[d+4>>2]=c[G+4>>2];c[d+8>>2]=c[G+8>>2];c[d+12>>2]=c[G+12>>2];aP(a,G,j,0,0,f&255);D_(i);break}if((e|0)<16777216){switch(e|0){case 8:break;default:break a}_O(a,b,d,f);g=B+16|0;e=0;while(1){if((e|0)>=(d|0))break a;G=e*3|0;f=D+(G+2<<4)|0;c[B>>2]=c[f>>2];c[B+4>>2]=c[f+4>>2];c[B+8>>2]=c[f+8>>2];c[B+12>>2]=c[f+12>>2];G=D+(G+4<<4)|0;c[g>>2]=c[G>>2];c[g+4>>2]=c[G+4>>2];c[g+8>>2]=c[G+8>>2];c[g+12>>2]=c[G+12>>2];bP(a,B,2);e=e+1|0}}switch(e|0){case 16777216:break;default:break a}g=d+1|0;i=uH(g<<4)|0;e=1;while(1){if((e|0)>=(d|0))break;G=i+(e<<4)|0;A=b+(e<<4)|0;c[G>>2]=c[A>>2];c[G+4>>2]=c[A+4>>2];c[G+8>>2]=c[A+8>>2];c[G+12>>2]=c[A+12>>2];e=e+1|0}b=d*3|0;A=D+(b+1<<4)|0;c[i>>2]=c[A>>2];c[i+4>>2]=c[A+4>>2];c[i+8>>2]=c[A+8>>2];c[i+12>>2]=c[A+12>>2];d=i+(d<<4)|0;G=D+(b+-1<<4)|0;c[d>>2]=c[G>>2];c[d+4>>2]=c[G+4>>2];c[d+8>>2]=c[G+8>>2];c[d+12>>2]=c[G+12>>2];_O(a,i,g,f);D_(i);c[B>>2]=c[G>>2];c[B+4>>2]=c[G+4>>2];c[B+8>>2]=c[G+8>>2];c[B+12>>2]=c[G+12>>2];G=B+16|0;c[G>>2]=c[A>>2];c[G+4>>2]=c[A+4>>2];c[G+8>>2]=c[A+8>>2];c[G+12>>2]=c[A+12>>2];f=B+32|0;h[f>>3]=+h[B>>3]+ +h[G>>3]-+h[D+(b<<4)>>3];h[B+40>>3]=+h[B+8>>3]+ +h[B+24>>3]-+h[D+(b<<4)+8>>3];bP(a,G,2);c[G>>2]=c[f>>2];c[G+4>>2]=c[f+4>>2];c[G+8>>2]=c[f+8>>2];c[G+12>>2]=c[f+12>>2];bP(a,B,2);break}else{if((e|0)<50331648){switch(e|0){case 33554432:break;default:break a}g=d+2|0;i=uH(g<<4)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];j=i+16|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];j=D+48|0;d=D+64|0;h[i+32>>3]=(+h[j>>3]-+h[d>>3])*.3333333333333333+ +h[k>>3];G=D+56|0;e=D+72|0;h[i+40>>3]=(+h[G>>3]-+h[e>>3])*.3333333333333333+ +h[D+40>>3];J=+h[j>>3];h[i+48>>3]=(J-+h[d>>3])*.3333333333333333+J;J=+h[G>>3];h[i+56>>3]=(J-+h[e>>3])*.3333333333333333+J;e=4;while(1){if((e|0)>=(g|0))break;G=i+(e<<4)|0;d=b+(e+-2<<4)|0;c[G>>2]=c[d>>2];c[G+4>>2]=c[d+4>>2];c[G+8>>2]=c[d+8>>2];c[G+12>>2]=c[d+12>>2];e=e+1|0}_O(a,i,g,f);D_(i);c[B>>2]=c[j>>2];c[B+4>>2]=c[j+4>>2];c[B+8>>2]=c[j+8>>2];c[B+12>>2]=c[j+12>>2];G=B+16|0;c[G>>2]=c[k>>2];c[G+4>>2]=c[k+4>>2];c[G+8>>2]=c[k+8>>2];c[G+12>>2]=c[k+12>>2];bP(a,B,2);break}if((e|0)>=67108864){switch(e|0){case 67108864:break;default:break a}if((d|0)==4){G=uH(96)|0;c[G>>2]=c[b>>2];c[G+4>>2]=c[b+4>>2];c[G+8>>2]=c[b+8>>2];c[G+12>>2]=c[b+12>>2];d=G+16|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];d=G+32|0;A=D+64|0;c[d>>2]=c[A>>2];c[d+4>>2]=c[A+4>>2];c[d+8>>2]=c[A+8>>2];c[d+12>>2]=c[A+12>>2];d=G+48|0;b=b+32|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=G+64|0;d=D+128|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];b=G+80|0;z=D+160|0;c[b>>2]=c[z>>2];c[b+4>>2]=c[z+4>>2];c[b+8>>2]=c[z+8>>2];c[b+12>>2]=c[z+12>>2];_O(a,G,6,f);D_(G);h[B>>3]=+h[D+176>>3]+ +h[j>>3]-+h[D>>3];h[B+8>>3]=+h[D+184>>3]+ +h[D+24>>3]-+h[D+8>>3];G=B+16|0;c[G>>2]=c[A>>2];c[G+4>>2]=c[A+4>>2];c[G+8>>2]=c[A+8>>2];c[G+12>>2]=c[A+12>>2];bP(a,B,2);c[G>>2]=c[d>>2];c[G+4>>2]=c[d+4>>2];c[G+8>>2]=c[d+8>>2];c[G+12>>2]=c[d+12>>2];bP(a,B,2);c[G>>2]=c[D>>2];c[G+4>>2]=c[D+4>>2];c[G+8>>2]=c[D+8>>2];c[G+12>>2]=c[D+12>>2];bP(a,B,2);break}else qa(102412,102423,714,102432)}switch(e|0){case 50331648:break;default:break a}g=d+3|0;i=uH(g<<4)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];J=+h[b>>3];h[i+16>>3]=J-(J-+h[j>>3])*.25;e=D+56|0;J=(+h[e>>3]-+h[D+72>>3])*.3333333333333333+ +h[b+8>>3];h[i+24>>3]=J;I=+h[b>>3];h[i+32>>3]=I-(I-+h[j>>3])*2.0;h[i+40>>3]=J;J=+h[b>>3];h[i+48>>3]=J-(J-+h[j>>3])*2.25;h[i+56>>3]=+h[e>>3];h[i+64>>3]=+h[D+48>>3];h[i+72>>3]=+h[e>>3];e=4;while(1){if((e|0)>=(g|0))break;G=i+(e<<4)|0;d=b+(e+-3<<4)|0;c[G>>2]=c[d>>2];c[G+4>>2]=c[d+4>>2];c[G+8>>2]=c[d+8>>2];c[G+12>>2]=c[d+12>>2];e=e+1|0}_O(a,i,g,f);D_(i);break}}else if((e|0)<318767104){if((e|0)<251658240){if((e|0)<218103808){switch(e|0){case 201326592:break;default:break a}G=d<<4;u=uH(G)|0;v=b+16|0;J=+h[v>>3];h[u>>3]=J;z=b+40|0;I=+h[z>>3];A=b+24|0;y=D+48|0;w=D+56|0;x=D+72|0;I=(+h[A>>3]-I)*.5+I+(+h[w>>3]-+h[x>>3])*.125;h[u+8>>3]=I;H=(+h[k>>3]-+h[y>>3])*2.0+J;h[u+16>>3]=H;h[u+24>>3]=I;h[u+32>>3]=H;I=(+h[w>>3]-+h[x>>3])*.5+I;h[u+40>>3]=I;h[u+48>>3]=J;h[u+56>>3]=I;_O(a,u,d,f);D_(u);G=uH(G)|0;I=+h[k>>3]+ +h[v>>3]-+h[y>>3];h[G>>3]=I;J=+h[z>>3];J=(+h[A>>3]-J)*.5+J+(+h[w>>3]-+h[x>>3])*-.625;h[G+8>>3]=J;H=+h[k>>3]-+h[y>>3]+I;y=G+16|0;h[y>>3]=H;h[G+24>>3]=J;h[G+32>>3]=H;J=(+h[w>>3]-+h[x>>3])*.5+J;h[G+40>>3]=J;h[G+48>>3]=I;h[G+56>>3]=J;_O(a,G,d,f);h[B>>3]=+h[y>>3];J=+h[z>>3];h[B+8>>3]=(+h[A>>3]-J)*.5+J;h[B+16>>3]=+h[b>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}if((e|0)<234881024){switch(e|0){case 218103808:break;default:break a}G=d<<4;w=uH(G)|0;J=+h[b>>3];h[w>>3]=J;y=b+40|0;I=+h[y>>3];z=b+24|0;x=D+56|0;A=D+72|0;I=(+h[z>>3]-I)*.5+I+(+h[x>>3]-+h[A>>3])*.125;h[w+8>>3]=I;h[w+16>>3]=J;H=(+h[x>>3]-+h[A>>3])*.5+I;h[w+24>>3]=H;J=J-(+h[x>>3]-+h[A>>3])*2.0;h[w+32>>3]=J;h[w+40>>3]=H;h[w+48>>3]=J;h[w+56>>3]=I;_O(a,w,d,f);D_(w);G=uH(G)|0;I=+h[b>>3]-+h[k>>3]+ +h[D+48>>3];h[G>>3]=I;J=+h[y>>3];J=(+h[z>>3]-J)*.5+J+(+h[x>>3]-+h[A>>3])*-.625;h[G+8>>3]=J;h[G+16>>3]=I;H=(+h[x>>3]-+h[A>>3])*.5+J;h[G+24>>3]=H;I=I-(+h[x>>3]-+h[A>>3]);h[G+32>>3]=I;h[G+40>>3]=H;A=G+48|0;h[A>>3]=I;h[G+56>>3]=J;_O(a,G,d,f);h[B>>3]=+h[b+16>>3];J=+h[y>>3];h[B+8>>3]=(+h[z>>3]-J)*.5+J;h[B+16>>3]=+h[A>>3];h[B+24>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 234881024:break;default:break a}G=d<<4;y=uH(G)|0;u=b+16|0;I=+h[u>>3];v=D+48|0;I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[v>>3])*-1.125;h[y>>3]=I;w=b+40|0;J=+h[w>>3];x=b+24|0;A=D+56|0;z=D+72|0;J=(+h[x>>3]-J)*.5+J+(+h[A>>3]-+h[z>>3])*.125;h[y+8>>3]=J;H=+h[k>>3]-+h[v>>3]+I;h[y+16>>3]=H;h[y+24>>3]=J;h[y+32>>3]=H;J=(+h[A>>3]-+h[z>>3])*.5+J;h[y+40>>3]=J;h[y+48>>3]=I;h[y+56>>3]=J;_O(a,y,d,f);D_(y);y=uH(G)|0;J=+h[u>>3];J=(+h[b>>3]-J)*.5+J+(+h[k>>3]-+h[v>>3])*-1.125;h[y>>3]=J;I=+h[w>>3];I=(+h[x>>3]-I)*.5+I+(+h[A>>3]-+h[z>>3])*-.625;h[y+8>>3]=I;H=+h[k>>3]-+h[v>>3]+J;h[y+16>>3]=H;h[y+24>>3]=I;h[y+32>>3]=H;I=(+h[A>>3]-+h[z>>3])*.5+I;h[y+40>>3]=I;h[y+48>>3]=J;h[y+56>>3]=I;_O(a,y,d,f);D_(y);y=uH(G)|0;I=+h[u>>3];I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[v>>3])*.125;h[y>>3]=I;J=+h[w>>3];J=(+h[x>>3]-J)*.5+J+(+h[A>>3]-+h[z>>3])*-.625;h[y+8>>3]=J;H=+h[k>>3]-+h[v>>3]+I;h[y+16>>3]=H;h[y+24>>3]=J;h[y+32>>3]=H;J=(+h[A>>3]-+h[z>>3])*.5+J;h[y+40>>3]=J;h[y+48>>3]=I;h[y+56>>3]=J;_O(a,y,d,f);D_(y);G=uH(G)|0;J=+h[u>>3];J=(+h[b>>3]-J)*.5+J+(+h[k>>3]-+h[v>>3])*.125;h[G>>3]=J;I=+h[w>>3];I=(+h[x>>3]-I)*.5+I+(+h[A>>3]-+h[z>>3])*.125;h[G+8>>3]=I;H=+h[k>>3]-+h[v>>3]+J;y=G+16|0;h[y>>3]=H;h[G+24>>3]=I;h[G+32>>3]=H;I=(+h[A>>3]-+h[z>>3])*.5+I;h[G+40>>3]=I;h[G+48>>3]=J;h[G+56>>3]=I;_O(a,G,d,f);h[B>>3]=+h[y>>3];I=+h[w>>3];y=B+8|0;h[y>>3]=(+h[x>>3]-I)*.5+I;z=B+16|0;h[z>>3]=+h[b>>3];A=b+8|0;d=b+56|0;f=B+24|0;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+I;bP(a,B,2);I=+h[u>>3];h[B>>3]=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[v>>3])*-1.125;J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[z>>3]=I;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);D_(G);break}}if((e|0)<285212672)if((e|0)<268435456){switch(e|0){case 251658240:break;default:break a}G=d<<4;u=uH(G)|0;v=b+16|0;J=+h[v>>3];y=D+48|0;J=J-+h[k>>3]+(+h[b>>3]-J)*.5+ +h[y>>3];h[u>>3]=J;w=b+40|0;I=+h[w>>3];x=b+24|0;A=D+56|0;z=D+72|0;I=(+h[x>>3]-I)*.5+I+(+h[A>>3]-+h[z>>3])*.125;h[u+8>>3]=I;H=(+h[k>>3]-+h[y>>3])*2.0+J;h[u+16>>3]=H;h[u+24>>3]=I;h[u+32>>3]=H;I=(+h[A>>3]-+h[z>>3])*.5+I;h[u+40>>3]=I;h[u+48>>3]=J;h[u+56>>3]=I;_O(a,u,d,f);D_(u);G=uH(G)|0;I=+h[v>>3];I=I-+h[k>>3]+(+h[b>>3]-I)*.5+ +h[y>>3];h[G>>3]=I;J=+h[w>>3];J=(+h[x>>3]-J)*.5+J+(+h[A>>3]-+h[z>>3])*-.625;h[G+8>>3]=J;H=(+h[k>>3]-+h[y>>3])*2.0+I;y=G+16|0;h[y>>3]=H;h[G+24>>3]=J;h[G+32>>3]=H;J=(+h[A>>3]-+h[z>>3])*.5+J;h[G+40>>3]=J;h[G+48>>3]=I;h[G+56>>3]=J;_O(a,G,d,f);h[B>>3]=+h[y>>3];J=+h[w>>3];y=B+8|0;h[y>>3]=(+h[x>>3]-J)*.5+J;z=B+16|0;h[z>>3]=+h[b>>3];A=b+8|0;d=b+56|0;f=B+24|0;h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);h[B>>3]=+h[v>>3];J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[z>>3]=+h[G>>3];h[f>>3]=(+h[A>>3]-+h[d>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 268435456:break;default:break a}G=uH(d<<4)|0;h[G>>3]=+h[b>>3];v=D+48|0;x=D+56|0;y=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[x>>3]-+h[y>>3])*.5;h[G+16>>3]=+h[v>>3];J=+h[x>>3];h[G+24>>3]=J-(J-+h[y>>3])*.5;h[G+32>>3]=+h[b+32>>3];z=b+40|0;h[G+40>>3]=(+h[x>>3]-+h[y>>3])*.5+ +h[z>>3];h[G+48>>3]=+h[b>>3];h[G+56>>3]=(+h[x>>3]-+h[y>>3])*.5+ +h[z>>3];_O(a,G,d,f);w=b+16|0;J=(+h[k>>3]-+h[v>>3])*.25;I=J+ +h[w>>3];h[B>>3]=I;H=+h[z>>3];u=b+24|0;F=+h[x>>3]-+h[y>>3];H=(+h[u>>3]-H)*.5+H+F*.125;A=B+8|0;h[A>>3]=H;d=B+16|0;h[d>>3]=J+I;f=B+24|0;h[f>>3]=H-F*.25;bP(a,B,2);F=(+h[k>>3]-+h[v>>3])*.25;H=F+ +h[w>>3];h[B>>3]=H;I=+h[z>>3];J=+h[x>>3]-+h[y>>3];I=(+h[u>>3]-I)*.5+I+J*-.125;h[A>>3]=I;h[d>>3]=F+H;h[f>>3]=J*.25+I;bP(a,B,2);I=(+h[k>>3]-+h[v>>3])*.25;h[B>>3]=I+ +h[w>>3];J=(+h[x>>3]-+h[y>>3])*.75+ +h[z>>3];h[A>>3]=J;h[d>>3]=+h[b>>3]-I;h[f>>3]=J;bP(a,B,2);D_(G);break}else if((e|0)<301989888){switch(e|0){case 285212672:break;default:break a}y=uH(d<<4)|0;v=b+16|0;I=+h[v>>3];z=D+48|0;I=(+h[k>>3]-+h[z>>3]+(+h[b>>3]-I))*.5+I;h[y>>3]=I;w=b+40|0;F=+h[w>>3];x=b+24|0;F=(+h[k>>3]-+h[z>>3]+(+h[x>>3]-F))*.5+F;h[y+8>>3]=F;h[y+16>>3]=I;I=+h[w>>3];o=+h[k>>3]-+h[z>>3];I=(+h[x>>3]-I-o)*.5+I;h[y+24>>3]=I;J=+h[v>>3];J=(+h[b>>3]-J-o)*.5+J;h[y+32>>3]=J;h[y+40>>3]=I;h[y+48>>3]=J;h[y+56>>3]=F;_O(a,y,d,f);D_(y);F=+h[v>>3];F=(+h[b>>3]-F)*.5+F;J=+h[k>>3]-+h[z>>3];I=J*.75;o=F+I;h[B>>3]=o;H=+h[w>>3];H=(+h[x>>3]-H)*.5+H;I=H+I;y=B+8|0;h[y>>3]=I;A=B+16|0;h[A>>3]=o;J=J*-.75;H=H+J;G=B+24|0;h[G>>3]=H;J=F+J;h[B+32>>3]=J;h[B+40>>3]=H;h[B+48>>3]=J;h[B+56>>3]=I;d=B+64|0;c[d>>2]=c[B>>2];c[d+4>>2]=c[B+4>>2];c[d+8>>2]=c[B+8>>2];c[d+12>>2]=c[B+12>>2];bP(a,B,5);I=+h[v>>3];J=+h[b>>3];h[B>>3]=(J-I)*.5+I+(+h[k>>3]-+h[z>>3])*.75;I=+h[w>>3];h[y>>3]=(+h[x>>3]-I)*.5+I;h[A>>3]=J;d=b+8|0;f=b+56|0;h[G>>3]=(+h[d>>3]-+h[f>>3])*.5+I;bP(a,B,2);I=+h[v>>3];h[B>>3]=I;J=+h[w>>3];h[y>>3]=(+h[x>>3]-J)*.5+J;h[A>>3]=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[z>>3])*-.75;h[G>>3]=(+h[d>>3]-+h[f>>3])*.5+J;bP(a,B,2);break}else{switch(e|0){case 301989888:break;default:break a}A=d+12|0;G=uH(A<<4)|0;x=b+16|0;m=+h[x>>3];s=D+48|0;m=(+h[b>>3]-m)*.5+m+(+h[k>>3]-+h[s>>3])*.25;h[G>>3]=m;y=b+40|0;F=+h[y>>3];z=b+24|0;v=D+56|0;w=D+72|0;F=(+h[v>>3]-+h[w>>3]+(+h[z>>3]-F))*.5+F;u=G+8|0;h[u>>3]=F;h[G+16>>3]=m;F=(+h[v>>3]-+h[w>>3])*.125+F;t=G+24|0;h[t>>3]=F;H=m-(+h[k>>3]-+h[s>>3])*.125;d=G+32|0;h[d>>3]=H;o=(+h[v>>3]-+h[w>>3])*.125+F;h[G+40>>3]=o;h[G+48>>3]=m;I=(+h[v>>3]-+h[w>>3])*.125+o;h[G+56>>3]=I;h[G+64>>3]=m;m=(+h[v>>3]-+h[w>>3])*.125+I;h[G+72>>3]=m;h[G+80>>3]=H;h[G+88>>3]=m;H=+h[x>>3];H=(+h[b>>3]-H)*.5+H;h[G+96>>3]=H;h[G+104>>3]=I;J=H-(+h[k>>3]-+h[s>>3])*.125;h[G+112>>3]=J;h[G+120>>3]=m;J=J-(+h[k>>3]-+h[s>>3])*.125;h[G+128>>3]=J;h[G+136>>3]=m;h[G+144>>3]=J;h[G+152>>3]=I;I=(+h[k>>3]-+h[s>>3])*.125+J;h[G+160>>3]=I;h[G+168>>3]=o;h[G+176>>3]=J;h[G+184>>3]=F;h[G+192>>3]=J;J=+h[u>>3];h[G+200>>3]=J;h[G+208>>3]=I;h[G+216>>3]=J;u=G+224|0;h[u>>3]=H;h[G+232>>3]=+h[t>>3];h[G+240>>3]=+h[d>>3];h[G+248>>3]=J;_O(a,G,A,f);J=+h[u>>3];h[B>>3]=J;H=+h[y>>3];H=(+h[z>>3]-H)*.5+H;A=B+8|0;h[A>>3]=H;d=B+16|0;h[d>>3]=J;f=B+24|0;h[f>>3]=(+h[v>>3]-+h[w>>3])*.125+H;bP(a,B,2);H=+h[u>>3];h[B>>3]=H;J=+h[y>>3];I=+h[v>>3]-+h[w>>3];J=(+h[z>>3]-J)*.5+J+I*.25;h[A>>3]=J;h[d>>3]=H;h[f>>3]=I*.125+J;bP(a,B,2);h[B>>3]=+h[x>>3];J=+h[y>>3];h[A>>3]=(+h[z>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}}else{if((e|0)<369098752){if((e|0)<335544320){switch(e|0){case 318767104:break;default:break a}A=d+4|0;G=uH(A<<4)|0;x=b+16|0;H=+h[x>>3];d=D+48|0;H=(+h[b>>3]-H)*.5+H+(+h[k>>3]-+h[d>>3])*.125;h[G>>3]=H;y=b+40|0;J=+h[y>>3];z=b+24|0;v=D+56|0;w=D+72|0;J=(+h[v>>3]-+h[w>>3]+(+h[z>>3]-J))*.5+J;h[G+8>>3]=J;o=(+h[k>>3]-+h[d>>3])*.125+H;h[G+16>>3]=o;I=(+h[v>>3]-+h[w>>3])*.125+J;h[G+24>>3]=I;h[G+32>>3]=o;o=(+h[v>>3]-+h[w>>3])*.25+I;h[G+40>>3]=o;h[G+48>>3]=H;F=(+h[v>>3]-+h[w>>3])*.125+o;h[G+56>>3]=F;H=H-(+h[k>>3]-+h[d>>3])*.25;h[G+64>>3]=H;h[G+72>>3]=F;F=H-(+h[k>>3]-+h[d>>3])*.125;h[G+80>>3]=F;h[G+88>>3]=o;h[G+96>>3]=F;h[G+104>>3]=I;h[G+112>>3]=H;h[G+120>>3]=J;_O(a,G,A,f);J=+h[x>>3];J=(+h[b>>3]-J)*.5+J;h[B>>3]=J;H=+h[y>>3];H=(+h[z>>3]-H)*.5+H;A=B+8|0;h[A>>3]=H;d=B+16|0;h[d>>3]=J;f=B+24|0;h[f>>3]=(+h[v>>3]-+h[w>>3])*.125+H;bP(a,B,2);H=+h[x>>3];H=(+h[b>>3]-H)*.5+H;h[B>>3]=H;J=+h[y>>3];I=+h[v>>3]-+h[w>>3];J=(+h[z>>3]-J)*.5+J+I*.25;h[A>>3]=J;h[d>>3]=H;h[f>>3]=I*.125+J;bP(a,B,2);h[B>>3]=+h[x>>3];J=+h[y>>3];h[A>>3]=(+h[z>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}if((e|0)<352321536){switch(e|0){case 335544320:break;default:break a}x=d+12|0;G=uH(x<<4)|0;y=b+16|0;m=+h[y>>3];u=D+48|0;m=(+h[b>>3]-m)*.5+m+(+h[k>>3]-+h[u>>3])*.25;h[G>>3]=m;z=b+40|0;F=+h[z>>3];A=b+24|0;s=D+56|0;t=D+72|0;F=(+h[s>>3]-+h[t>>3]+(+h[A>>3]-F))*.5+F;d=G+8|0;h[d>>3]=F;h[G+16>>3]=m;F=(+h[s>>3]-+h[t>>3])*.125+F;v=G+24|0;h[v>>3]=F;I=m-(+h[k>>3]-+h[u>>3])*.125;w=G+32|0;h[w>>3]=I;o=(+h[s>>3]-+h[t>>3])*.125+F;h[G+40>>3]=o;h[G+48>>3]=m;H=(+h[s>>3]-+h[t>>3])*.125+o;h[G+56>>3]=H;h[G+64>>3]=m;m=(+h[s>>3]-+h[t>>3])*.125+H;h[G+72>>3]=m;h[G+80>>3]=I;h[G+88>>3]=m;I=+h[y>>3];I=(+h[b>>3]-I)*.5+I;h[G+96>>3]=I;h[G+104>>3]=H;J=I-(+h[k>>3]-+h[u>>3])*.125;h[G+112>>3]=J;h[G+120>>3]=m;J=J-(+h[k>>3]-+h[u>>3])*.125;h[G+128>>3]=J;h[G+136>>3]=m;h[G+144>>3]=J;h[G+152>>3]=H;H=(+h[k>>3]-+h[u>>3])*.125+J;h[G+160>>3]=H;h[G+168>>3]=o;h[G+176>>3]=J;h[G+184>>3]=F;h[G+192>>3]=J;J=+h[d>>3];h[G+200>>3]=J;h[G+208>>3]=H;h[G+216>>3]=J;d=G+224|0;h[d>>3]=I;h[G+232>>3]=+h[v>>3];h[G+240>>3]=+h[w>>3];h[G+248>>3]=J;_O(a,G,x,f);c[B>>2]=c[d>>2];c[B+4>>2]=c[d+4>>2];c[B+8>>2]=c[d+8>>2];c[B+12>>2]=c[d+12>>2];d=B+16|0;h[d>>3]=+h[B>>3];J=+h[z>>3];f=B+24|0;h[f>>3]=(+h[A>>3]-J)*.5+J;bP(a,B,2);h[B>>3]=+h[y>>3];J=+h[z>>3];h[B+8>>3]=(+h[A>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}else{switch(e|0){case 352321536:break;default:break a}A=d+4|0;G=uH(A<<4)|0;x=b+16|0;I=+h[x>>3];w=D+48|0;I=(+h[b>>3]-I)*.5+I+(+h[k>>3]-+h[w>>3])*.125;h[G>>3]=I;y=b+40|0;J=+h[y>>3];z=b+24|0;u=D+56|0;v=D+72|0;J=(+h[u>>3]-+h[v>>3]+(+h[z>>3]-J))*.5+J;d=G+8|0;h[d>>3]=J;o=(+h[k>>3]-+h[w>>3])*.125+I;h[G+16>>3]=o;H=(+h[u>>3]-+h[v>>3])*.125+J;h[G+24>>3]=H;h[G+32>>3]=o;o=(+h[u>>3]-+h[v>>3])*.25+H;h[G+40>>3]=o;h[G+48>>3]=I;F=(+h[u>>3]-+h[v>>3])*.125+o;h[G+56>>3]=F;I=I-(+h[k>>3]-+h[w>>3])*.25;h[G+64>>3]=I;h[G+72>>3]=F;F=I-(+h[k>>3]-+h[w>>3])*.125;h[G+80>>3]=F;h[G+88>>3]=o;h[G+96>>3]=F;h[G+104>>3]=H;h[G+112>>3]=I;h[G+120>>3]=J;_O(a,G,A,f);J=+h[x>>3];J=(+h[b>>3]-J)*.5+J;h[B>>3]=J;A=B+8|0;h[A>>3]=+h[d>>3];d=B+16|0;h[d>>3]=J;J=+h[y>>3];f=B+24|0;h[f>>3]=(+h[z>>3]-J)*.5+J;bP(a,B,2);h[B>>3]=+h[x>>3];J=+h[y>>3];h[A>>3]=(+h[z>>3]-J)*.5+J;h[d>>3]=+h[b>>3];h[f>>3]=(+h[b+8>>3]-+h[b+56>>3])*.5+J;bP(a,B,2);D_(G);break}}if((e|0)<402653184)if((e|0)<385875968){switch(e|0){case 369098752:break;default:break a}d=d+5|0;G=uH(d<<4)|0;B=D+48|0;h[G>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;y=D+56|0;A=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[y>>3]-+h[A>>3])*.5;h[G+16>>3]=+h[B>>3];J=+h[y>>3];h[G+24>>3]=J-(J-+h[A>>3])*.5;h[G+32>>3]=+h[b+32>>3];z=b+40|0;h[G+40>>3]=+h[z>>3];J=+h[k>>3];h[G+48>>3]=(J-+h[B>>3])*.5+J;h[G+56>>3]=+h[z>>3];J=+h[k>>3];h[G+64>>3]=(J-+h[B>>3])*.5+J;h[G+72>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+80>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;h[G+88>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+96>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;z=b+56|0;h[G+104>>3]=+h[z>>3];A=b+8|0;J=+h[A>>3];h[G+120>>3]=J-(J-+h[z>>3])*.5;h[G+112>>3]=+h[b>>3];h[G+136>>3]=+h[A>>3];h[G+128>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;_O(a,G,d,f);D_(G);break}else{switch(e|0){case 385875968:break;default:break a}d=d+3|0;G=uH(d<<4)|0;B=D+48|0;h[G>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;y=D+56|0;A=D+72|0;h[G+8>>3]=+h[D+24>>3]-(+h[y>>3]-+h[A>>3])*.5;h[G+16>>3]=+h[B>>3];J=+h[y>>3];h[G+24>>3]=J-(J-+h[A>>3])*.5;h[G+32>>3]=+h[b+32>>3];z=b+40|0;h[G+40>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+48>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;h[G+56>>3]=(+h[y>>3]-+h[A>>3])*.5+ +h[z>>3];h[G+64>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;z=b+56|0;h[G+72>>3]=+h[z>>3];A=b+8|0;J=+h[A>>3];h[G+88>>3]=J-(J-+h[z>>3])*.5;h[G+80>>3]=+h[b>>3];h[G+104>>3]=+h[A>>3];h[G+96>>3]=+h[j>>3]-(+h[k>>3]-+h[B>>3])*.5;_O(a,G,d,f);D_(G);break}else if((e|0)<419430400){switch(e|0){case 402653184:break;default:break a}d=d+3|0;G=uH(d<<4)|0;h[G>>3]=+h[b>>3];y=b+8|0;z=D+48|0;A=D+56|0;B=D+72|0;h[G+8>>3]=+h[y>>3]-(+h[A>>3]-+h[B>>3])*.5;J=+h[k>>3];h[G+16>>3]=(J-+h[z>>3])*.5+J;h[G+24>>3]=+h[y>>3]-(+h[A>>3]-+h[B>>3])*.5;J=+h[k>>3];h[G+32>>3]=(J-+h[z>>3])*.5+J;h[G+40>>3]=+h[D+40>>3];h[G+48>>3]=+h[b+16>>3];J=+h[b+24>>3];y=b+40|0;h[G+56>>3]=J-(J-+h[y>>3])*.5;J=+h[k>>3];h[G+64>>3]=(J-+h[z>>3])*.5+J;h[G+72>>3]=+h[y>>3];h[G+88>>3]=(+h[A>>3]-+h[B>>3])*.5+ +h[y>>3];J=+h[k>>3];h[G+80>>3]=(J-+h[z>>3])*.5+J;h[G+104>>3]=(+h[A>>3]-+h[B>>3])*.5+ +h[b+56>>3];h[G+96>>3]=+h[b>>3];_O(a,G,d,f);D_(G);break}else{switch(e|0){case 419430400:break;default:break a}d=d+5|0;G=uH(d<<4)|0;h[G>>3]=+h[b>>3];B=b+8|0;A=D+48|0;y=D+56|0;z=D+72|0;h[G+8>>3]=+h[B>>3]-(+h[y>>3]-+h[z>>3])*.5;J=+h[k>>3];h[G+16>>3]=(J-+h[A>>3])*.5+J;h[G+24>>3]=+h[B>>3]-(+h[y>>3]-+h[z>>3])*.5;J=+h[k>>3];h[G+32>>3]=(J-+h[A>>3])*.5+J;h[G+40>>3]=+h[D+40>>3];h[G+48>>3]=+h[b+16>>3];J=+h[b+24>>3];B=b+40|0;h[G+56>>3]=J-(J-+h[B>>3])*.5;J=+h[k>>3];h[G+64>>3]=(J-+h[A>>3])*.5+J;h[G+72>>3]=+h[B>>3];h[G+88>>3]=(+h[y>>3]-+h[z>>3])*.5+ +h[B>>3];J=+h[k>>3];h[G+80>>3]=(J-+h[A>>3])*.5+J;B=b+56|0;h[G+104>>3]=(+h[y>>3]-+h[z>>3])*.5+ +h[B>>3];h[G+96>>3]=+h[j>>3]-(+h[k>>3]-+h[A>>3])*.5;h[G+112>>3]=+h[j>>3]-(+h[k>>3]-+h[A>>3])*.5;h[G+120>>3]=+h[B>>3];h[G+128>>3]=+h[b+48>>3];h[G+136>>3]=+h[B>>3];_O(a,G,d,f);D_(G);break}}while(0);D_(D)}l=E;return}function FJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0;f=l;l=l+112|0;g=f;k=+h[b+8>>3]*2.0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];h[g+16>>3]=+h[b+16>>3];h[g+24>>3]=k-+h[b+24>>3];h[g+32>>3]=+h[b+32>>3];h[g+40>>3]=k-+h[b+40>>3];h[g+48>>3]=+h[b+48>>3];h[g+56>>3]=k-+h[b+56>>3];h[g+64>>3]=+h[b+64>>3];h[g+72>>3]=k-+h[b+72>>3];h[g+80>>3]=+h[b+80>>3];h[g+88>>3]=k-+h[b+88>>3];i=g+96|0;j=b+96|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];aP(a,b,d,0,0,e&255);aP(a,g,7,0,0,0);l=f;return}function GJ(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0.0,f=0.0;f=+h[c>>3];e=+h[c+8>>3];e=(+h[d+8>>3]-e)*b+e;h[a>>3]=(+h[d>>3]-f)*b+f;h[a+8>>3]=e;return}function HJ(a){a=a|0;a=c[(c[a+16>>2]|0)+8>>2]|0;if(a){a=c[c[a+4>>2]>>2]|0;if((a|0)!=89)if((a|0)==92)a=2;else return ((a|0)==91?3:(a|0)==94?4:0)|0;else a=1}else a=0;return a|0}function IJ(b){b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,D=0,G=0,H=0,I=0,J=0,L=0,M=0,N=0,P=0.0,Q=0.0,R=0,S=0,T=0.0,U=0.0,V=0.0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0;aa=l;l=l+144|0;J=aa+112|0;N=aa+104|0;G=aa+96|0;H=aa+88|0;i=aa+80|0;Y=aa+64|0;_=aa+48|0;R=aa+40|0;S=aa+32|0;j=aa+24|0;p=aa+16|0;D=aa+136|0;A=aa+128|0;L=aa;$=uH(48)|0;Z=b+16|0;W=c[(c[(c[Z>>2]|0)+8>>2]|0)+8>>2]|0;g=(W|0)==1616;X=c[W>>2]|0;d=c[W+4>>2]|0;e=c[W+8>>2]|0;m=+h[W+16>>3];n=+h[W+32>>3];o=+h[W+24>>3];X=X|(QL(xx(b,102485)|0)|0)&255;do if(!g){if(!X){W=c[Z>>2]|0;k=+h[W+32>>3]*72.0;f=+h[W+40>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0);k=+(~~(k+(k>=0.0?.5:-.5))|0);break}k=+SJ(b);if(k>0.0)f=k;else{W=c[Z>>2]|0;f=+h[W+32>>3];k=+h[W+40>>3];k=(f=0.0?.5:-.5))|0);f=k}}else{f=0.0;k=0.0}while(0);W=KL(b,c[46390]|0,d,0)|0;V=+LL(b,c[46392]|0,0.0,-360.0)+m;if(!e){U=+LL(b,c[46393]|0,0.0,-100.0);I=KL(b,c[46389]|0,4,0)|0;T=+LL(b,c[46394]|0,0.0,-100.0)}else{I=e;U=n;T=o}d=c[(c[Z>>2]|0)+104>>2]|0;e=d+24|0;c[Y>>2]=c[e>>2];c[Y+4>>2]=c[e+4>>2];c[Y+8>>2]=c[e+8>>2];c[Y+12>>2]=c[e+12>>2];q=+h[Y>>3];if(q>0.0){if(!g)M=11}else if(!(g|!(+h[Y+8>>3]>0.0)))M=11;if((M|0)==11){d=xx(b,102470)|0;do if(d){h[p>>3]=0.0;h[j>>3]=0.0;c[i>>2]=j;c[i+4>>2]=p;d=N1(d,102477,i)|0;m=+h[j>>3];if(m<0.0){h[j>>3]=0.0;m=0.0}n=+h[p>>3];if(n<0.0){h[p>>3]=0.0;o=0.0}else o=n;if((d|0)<=0){n=q+16.0;h[Y>>3]=n;m=8.0;break}m=m*72.0;m=+(~~(m+(m>=0.0?.5:-.5))<<1|0);n=q+m;h[Y>>3]=n;if((d|0)!=1){m=o*72.0;m=+(~~(m+(m>=0.0?.5:-.5))<<1|0)}}else{n=q+16.0;h[Y>>3]=n;m=8.0}while(0);d=Y+8|0;h[d>>3]=+h[d>>3]+m;d=c[(c[Z>>2]|0)+104>>2]|0;q=n}s=+h[d+24>>3];m=+h[c[(c[(ez(b)|0)+16>>2]|0)+8>>2]>>3];if(m>0.0){P=m*72.0;P=+(~~(P+(P>=0.0?.5:-.5))|0);Q=+TJ(q,P);h[Y>>3]=Q;p=Y+8|0;h[p>>3]=+TJ(+h[p>>3],P)}else Q=q;d=c[(c[Z>>2]|0)+8>>2]|0;do if(!(a[d+12>>0]|0)){e=xx(b,105999)|0;if((e|0)!=0?(a[e>>0]|0)!=0:0){CC(A,ez(b)|0,e);d=c[A>>2]|0;g=c[A+4>>2]|0;if((g&d|0)==-1){d=ry(b)|0;c[G>>2]=e;c[G+4>>2]=d;Pw(0,102561,G)|0;e=0;d=0;break}else{a[(c[(ez(b)|0)+16>>2]|0)+114>>0]=1;e=d+2|0;d=g+2|0;break}}else{e=0;d=0}}else{d=c[d>>2]|0;if((a[d>>0]|0)==99?(b$(d,102493)|0)==0:0){e=xx(b,102500)|0;CC(D,ez(b)|0,e);d=c[D>>2]|0;g=c[D+4>>2]|0;if((g&d|0)==-1){d=ry(b)|0;c[H>>2]=e|0?e:102510;c[H+4>>2]=d;Pw(0,102516,H)|0;e=0;d=0;break}else{a[(c[(ez(b)|0)+16>>2]|0)+114>>0]=1;e=d+2|0;d=g+2|0;break}}else{e=0;d=0}}while(0);P=+(e|0);h[_>>3]=Q>P?Q:P;P=+h[Y+8>>3];r=+(d|0);d=_+8|0;h[d>>3]=P>r?P:r;e=(I|0)<3&(T!=0.0|U!=0.0)?120:I;g=xx(b,102602)|0;if(!g)i=99;else{i=a[g>>0]|0;i=i<<24>>24==116?116:i<<24>>24==98?98:99}g=c[Z>>2]|0;a[(c[g+104>>2]|0)+80>>0]=i;if((e|0)==4?(T==0.0?((~~(V+(V>=0.0?.5:-.5))|0)%90|0|0)==0:0)&U==0.0:0)p=1;else M=39;do if((M|0)==39){g=c[(c[(c[g+8>>2]|0)+8>>2]|0)+44>>2]|0;if(g|0){p=c[g>>2]|0;c[J>>2]=c[_>>2];c[J+4>>2]=c[_+4>>2];c[J+8>>2]=c[_+8>>2];c[J+12>>2]=c[_+12>>2];ub[p&63](L,J);c[_>>2]=c[L>>2];c[_+4>>2]=c[L+4>>2];c[_+8>>2]=c[L+8>>2];c[_+12>>2]=c[L+12>>2];p=0;break}m=+h[d>>3];n=m*1.4142135623730951;if(f>n&i<<24>>24==99){o=m/f;o=+C(+(1.0/(1.0-o*o)));o=+h[_>>3]*o;h[_>>3]=o}else{o=+h[_>>3]*1.4142135623730951;h[_>>3]=o;h[d>>3]=n;m=n}if((e|0)>2){z=+E(+(3.141592653589793/+(e|0)));h[_>>3]=o/z;h[d>>3]=m/z;p=0}else p=0}while(0);m=+h[d>>3];g=NL(b,c[46395]|0,134226)|0;if((a[g>>0]|0)==115?(b$(g,105204)|0)==0:0){h[_>>3]=k;h[d>>3]=f;N=$+40|0;c[N>>2]=c[N>>2]|2048}else{if(!((QL(g)|0)<<24>>24)){z=+h[_>>3];k=k>z?k:z;h[_>>3]=k;z=+h[d>>3];f=f>z?f:z}else{M=c[(c[Z>>2]|0)+104>>2]|0;if(!(!(k<+h[M+24>>3])?!(f<+h[M+32>>3]):0)){L=ry(b)|0;M=ry(ez(b)|0)|0;c[N>>2]=L;c[N+4>>2]=M;Pw(0,102611,N)|0}h[_>>3]=k}h[d>>3]=f}if(!X){z=f;y=k}else{y=k>f?k:f;h[d>>3]=y;h[_>>3]=y;z=y}do if(!((QL(NL(b,c[46386]|0,134226)|0)|0)<<24>>24)){if(p){f=+h[(Q>+h[_>>3]?Y:_)>>3];break}f=+h[d>>3];if(P>3]*+C(+(1.0-P*P/(f*f)));f=Q>f?Q:f}else f=Q}else f=Q;while(0);g=c[(c[Z>>2]|0)+104>>2]|0;h[g+40>>3]=s-q+f;A=$+40|0;if(!(c[A>>2]&2048)){x=+h[d>>3]-m;h[g+48>>3]=(P1;g=j?W:1;a:do if((e|0)<3){g=uH(g<<5)|0;k=+h[_>>3]*.5;f=+h[d>>3]*.5;h[g>>3]=-k;h[g+8>>3]=-f;h[g+16>>3]=k;h[g+24>>3]=f;if(j){e=1;i=2;while(1){if((e|0)==(W|0))break;y=k+4.0;z=f+4.0;h[g+(i<<4)>>3]=-y;h[g+(i<<4)+8>>3]=-z;S=i|1;h[g+(S<<4)>>3]=y;h[g+(S<<4)+8>>3]=z;e=e+1|0;i=i+2|0;k=y;f=z}h[_>>3]=k*2.0;h[d>>3]=f*2.0;e=2}else e=2}else{g=uH(O(g<<4,e)|0)|0;i=c[(c[(c[(c[Z>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2]|0;b:do if(!i){q=6.283185307179586/+(e|0);t=q*.5;r=+F(+t);s=+u$(+B(+U)+ +B(+T),1.0);t=T*1.4142135623730951/+E(+t);u=U*.5;w$((q+-3.141592653589793)*.5,R,S);v=V*.017453292519943295;k=0.0;f=0.0;m=0.0;i=0;n=+h[S>>3]*.5;o=+h[R>>3]*.5;while(1){if((i|0)>=(e|0))break b;m=m+q;w$(m,R,S);n=+h[S>>3]*r+n;o=+h[R>>3]*r+o;x=(o*t+s)*n+u*o;w$(+K(+o,+x)+v,R,S);x=+u$(x,o);w=+h[S>>3]*x*+h[_>>3];x=+h[R>>3]*x*+h[d>>3];ba=+B(+w);f=ba>f?ba:f;ba=+B(+x);k=ba>k?ba:k;h[g+(i<<4)>>3]=w;h[g+(i<<4)+8>>3]=x;if(p)break;else i=i+1|0}ba=-w;h[g+16>>3]=ba;h[g+24>>3]=x;h[g+32>>3]=ba;ba=-x;h[g+40>>3]=ba;h[g+48>>3]=w;h[g+56>>3]=ba}else{ub[c[i+4>>2]&63](g,_);k=+h[d>>3]*.5;f=+h[_>>3]*.5}while(0);f=f*2.0;k=k*2.0;y=y>f?y:f;h[_>>3]=y;ba=z>k?z:k;h[d>>3]=ba;f=y/f;k=ba/k;i=0;while(1){if((i|0)>=(e|0))break;N=g+(i<<4)|0;b=g+(i<<4)+8|0;ba=+h[b>>3]*k;h[N>>3]=+h[N>>3]*f;h[b>>3]=ba;i=i+1|0}if(j){j=e+-1|0;k=+h[g>>3];m=+h[g+8>>3];f=+K(+(m-+h[g+(j<<4)+8>>3]),+(k-+h[g+(j<<4)>>3]));j=0;c:while(1){if((j|0)>=(e|0))break;p=j+1|0;i=(p|0)%(e|0)|0;n=+h[g+(i<<4)>>3];o=+h[g+(i<<4)+8>>3];q=+K(+(o-m),+(n-k));z=(f+3.141592653589793-q)*.5;ba=4.0/+F(+z);w$(f-z,R,S);h[R>>3]=+h[R>>3]*ba;h[S>>3]=+h[S>>3]*ba;i=1;f=m;while(1){if((i|0)==(W|0)){f=q;j=p;k=n;m=o;continue c}z=+h[S>>3]+k;ba=+h[R>>3]+f;b=(O(i,e)|0)+j|0;h[g+(b<<4)>>3]=z;h[g+(b<<4)+8>>3]=ba;i=i+1|0;k=z;f=ba}}j=O(e,W+-1|0)|0;i=0;while(1){if((i|0)>=(e|0))break a;S=i+j|0;z=+h[g+(S<<4)+8>>3];y=+B(+(+h[g+(S<<4)>>3]))*2.0;ba=+h[_>>3];h[_>>3]=y>ba?y:ba;z=+B(+z)*2.0;ba=+h[d>>3];h[d>>3]=z>ba?z:ba;i=i+1|0}}}while(0);c[$>>2]=X;c[$+4>>2]=W;c[$+8>>2]=e;h[$+16>>3]=V;h[$+32>>3]=U;h[$+24>>3]=T;c[$+44>>2]=g;f=+h[_>>3];if(!(c[A>>2]&2048)){e=c[Z>>2]|0;h[e+32>>3]=f*.013888888888888888}else{e=c[Z>>2]|0;h[e+32>>3]=+h[(Q>f?Y:_)>>3]*.013888888888888888;d=(P>+h[d>>3]?Y:_)+8|0}h[e+40>>3]=+h[d>>3]*.013888888888888888;c[e+12>>2]=$;l=aa;return}function JJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;j=o+40|0;e=o+32|0;k=o+16|0;n=o;d=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]|0)>>>2&1^1;m=a+16|0;f=c[c[(c[m>>2]|0)+104>>2]>>2]|0;c[46512]=f;f=W_(f)|0;f=uH(((f|0)>1?f:1)+1|0)|0;b=LJ(a,d,1,f)|0;if(!b){c[e>>2]=c[c[(c[m>>2]|0)+104>>2]>>2];Pw(1,102446,e)|0;c[46512]=102467;b=LJ(a,d,1,f)|0}D_(f);MJ(j,a,b);d=c[m>>2]|0;i=+h[d+32>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))|0);h[n>>3]=i;g=+h[d+40>>3]*72.0;g=+(~~(g+(g>=0.0?.5:-.5))|0);d=n+8|0;h[d>>3]=g;if(!((QL(NL(a,c[46395]|0,134226)|0)|0)<<24>>24)){i=+h[(+h[b>>3]>i?b:n)>>3];h[n>>3]=i;e=b+8|0;g=+h[(+h[e>>3]>g?b:n)+8>>3];h[d>>3]=g;d=e;e=b}else{d=b+8|0;e=b}a=(QL(NL(a,c[46386]|0,134226)|0)|0)&255;c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];NJ(b,j,a);OJ(k,i*-.5,g*.5);c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];PJ(b,j,15);n=c[m>>2]|0;h[n+32>>3]=+h[e>>3]*.013888888888888888;h[n+40>>3]=(+h[d>>3]+1.0)*.013888888888888888;c[n+12>>2]=b;l=o;return}function KJ(a){a=a|0;var b=0.0,d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,l=0.0,m=0;j=uH(48)|0;k=a+16|0;g=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0;f=+LL(a,c[46376]|0,1797693134862315708145274.0e284,0.0);b=+LL(a,c[46375]|0,1797693134862315708145274.0e284,0.0);f=f0.0?(f>.0003?f:.0003):f;i=c[k>>2]|0;h[i+40>>3]=f;h[i+32>>3]=f;b=f*72.0;g=KL(a,c[46390]|0,g,0)|0;i=uH((g|0)<1?32:g<<5)|0;f=f*36.0;e=-f;h[i>>3]=e;h[i+8>>3]=e;h[i+16>>3]=f;h[i+24>>3]=f;if((g|0)>1){a=1;d=2;e=f;b=f;while(1){if((a|0)==(g|0))break;l=e+4.0;f=b+4.0;h[i+(d<<4)>>3]=-l;h[i+(d<<4)+8>>3]=-f;m=d|1;h[i+(m<<4)>>3]=l;h[i+(m<<4)+8>>3]=f;a=a+1|0;d=d+2|0;e=l;b=f}b=e*2.0}c[j>>2]=1;c[j+4>>2]=g;c[j+8>>2]=2;m=j+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[j+44>>2]=i;l=b*.013888888888888888;m=c[k>>2]|0;h[m+32>>3]=l;h[m+40>>3]=l;c[m+12>>2]=j;return}function LJ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;g=uH(72)|0;n=c[(c[b+16>>2]|0)+104>>2]|0;m=0;i=1;j=c[46512]|0;a:while(1){k=a[j>>0]|0;switch(k<<24>>24){case 0:break a;case 92:{j=j+1|0;k=a[j>>0]|0;switch(k<<24>>24){case 124:case 125:case 123:case 92:{l=m;break}default:E=4}break}default:E=4}if((E|0)==4){E=0;switch(k<<24>>24){case 123:{l=m+1|0;break}case 125:{l=m+-1|0;break}default:{l=m;i=i+((m|0)==0&k<<24>>24==124&1)|0}}if((l|0)<0)break}m=l;j=j+1|0}B=g+56|0;c[B>>2]=uH(i<<2)|0;a[g+64>>0]=d;y=(d|0)==0&1;z=n+82|0;A=f+1|0;v=(e|0)!=0;w=n+16|0;x=n+4|0;u=n+8|0;k=0;m=0;d=0;t=0;l=0;e=0;n=f;i=0;j=0;b:while(1){p=k;k=0;c:while(1){d:while(1){s=e;e:while(1){r=k;o=i;f:while(1){q=m;g:while(1){while(1){if(t){E=78;break b}m=c[46512]|0;i=a[m>>0]|0;if((i+-1&255)>=31)break;c[46512]=m+1}switch(i<<24>>24|0){case 92:{E=53;break d}case 0:case 124:case 125:break e;case 60:break f;case 62:break g;case 123:break;default:{k=d;i=m;break d}}i=m+1|0;c[46512]=i;if(l|0){E=34;break b}if(!(a[i>>0]|0)){E=34;break b}e=LJ(b,y,0,f)|0;c[(c[B>>2]|0)+(q<<2)>>2]=e;if(!e){E=36;break b}else{q=q+1|0;l=4}}if(a[z>>0]|0){k=d;i=m;break d}if(!(l&16)){E=27;break b}if(o>>>0>A>>>0?(C=o+-1|0,(C|0)!=(s|0)):0)i=(a[C>>0]|0)==32?C:o;else i=o;a[i>>0]=0;r=n1(f)|0;c[46512]=(c[46512]|0)+1;m=q;l=l&-17;o=i}if(l&6|0){E=22;break b}if(a[z>>0]|0){k=d;i=m;break d}c[46512]=m+1;m=q;l=l|18;k=r;s=f;i=f}if(!((l&16|0)==0&(v|i<<24>>24!=0))){E=38;break b}if(!(l&4)){k=uH(72)|0;c[(c[B>>2]|0)+(q<<2)>>2]=k;m=q+1|0}else{k=p;m=q}if(r|0)c[k+60>>2]=r;if(!(l&5)){a[f+j>>0]=32;l=l|1;j=j+1|0}i=f+j|0;if(l&1){if((j|0)>1?(D=i+-1|0,(D|0)!=(n|0)):0)i=(a[D>>0]|0)==32?D:i;a[i>>0]=0;n=n1(f)|0;c[k+52>>2]=kH(b,n,a[z>>0]|0?2:0,+h[w>>3],c[x>>2]|0,c[u>>2]|0)|0;a[k+64>>0]=1;n=f;j=0}i=c[46512]|0;switch(a[i>>0]|0){case 0:{t=1;e=s;i=o;continue b}case 125:{E=51;break b}default:{}}c[46512]=i+1;p=k;l=0;k=0;e=s;i=o}h:do if((E|0)==53){E=0;k=f+j|0;i=m+1|0;switch(a[i>>0]|0){case 0:{k=d;i=m;break h}case 62:case 60:case 124:case 125:case 123:{k=d;break}case 32:{if(!(a[z>>0]|0))k=1;else E=55;break}default:E=55}if((E|0)==55){E=0;a[k>>0]=92;k=d;l=l|9;j=j+1|0}c[46512]=i}while(0);d=f+j|0;if(l&4|0?(a[i>>0]|0)!=32:0){E=59;break b}if(!(l&24))l=(a[i>>0]|0)==32?l:l|9;if(!(l&8))if(!(l&16))e=s;else{m=a[i>>0]|0;d=(k|0)!=0;if(!(d|m<<24>>24!=32))if((o|0)!=(f|0))if((a[o+-1>>0]|0)==32)m=o;else E=73;else m=f;else E=73;if((E|0)==73){E=0;a[o>>0]=m;m=o+1|0;i=c[46512]|0}e=d?m+-1|0:s;o=m}else{m=a[i>>0]|0;e=(k|0)!=0;if(!((!(e|m<<24>>24!=32)?(a[d+-1>>0]|0)==32:0)?(a[z>>0]|0)==0:0)){a[d>>0]=m;j=j+1|0}if(e){e=s;n=f+j+-1|0}else e=s}i=i+1|0;c[46512]=i;while(1){if((a[i>>0]|0)>=0){m=q;d=k;k=r;i=o;continue c}s=i+1|0;c[46512]=s;a[f+j>>0]=a[i>>0]|0;j=j+1|0;i=s}}}if((E|0)==22){QJ(g,r);g=0}else if((E|0)==27){QJ(g,r);g=0}else if((E|0)==34){QJ(g,r);g=0}else if((E|0)==36){QJ(g,r);g=0}else if((E|0)==38){QJ(g,r);g=0}else if((E|0)==51){c[46512]=i+1;c[g+48>>2]=m}else if((E|0)==59){QJ(g,r);g=0}else if((E|0)==78)c[g+48>>2]=q;return g|0}function MJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;k=u+48|0;m=u+40|0;n=u+32|0;t=u+16|0;s=u;j=c[e+52>>2]|0;a:do if(!j){n=t+8|0;o=e+48|0;p=e+56|0;q=e+64|0;r=s+8|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;j=0;while(1){if((j|0)>=(c[o>>2]|0))break a;MJ(s,d,c[(c[p>>2]|0)+(j<<2)>>2]|0);if(!(a[q>>0]|0)){h[n>>3]=+h[n>>3]+ +h[r>>3];k=t;m=+h[t>>3]>+h[s>>3]?t:s}else{h[t>>3]=+h[t>>3]+ +h[s>>3];k=n;m=(+h[n>>3]>+h[r>>3]?t:s)+8|0}h[k>>3]=+h[m>>3];j=j+1|0}}else{g=+h[j+24>>3];f=+h[j+32>>3];if(g>0.0|f>0.0){j=xx(d,102470)|0;do if(j){c[k>>2]=m;c[k+4>>2]=n;j=N1(j,102477,k)|0;if((j|0)<=0){i=8.0;g=g+16.0;break}i=+h[m>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))<<1|0);g=g+i;if((j|0)!=1){i=+h[n>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))<<1|0)}}else{i=8.0;g=g+16.0}while(0);f=i+f}h[t>>3]=g;h[t+8>>3]=f}while(0);c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];c[b>>2]=c[t>>2];c[b+4>>2]=c[t+4>>2];c[b+8>>2]=c[t+8>>2];c[b+12>>2]=c[t+12>>2];l=u;return}function NJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0;s=l;l=l+32|0;o=s+16|0;p=s;q=+h[d>>3];i=q-+h[b>>3];r=+h[d+8>>3];f=r-+h[b+8>>3];c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];d=c[b+52>>2]|0;if(!((e|0)!=0|(d|0)==0)){n=d+40|0;h[n>>3]=+h[n>>3]+i;n=d+48|0;h[n>>3]=+h[n>>3]+f}m=b+48|0;d=c[m>>2]|0;a:do if(d|0){n=b+64|0;f=((a[n>>0]|0)==0?f:i)/+(d|0);k=b+56|0;j=0;while(1){if((j|0)>=(d|0))break a;b=c[(c[k>>2]|0)+(j<<2)>>2]|0;g=j+1|0;d=~~(f*+(g|0))-~~(f*+(j|0))|0;if(!(a[n>>0]|0))OJ(p,q,+h[b+8>>3]+ +(d|0));else OJ(p,+h[b>>3]+ +(d|0),r);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2];NJ(b,o,e);j=g;d=c[m>>2]|0}}while(0);l=s;return}function OJ(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function PJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0;q=l;l=l+48|0;j=q+32|0;n=q+16|0;m=q;a[b+65>>0]=e;k=b+16|0;s=+h[d>>3];p=d+8|0;r=+h[p>>3];OJ(n,s,r-+h[b+8>>3]);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];k=b+32|0;OJ(m,+h[b>>3]+s,r);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];k=c[b+48>>2]|0;m=k+-1|0;n=(e|0)==0;o=b+56|0;i=b+64|0;g=0;while(1){if((g|0)>=(k|0))break;do if(!n){b=(g|0)==0;f=(g|0)==(m|0);if(!(a[i>>0]|0))if(b){b=f?15:14;break}else{b=f?11:10;break}else if(b){b=f?15:13;break}else{b=f?7:5;break}}else b=0;while(0);f=c[(c[o>>2]|0)+(g<<2)>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];PJ(f,j,b&e);if(!(a[i>>0]|0))h[p>>3]=+h[p>>3]-+h[(c[(c[o>>2]|0)+(g<<2)>>2]|0)+8>>3];else h[d>>3]=+h[c[(c[o>>2]|0)+(g<<2)>>2]>>3]+ +h[d>>3];g=g+1|0}l=q;return}function QJ(a,b){a=a|0;b=b|0;RJ(a);D_(b);return}function RJ(a){a=a|0;var b=0,d=0,e=0;d=a+48|0;e=a+56|0;b=0;while(1){if((b|0)>=(c[d>>2]|0))break;RJ(c[(c[e>>2]|0)+(b<<2)>>2]|0);b=b+1|0}D_(c[a+60>>2]|0);nH(c[a+52>>2]|0);D_(c[e>>2]|0);D_(a);return}function SJ(a){a=a|0;var b=0.0,d=0.0;d=+LL(a,c[46376]|0,0.0,.01);b=+LL(a,c[46375]|0,0.0,.02);b=(d>b?d:b)*72.0;return +(+(~~(b+(b>=0.0?.5:-.5))|0))}function TJ(a,b){a=+a;b=+b;var c=0;c=~~(a/b);return +(+((+(c|0)*b+1.0e-05>2]|0)+8>>2]|0;if(!a)a=0;else a=(c[c[a+4>>2]>>2]|0)==89&1;return a|0}function VJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[46513]|0;a:do if(!f)d=0;else{g=c[46514]|0;e=0;while(1){if((e|0)>=(g|0)){d=0;break a}d=c[f+(e<<2)>>2]|0;h=c[d>>2]|0;if((a[h>>0]|0)==(a[b>>0]|0)?(b$(h,b)|0)==0:0)break a;e=e+1|0}}while(0);return d|0}function WJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(ZL(xx(d,102500)|0)|0)if((a[b>>0]|0)==101?(b$(b,102659)|0)==0:0){d=101;g=6}else{b=102493;g=4}else g=4;if((g|0)==4){d=a[b>>0]|0;if(d<<24>>24==99)if(!(b$(b,102493)|0))g=11;else{d=99;g=6}else g=6}a:do if((g|0)==6){e=20744;while(1){f=c[e>>2]|0;if(!f){g=11;break a}if((a[f>>0]|0)==d<<24>>24?(b$(f,b)|0)==0:0){b=e;break a}e=e+16|0}}while(0);if((g|0)==11)b=XJ(b)|0;return b|0}function XJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;d=VJ(b)|0;if(!d){f=c[46514]|0;d=f+1|0;c[46514]=d;e=c[46513]|0;if(!e)d=vH(d<<2)|0;else d=xH(e,d<<2)|0;c[46513]=d;d=uH(16)|0;c[(c[46513]|0)+(f<<2)>>2]=d;c[d>>2]=c[5186];c[d+4>>2]=c[5187];c[d+8>>2]=c[5188];c[d+12>>2]=c[5189];e=n1(b)|0;c[d>>2]=e;do if(!0){if((a[b>>0]|0)==99?(b$(b,102493)|0)==0:0){e=1;break}c[g>>2]=c[5186];c[g+4>>2]=e;Pw(0,102664,g)|0;e=0}else e=1;while(0);a[d+12>>0]=e}l=h;return d|0}function YJ(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[b>>3]*.5257311121191336;c=+h[b+8>>3]*.8944271909999159;c=d>c?d:c;h[a>>3]=c*4.97979656976556;h[a+8>>3]=c*4.73606797749979;return}function ZJ(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0.0;d=+h[b>>3];k=b+8|0;e=+h[k>>3];c=e/d;if(!(c>.9510565162951536))if(c<.9510565162951536){j=d;e=d*.9510565162951536}else j=d;else j=e*1.0514622242382672;d=j*.5257311121191336;g=j*.20081141588622725;i=j*.05020285397155681;c=.3141592653589793;f=0;while(1){if((f|0)>=10)break;h[a+(f<<4)>>3]=+E(+c)*d;h[a+(f<<4)+8>>3]=+F(+c)*d-i;m=c+.6283185307179586;l=f|1;h[a+(l<<4)>>3]=+E(+m)*g;h[a+(l<<4)+8>>3]=+F(+m)*g-i;c=c+1.2566370614359172;f=f+2|0}h[b>>3]=j;h[k>>3]=e;return}function _J(a){a=a|0;a=c[(c[a+16>>2]|0)+12>>2]|0;if(a|0){D_(c[a+44>>2]|0);D_(a)}return}function $J(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+80|0;k=o+40|0;g=o;n=o+64|0;h=o+56|0;if(!(a[e>>0]|0)){g=4208;h=b+40|0;do{c[b>>2]=c[g>>2];b=b+4|0;g=g+4|0}while((b|0)<(h|0))}else{i=(f|0)==0?103330:f;c[n>>2]=15;j=d+16|0;f=c[j>>2]|0;do if(a[(c[f+104>>2]|0)+82>>0]|0){f=_Q(d,e,n)|0;if(!f){f=c[j>>2]|0;m=8;break}if(nK(d,f,g,i,c[n>>2]|0,0)|0){c[k>>2]=ry(d)|0;c[k+4>>2]=e;c[k+8>>2]=i;Pw(0,103332,k)|0}}else m=8;while(0);if((m|0)==8){if((c[(c[f+8>>2]|0)+8>>2]|0)==1664)h=0;else{c[h>>2]=d;c[h+4>>2]=0}if(nK(d,0,g,e,c[n>>2]|0,h)|0)oK(d,e)}c[g+36>>2]=0;h=b+40|0;do{c[b>>2]=c[g>>2];b=b+4|0;g=g+4|0}while((b|0)<(h|0))}l=o;return}function aK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0;r=l;l=l+112|0;n=r+96|0;m=r+80|0;p=r+64|0;k=r+48|0;q=r+32|0;o=r;f=r+16|0;if(!a){c[46517]=0;a=0}else{g=c[a+4>>2]|0;a=c[a>>2]|0;i=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];ZG(f,n,i);c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[q+8>>2]=c[f+8>>2];c[q+12>>2]=c[f+12>>2];a:do if(g){d=+h[g+8>>3];e=+h[g+24>>3];s=+h[q>>3];if((+h[g>>3]<=s?s<=+h[g+16>>3]:0)?(j=+h[q+8>>3],d<=j):0)a=j<=e&1;else a=0}else{if((a|0)==(c[46517]|0)){f=c[46518]|0;g=c[46520]|0;i=c[46519]|0}else{g=c[(c[a+16>>2]|0)+12>>2]|0;c[46521]=g;i=c[g+44>>2]|0;c[46519]=i;f=c[g+8>>2]|0;c[46518]=f;g=O((c[g+4>>2]|0)+-1|0,f)|0;g=(g|0)>0?g:0;c[46520]=g;c[46517]=a}a=0;b=0;while(1){if((a|0)>=(f|0)){a=1;break a}t=i+(g+a<<4)|0;c[o>>2]=c[t>>2];c[o+4>>2]=c[t+4>>2];c[o+8>>2]=c[t+8>>2];c[o+12>>2]=c[t+12>>2];t=i+(g+((a+4|0)%(f|0)|0)<<4)|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];c[k+12>>2]=c[q+12>>2];c[p>>2]=c[45844];c[p+4>>2]=c[45845];c[p+8>>2]=c[45846];c[p+12>>2]=c[45847];c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];b=b+((mK(k,p,m,n)|0)==0&1)|0;if((b|0)==2){a=0;break}else a=a+2|0}}while(0)}l=r;return a|0}function bK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;e=c[b+16>>2]|0;if((a[(c[e+104>>2]|0)+82>>0]|0)!=0?(a[e+145>>0]|0)!=0:0)b=bR(b,d,0,f,g)|0;else b=0;return b|0}function cK(e,f){e=e|0;f=f|0;var i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0;P=l;l=l+48|0;H=P+24|0;G=P+16|0;A=P+8|0;z=P;L=P+32|0;n=P+28|0;M=c[e+16>>2]|0;N=M+208|0;i=c[N>>2]|0;if((i|0)==0?(b[M+260>>1]&1)==0:0)J=0;else E=4;if((E|0)==4)if(!(c[e+152>>2]&4)){PO(e,i,c[M+228>>2]|0,c[M+244>>2]|0,c[M+212>>2]|0);J=1}else J=1;I=f+16|0;i=c[I>>2]|0;r=c[i+12>>2]|0;F=c[r+44>>2]|0;K=c[r+8>>2]|0;r=c[r+4>>2]|0;if((c[46515]|0)<(K|0)){i=K+5|0;c[46515]=i;j=c[46516]|0;if(!j)i=vH(i<<4)|0;else i=xH(j,i<<4)|0;c[46516]=i;i=c[I>>2]|0}D=(c[i+104>>2]|0)+56|0;i=i+16|0;c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[D+12>>2]=c[i+12>>2];D=c[I>>2]|0;B=+h[D+32>>3]*72.0;B=(+h[D+96>>3]+ +h[D+88>>3])/+(~~(B+(B>=0.0?.5:-.5))|0);C=+h[D+40>>3]*72.0;C=+h[D+80>>3]/+(~~(C+(C>=0.0?.5:-.5))|0);D=dK(e,f)|0;c[L>>2]=0;i=d[(c[I>>2]|0)+117>>0]|0;do if(!(i&1)){if(i&2|0){s=OL(f,0,103230)|0;UO(e,s);WO(e,OL(f,0,103238)|0);j=0;i=1;break}if(i&8|0){s=OL(f,0,103246)|0;UO(e,s);WO(e,OL(f,0,103254)|0);j=0;i=1;break}if(i&4|0){s=OL(f,0,103262)|0;UO(e,s);WO(e,OL(f,0,103270)|0);j=0;i=1;break}if(!(D&1))if(!(D&576)){j=0;i=0}else{j=eK(f)|0;i=1}else{j=eK(f)|0;if(!((uG(j,L,n)|0)<<24>>24)){WO(e,j);i=1}else{WO(e,c[L>>2]|0);i=c[L+4>>2]|0;m=KL(f,c[46403]|0,0,0)|0;k=+g[n>>2];if(!i)XO(e,134232,m,k);else XO(e,i,m,k);i=(D&2)>>>1|2}}s=fK(e,f)|0}else{s=OL(f,0,103214)|0;UO(e,s);WO(e,OL(f,0,103222)|0);j=0;i=1}while(0);m=c[(c[I>>2]|0)+8>>2]|0;if(a[m+12>>0]|0){m=c[m>>2]|0;if((a[m>>0]|0)==99){m=(b$(m,102493)|0)==0;E=33}else u=1}else{m=1;E=33}if((E|0)==33){m=m^1;if((r|0)!=0|i<<24>>24==0|m)u=m;else{UO(e,134297);r=1;u=0}}v=(K|0)<3;w=(D&512|0)!=0;y=(D&8|0)==0;x=(D&64|0)==0;p=(D&1024|0)==0;q=(D&2130706444|0)==0;t=0;while(1){if((t|0)>=(r|0))break;n=O(t,K)|0;o=c[46516]|0;m=0;while(1){if((m|0)>=(K|0))break;R=m+n|0;k=+h[F+(R<<4)+8>>3];Q=c[I>>2]|0;h[o+(m<<4)>>3]=+h[Q+16>>3]+ +h[F+(R<<4)>>3]*B;h[o+(m<<4)+8>>3]=+h[Q+24>>3]+k*C;m=m+1|0}do if(v){if(w&(t|0)==0?(A$(j,58)|0)!=0:0)if((SE(e,o,j)|0)>1){c[z>>2]=ry(f)|0;Pw(3,103278,z)|0;i=0}else i=0;ZO(e,c[46516]|0,K,i&255);if(!y)gK(e,f)}else{if(!x){if((t|0)==0?(WE(e,o,j,1)|0)>1:0){c[A>>2]=ry(f)|0;Pw(3,103278,A)|0}_O(e,c[46516]|0,K,0);break}if(!p){UO(e,134297);_O(e,c[46516]|0,K,i&255);UO(e,s);bP(e,(c[46516]|0)+32|0,2);break}i=i&255;if(q){_O(e,o,K,i);break}else{EJ(e,o,K,D,i);break}}while(0);t=t+1|0;i=0}m=c[(c[I>>2]|0)+8>>2]|0;if(!(a[m+12>>0]|0)){m=xx(f,105999)|0;if(m|0?a[m>>0]|0:0){o=m;E=65}}else{m=c[m>>2]|0;if((a[m>>0]|0)==99?(b$(m,102493)|0)==0:0){m=xx(f,102500)|0;if(m|0?a[m>>0]|0:0){o=m;E=65}}else{o=m;E=65}}if((E|0)==65){n=c[46516]|0;m=0;while(1){if((m|0)>=(K|0))break;k=+h[F+(m<<4)+8>>3];R=c[I>>2]|0;h[n+(m<<4)>>3]=+h[R+16>>3]+ +h[F+(m<<4)>>3]*B;h[n+(m<<4)+8>>3]=+h[R+24>>3]+k*C;m=m+1|0}m=i&255;do if(!(u|i<<24>>24==0)){if(v){if(w&(t|0)==0?(A$(j,58)|0)!=0:0)if((SE(e,n,j)|0)>1){c[G>>2]=ry(f)|0;Pw(3,103278,G)|0;i=0}else i=0;ZO(e,c[46516]|0,K,i&255);if(y)break;gK(e,f);break}if(x)if(!(D&12)){_O(e,n,K,m);break}else{EJ(e,n,K,D,m);break}else{if((WE(e,n,j,1)|0)>1){c[H>>2]=ry(f)|0;Pw(3,103278,H)|0}_O(e,c[46516]|0,K,0);break}}while(0);R=c[46516]|0;dP(e,o,R,K,i,NL(f,c[46396]|0,134226)|0)}D_(c[L>>2]|0);oH(e,10,c[(c[I>>2]|0)+104>>2]|0);if(J){if(c[e+152>>2]&4|0)PO(e,c[N>>2]|0,c[M+228>>2]|0,c[M+244>>2]|0,c[M+212>>2]|0);QO(e)}l=P;return}function dK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;e=jK(d,f)|0;if(e|0)YO(b,e);e=c[46402]|0;if((e|0?(g=yx(d,e)|0,g|0):0)?a[g>>0]|0:0)fP(b,+LL(d,c[46402]|0,1.0,0.0));l=h;return c[f>>2]|0}function eK(a){a=a|0;return iK(a,131718)|0}function fK(b,d){b=b|0;d=d|0;d=OL(d,c[46378]|0,191979)|0;d=a[d>>0]|0?d:134232;UO(b,d);return d|0}function gK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,m=0;d=l;l=l+96|0;j=d+80|0;k=d+64|0;e=d+32|0;m=d+16|0;g=d;b=c[b+16>>2]|0;f=+h[b+80>>3];h[m+8>>3]=f*.375;i=+h[b+96>>3];h[m>>3]=i*.6614;b=b+16|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];hK(g,k,j);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];g=e+8|0;b=e+24|0;h[b>>3]=+h[g>>3];h[e+16>>3]=+h[e>>3]-i*1.3228;bP(a,e,2);f=+h[g>>3]-f*.75;h[g>>3]=f;h[b>>3]=f;bP(a,e,2);l=d;return}function hK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function iK(b,d){b=b|0;d=d|0;var e=0;e=OL(b,c[46379]|0,191979)|0;if(!(a[e>>0]|0)){e=OL(b,c[46378]|0,191979)|0;return ((a[e>>0]|0)==0?d:e)|0}else return e|0;return 0}function jK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=OL(b,c[46387]|0,191979)|0;a:do if(!(a[e>>0]|0)){g=0;e=0}else{g=AF(e)|0;h=g;e=0;b:while(1){f=c[h>>2]|0;if(!f)break a;switch(a[f>>0]|0){case 102:{if(!(b$(f,108075)|0)){h=h+4|0;e=e|1;continue b}break}case 114:{if(!(b$(f,103290)|0)){f=h;do{j=f;f=f+4|0;i=c[f>>2]|0;c[j>>2]=i}while((i|0)!=0);j=h;e=e|4;h=j;continue b}if(!(b$(f,103308)|0)){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|3;h=j;continue b}break}case 100:{if(!(b$(f,103298)|0)){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|8;h=j;continue b}break}case 105:{if(!(b$(f,131253)|0)){h=h+4|0;e=e|32;continue b}break}case 115:{if((b$(f,103315)|0)==0?kK(b)|0:0){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|64;h=j;continue b}break}case 119:{if((b$(f,103323)|0)==0?lK(b)|0:0){f=h;do{i=f;f=f+4|0;j=c[f>>2]|0;c[i>>2]=j}while((j|0)!=0);j=h;e=e|512;h=j;continue b}break}default:{}}h=h+4|0}}while(0);f=c[(c[(c[b+16>>2]|0)+8>>2]|0)+8>>2]|0;if(f)e=c[f+40>>2]|e;c[d>>2]=e;return g|0}function kK(a){a=a|0;var b=0.0;a=c[(c[(c[a+16>>2]|0)+8>>2]|0)+8>>2]|0;if((((a|0)!=0?(c[a+8>>2]|0)==4:0)?(b=+h[a+16>>3],((~~(b+(b>=0.0?.5:-.5))|0)%90|0|0)==0):0)?+h[a+24>>3]==0.0:0)a=+h[a+32>>3]==0.0&1;else a=0;return a|0}function lK(a){a=a|0;a=c[(c[(c[a+16>>2]|0)+8>>2]|0)+8>>2]|0;if(!a)a=0;else a=(c[a+8>>2]|0)<3&1;return a|0}function mK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0;i=+h[c+8>>3];g=-(+h[d+8>>3]-i);f=+h[c>>3];e=+h[d>>3]-f;f=e*i+f*g;return (+h[a+8>>3]*e+ +h[a>>3]*g-f>=0.0^+h[b>>3]*g-f+ +h[b+8>>3]*e>=0.0^1)&1|0}function nK(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=l;l=l+192|0;B=G+176|0;E=G+160|0;m=G+144|0;z=G+128|0;A=G+112|0;n=G+96|0;o=G+80|0;p=G+64|0;v=G+48|0;w=G+32|0;x=G+16|0;D=G;if(!d){c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;m=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)==0;C=c[b+16>>2]|0;q=+h[C+80>>3]*.5;j=+h[C+88>>3];t=m?q:j;q=m?j:q;m=0;C=E;j=0.0;k=-q;r=t;F=E+8|0;s=0.0;t=-t}else{k=+h[d>>3];t=+h[d+8>>3];q=+h[d+16>>3];r=+h[d+24>>3];OJ(m,(q+k)*.5,(r+t)*.5);c[E>>2]=c[m>>2];c[E+4>>2]=c[m+4>>2];c[E+8>>2]=c[m+8>>2];c[E+12>>2]=c[m+12>>2];H=E+8|0;m=1;C=E;j=+h[E>>3];F=H;s=+h[H>>3]}u=(q>r?q:r)*4.0;a:do if((f|0)!=0?(y=a[f>>0]|0,y<<24>>24!=0):0){f=f+1|0;switch(y<<24>>24|0){case 99:{p=1;g=0;f=0;n=0;j=0.0;o=0;break a}case 101:{if(a[f>>0]|0){p=1;g=0;f=0;n=0;j=0.0;o=1;break a}if(!i)h[C>>3]=q;else{pK(z,i,s,u);c[E>>2]=c[z>>2];c[E+4>>2]=c[z+4>>2];c[E+8>>2]=c[z+8>>2];c[E+12>>2]=c[z+12>>2]}p=0;g=g&2;f=0;n=1;j=0.0;o=0;m=1;break a}case 115:{h[F>>3]=t;switch(a[f>>0]|0){case 0:{if(!i)h[C>>3]=j;else{pK(A,i,-u,j);c[E>>2]=c[A>>2];c[E+4>>2]=c[A+4>>2];c[E+8>>2]=c[A+8>>2];c[E+12>>2]=c[A+12>>2]}p=0;g=g&1;f=0;n=1;j=-1.5707963267948966;o=0;m=1;break a}case 101:{if(!i)h[C>>3]=q;else{pK(n,i,-u,u);c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[E+8>>2]=c[n+8>>2];c[E+12>>2]=c[n+12>>2]}p=0;g=g&3;f=0;n=1;j=-.7853981633974483;o=0;m=1;break a}case 119:{if(!i)h[C>>3]=k;else{u=-u;pK(o,i,u,u);c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[E+8>>2]=c[o+8>>2];c[E+12>>2]=c[o+12>>2]}p=0;g=g&9;f=0;n=1;j=-2.356194490192345;o=0;m=1;break a}default:{h[F>>3]=s;p=1;g=0;f=0;n=0;j=0.0;o=1;break a}}}case 119:{if(a[f>>0]|0){p=1;g=0;f=0;n=0;j=0.0;o=1;break a}if(!i)h[C>>3]=k;else{pK(p,i,s,-u);c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[E+8>>2]=c[p+8>>2];c[E+12>>2]=c[p+12>>2]}p=0;g=g&8;f=0;n=1;j=3.141592653589793;o=0;m=1;break a}case 110:{h[F>>3]=r;switch(a[f>>0]|0){case 0:{if(!i)h[C>>3]=j;else{pK(v,i,u,j);c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[E+8>>2]=c[v+8>>2];c[E+12>>2]=c[v+12>>2]}p=0;g=g&4;f=0;n=1;j=1.5707963267948966;o=0;m=1;break a}case 101:{if(!i)h[C>>3]=q;else{pK(w,i,u,u);c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[E+8>>2]=c[w+8>>2];c[E+12>>2]=c[w+12>>2]}p=0;g=g&6;f=0;n=1;j=.7853981633974483;o=0;m=1;break a}case 119:{if(!i)h[C>>3]=k;else{pK(x,i,u,-u);c[E>>2]=c[x>>2];c[E+4>>2]=c[x+4>>2];c[E+8>>2]=c[x+8>>2];c[E+12>>2]=c[x+12>>2]}p=0;g=g&12;f=0;n=1;j=2.356194490192345;o=0;m=1;break a}default:{h[F>>3]=s;p=1;g=0;f=0;n=0;j=0.0;o=1;break a}}}case 95:{p=1;f=1;n=0;j=0.0;o=0;break a}default:{p=1;g=0;f=0;n=0;j=0.0;o=1;break a}}}else{p=1;g=0;f=0;n=0;j=0.0;o=0}while(0);H=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&3)*90|0;c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];YG(D,B,H);c[E>>2]=c[D>>2];c[E+4>>2]=c[D+4>>2];c[E+8>>2]=c[D+8>>2];c[E+12>>2]=c[D+12>>2];if(!(f<<24>>24))g=qK(g,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&3)|0;a[e+33>>0]=g;c[e+24>>2]=d;k=+h[C>>3];h[e>>3]=+(~~(k+(k>=0.0?.5:-.5))|0);k=+h[F>>3];h[e+8>>3]=+(~~(k+(k>=0.0?.5:-.5))|0);h[e+16>>3]=+rK(j,c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&3);k=+h[C>>3];j=+h[F>>3];if(k==0.0&j==0.0)g=-128;else{u=+K(+j,+k);t=u+4.71238898038469;g=~~((!(t>=6.283185307179586)?t:u+-1.5707963267948966)*40.74366543152521)&255}a[e+32>>0]=g;a[e+29>>0]=n;a[e+28>>0]=m;a[e+30>>0]=p;a[e+31>>0]=f;l=G;return o|0}function oK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=ry(a)|0;c[e+4>>2]=b;Pw(0,103393,e)|0;l=d;return}function pK(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+128|0;g=p+112|0;j=p+48|0;k=p+16|0;m=p+32|0;n=p;o=c[b>>2]|0;i=c[(c[(ez(o)|0)+16>>2]|0)+116>>2]&3;h[k>>3]=e;h[k+8>>3]=d;f=(i|0)!=0;if(f){c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];YG(m,g,i*90|0);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}m=j+48|0;q=j+32|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[j+24>>2]=0;c[j+28>>2]=0;c[q>>2]=c[k>>2];c[q+4>>2]=c[k+4>>2];c[q+8>>2]=c[k+8>>2];c[q+12>>2]=c[k+12>>2];c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];MK(b,c[(c[(c[(c[o+16>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0,j,1);if(f){c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];ZG(n,g,i*90|0);c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2]};c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];l=p;return}function qK(a,b){a=a|0;b=b|0;a:do switch(b|0){case 3:switch(a|0){case 4:{a=2;break a}case 1:{a=8;break a}case 8:{a=1;break a}case 2:{a=4;break a}default:break a}case 2:switch(a|0){case 4:{a=1;break a}case 1:{a=4;break a}default:break a}case 1:switch(a|0){case 4:{a=2;break a}case 1:{a=8;break a}case 8:{a=4;break a}case 2:{a=1;break a}default:break a}default:{}}while(0);return a|0}function rK(a,b){a=+a;b=b|0;switch(b|0){case 3:{if(!(a==3.141592653589793))if(!(a==2.356194490192345))if(!(a==1.5707963267948966))if(!(a==0.0))if(!(a==-.7853981633974483)){if(a==-1.5707963267948966)a=3.141592653589793}else a=2.356194490192345;else a=1.5707963267948966;else a=0.0;else a=-.7853981633974483;else a=-1.5707963267948966;break}case 2:{a=-a;break}case 1:{a=a+-1.5707963267948966;break}default:{}}return +a}function sK(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0.0,i=0,j=0,k=0;e=l;l=l+32|0;k=e+16|0;i=e;a=c[a>>2]|0;j=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];ZG(i,k,j);d=+h[i>>3];g=+h[i+8>>3];a=c[a+16>>2]|0;f=+h[a+80>>3]*.5;if(!(!(g>=-f)|!(g<=f))?d>=-+h[a+88>>3]:0)a=d<=+h[a+96>>3]&1;else a=0;l=e;return a|0}function tK(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;n=l;l=l+32|0;m=n;i=c[a+16>>2]|0;j=i+208|0;g=c[j>>2]|0;if(!g)k=(b[i+260>>1]&1)!=0;else k=1;e=d+16|0;d=c[e>>2]|0;f=c[d+12>>2]|0;if(f|0){if(k?(c[a+152>>2]&4|0)==0:0){PO(a,g,c[i+228>>2]|0,c[i+244>>2]|0,c[i+212>>2]|0);d=c[e>>2]|0}g=c[a+36>>2]|0;p=+h[d+24>>3]+ +(c[f+8>>2]|0);o=c[f>>2]|0;h[m>>3]=+h[d+16>>3]+ +(c[f+4>>2]|0);h[m+8>>3]=p;c[m+16>>2]=o;g1(g,103424,m)|0;g=c[e>>2]|0;m=(c[g+104>>2]|0)+56|0;g=g+16|0;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];oH(a,10,c[(c[e>>2]|0)+104>>2]|0);if(k){if(c[a+152>>2]&4|0)PO(a,c[j>>2]|0,c[i+228>>2]|0,c[i+244>>2]|0,c[i+212>>2]|0);QO(a)}}l=n;return}function uK(a){a=a|0;RJ(c[(c[a+16>>2]|0)+12>>2]|0);return}function vK(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+64|0;k=m+40|0;h=m;if(!(a[f>>0]|0)){h=4208;g=b+40|0;do{c[b>>2]=c[h>>2];b=b+4|0;h=h+4|0}while((b|0)<(g|0))}else{g=(g|0)==0?103330:g;i=c[(c[e+16>>2]|0)+12>>2]|0;j=BK(i,f)|0;if(!j){if(nK(e,i+16|0,h,f,15,0)|0)oK(e,f)}else if(nK(e,j+16|0,h,g,d[j+65>>0]|0,0)|0){c[k>>2]=ry(e)|0;c[k+4>>2]=f;c[k+8>>2]=g;Pw(0,103332,k)|0}g=b+40|0;do{c[b>>2]=c[h>>2];b=b+4|0;h=h+4|0}while((b|0)<(g|0))}l=m;return}function wK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0.0,k=0,m=0,n=0.0;k=l;l=l+32|0;m=k+16|0;i=k;f=c[a+4>>2]|0;a=c[a>>2]|0;g=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];ZG(i,m,g);c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(!f){f=c[(c[a+16>>2]|0)+12>>2]|0;g=f+16|0;a=f+24|0;i=f+32|0;f=f+40|0}else{g=f;a=f+8|0;i=f+16|0;f=f+24|0}e=+h[a>>3];d=+h[f>>3];n=+h[b>>3];if((+h[g>>3]<=n?n<=+h[i>>3]:0)?(j=+h[b+8>>3],e<=j):0)a=j<=d&1;else a=0;l=k;return a|0}function xK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0.0;u=l;l=l+80|0;r=u+64|0;q=u+32|0;t=u;a:do if(!(a[d+28>>0]|0))e=0;else{i=+h[d>>3];p=b+16|0;m=c[(c[p>>2]|0)+12>>2]|0;k=m+48|0;m=m+56|0;d=0;while(1){if((d|0)>=(c[k>>2]|0))break a;n=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)==0;o=c[(c[m>>2]|0)+(d<<2)>>2]|0;j=+(~~+h[(n?o+16|0:o+24|0)>>3]|0);if(i>=j?(s=+(~~+h[(n?o+32|0:o+40|0)>>3]|0),i<=s):0)break;d=d+1|0}if(!(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1)){t=c[p>>2]|0;v=+h[t+16>>3];h[f>>3]=v+j;j=+h[t+24>>3];i=+h[t+80>>3];h[f+8>>3]=j-i*.5;h[f+16>>3]=v+s}else{o=(c[(c[m>>2]|0)+(d<<2)>>2]|0)+16|0;b=(c[p>>2]|0)+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[q+12>>2]=c[o+12>>2];c[q+16>>2]=c[o+16>>2];c[q+20>>2]=c[o+20>>2];c[q+24>>2]=c[o+24>>2];c[q+28>>2]=c[o+28>>2];c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];_G(t,q,r);c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];c[f+16>>2]=c[t+16>>2];c[f+20>>2]=c[t+20>>2];c[f+24>>2]=c[t+24>>2];c[f+28>>2]=c[t+28>>2];t=c[p>>2]|0;i=+h[t+80>>3];j=+h[t+24>>3]}h[f+24>>3]=i*.5+j;c[g>>2]=1}while(0);l=u;return e|0}function yK(d,e){d=d|0;e=e|0;var f=0,i=0,j=0,k=0.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.0;w=l;l=l+144|0;n=w+96|0;p=w+64|0;r=w;s=w+128|0;t=c[d+16>>2]|0;u=t+208|0;f=c[u>>2]|0;if(!f)v=(b[t+260>>1]&1)!=0;else v=1;m=e+16|0;q=c[m>>2]|0;o=c[q+12>>2]|0;j=o+16|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];c[p+8>>2]=c[j+8>>2];c[p+12>>2]=c[j+12>>2];c[p+16>>2]=c[j+16>>2];c[p+20>>2]=c[j+20>>2];c[p+24>>2]=c[j+24>>2];c[p+28>>2]=c[j+28>>2];x=+h[q+16>>3];h[p>>3]=+h[p>>3]+x;k=+h[q+24>>3];q=p+8|0;h[q>>3]=+h[q>>3]+k;q=p+16|0;h[q>>3]=+h[q>>3]+x;j=p+24|0;h[j>>3]=+h[j>>3]+k;if(v?(c[d+152>>2]&4|0)==0:0)PO(d,f,c[t+228>>2]|0,c[t+244>>2]|0,c[t+212>>2]|0);f=dK(d,e)|0;fK(d,e)|0;c[s>>2]=0;if(!(f&1))i=0;else{i=eK(e)|0;if(!((uG(i,s,n)|0)<<24>>24)){WO(d,i);i=1}else{WO(d,c[s>>2]|0);i=c[s+4>>2]|0;j=KL(e,c[46403]|0,0,0)|0;k=+g[n>>2];if(!i)XO(d,134232,j,k);else XO(d,i,j,k);i=f>>>1&1|2}}j=c[c[(c[m>>2]|0)+8>>2]>>2]|0;if((a[j>>0]|0)==77){m=(b$(j,103201)|0)==0;f=m?f|4:f}if(!(f&2130706444)){c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];c[n+16>>2]=c[p+16>>2];c[n+20>>2]=c[p+20>>2];c[n+24>>2]=c[p+24>>2];c[n+28>>2]=c[p+28>>2];$O(d,n,i)}else{c[r>>2]=c[p>>2];c[r+4>>2]=c[p+4>>2];c[r+8>>2]=c[p+8>>2];c[r+12>>2]=c[p+12>>2];p=r+32|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];h[r+16>>3]=+h[p>>3];h[r+24>>3]=+h[r+8>>3];h[r+48>>3]=+h[r>>3];h[r+56>>3]=+h[r+40>>3];EJ(d,r,4,f,i)}zK(d,e,o);D_(c[s>>2]|0);if(v){if(c[d+152>>2]&4|0)PO(d,c[u>>2]|0,c[t+228>>2]|0,c[t+244>>2]|0,c[t+212>>2]|0);QO(d)}l=w;return}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+144|0;p=u+128|0;o=u+112|0;q=u+16|0;r=u;g=u+96|0;i=u+80|0;s=u+64|0;t=u+48|0;j=e+52|0;f=c[j>>2]|0;if(!f)f=d+16|0;else{n=f+56|0;m=e+16|0;f=e+32|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];AK(g,o,p);f=d+16|0;m=(c[f>>2]|0)+16|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2];hK(i,o,p);c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];oH(b,10,c[j>>2]|0);fK(b,d)|0}k=(c[f>>2]|0)+16|0;c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];c[r+8>>2]=c[k+8>>2];c[r+12>>2]=c[k+12>>2];k=e+48|0;m=e+64|0;n=q+16|0;j=e+56|0;e=q+16|0;i=0;while(1){if((i|0)>=(c[k>>2]|0))break;if((i|0)>0){f=(c[j>>2]|0)+(i<<2)|0;g=c[f>>2]|0;if(!(a[m>>0]|0)){g=g+32|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];h[q>>3]=+h[(c[f>>2]|0)+16>>3];f=n;g=0}else{g=g+16|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>>2];c[q+12>>2]=c[g+12>>2];h[e>>3]=+h[q>>3];f=(c[f>>2]|0)+32|0;g=1}h[q+(g<<4)+8>>3]=+h[f+8>>3];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];c[o+8>>2]=c[q+8>>2];c[o+12>>2]=c[q+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];hK(s,o,p);c[q>>2]=c[s>>2];c[q+4>>2]=c[s+4>>2];c[q+8>>2]=c[s+8>>2];c[q+12>>2]=c[s+12>>2];c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];hK(t,o,p);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];bP(b,q,2)}zK(b,d,c[(c[j>>2]|0)+(i<<2)>>2]|0);i=i+1|0}l=u;return}function AK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function BK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[b+60>>2]|0;if(!(((e|0)!=0?(a[e>>0]|0)==(a[d>>0]|0):0)?(b$(e,d)|0)==0:0))f=4;a:do if((f|0)==4){g=b+56|0;f=c[b+48>>2]|0;e=0;while(1){if((e|0)>=(f|0)){b=0;break a}b=BK(c[(c[g>>2]|0)+(e<<2)>>2]|0,d)|0;if(!b)e=e+1|0;else break}}while(0);return b|0}function CK(a,b){a=a|0;b=b|0;var d=0;d=b+8|0;h[d>>3]=+h[d>>3]*1.375;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function DK(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;k=+h[b>>3];f=k*.5;m=+h[b+8>>3];i=m*.5;h[a>>3]=f;e=m*.40909090909090906;h[a+8>>3]=e;h[a+16>>3]=f;g=m*.4592530909090909;h[a+24>>3]=g;j=k*.275892;h[a+32>>3]=j;h[a+40>>3]=i;h[a+48>>3]=0.0;h[a+56>>3]=i;k=k*-.275892;h[a+64>>3]=k;h[a+72>>3]=i;l=-f;h[a+80>>3]=l;h[a+88>>3]=g;d=a+96|0;h[d>>3]=l;h[a+104>>3]=e;b=a+112|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];b=a+128|0;h[b>>3]=l;h[a+136>>3]=m*-.40909090909090906;d=a+144|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];h[a+160>>3]=l;g=-g;h[a+168>>3]=g;h[a+176>>3]=k;i=-i;h[a+184>>3]=i;h[a+192>>3]=0.0;h[a+200>>3]=i;h[a+208>>3]=j;h[a+216>>3]=i;h[a+224>>3]=f;h[a+232>>3]=g;d=a+240|0;h[d>>3]=f;h[a+248>>3]=-e;b=a+256|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];b=a+288|0;d=a+272|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];return}function EK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+144|0;u=x+112|0;t=x+96|0;v=x+80|0;s=x+64|0;w=x+32|0;q=x+16|0;r=x;g=x+48|0;do if(a){j=c[a+4>>2]|0;k=c[a>>2]|0;o=(c[(c[(ez(k)|0)+16>>2]|0)+116>>2]&3)*90|0;c[u>>2]=c[b>>2];c[u+4>>2]=c[b+4>>2];c[u+8>>2]=c[b+8>>2];c[u+12>>2]=c[b+12>>2];ZG(g,u,o);c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[w+12>>2]=c[g+12>>2];if(j|0){d=+h[w>>3];if(!(+h[j>>3]<=d)){a=0;break}if(!(d<=+h[j+16>>3])){a=0;break}d=+h[w+8>>3];if(!(+h[j+8>>3]<=d)){a=0;break}a=d<=+h[j+24>>3];break}if((k|0)==(c[46522]|0)){d=+h[22924];e=+h[22925];i=+h[22926]}else{a=k+16|0;b=c[(c[a>>2]|0)+12>>2]|0;c[46523]=b;c[46524]=c[b+44>>2];c[46525]=c[b+8>>2];if(!(c[b+40>>2]&2048)){n=(c[(c[(ez(k)|0)+16>>2]|0)+116>>2]&1|0)==0;o=c[a>>2]|0;h[(n?183416:183424)>>3]=+h[o+96>>3]+ +h[o+88>>3];h[(n?183424:183416)>>3]=+h[o+80>>3];i=+h[o+32>>3]*72.0;f=+h[o+40>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0);i=+(~~(i+(i>=0.0?.5:-.5))|0)}else{jM(u,b);i=+h[u+16>>3]-+h[u>>3];f=+h[u+24>>3]-+h[u+8>>3];o=(c[(c[(ez(k)|0)+16>>2]|0)+116>>2]&1|0)==0;h[(o?183416:183424)>>3]=i;h[(o?183424:183416)>>3]=f}d=+h[22927];if(d==0.0){h[22927]=1.0;d=1.0}e=+h[22928];if(e==0.0){h[22928]=1.0;e=1.0}d=i/d;h[22924]=d;e=f/e;h[22925]=e;i=i*.5;h[22926]=i;h[22929]=f*.5;o=O((c[(c[46523]|0)+4>>2]|0)+-1|0,c[46525]|0)|0;c[46526]=(o|0)>0?o:0;c[46522]=k}f=+h[w>>3]*d;h[w>>3]=f;o=w+8|0;d=+h[o>>3]*e;h[o>>3]=d;if(!(+B(+f)>i)?(e=+B(+d),p=+h[22929],!(e>p)):0){o=c[46525]|0;if((o|0)<3){a=+u$(f/i,d/p)<1.0;break}b=(c[46527]|0)%(o|0)|0;a=(b+1|0)%(o|0)|0;k=c[46524]|0;m=c[46526]|0;n=k+(m+b<<4)|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];n=k+(m+a<<4)|0;c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[r+12>>2]=c[n+12>>2];c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[v>>2]=c[45860];c[v+4>>2]=c[45861];c[v+8>>2]=c[45862];c[v+12>>2]=c[45863];c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[u+8>>2]=c[n+8>>2];c[u+12>>2]=c[n+12>>2];if(mK(s,v,t,u)|0){c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[v>>2]=c[q>>2];c[v+4>>2]=c[q+4>>2];c[v+8>>2]=c[q+8>>2];c[v+12>>2]=c[q+12>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];c[u>>2]=c[45860];c[u+4>>2]=c[45861];c[u+8>>2]=c[45862];c[u+12>>2]=c[45863];n=(mK(s,v,t,u)|0)!=0;if(n?(c[s>>2]=c[w>>2],c[s+4>>2]=c[w+4>>2],c[s+8>>2]=c[w+8>>2],c[s+12>>2]=c[w+12>>2],c[v>>2]=c[r>>2],c[v+4>>2]=c[r+4>>2],c[v+8>>2]=c[r+8>>2],c[v+12>>2]=c[r+12>>2],c[t>>2]=c[45860],c[t+4>>2]=c[45861],c[t+8>>2]=c[45862],c[t+12>>2]=c[45863],c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],c[u+12>>2]=c[q+12>>2],(mK(s,v,t,u)|0)!=0):0){a=1;break}else{j=b;b=1}while(1){if((b|0)>=(o|0)){b=31;break}if(n){g=a;a=(a+1|0)%(o|0)|0}else{g=(j+-1+o|0)%(o|0)|0;a=j}q=k+(m+g<<4)|0;r=k+(m+a<<4)|0;c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];c[v>>2]=c[45860];c[v+4>>2]=c[45861];c[v+8>>2]=c[45862];c[v+12>>2]=c[45863];c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[u>>2]=c[r>>2];c[u+4>>2]=c[r+4>>2];c[u+8>>2]=c[r+8>>2];c[u+12>>2]=c[r+12>>2];if(!(mK(s,v,t,u)|0)){b=30;break}else{j=g;b=b+1|0}}if((b|0)==30){c[46527]=g;a=0;break}else if((b|0)==31){c[46527]=j;a=1;break}}else a=0}else a=0}else{c[46522]=0;a=0}while(0);l=x;return a&1|0}function FK(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0;j=l;l=l+32|0;f=j+16|0;i=j;if(a){a=c[a>>2]|0;k=(c[(c[(ez(a)|0)+16>>2]|0)+116>>2]&3)*90|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];ZG(i,f,k);g=+h[i>>3];e=+h[i+8>>3];if((a|0)==(c[46530]|0))d=+h[22932];else{i=c[(c[a+16>>2]|0)+12>>2]|0;k=(c[i+4>>2]<<1)+-2|0;d=+h[(c[i+44>>2]|0)+((((k|0)>0?k:0)|1)<<4)>>3];h[22932]=d;c[46530]=a}if(+B(+g)>d|+B(+e)>d)a=0;else a=+u$(g,e)<=d&1}else{c[46530]=0;a=0}l=j;return a|0}function GK(e,f){e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0;t=l;l=l+16|0;j=t;r=c[e+16>>2]|0;s=r+208|0;g=c[s>>2]|0;if((g|0)==0?(b[r+260>>1]&1)==0:0)q=0;else if(!(c[e+152>>2]&4)){PO(e,g,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0);q=1}else q=1;n=f+16|0;k=c[(c[n>>2]|0)+12>>2]|0;o=c[k+44>>2]|0;p=c[k+8>>2]|0;k=c[k+4>>2]|0;if((c[46528]|0)<(p|0)){g=p+2|0;c[46528]=g;i=c[46529]|0;if(!i)g=vH(g<<4)|0;else g=xH(i,g<<4)|0;c[46529]=g}jK(f,j)|0;if(!(c[j>>2]&32))YO(e,21916);else YO(e,21912);g=c[46402]|0;if(g|0)fP(e,+LL(f,g,1.0,0.0));g=d[(c[n>>2]|0)+117>>0]|0;do if(!(g&1)){if(g&2|0){UO(e,OL(f,0,103230)|0);g=OL(f,0,103238)|0;WO(e,g);break}if(g&8|0){UO(e,OL(f,0,103246)|0);g=OL(f,0,103254)|0;WO(e,g);break}if(!(g&4)){g=iK(f,134232)|0;WO(e,g);fK(e,f)|0;break}else{UO(e,OL(f,0,103262)|0);g=OL(f,0,103270)|0;WO(e,g);break}}else{UO(e,OL(f,0,103214)|0);g=OL(f,0,103222)|0;WO(e,g)}while(0);if(!k)if(!(a[g>>0]|0))i=1;else{UO(e,g);i=1}else i=k;j=1;f=0;while(1){if((f|0)>=(i|0))break;k=O(f,p)|0;m=c[46529]|0;g=0;while(1){if((g|0)>=(p|0))break;w=g+k|0;u=+h[o+(w<<4)+8>>3];v=c[n>>2]|0;h[m+(g<<4)>>3]=+h[v+16>>3]+ +h[o+(w<<4)>>3];h[m+(g<<4)+8>>3]=+h[v+24>>3]+u;g=g+1|0}ZO(e,m,p,j);j=0;f=f+1|0}if(q){if(c[e+152>>2]&4|0)PO(e,c[s>>2]|0,c[r+228>>2]|0,c[r+244>>2]|0,c[r+212>>2]|0);QO(e)}l=t;return}function HK(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+48|0;h=g;e=IK(b,e,f)|0;c[h+36>>2]=c[f+36>>2];nK(b,c[f+24>>2]|0,h,e,d[f+33>>0]|0,0)|0;b=h;e=a+40|0;do{c[a>>2]=c[b>>2];a=a+4|0;b=b+4|0}while((a|0)<(e|0));l=g;return}function IK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0;z=l;l=l+32|0;y=z;g=z+24|0;k=z+16|0;x=c[(c[(c[(ez(b)|0)+60>>2]|0)+16>>2]|0)+116>>2]&3;f=b+16|0;w=(c[f>>2]|0)+16|0;c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[y+8>>2]=c[w+8>>2];c[y+12>>2]=c[w+12>>2];JK(g,y,x);w=(c[d+16>>2]|0)+16|0;c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[y+8>>2]=c[w+8>>2];c[y+12>>2]=c[w+12>>2];JK(k,y,x);x=a[e+33>>0]|0;y=x&255;a:do switch(x<<24>>24){case 0:case 15:{d=0;break}default:{d=c[e+24>>2]|0;if(!d){x=(c[(c[(ez(b)|0)+16>>2]|0)+116>>2]&1|0)==0;w=c[f>>2]|0;B=+h[w+80>>3]*.5;A=-B;m=+h[w+88>>3];j=-m;n=x?j:A;i=x?m:B;m=x?B:m;j=x?A:j}else{n=+h[d>>3];i=+h[d+16>>3];m=+h[d+24>>3];j=+h[d+8>>3]}x=c[g>>2]|0;v=c[g+4>>2]|0;w=c[k>>2]|0;s=c[k+4>>2]|0;t=~~j;u=~~((i+n)*.5);r=~~i;q=~~((m+j)*.5);p=~~m;o=~~n;g=0;k=0;d=0;e=0;b=0;while(1){if((k|0)==4)break a;if(1<>2]|0;else f=g}else f=g;g=f;k=k+1|0}}}while(0);l=z;return d|0}function JK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;switch(d|0){case 0:{f=+h[b>>3];e=+h[b+8>>3];break}case 2:{f=+h[b>>3];e=-+h[b+8>>3];break}case 1:{f=-+h[b+8>>3];e=+h[b>>3];break}case 3:{f=+h[b+8>>3];e=+h[b>>3];break}default:{f=0.0;e=0.0}}c[a>>2]=~~(f+(f>=0.0?.5:-.5));c[a+4>>2]=~~(e+(e>=0.0?.5:-.5));return}function KK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;f=i+40|0;h=i;g=b+16|0;e=c[g>>2]|0;d=e+16|0;if(a[e+47>>0]|0){e=c[b>>2]&3;HK(f,c[((e|0)==3?b:b+48|0)+40>>2]|0,c[((e|0)==2?b:b+-48|0)+40>>2]|0,d);e=f;f=d+40|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0));e=c[g>>2]|0}d=e+56|0;if(a[e+87>>0]|0){e=c[b>>2]&3;HK(h,c[((e|0)==2?b:b+-48|0)+40>>2]|0,c[((e|0)==3?b:b+48|0)+40>>2]|0,d);e=h;f=d+40|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(f|0))}l=i;return}function LK(){var a=0,b=0,d=0;a=l;l=l+32|0;b=a+16|0;d=a;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];EK(0,b)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];FK(0,b)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];aK(0,b)|0;l=a;return}function MK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+192|0;s=z+176|0;x=z+112|0;y=z+48|0;t=z+32|0;u=z+24|0;v=z+16|0;w=z;if(!(e<<24>>24)){k=d+48|0;c[t>>2]=c[k>>2];c[t+4>>2]=c[k+4>>2];c[t+8>>2]=c[k+8>>2];c[t+12>>2]=c[k+12>>2];k=u;m=v;n=x;o=0}else{c[t>>2]=c[d>>2];c[t+4>>2]=c[d+4>>2];c[t+8>>2]=c[d+8>>2];c[t+12>>2]=c[d+12>>2];k=v;m=u;n=0;o=x}h[u>>3]=0.0;h[v>>3]=1.0;q=t+8|0;f=0.0;g=1.0;j=0;p=+h[t>>3];while(1){r=+h[q>>3];f=(f+g)*.5;XL(w,d,3,f,n,o);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];c[t+8>>2]=c[w+8>>2];c[t+12>>2]=c[w+12>>2];c[s>>2]=c[w>>2];c[s+4>>2]=c[w+4>>2];c[s+8>>2]=c[w+8>>2];c[s+12>>2]=c[w+12>>2];a:do if(!((lb[b&127](a,s)|0)<<24>>24)){e=0;while(1){if((e|0)==4){e=k;j=1;break a}j=y+(e<<4)|0;A=x+(e<<4)|0;c[j>>2]=c[A>>2];c[j+4>>2]=c[A+4>>2];c[j+8>>2]=c[A+8>>2];c[j+12>>2]=c[A+12>>2];e=e+1|0}}else e=m;while(0);h[e>>3]=f;i=+h[t>>3];p=p-i;if(!((p>=0.0?p:-p)>.5)?(r=r-+h[q>>3],!((r>=0.0?r:-r)>.5)):0)break;f=+h[u>>3];g=+h[v>>3];p=i}b:do if(!(j<<24>>24)){e=0;while(1){if((e|0)==4)break b;A=d+(e<<4)|0;y=x+(e<<4)|0;c[A>>2]=c[y>>2];c[A+4>>2]=c[y+4>>2];c[A+8>>2]=c[y+8>>2];c[A+12>>2]=c[y+12>>2];e=e+1|0}}else{e=0;while(1){if((e|0)==4)break b;A=d+(e<<4)|0;x=y+(e<<4)|0;c[A>>2]=c[x>>2];c[A+4>>2]=c[x+4>>2];c[A+8>>2]=c[x+8>>2];c[A+12>>2]=c[x+12>>2];e=e+1|0}}while(0);l=z;return}function NK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0;m=l;l=l+48|0;d=m+16|0;e=m;f=m+32|0;g=a+16|0;i=c[g>>2]|0;j=c[i+8>>2]|0;if(j|0?(k=j+4|0,c[(c[k>>2]|0)+12>>2]|0):0){c[f>>2]=a;c[f+4>>2]=0;n=+h[i+96>>3];h[e>>3]=+h[b>>3]-+h[i+16>>3];h[e+8>>3]=+h[b+8>>3]-+h[i+24>>3];k=c[(c[k>>2]|0)+12>>2]|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];k=lb[k&127](f,d)|0;h[(c[g>>2]|0)+96>>3]=n;OK(f,a,b,k)}l=m;return}function OK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0.0,m=0,n=0;n=l;l=l+64|0;m=n;j=b+16|0;g=c[j>>2]|0;k=+h[g+96>>3];i=g+16|0;f=g+24|0;b=0;while(1){if((b|0)==4)break;h[m+(b<<4)>>3]=+h[d+(b<<4)>>3]-+h[i>>3];h[m+(b<<4)+8>>3]=+h[d+(b<<4)+8>>3]-+h[f>>3];b=b+1|0}MK(a,c[(c[(c[g+8>>2]|0)+4>>2]|0)+12>>2]|0,m,e);b=0;while(1){if((b|0)==4)break;e=c[j>>2]|0;h[d+(b<<4)>>3]=+h[e+16>>3]+ +h[m+(b<<4)>>3];h[d+(b<<4)+8>>3]=+h[e+24>>3]+ +h[m+(b<<4)+8>>3];b=b+1|0}h[(c[j>>2]|0)+96>>3]=k;l=n;return}function PK(b,d){b=b|0;d=d|0;var e=0,f=0;while(1){f=b+16|0;b=c[f>>2]|0;if(!(a[b+112>>0]|0))break;b=c[b+116>>2]|0}b=c[b+8>>2]|0;if(!b){b=uH(40)|0;c[(c[f>>2]|0)+8>>2]=b}e=c[b>>2]|0;if(!e)b=vH(((c[b+4>>2]|0)*48|0)+48|0)|0;else b=xH(e,((c[b+4>>2]|0)*48|0)+48|0)|0;f=c[(c[f>>2]|0)+8>>2]|0;c[f>>2]=b;f=f+4|0;e=c[f>>2]|0;c[f>>2]=e+1;f=b+(e*48|0)|0;c[f>>2]=uH(d<<4)|0;c[b+(e*48|0)+4>>2]=d;b=b+(e*48|0)+8|0;e=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));return f|0}function QK(b,e,f,g,i){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0;D=l;l=l+96|0;A=D+16|0;u=D;x=D+92|0;y=D+88|0;v=D+80|0;m=c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0;z=ez(m)|0;B=PK(b,g)|0;n=b;while(1){o=c[n+16>>2]|0;if(!(a[o+112>>0]|0))break;n=c[o+116>>2]|0}if((a[i+8>>0]|0)==0?(j=c[m+16>>2]|0,k=c[e+16>>2]|0,(c[j+232>>2]|0)==(c[k+232>>2]|0)):0){p=(c[j+236>>2]|0)>(c[k+236>>2]|0);w=p?m:e;m=p?e:m}else w=e;if((m|0)==(c[((c[n>>2]&3|0)==3?n:n+48|0)+40>>2]|0)){j=o+80|0;k=o+40|0;p=d[o+86>>0]|0;e=d[o+46>>0]|0}else{j=o+40|0;k=o+80|0;p=d[o+46>>0]|0;e=d[o+86>>0]|0}o=c[j>>2]|0;j=c[k>>2]|0;if(((e|0)!=0?(r=m+16|0,q=c[(c[r>>2]|0)+8>>2]|0,(q|0)!=0):0)?(c[(c[q+4>>2]|0)+12>>2]|0)!=0:0){c[v>>2]=m;c[v+4>>2]=j;j=g+-4|0;e=u+8|0;k=0;while(1){if((k|0)>=(j|0))break;n=k+3|0;q=c[r>>2]|0;h[u>>3]=+h[f+(n<<4)>>3]-+h[q+16>>3];h[e>>3]=+h[f+(n<<4)+8>>3]-+h[q+24>>3];q=c[(c[(c[q+8>>2]|0)+4>>2]|0)+12>>2]|0;c[A>>2]=c[u>>2];c[A+4>>2]=c[u+4>>2];c[A+8>>2]=c[u+8>>2];c[A+12>>2]=c[u+12>>2];if(!((lb[q&127](v,A)|0)<<24>>24))break;else k=n}c[x>>2]=k;OK(v,m,f+(k<<4)|0,1)}else{c[x>>2]=0;k=0}if(((p|0)!=0?(t=w+16|0,s=c[(c[t>>2]|0)+8>>2]|0,(s|0)!=0):0)?(c[(c[s+4>>2]|0)+12>>2]|0)!=0:0){c[v>>2]=w;c[v+4>>2]=o;m=g+-4|0;e=u+8|0;j=m;while(1){if((j|0)<=0)break;g=c[t>>2]|0;h[u>>3]=+h[f+(j<<4)>>3]-+h[g+16>>3];h[e>>3]=+h[f+(j<<4)+8>>3]-+h[g+24>>3];g=c[(c[(c[g+8>>2]|0)+4>>2]|0)+12>>2]|0;c[A>>2]=c[u>>2];c[A+4>>2]=c[u+4>>2];c[A+8>>2]=c[u+8>>2];c[A+12>>2]=c[u+12>>2];if(!((lb[g&127](v,A)|0)<<24>>24))break;j=j+-3|0}c[y>>2]=j;OK(v,w,f+(j<<4)|0,0)}else{m=g+-4|0;c[y>>2]=m;j=m}while(1){if((k|0)>=(m|0))break;e=k+3|0;E=+h[f+(k<<4)>>3]-+h[f+(e<<4)>>3];F=+h[f+(k<<4)+8>>3]-+h[f+(e<<4)+8>>3];if(F*F+E*E<1.0e-06)k=e;else break}c[x>>2]=k;while(1){if((j|0)<=0)break;v=j+3|0;F=+h[f+(j<<4)>>3]-+h[f+(v<<4)>>3];E=+h[f+(j<<4)+8>>3]-+h[f+(v<<4)+8>>3];if(!(E*E+F*F<1.0e-06))break;j=j+-3|0}c[y>>2]=j;RK(b,w,f,x,y,B,i);r=c[x>>2]|0;n=c[y>>2]|0;m=n+4|0;n=n+3|0;o=A+16|0;p=A+32|0;q=A+48|0;k=z+16|0;j=r;while(1){if((j|0)>=(m|0))break;z=(c[B>>2]|0)+(j-r<<4)|0;e=f+(j<<4)|0;c[z>>2]=c[e>>2];c[z+4>>2]=c[e+4>>2];c[z+8>>2]=c[e+8>>2];c[z+12>>2]=c[e+12>>2];c[A>>2]=c[e>>2];c[A+4>>2]=c[e+4>>2];c[A+8>>2]=c[e+8>>2];c[A+12>>2]=c[e+12>>2];e=j+1|0;if((j|0)>=(n|0)){C=38;break}y=(c[B>>2]|0)+(e-r<<4)|0;z=f+(e<<4)|0;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[o>>2]=c[z>>2];c[o+4>>2]=c[z+4>>2];c[o+8>>2]=c[z+8>>2];c[o+12>>2]=c[z+12>>2];z=j+2|0;y=(c[B>>2]|0)+(z-r<<4)|0;z=f+(z<<4)|0;c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];c[y+12>>2]=c[z+12>>2];c[p>>2]=c[z>>2];c[p+4>>2]=c[z+4>>2];c[p+8>>2]=c[z+8>>2];c[p+12>>2]=c[z+12>>2];z=j+3|0;y=f+(z<<4)|0;c[q>>2]=c[y>>2];c[q+4>>2]=c[y+4>>2];c[q+8>>2]=c[y+8>>2];c[q+12>>2]=c[y+12>>2];YE((c[k>>2]|0)+16|0,A);j=z}c[B+4>>2]=m-r;l=D;return}function RK(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p+4|0;n=p;o=b;while(1){j=c[(c[o+16>>2]|0)+116>>2]|0;if(!j)break;else o=j}if(!(a[i+8>>0]|0))j=(kb[c[i>>2]&63](o)|0)&255;else j=0;sE(o,m,n);k=i+4|0;if((kb[c[k>>2]&63](d)|0)<<24>>24)c[n>>2]=0;if((kb[c[k>>2]&63](c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0)<<24>>24)c[m>>2]=0;if(j|0){d=c[m>>2]|0;c[m>>2]=c[n>>2];c[n>>2]=d}if(!(a[i+9>>0]|0)){j=c[m>>2]|0;if(j|0)c[f>>2]=HE(o,e,c[f>>2]|0,c[g>>2]|0,h,j)|0;j=c[n>>2]|0;if(j|0)c[g>>2]=FE(o,e,c[f>>2]|0,c[g>>2]|0,h,j)|0}else{k=c[n>>2]|0;j=c[m>>2]|0;if(j|k|0)IE(o,e,c[f>>2]|0,c[g>>2]|0,h,j,k)}l=p;return}function SK(a,b){a=a|0;b=b|0;var d=0,e=0;if(+h[b>>3]<+h[b+16>>3]?+h[b+8>>3]<+h[b+24>>3]:0){d=c[a+84>>2]|0;e=a+80|0;a=c[e>>2]|0;c[e>>2]=a+1;a=d+(a<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2]}return}function TK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.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.0,z=0.0;x=l;l=l+112|0;u=x+72|0;o=x+56|0;n=x+16|0;q=x;j=c[d>>2]&3;p=d+48|0;w=c[((j|0)==3?d:p)+40>>2]|0;t=d+16|0;r=c[t>>2]|0;i=r+16|0;if(a[r+47>>0]|0){HK(n,w,c[((j|0)==2?d:d+-48|0)+40>>2]|0,i);j=n;n=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(n|0))}r=w+16|0;j=c[r>>2]|0;i=c[j+8>>2]|0;if(!i)n=0;else n=c[(c[i+4>>2]|0)+16>>2]|0;i=j+16|0;j=(c[t>>2]|0)+16|0;c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];c[u+8>>2]=c[j+8>>2];c[u+12>>2]=c[j+12>>2];UK(q,o,u);c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>>2];if(!(g<<24>>24)){i=c[t>>2]|0;if(!(a[i+45>>0]|0))i=0;else{k=+h[i+32>>3];v=9}}else{k=+VK(c[((c[d>>2]&3|0)==3?d:p)+40>>2]|0);v=9}if((v|0)==9){h[b+16>>3]=k;i=1}a[b+29>>0]=i;c[b+80>>2]=0;c[b+88>>2]=d;q=f+32|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];switch(e|0){case 1:{j=c[r>>2]|0;if((a[j+156>>0]|0)==0?(q=a[(c[t>>2]|0)+49>>0]|0,s=q&255,q<<24>>24!=0):0){c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+16>>2]=c[f+16>>2];c[u+20>>2]=c[f+20>>2];c[u+24>>2]=c[f+24>>2];c[u+28>>2]=c[f+28>>2];do if(!(s&4)){if(s&1|0){c[f+48>>2]=1;i=u+24|0;h[i>>3]=+h[(+h[i>>3]>+h[b+8>>3]?u+16|0:b)+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}i=f+48|0;if(!(s&8)){c[i>>2]=2;h[u>>3]=+h[b>>3];h[u+8>>3]=+h[j+24>>3]-+h[j+80>>3]*.5;h[u+24>>3]=+h[b+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}else{c[i>>2]=8;h[u+16>>3]=+h[b>>3];h[u+8>>3]=+h[j+24>>3]-+h[j+80>>3]*.5;h[u+24>>3]=+h[b+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}}else{c[f+48>>2]=4;k=+h[u>>3];if(+h[b>>3]<+h[j+16>>3]){z=k+-1.0;y=+h[b+8>>3];b=u+16|0;k=+h[b>>3];m=+h[j+80>>3]*.5+ +h[j+24>>3];m=m+ +((c[(c[(ez(w)|0)+16>>2]|0)+252>>2]|0)/2|0|0);i=c[r>>2]|0;h[b>>3]=+h[i+16>>3]-+h[i+88>>3];h[u+24>>3]=y;h[u+8>>3]=+h[i+24>>3]-+h[i+80>>3]*.5;h[u>>3]=z;h[f+56>>3]=z;h[f+64>>3]=y;h[f+72>>3]=k;h[f+80>>3]=m;i=f+88|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=2;break}else{m=+h[b+8>>3];i=u+16|0;y=+h[i>>3]+1.0;z=+h[j+80>>3]*.5+ +h[j+24>>3];z=z+ +((c[(c[(ez(w)|0)+16>>2]|0)+252>>2]|0)/2|0|0);b=c[r>>2]|0;h[u>>3]=+h[b+96>>3]+ +h[b+16>>3];h[u+24>>3]=m;h[u+8>>3]=+h[b+24>>3]-+h[b+80>>3]*.5;h[i>>3]=y;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=y;h[f+80>>3]=z;i=f+88|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=2;break}}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((w|0)==(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)?i+16|0:i+56|0)+30>>0]=0}else{j=1;v=47}break}case 2:{s=a[(c[t>>2]|0)+49>>0]|0;j=s&255;if(!(s<<24>>24))v=46;else{c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[u+16>>2]=c[f+16>>2];c[u+20>>2]=c[f+20>>2];c[u+24>>2]=c[f+24>>2];c[u+28>>2]=c[f+28>>2];do if(!(j&4)){if(j&1|0)if((c[f+48>>2]|0)==4){i=c[r>>2]|0;z=+h[i+24>>3]-+h[i+80>>3]*.5;i=u+16|0;y=+h[i>>3]+1.0;k=+h[b>>3];m=z-+((c[(c[(ez(w)|0)+16>>2]|0)+252>>2]|0)/2|0|0);b=c[r>>2]|0;h[u>>3]=+h[b+96>>3]+ +h[b+16>>3];h[u+8>>3]=z;h[u+24>>3]=+h[b+80>>3]*.5+ +h[b+24>>3];h[i>>3]=y;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=y;h[f+80>>3]=z;i=f+88|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=2;break}else{i=u+24|0;h[i>>3]=+h[(+h[i>>3]>+h[b+8>>3]?u+16|0:b)+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}k=+h[b>>3];if(!(j&8)){h[u>>3]=k;e=c[r>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[u+24>>3]=m+k;k=+h[b+8>>3];i=u}else{h[u+8>>3]=k-m;k=+h[b+8>>3]+1.0;i=u+16|0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}else{i=u+16|0;h[i>>3]=k+1.0;e=c[r>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[u+24>>3]=m+k;k=+h[b+8>>3]+-1.0;i=u}else{h[u+8>>3]=k-m;k=+h[b+8>>3]+1.0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1;break}}else{i=u+8|0;h[i>>3]=+h[(+h[i>>3]<+h[b+8>>3]?u:b)+8>>3];i=f+56|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];c[i+16>>2]=c[u+16>>2];c[i+20>>2]=c[u+20>>2];c[i+24>>2]=c[u+24>>2];c[i+28>>2]=c[u+28>>2];i=1}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((w|0)==(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)?i+16|0:i+56|0)+30>>0]=0;c[f+48>>2]=j}break}default:v=46}if((v|0)==46){j=c[f+48>>2]|0;v=47}a:do if((v|0)==47){if(n){d=f+56|0;i=f+52|0;j=pb[n&127](w,(c[t>>2]|0)+16|0,j,d,i)|0;if(j){c[f+48>>2]=j;break}}else{i=f+52|0;d=f+56|0};c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];c[d+16>>2]=c[f+16>>2];c[d+20>>2]=c[f+20>>2];c[d+24>>2]=c[f+24>>2];c[d+28>>2]=c[f+28>>2];c[i>>2]=1;switch(e|0){case 8:{qa(135312,103488,569,103498);break}case 2:{h[((c[f+48>>2]|0)==4?f+56|0:f+72|0)+8>>3]=+h[b+8>>3];break a}case 1:{h[f+80>>3]=+h[b+8>>3];c[f+48>>2]=1;break a}default:break a}}while(0);l=x;return}function UK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function VK(a){a=a|0;var b=0.0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0.0,l=0.0;i=c[a+16>>2]|0;j=c[i+172>>2]|0;f=0.0;g=0;while(1){a=c[j+(g<<2)>>2]|0;if(!a)break;f=+h[(c[(c[((c[a>>2]&3|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0)+16>>3]+f;g=g+1|0}e=c[i+180>>2]|0;b=0.0;a=0;while(1){d=c[e+(a<<2)>>2]|0;if(!d)break;b=+h[(c[(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+16>>3]+b;a=a+1|0}k=+h[i+16>>3];l=+h[i+24>>3];j=c[j>>2]|0;f=+K(+(l-+h[(c[(c[((c[j>>2]&3|0)==3?j:j+48|0)+40>>2]|0)+16>>2]|0)+24>>3]),+(k-f/+(g|0)));j=c[e>>2]|0;return +((+K(+(+h[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+24>>3]-l),+(b/+(a|0)-k))+f)*.5)}function WK(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+112|0;w=z+72|0;p=z+56|0;n=z+16|0;t=z;j=c[d>>2]&3;r=d+-48|0;y=c[((j|0)==2?d:r)+40>>2]|0;u=d+16|0;s=c[u>>2]|0;i=s+56|0;if(a[s+87>>0]|0){HK(n,y,c[((j|0)==3?d:d+48|0)+40>>2]|0,i);j=n;n=i+40|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(n|0))}s=y+16|0;j=c[s>>2]|0;i=c[j+8>>2]|0;if(!i)o=0;else o=c[(c[i+4>>2]|0)+16>>2]|0;n=b+40|0;i=j+16|0;j=(c[u>>2]|0)+56|0;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];c[w+8>>2]=c[j+8>>2];c[w+12>>2]=c[j+12>>2];UK(t,p,w);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];c[n+8>>2]=c[t+8>>2];c[n+12>>2]=c[t+12>>2];if(!(g<<24>>24)){i=c[u>>2]|0;if(!(a[i+85>>0]|0))q=0;else{h[b+56>>3]=+h[i+72>>3];q=1}}else{m=+VK(c[((c[d>>2]&3|0)==2?d:r)+40>>2]|0)+3.141592653589793;h[b+56>>3]=m;if(m<6.283185307179586)q=1;else qa(103508,103488,606,103532)}a[b+69>>0]=q;t=f+32|0;c[t>>2]=c[n>>2];c[t+4>>2]=c[n+4>>2];c[t+8>>2]=c[n+8>>2];c[t+12>>2]=c[n+12>>2];switch(e|0){case 1:{j=c[s>>2]|0;if((a[j+156>>0]|0)==0?(t=a[(c[u>>2]|0)+89>>0]|0,v=t&255,t<<24>>24!=0):0){c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+16>>2]=c[f+16>>2];c[w+20>>2]=c[f+20>>2];c[w+24>>2]=c[f+24>>2];c[w+28>>2]=c[f+28>>2];do if(!(v&4))if(!(v&1)){i=f+48|0;if(!(v&8)){c[i>>2]=2;h[w>>3]=+h[n>>3];h[w+24>>3]=+h[j+80>>3]*.5+ +h[j+24>>3];h[w+8>>3]=+h[b+48>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}else{c[i>>2]=8;h[w+16>>3]=+h[n>>3];h[w+24>>3]=+h[j+80>>3]*.5+ +h[j+24>>3];h[w+8>>3]=+h[b+48>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}}else{c[f+48>>2]=1;k=+h[w>>3];if(+h[n>>3]<+h[j+16>>3]){B=k+-1.0;m=+h[b+48>>3];b=w+16|0;k=+h[b>>3];A=+h[j+80>>3]*-.5+ +h[j+24>>3];A=A-+((c[(c[(ez(y)|0)+16>>2]|0)+252>>2]|0)/2|0|0);i=c[s>>2]|0;h[b>>3]=+h[i+16>>3]-+h[i+88>>3];h[w+8>>3]=m;h[w+24>>3]=+h[i+80>>3]*.5+ +h[i+24>>3];h[w>>3]=B;h[f+56>>3]=B;h[f+64>>3]=A;h[f+72>>3]=k;h[f+80>>3]=m;i=f+88|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=2;break}else{B=+h[b+48>>3];i=w+16|0;A=+h[i>>3]+1.0;m=+h[j+80>>3]*-.5+ +h[j+24>>3];m=m-+((c[(c[(ez(y)|0)+16>>2]|0)+252>>2]|0)/2|0|0);b=c[s>>2]|0;h[w>>3]=+h[b+96>>3]+ +h[b+16>>3];h[w+8>>3]=B;h[w+24>>3]=+h[b+80>>3]*.5+ +h[b+24>>3];h[i>>3]=A;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=A;h[f+80>>3]=B;i=f+88|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=2;break}}else{c[f+48>>2]=4;i=w+8|0;h[i>>3]=+h[(+h[i>>3]<+h[b+48>>3]?w:n)+8>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((y|0)==(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)?i+56|0:i+16|0)+30>>0]=0;c[f+48>>2]=v}else{j=4;x=47}break}case 2:{v=a[(c[u>>2]|0)+89>>0]|0;j=v&255;if(!(v<<24>>24))x=46;else{c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[w+16>>2]=c[f+16>>2];c[w+20>>2]=c[f+20>>2];c[w+24>>2]=c[f+24>>2];c[w+28>>2]=c[f+28>>2];do if(!(j&4)){if(j&1|0)if((c[f+48>>2]|0)==4){k=+h[w>>3]+-1.0;i=c[s>>2]|0;B=+h[i+24>>3]-+h[i+80>>3]*.5;A=+h[n>>3];m=B-+((c[(c[(ez(y)|0)+16>>2]|0)+252>>2]|0)/2|0|0);i=c[s>>2]|0;h[w+16>>3]=+h[i+16>>3]+-2.0-+h[i+88>>3];h[w+8>>3]=B;h[w+24>>3]=+h[i+80>>3]*.5+ +h[i+24>>3];h[w>>3]=k;h[f+56>>3]=k;h[f+64>>3]=m;h[f+72>>3]=A;h[f+80>>3]=B;i=f+88|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=2;break}else{i=w+24|0;h[i>>3]=+h[(+h[i>>3]>+h[b+8>>3]?w+16|0:b)+8>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}k=+h[n>>3];if(!(j&8)){h[w>>3]=k+-1.0;e=c[s>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[w+24>>3]=m+k;k=+h[b+48>>3]+-1.0;i=w}else{h[w+8>>3]=k-m;k=+h[b+48>>3];i=w+16|0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}else{i=w+16|0;h[i>>3]=k+1.0;e=c[s>>2]|0;k=+h[e+24>>3];m=+h[e+80>>3]*.5;if((c[f+48>>2]|0)==4){h[w+24>>3]=m+k;k=+h[b+48>>3]+-1.0;i=w}else{h[w+8>>3]=k-m;k=+h[b+48>>3]+1.0}h[i+8>>3]=k;i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1;break}}else{i=w+8|0;h[i>>3]=+h[(+h[i>>3]<+h[b+48>>3]?w:n)+8>>3];i=f+56|0;c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2];c[i+16>>2]=c[w+16>>2];c[i+20>>2]=c[w+20>>2];c[i+24>>2]=c[w+24>>2];c[i+28>>2]=c[w+28>>2];i=1}while(0);c[f+52>>2]=i;while(1){i=c[d+16>>2]|0;if(!(a[i+112>>0]|0))break;d=c[i+116>>2]|0}a[((y|0)==(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)?i+56|0:i+16|0)+30>>0]=0;c[f+48>>2]=j}break}default:x=46}if((x|0)==46){j=c[f+48>>2]|0;x=47}a:do if((x|0)==47){if(o){d=f+56|0;i=f+52|0;j=pb[o&127](y,(c[u>>2]|0)+56|0,j,d,i)|0;if(j){c[f+48>>2]=j;break}}else{i=f+52|0;d=f+56|0};c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];c[d+16>>2]=c[f+16>>2];c[d+20>>2]=c[f+20>>2];c[d+24>>2]=c[f+24>>2];c[d+28>>2]=c[f+28>>2];c[i>>2]=1;switch(e|0){case 8:{qa(135312,103488,765,103532);break}case 2:{h[((c[f+48>>2]|0)==4?f+56|0:f+72|0)+8>>3]=+h[b+48>>3];break a}case 1:{h[f+64>>3]=+h[b+48>>3];c[f+48>>2]=4;break a}default:break a}}while(0);l=z;return}function XK(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;g=c[b+16>>2]|0;i=c[g+96>>2]|0;if((a[g+44>>0]|0)==0?(a[g+84>>0]|0)==0:0)j=6;else{d=a[g+49>>0]|0;e=d&255;if(((e&8|0)==0?(f=a[g+89>>0]|0,(f&8)==0):0)?((e&5|0)==0?1:d<<24>>24!=f<<24>>24):0)j=6;else b=0}if((j|0)==6)if(!i)b=18;else{b=(c[(c[(ez(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)!=0;b=~~(+h[(b?i+32|0:i+24|0)>>3]+18.0)}return b|0}function YK(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,l=0,m=0;b=c[(c[d+(e<<2)>>2]|0)+16>>2]|0;if((a[b+44>>0]|0)==0?(a[b+84>>0]|0)==0:0)l=6;else l=3;do if((l|0)==3){j=a[b+49>>0]|0;k=j&255;if(!(k&8)){m=a[b+89>>0]|0;if((m&8)==0?((k&5|0)==0?1:j<<24>>24!=m<<24>>24):0){l=6;break}if(!(a[b+89>>0]&8)){if(k&4|0){_K(d,e,f,g,h,i);break}if(!(k&1))qa(135312,103488,1231,103540);else{aL(d,e,f,g,h,i);break}}}if((j&2)==0?(a[b+89>>0]&2)==0:0){$K(d,e,f,g,h,i);break}_K(d,e,f,g,h,i)}while(0);if((l|0)==6)ZK(d,e,f,g,h,i);return}function ZK(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0.0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;B=c[b+(e<<2)>>2]|0;n=i*.5/+(f|0);n=n>2.0?n:2.0;D=(c[((c[B>>2]&3|0)==3?B:B+48|0)+40>>2]|0)+16|0;A=c[D>>2]|0;C=+h[A+16>>3];H=+h[A+24>>3];B=c[B+16>>2]|0;m=+h[B+16>>3];E=m+C;F=+h[B+24>>3]+H;i=+h[B+56>>3];G=i+C;H=+h[B+64>>3]+H;k=!(F>=H)?-1:1;p=+h[A+96>>3];switch(bL(d[B+49>>0]|0,d[B+89>>0]|0)|0){case 65:case 32:{if(F==H)k=0-k|0;break}default:{}}Q=(p-m)*3.0;m=(p-i)*3.0;v=n*+(k|0);u=L+8|0;w=L+16|0;x=L+32|0;y=L+48|0;z=(H+F)*.5;A=L+64|0;B=L+80|0;s=L+96|0;t=L+104|0;r=0;o=0.0;i=p;n=p=(f|0))break;q=e+1|0;e=c[b+(e<<2)>>2]|0;p=i+g;n=n+g;m=m+g;o=o+v;h[L>>3]=E;h[u>>3]=F;Q=o+F;cL(M,n*.3333333333333333+E,Q);c[w>>2]=c[M>>2];c[w+4>>2]=c[M+4>>2];c[w+8>>2]=c[M+8>>2];c[w+12>>2]=c[M+12>>2];R=p+C;cL(N,R,Q);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];cL(O,R,z);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];Q=H-o;cL(J,R,Q);c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];cL(K,m*.3333333333333333+G,Q);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];h[s>>3]=G;h[t>>3]=H;k=e+16|0;if((c[(c[k>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,k=c[(c[k>>2]|0)+96>>2]|0,I=+h[(S?k+24|0:k+32|0)>>3],S=c[D>>2]|0,h[k+56>>3]=I*.5+p+ +h[S+16>>3],h[k+64>>3]=+h[S+24>>3],a[k+81>>0]=1,I>g):0)i=I+i;else i=p;QK(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,L,7,j);e=q;r=r+1|0}l=P;return}function _K(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0.0,S=0;Q=l;l=l+16080|0;M=Q+80|0;N=Q+64|0;O=Q+48|0;P=Q+32|0;K=Q+16|0;L=Q;C=c[b+(e<<2)>>2]|0;q=g*.5/+(f|0);q=q>2.0?q:2.0;E=(c[((c[C>>2]&3|0)==3?C:C+48|0)+40>>2]|0)+16|0;m=c[E>>2]|0;H=+h[m+16>>3];D=+h[m+24>>3];C=c[C+16>>2]|0;k=+h[C+16>>3];p=+h[C+24>>3];F=k+H;G=p+D;g=+h[C+56>>3];o=+h[C+64>>3];H=g+H;I=o+D;n=!(F>=H)?-1.0:1.0;s=+h[m+80>>3]*.5;switch(bL(d[C+49>>0]|0,d[C+89>>0]|0)|0){case 15:{k=(q-g+ +h[m+96>>3])*n;break}case 38:{k=(g+q+ +h[m+88>>3])*n;break}case 41:{k=(q-k+ +h[m+96>>3])*n;break}case 48:{k=(q-k+ +h[m+96>>3])*n;break}case 58:case 57:case 51:case 47:case 37:case 14:{k=n*.3333333333333333*(k-g+ +h[m+88>>3]+ +h[m+96>>3]);break}case 73:{k=(k+q+ +h[m+88>>3])*n;break}case 83:{k=(+h[m+88>>3]+k)*n;break}case 84:{k=((k-g+ +h[m+88>>3]+ +h[m+96>>3])*.5+q)*n;break}case 85:case 75:case 74:{k=((k-g+ +h[m+88>>3]+ +h[m+96>>3])*.5+q*2.0)*n;break}default:k=0.0}p=(s-p)*3.0;o=(s-o)*3.0;q=n*q;w=M+8|0;x=M+16|0;y=M+32|0;z=M+48|0;A=(H+F)*.5;B=M+64|0;C=M+80|0;u=M+96|0;v=M+104|0;t=0;g=s;p=s=(f|0))break;r=e+1|0;e=c[b+(e<<2)>>2]|0;o=g+i;p=p+i;n=n+i;k=k+q;h[M>>3]=F;h[w>>3]=G;s=k+F;cL(N,s,p*.3333333333333333+G);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];R=o+D;cL(O,s,R);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];cL(P,A,R);c[z>>2]=c[P>>2];c[z+4>>2]=c[P+4>>2];c[z+8>>2]=c[P+8>>2];c[z+12>>2]=c[P+12>>2];s=H-k;cL(K,s,R);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];cL(L,s,n*.3333333333333333+I);c[C>>2]=c[L>>2];c[C+4>>2]=c[L+4>>2];c[C+8>>2]=c[L+8>>2];c[C+12>>2]=c[L+12>>2];h[u>>3]=H;h[v>>3]=I;m=e+16|0;if((c[(c[m>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,m=c[(c[m>>2]|0)+96>>2]|0,J=+h[(S?m+32|0:m+24|0)>>3],S=c[E>>2]|0,h[m+64>>3]=J*.5+o+ +h[S+24>>3],h[m+56>>3]=+h[S+16>>3],a[m+81>>0]=1,J>i):0)g=J+g;else g=o;QK(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,M,7,j);e=r;t=t+1|0}l=Q;return}function $K(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0.0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;B=c[b+(e<<2)>>2]|0;n=i*.5/+(f|0);n=n>2.0?n:2.0;D=(c[((c[B>>2]&3|0)==3?B:B+48|0)+40>>2]|0)+16|0;A=c[D>>2]|0;C=+h[A+16>>3];H=+h[A+24>>3];B=c[B+16>>2]|0;m=+h[B+16>>3];E=m+C;F=+h[B+24>>3]+H;i=+h[B+56>>3];G=i+C;H=+h[B+64>>3]+H;k=!(F>=H)?-1:1;p=+h[A+88>>3];switch(bL(d[B+49>>0]|0,d[B+89>>0]|0)|0){case 67:case 12:{if(F==H)k=0-k|0;break}default:{}}Q=(m+p)*3.0;m=(i+p)*3.0;v=n*+(k|0);u=L+8|0;w=L+16|0;x=L+32|0;y=L+48|0;z=(H+F)*.5;A=L+64|0;B=L+80|0;s=L+96|0;t=L+104|0;r=0;o=0.0;i=p;n=p=(f|0))break;q=e+1|0;e=c[b+(e<<2)>>2]|0;p=i+g;n=n+g;m=m+g;o=o+v;h[L>>3]=E;h[u>>3]=F;Q=o+F;cL(M,E-n*.3333333333333333,Q);c[w>>2]=c[M>>2];c[w+4>>2]=c[M+4>>2];c[w+8>>2]=c[M+8>>2];c[w+12>>2]=c[M+12>>2];R=C-p;cL(N,R,Q);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];cL(O,R,z);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];Q=H-o;cL(J,R,Q);c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];cL(K,G-m*.3333333333333333,Q);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];h[s>>3]=G;h[t>>3]=H;k=e+16|0;if((c[(c[k>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,k=c[(c[k>>2]|0)+96>>2]|0,I=+h[(S?k+24|0:k+32|0)>>3],S=c[D>>2]|0,h[k+56>>3]=I*-.5-p+ +h[S+16>>3],h[k+64>>3]=+h[S+24>>3],a[k+81>>0]=1,I>g):0)i=I+i;else i=p;QK(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,L,7,j);e=q;r=r+1|0}l=P;return}function aL(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;C=c[b+(e<<2)>>2]|0;B=g*.5/+(f|0);w=(c[((c[C>>2]&3|0)==3?C:C+48|0)+40>>2]|0)+16|0;D=c[w>>2]|0;z=+h[D+16>>3];v=+h[D+24>>3];C=c[C+16>>2]|0;m=+h[C+24>>3];x=+h[C+16>>3]+z;y=m+v;n=+h[C+64>>3];z=+h[C+56>>3]+z;A=n+v;u=!(x>=z)?-1:1;o=+h[D+80>>3]*.5;C=(bL(d[C+49>>0]|0,d[C+89>>0]|0)|0)==67;m=(m+o)*3.0;n=(n+o)*3.0;B=(B>2.0?B:2.0)*+((C?0-u|0:u)|0);u=L+8|0;C=L+16|0;D=L+32|0;E=L+48|0;F=(z+x)*.5;G=L+64|0;H=L+80|0;s=L+96|0;t=L+104|0;g=o;k=0.0;m=o=(f|0))break;r=e+1|0;p=c[b+(e<<2)>>2]|0;o=g+i;m=m+i;n=n+i;k=k+B;h[L>>3]=x;h[u>>3]=y;Q=k+x;cL(M,Q,y-m*.3333333333333333);c[C>>2]=c[M>>2];c[C+4>>2]=c[M+4>>2];c[C+8>>2]=c[M+8>>2];c[C+12>>2]=c[M+12>>2];R=v-o;cL(N,Q,R);c[D>>2]=c[N>>2];c[D+4>>2]=c[N+4>>2];c[D+8>>2]=c[N+8>>2];c[D+12>>2]=c[N+12>>2];cL(O,F,R);c[E>>2]=c[O>>2];c[E+4>>2]=c[O+4>>2];c[E+8>>2]=c[O+8>>2];c[E+12>>2]=c[O+12>>2];Q=z-k;cL(J,Q,R);c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];cL(K,Q,A-n*.3333333333333333);c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];h[s>>3]=z;h[t>>3]=A;e=p+16|0;if((c[(c[e>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(ez(c[((c[p>>2]&3|0)==3?p:p+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,e=c[(c[e>>2]|0)+96>>2]|0,I=+h[(S?e+32|0:e+24|0)>>3],S=c[w>>2]|0,h[e+64>>3]=I*-.5-o+ +h[S+24>>3],h[e+56>>3]=+h[S+16>>3],a[e+81>>0]=1,I>i):0)g=I+g;else g=o;QK(p,c[((c[p>>2]&3|0)==2?p:p+-48|0)+40>>2]|0,L,7,j);e=r;q=q+1|0}l=P;return}function bL(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)>=8){b=-1;break}if((c[21940+(d<<2)>>2]|0)==(b|0)){b=d;break}d=d+1|0}d=0;while(1){if((d|0)>=8){d=-1;break}if((c[21940+(d<<2)>>2]|0)==(a|0))break;d=d+1|0}if((d|b|0)<0)d=0;else d=c[21972+(d<<5)+(b<<2)>>2]|0;return d|0}function cL(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function dL(b){b=b|0;var d=0,e=0;if((c[46433]|0)!=0|(c[46432]|0)!=0){d=b+16|0;e=c[(c[d>>2]|0)+100>>2]|0;if((e|0?(a[e+81>>0]|0)==0:0)?eL(b,1)|0:0){e=ez(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;kM(e,c[(c[d>>2]|0)+100>>2]|0)}e=c[(c[d>>2]|0)+104>>2]|0;if((e|0?(a[e+81>>0]|0)==0:0)?eL(b,0)|0:0){e=ez(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;kM(e,c[(c[d>>2]|0)+104>>2]|0)}}return}function eL(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+96|0;o=q+32|0;m=q+16|0;n=q;i=b+16|0;do if((a[(c[i>>2]|0)+112>>0]|0)!=6){e=c[46433]|0;if(!((e|0)!=0?(a[(yx(b,e)|0)>>0]|0)!=0:0)){e=c[46432]|0;if(!e){e=0;break}if(!(a[(yx(b,e)|0)>>0]|0)){e=0;break}}d=d<<24>>24==0;p=c[i>>2]|0;p=c[(d?p+104|0:p+100|0)>>2]|0;e=fL(b)|0;if(e){k=c[e>>2]|0;do if(d){if(c[k+8>>2]|0){e=c[k>>2]|0;j=+h[e>>3];g=+h[k+16>>3];e=e+8|0;f=+h[k+24>>3];break}e=c[k>>2]|0;g=+h[e>>3];f=+h[e+8>>3];e=0;while(1){if((e|0)==4)break;n=o+(e<<4)|0;i=(c[k>>2]|0)+(e<<4)|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];e=e+1|0}XL(m,o,3,.1,0,0);j=+h[m>>3];e=m+8|0}else{d=(c[e+4>>2]|0)+-1|0;i=k+(d*48|0)|0;if(c[k+(d*48|0)+12>>2]|0){o=c[i>>2]|0;e=(c[k+(d*48|0)+4>>2]|0)+-1|0;j=+h[o+(e<<4)>>3];g=+h[k+(d*48|0)+32>>3];e=o+(e<<4)+8|0;f=+h[k+(d*48|0)+40>>3];break}m=c[i>>2]|0;d=k+(d*48|0)+4|0;e=(c[d>>2]|0)+-1|0;g=+h[m+(e<<4)>>3];f=+h[m+(e<<4)+8>>3];e=0;while(1){if((e|0)==4)break;m=o+(e<<4)|0;k=(c[i>>2]|0)+(e+-4+(c[d>>2]|0)<<4)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];e=e+1|0}XL(n,o,3,.9,0,0);j=+h[n>>3];e=n+8|0}while(0);r=+K(+(+h[e>>3]-f),+(j-g));r=+LL(b,c[46433]|0,-25.0,-180.0)*.017453292519943295+r;j=+LL(b,c[46432]|0,1.0,0.0)*10.0;h[p+56>>3]=j*+E(+r)+g;h[p+64>>3]=+F(+r)*j+f;a[p+81>>0]=1;e=1}else e=0}else e=0;while(0);l=q;return e|0}function fL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;d=b;while(1){e=c[d+16>>2]|0;d=c[e+8>>2]|0;if(d|0)break;if(!(a[e+112>>0]|0)){g=5;break}d=c[e+116>>2]|0}if((g|0)==5){g=ry(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;d=ry(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=d;Pw(1,103553,f)|0;d=0}l=h;return d|0}function gL(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0;s=l;l=l+96|0;m=s+80|0;n=s+64|0;o=s+48|0;p=s+32|0;q=s+16|0;r=s;k=b[(c[d+16>>2]|0)+136>>1]|0;d=e+16|0;hL(c[(c[d>>2]|0)+8>>2]|0,p,q);f=+h[p>>3];g=+h[q>>3];t=f-g;i=+h[p+8>>3];j=+h[q+8>>3];u=i-j;a:do if(u*u+t*t<1.0e-06){c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2]}else switch(k&14){case 4:case 10:{h[n>>3]=(g+f)*.5;h[n+8>>3]=(j+i)*.5;q=c[(c[d>>2]|0)+8>>2]|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];bM(r,q,m);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];break a}default:{iL(o,c[(c[d>>2]|0)+8>>2]|0,p,q);break a}}while(0);c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];l=s;return}function hL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+32|0;g=h+16|0;f=h;j=c[a>>2]|0;e=c[j>>2]|0;i=c[j+8>>2]|0;k=j+16|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];j=j+32|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];if(!i){c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2]}else{c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2]}i=c[a>>2]|0;j=(c[a+4>>2]|0)+-1|0;e=c[i+(j*48|0)>>2]|0;a=c[i+(j*48|0)+4>>2]|0;k=c[i+(j*48|0)+12>>2]|0;b=i+(j*48|0)+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];j=i+(j*48|0)+32|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];if(!k){k=e+(a+-1<<4)|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2]}else{c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2]}l=h;return}function iL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0;r=c[b+4>>2]|0;g=0.0;f=0;while(1){if((f|0)>=(r|0))break;l=c[b>>2]|0;k=c[l+(f*48|0)>>2]|0;l=c[l+(f*48|0)+4>>2]|0;i=3;j=0;while(1){if((i|0)>=(l|0))break;q=+h[k+(j<<4)>>3]-+h[k+(i<<4)>>3];p=+h[k+(j<<4)+8>>3]-+h[k+(i<<4)+8>>3];i=i+3|0;j=j+3|0;g=+C(+(p*p+q*q))+g}f=f+1|0}l=0;g=g*.5;a:while(1){if((l|0)>=(r|0)){f=15;break}k=c[b>>2]|0;j=c[k+(l*48|0)>>2]|0;k=c[k+(l*48|0)+4>>2]|0;f=3;i=0;while(1){if((f|0)>=(k|0))break;m=+h[j+(i<<4)>>3];p=+h[j+(i<<4)+8>>3];n=+h[j+(f<<4)>>3];o=+h[j+(f<<4)+8>>3];q=m-n;s=p-o;q=+C(+(s*s+q*q));if(q>=g){f=12;break a}f=f+3|0;i=i+3|0;g=g-q}l=l+1|0}if((f|0)==12){h[d>>3]=m;h[d+8>>3]=p;h[e>>3]=n;h[e+8>>3]=o;s=q-g;h[a>>3]=(s*m+n*g)/q;h[a+8>>3]=(s*p+o*g)/q;return}else if((f|0)==15)qa(135630,103488,1316,103615)}function jL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dL(b);return}function kL(b,d,e,f,g){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,G=0,H=0,I=0,J=0,K=0,L=0;J=lL(b)|0;I=c[J+4>>2]|0;K=c[J>>2]|0;H=I+-1|0;B=+h[K+(H<<6)+16>>3];C=+(I|0);D=(g|0)==2;G=(f|0)!=0;n=0;j=0.0;i=0.0;l=0.0;m=0.0;while(1){if((n|0)>=(I|0))break;b=~~+mL(+(n+-1|0),C);A=n+1|0;L=~~+mL(+(A|0),C);o=K+(n<<6)|0;m=+h[o>>3];z=K+(n<<6)+8|0;l=+h[z>>3];s=K+(n<<6)+16|0;t=+h[s>>3];u=K+(n<<6)+24|0;v=K+(n<<6)+32|0;w=K+(n<<6)+40|0;x=K+(n<<6)+48|0;y=K+(n<<6)+56|0;k=+nL(+h[K+(L<<6)+8>>3]-l,+h[K+(L<<6)>>3]-m);q=+nL(+h[K+(b<<6)+8>>3]-l,+h[K+(b<<6)>>3]-m);r=+hb[d&7](t,B,e);b=(n|0)==0;do if(b|(n|0)==(H|0))if(b){i=k+1.5707963267948966;if(!D){b=0;p=i;j=r;break}b=0;p=i;j=r;l=l-+F(+k)*r;m=m-+E(+k)*r;break}else{i=q+-1.5707963267948966;if(!D){b=0;p=i;j=r;break}b=0;p=i;j=r;l=l-+F(+q)*r;m=m-+E(+q)*r;break}else{p=k-q;p=1.5707963267948966-(p<0.0?p+6.283185307179586:p)*.5;j=+E(+p);j=j==0.0?0.0:r/j;i=k+1.5707963267948966;k=p+i;if(G|j>r*10.0){q=+mL(q+-1.5707963267948966,6.283185307179586);b=1;p=+mL(i,6.283185307179586);j=r;i=q}else{b=0;p=k;i=k}}while(0);h[o>>3]=m;h[z>>3]=l;h[s>>3]=t;a[u>>0]=108;h[v>>3]=i;h[w>>3]=j;c[x>>2]=b;h[y>>3]=p;n=A}o=uH(12)|0;b=0;while(1){if((b|0)>=(I|0))break;m=+h[K+(b<<6)>>3];l=+h[K+(b<<6)+8>>3];i=+h[K+(b<<6)+32>>3];j=+h[K+(b<<6)+40>>3];L=c[K+(b<<6)+48>>2]|0;k=+h[K+(b<<6)+56>>3];oL(o,+E(+i)*j+m,+F(+i)*j+l);if(L|0)pL(m,l,j,1,i,k,f,o);b=b+1|0}n=(g|0)==1;k=i+3.141592653589793;if(n)qL(o,m,l,j,i,k);else{oL(o,+E(+k)*j+m,+F(+k)*j+l);i=k}b=I+-2|0;k=m;while(1){if((b|0)<=-1)break;m=+h[K+(b<<6)>>3];l=+h[K+(b<<6)+8>>3];j=+h[K+(b<<6)+40>>3];L=c[K+(b<<6)+48>>2]|0;i=+h[K+(b<<6)+32>>3]+3.141592653589793;k=+h[K+(b<<6)+56>>3]+3.141592653589793;oL(o,+E(+k)*j+m,+F(+k)*j+l);if(L|0)pL(m,l,j,0,i,k,f,o);b=b+-1|0;k=m}if(n)qL(o,k,l,j,i,i+3.141592653589793);rL(J);return o|0}function lL(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;q=l;l=l+144|0;i=q+128|0;h=q+112|0;j=q+96|0;k=q+64|0;m=q;n=q+80|0;o=sL()|0;p=c[a+4>>2]|0;f=c[a>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];tL(o,i,0.0);g=m+48|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];d=0;b=0.0;a:while(1){e=d+3|0;if((e|0)>=(p|0))break;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];a=1;while(1){if((a|0)==4)break;r=m+(a<<4)|0;s=f+(a+d<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];a=a+1|0}c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];a=1;while(1){if((a|0)==21){d=e;continue a}XL(n,m,3,+(a|0)*.05,0,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];t=+uL(h,i)+b;c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];tL(o,i,t);c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];a=a+1|0;b=t}}vL(o);l=q;return o|0}function mL(a,b){a=+a;b=+b;var c=0.0;c=a-+A(+(a/b))*b;return +(!(a<0.0)&!(a>=b)?a:c)}function nL(a,b){a=+a;b=+b;if(!(a==0.0&b==0.0)){a=+K(+a,+b);if(!(a>=0.0))a=a+6.283185307179586}else a=0.0;return +a}function oL(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;e=c[a>>2]|0;f=a+4|0;if((e|0)<(c[f>>2]|0))f=c[a+8>>2]|0;else{c[f>>2]=2e3;e=a+8|0;f=xH(c[e>>2]|0,32e3)|0;c[e>>2]=f;e=c[a>>2]|0}c[a>>2]=e+1;h[f+(e<<4)>>3]=b;h[f+(e<<4)+8>>3]=d;return}function pL(a,b,c,d,e,f,g,h){a=+a;b=+b;c=+c;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0.0;d=(d|0)==0;i=d?e:f;do if((g|0)==1){e=(d?f:e)-i;e=!(e<=1.7453292519943296e-03)?e:e+6.283185307179586;if(e<3.141592653589793){qL(h,a,b,c,e+i,i);break}else{oL(h,+E(+i)*c+a,+F(+i)*c+a);break}}else oL(h,+E(+i)*c+a,+F(+i)*c+a);while(0);return}function qL(a,b,c,d,e,f){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;var g=0,h=0.0;oL(a,+E(+e)*d+b,+F(+e)*d+c);a:do if(!(d==0.0)){while(1){if(!(f>e))break;f=f+-6.283185307179586}f=e-f;while(1){if(!(f>6.283185307179586))break;f=f+-6.283185307179586}f=f*.05263157894736842;g=1;while(1){if((g|0)==20)break a;h=e-f*+(g|0);oL(a,+E(+h)*d+b,+F(+h)*d+c);g=g+1|0}}while(0);return}function rL(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function sL(){var a=0;a=uH(12)|0;c[a+4>>2]=0;c[a+8>>2]=2e3;c[a>>2]=uH(128e3)|0;return a|0}function tL(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;i=a+4|0;e=c[i>>2]|0;f=a+8|0;g=c[f>>2]|0;if((e|0)<(g|0))a=c[a>>2]|0;else{c[f>>2]=g<<1;e=xH(c[a>>2]|0,g<<7)|0;c[a>>2]=e;a=e;e=c[i>>2]|0}h[a+(e<<6)>>3]=+h[b>>3];h[a+(e<<6)+8>>3]=+h[b+8>>3];c[i>>2]=e+1;h[a+(e<<6)+16>>3]=d;return}function uL(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(+C(+(d*d+c*c)))}function vL(a){a=a|0;var b=0;b=c[a+4>>2]|0;if((c[a+8>>2]|0)>(b|0))c[a>>2]=xH(c[a>>2]|0,b<<6)|0;return}function wL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;g=k+12|0;c[g>>2]=0;h=c[d+4>>2]|0;if(!h)qa(103632,103643,203,103654);e=c[h>>2]|0;if(!e)qa(103668,103643,206,103654);f=h+8|0;if(!(c[f>>2]|0))c[f>>2]=xL(e)|0;if(!0)e=0;else{e=(AG(c[h>>2]|0)|0)==0;e=e?0:g}if(!((OP(b,d,e)|0)<<24>>24))yL(d,e);do if(e|0){f=c[g>>2]|0;b=c[15686]|0;e=c[h>>2]|0;if(!f){c[j>>2]=e;g1(b,103711,j)|0;break}else{c[i>>2]=e;c[i+4>>2]=f;g1(b,103679,i)|0;break}}while(0);j=d+32|0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];l=k;return}function xL(a){a=a|0;var b=0;b=c[46531]|0;if((b|0)!=0?(O$(b,a)|0)==0:0)a=c[46540]|0;else{D_(b);c[46531]=n1(a)|0;a=e2(186124,22228,35,36,93)|0;c[46540]=a}return a|0}function yL(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0.0,j=0,k=0.0;j=c[b+4>>2]|0;e=c[j>>2]|0;i=+h[j+16>>3];j=b+32|0;h[j>>3]=0.0;h[b+40>>3]=i*1.2;h[b+16>>3]=0.0;h[b+24>>3]=i*.1;c[b+8>>2]=0;c[b+12>>2]=0;if(V$(e,103745,4)|0)if((V$(e,103750,5)|0)!=0?(V$(e,103756,9)|0)!=0:0){g=4248;e=103766}else{g=8344;e=103802}else{g=6296;e=103783}if(d|0)c[d>>2]=e;e=c[b>>2]|0;if(e|0){f=0.0;while(1){b=a[e>>0]|0;if(!(b<<24>>24))break;k=f+ +h[g+((b&255)<<3)>>3];h[j>>3]=k;e=e+1|0;f=k}h[j>>3]=f*i}return}function zL(a,b){a=a|0;b=b|0;return O$(c[a>>2]|0,c[b>>2]|0)|0}function AL(a){a=a|0;var b=0;b=a+108|0;c[b>>2]=0;c[a+112>>2]=32;c[a+116>>2]=-1;c[a+120>>2]=30;c[a+124>>2]=63;c[a+128>>2]=55;c[a+132>>2]=0;c[a+136>>2]=0;c[a+140>>2]=0;b=Cw(b,c[4555]|0)|0;c[a+144>>2]=b;return b|0}function BL(a,b,d){a=a|0;b=b|0;d=d|0;d=E_(1,32)|0;a=c[b>>2]|0;if(a|0)c[d>>2]=n1(a)|0;a=c[b+4>>2]|0;if(a|0)c[d+4>>2]=n1(a)|0;c[d+24>>2]=c[b+24>>2]&127;h[d+16>>3]=+h[b+16>>3];c[d+8>>2]=c[b+8>>2];return d|0}function CL(a,b,d){a=a|0;b=b|0;d=d|0;D_(c[b>>2]|0);D_(c[b+4>>2]|0);D_(b);return}function DL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0;a=c[b>>2]|0;e=c[d>>2]|0;i=(e|0)==0;if(!a)if(i)j=5;else a=-1;else if(!i){a=b$(a,e)|0;if(!a)j=5}else a=1;do if((j|0)==5){a=c[b+4>>2]|0;e=c[d+4>>2]|0;i=(e|0)==0;if(!a){if(!i){a=-1;break}}else{if(i){a=1;break}a=b$(a,e)|0;if(a|0)break}a=(c[b+24>>2]&127)-(c[d+24>>2]&127)|0;if(!a){g=+h[b+16>>3];f=+h[d+16>>3];if(gf&1}}while(0);return a|0}function EL(){eb(186164)|0;return}function FL(){var a=0,b=0;b=l;l=l+16|0;a=b;eb(a|0)|0;l=b;return +(+((c[a+4>>2]|0)+(c[a>>2]|0)-(c[46541]|0)-(c[46542]|0)|0)*.016666666666666666)}function GL(a){a=a|0;var b=0,d=0;b=uH(16)|0;a=(a|0)>2?a:2;d=uH(a<<2)|0;c[b>>2]=d;c[b+12>>2]=d;c[b+8>>2]=d;c[b+4>>2]=d+(a<<2);return b|0}function HL(a){a=a|0;D_(c[a>>2]|0);D_(a);return}function IL(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+12|0;e=c[d>>2]|0;c[d>>2]=e+4;c[e>>2]=b;if((c[d>>2]|0)>>>0>=(c[a+4>>2]|0)>>>0)c[d>>2]=c[a>>2];return}function JL(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;b=c[d>>2]|0;if((b|0)!=(c[a+12>>2]|0)){e=b+4|0;c[d>>2]=e;b=c[b>>2]|0;if(e>>>0>=(c[a+4>>2]|0)>>>0)c[d>>2]=c[a>>2]}else b=0;return b|0}function KL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;g=i;if(((d|0)!=0?(h=yx(b,d)|0,(h|0)!=0):0)?(a[h>>0]|0)!=0:0){d=i1(h,g,10)|0;e=(h|0)==(c[g>>2]|0)?e:(d|0)<(f|0)?f:d}l=i;return e|0}function LL(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,h=0,i=0,j=0.0;i=l;l=l+16|0;g=i;if(((b|0)!=0&(d|0)!=0?(h=yx(b,d)|0,(h|0)!=0):0)?(a[h>>0]|0)!=0:0){j=+c2(h,g);e=(h|0)==(c[g>>2]|0)?e:j0.0)){b=+LL(a,nx(a,0,104612,0)|0,-1.0,0.0);b=b==0.0?72.0:b}return +b}function NL(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)!=0&(b|0)!=0)c=yx(a,b)|0;return c|0}function OL(b,c,d){b=b|0;c=c|0;d=d|0;b=NL(b,c,d)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0)d=b;return d|0}function PL(a,b,c){a=a|0;b=b|0;c=c|0;if(!b)a=c&255;else a=QL(yx(a,b)|0)|0;return a|0}function QL(a){a=a|0;return RL(a,0)|0}function RL(b,c){b=b|0;c=c|0;var d=0;if((b|0)!=0?(d=a[b>>0]|0,d<<24>>24!=0):0)if((O$(b,134226)|0)!=0?(O$(b,104623)|0)!=0:0)if((O$(b,104626)|0)!=0?(O$(b,104631)|0)!=0:0){if(((d<<24>>24)+-48|0)>>>0<10)c=(a2(b)|0)&255}else c=1;else c=0;return c|0}function SL(a){a=a|0;var b=0,d=0;while(1){b=(c[a+16>>2]|0)+220|0;d=c[b>>2]|0;if(!((d|0)!=(a|0)&(d|0)!=0))break;a=c[(c[d+16>>2]|0)+220>>2]|0;if(!a){a=d;continue}c[b>>2]=a}return a|0}function TL(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;if((a|0)!=(b|0)){d=c[a+16>>2]|0;e=d+220|0;if(!(c[e>>2]|0)){c[e>>2]=a;c[d+216>>2]=1}else a=SL(a)|0;d=c[b+16>>2]|0;e=d+220|0;if(!(c[e>>2]|0)){c[e>>2]=b;c[d+216>>2]=1}else{d=SL(b)|0;b=d;d=c[d+16>>2]|0}g=a+16|0;e=c[g>>2]|0;f=b+16|0;h=(c[e+120>>2]|0)>(c[d+120>>2]|0);a=h?b:a;c[(h?e:d)+220>>2]=a;e=(c[(h?f:g)>>2]|0)+216|0;c[e>>2]=(c[e>>2]|0)+(c[(c[(h?g:f)>>2]|0)+216>>2]|0)}return a|0}function UL(b){b=b|0;b=c[b+16>>2]|0;c[b+216>>2]=1;c[b+220>>2]=0;a[b+159>>0]=0;return}function VL(a,b){a=a|0;b=b|0;if((SL(a)|0)==(a|0)){a=c[a+16>>2]|0;c[a+220>>2]=b;b=(c[b+16>>2]|0)+216|0;c[b>>2]=(c[b>>2]|0)+(c[a+216>>2]|0);return}else qa(104643,104635,194,104659)}function WL(a,b){a=a|0;b=b|0;var d=0.0;b=c[(c[b+16>>2]|0)+132>>2]|0;d=+h[b+8>>3]*72.0;h[a>>3]=+h[b>>3]*72.0;h[a+8>>3]=d;return}function XL(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0,p=0;o=l;l=l+576|0;n=o;i=0;while(1){if((i|0)>(d|0))break;k=n+(i<<4)|0;j=b+(i<<4)|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];i=i+1|0}m=1.0-e;i=1;while(1){if((i|0)>(d|0))break;j=d-i|0;k=i+-1|0;b=0;while(1){if((b|0)>(j|0))break;p=b+1|0;h[n+(i*96|0)+(b<<4)>>3]=+h[n+(k*96|0)+(p<<4)>>3]*e+ +h[n+(k*96|0)+(b<<4)>>3]*m;h[n+(i*96|0)+(b<<4)+8>>3]=+h[n+(k*96|0)+(p<<4)+8>>3]*e+ +h[n+(k*96|0)+(b<<4)+8>>3]*m;b=p}i=i+1|0}a:do if(f|0){i=0;while(1){if((i|0)>(d|0))break a;p=f+(i<<4)|0;k=n+(i*96|0)|0;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[p+12>>2]=c[k+12>>2];i=i+1|0}}while(0);b:do if(g|0){i=0;while(1){if((i|0)>(d|0))break b;p=g+(i<<4)|0;f=n+((d-i|0)*96|0)+(i<<4)|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];i=i+1|0}}while(0);p=n+(d*96|0)|0;c[a>>2]=c[p>>2];c[a+4>>2]=c[p+4>>2];c[a+8>>2]=c[p+8>>2];c[a+12>>2]=c[p+12>>2];l=o;return}function YL(b){b=b|0;var d=0,e=0,f=0,g=0;e=0;do{d=c[46545]|0;f=d+1024|0;if((d-e|0)<1024){c[46545]=f;f=xH(c[46546]|0,f)|0;c[46546]=f;d=c[46545]|0}else f=c[46546]|0;d=O0(f+e|0,d-e|0,b)|0;if(!d){g=6;break}e=(W_(d)|0)+e|0;d=c[46546]|0}while((a[d+(e+-1)>>0]|0)!=10);if((g|0)==6)d=c[46546]|0;return ((e|0)>0?d:0)|0}function ZL(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;do if((b|0)!=0?(a[b>>0]|0)!=0:0)if(!0){d=c[46362]|0;e=c[46548]|0;if((c[46547]|0)==(d|0))d=e;else{if(e){D_(c[e>>2]|0);D_(c[46548]|0);c[46548]=0;d=c[46362]|0}c[46547]=d;if(!d)break;if(!(a[d>>0]|0))break;d=_L(d)|0;c[46548]=d}if(!((a[b>>0]|0)!=47&(d|0)!=0))break;b=$L(d,c[46549]|0,b)|0;break}else S();else b=0;while(0);l=f;return b|0}function _L(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=0;f=0;g=0;b=n1(a)|0;d=0;while(1){b=k1(b,104958)|0;if(!b)break;a=(g<<2)+8|0;if(!f)a=vH(a)|0;else a=xH(d,a)|0;c[a+(g<<2)>>2]=b;f=W_(b)|0;e=e>>>0>f>>>0?e:f;f=a;g=g+1|0;b=0;d=a}c[f+(g<<2)>>2]=0;c[46549]=e;return f|0}function $L(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;e=g;h=c[46550]|0;c[46550]=F_(h,b+2+(W_(d)|0)|0)|0;while(1){b=c[a>>2]|0;if(!b){a=0;break}h=c[46550]|0;c[e>>2]=b;c[e+4>>2]=104956;c[e+8>>2]=d;Y0(h,104949,e)|0;if(!(K1(c[46550]|0,4)|0)){f=4;break}else a=a+4|0}if((f|0)==4)a=c[46550]|0;l=g;return a|0}function aM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=(b|0)==0;f=0;while(1){h=c[d+(f<<2)>>2]|0;if(!h)break;if((!g?(a[b>>0]|0)==(a[h>>0]|0):0)?(b$(b,h)|0)==0:0)break;f=f+1|0}return c[e+(f<<2)>>2]|0}function bM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0;z=l;l=l+80|0;x=z+16|0;y=z;u=c[b+4>>2]|0;v=c[b>>2]|0;w=d+8|0;f=0;e=-1;g=1.e+38;b=-1;while(1){if((f|0)>=(u|0))break;s=c[v+(f*48|0)>>2]|0;t=c[v+(f*48|0)+4>>2]|0;r=0;while(1){if((r|0)>=(t|0))break;q=+h[s+(r<<4)>>3]-+h[d>>3];p=+h[s+(r<<4)+8>>3]-+h[w>>3];q=p*p+q*q;A=(e|0)==-1|q>2]|0;e=e+(((e|0)==((c[v+(b*48|0)+4>>2]|0)+-1|0))<<31>>31)|0;e=e-((e|0)%3|0)|0;b=0;while(1){if((b|0)==4)break;C=b+e|0;h[x+(b<<4)>>3]=+h[f+(C<<4)>>3];h[x+(b<<4)+8>>3]=+h[f+(C<<4)+8>>3];b=b+1|0}q=+h[d>>3];k=+h[x>>3]-q;o=+h[w>>3];p=+h[x+8>>3]-o;j=+h[x+48>>3]-q;n=+h[x+56>>3]-o;b=y+8|0;g=1.0;i=0.0;j=n*n+j*j;k=p*p+k*k;while(1){p=(g+i)*.5;XL(y,x,3,p,0,0);m=+h[y>>3];n=+h[b>>3];if(+B(+(k-j))<1.0)break;if(+B(+(g-i))<1.0e-05)break;C=k>3]=m;h[a+8>>3]=n;l=z;return}function cM(){return 0}function dM(b){b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;d=+LL(b,c[46376]|0,.75,.01);g=b+16|0;h[(c[g>>2]|0)+32>>3]=d;d=+LL(b,c[46375]|0,.5,.02);h[(c[g>>2]|0)+40>>3]=d;l=WJ(OL(b,c[46377]|0,104960)|0,b)|0;c[(c[g>>2]|0)+8>>2]=l;l=yx(b,c[46384]|0)|0;d=+LL(b,c[46380]|0,14.0,1.0);e=OL(b,c[46381]|0,104968)|0;f=OL(b,c[46382]|0,134232)|0;i=(Rz(l)|0)!=0;k=(HJ(b)|0)==2;i=kH(b,l,(k?4:0)|(i?2:0),d,e,f)|0;c[(c[g>>2]|0)+104>>2]=i;i=c[46385]|0;if((i|0?(j=yx(b,i)|0,j|0):0)?a[j>>0]|0:0){l=(Rz(j)|0)!=0;l=kH(b,j,l?2:0,d,e,f)|0;c[(c[g>>2]|0)+108>>2]=l;l=(c[(ez(b)|0)+16>>2]|0)+113|0;a[l>>0]=a[l>>0]|16}k=(KL(b,c[46388]|0,0,0)|0)&255;l=c[g>>2]|0;a[l+144>>0]=k;tb[c[c[(c[l+8>>2]|0)+4>>2]>>2]&127](b);return}function eM(b){b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+112|0;m=v+96|0;n=v+80|0;s=v+40|0;u=v;r=b+48|0;p=ez(c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0)|0;g=m+8|0;c[g>>2]=0;o=n+8|0;c[o>>2]=0;d=c[46412]|0;if(((d|0)!=0?(e=yx(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0){fM(b,m);t=(Rz(e)|0)!=0;i=+h[m>>3];f=c[g>>2]|0;d=c[m+12>>2]|0;e=kH(b,e,t?2:0,i,f,d)|0;t=b+16|0;c[(c[t>>2]|0)+96>>2]=e;e=(c[p+16>>2]|0)+113|0;a[e>>0]=a[e>>0]|1;e=QL(NL(b,c[46422]|0,134226)|0)|0;a[(c[t>>2]|0)+114>>0]=e;t=1;e=f}else{t=0;d=0;i=0.0;e=0}f=c[46413]|0;if((f|0?(j=yx(b,f)|0,j|0):0)?a[j>>0]|0:0){if(!e){fM(b,m);i=+h[m>>3];e=c[g>>2]|0;d=c[m+12>>2]|0}g=(Rz(j)|0)!=0;j=kH(b,j,g?2:0,i,e,d)|0;c[(c[b+16>>2]|0)+108>>2]=j;j=(c[p+16>>2]|0)+113|0;a[j>>0]=a[j>>0]|32}d=c[46427]|0;if(((d|0)!=0?(k=yx(b,d)|0,(k|0)!=0):0)?(a[k>>0]|0)!=0:0){gM(b,m,n);j=(Rz(k)|0)!=0;i=+h[n>>3];d=c[o>>2]|0;e=c[n+12>>2]|0;k=kH(b,k,j?2:0,i,d,e)|0;c[(c[b+16>>2]|0)+100>>2]=k;k=(c[p+16>>2]|0)+113|0;a[k>>0]=a[k>>0]|2}else{e=0;i=0.0;d=0}f=c[46428]|0;if((f|0?(q=yx(b,f)|0,q|0):0)?a[q>>0]|0:0){if(!d){gM(b,m,n);e=c[n+12>>2]|0;i=+h[n>>3];d=c[o>>2]|0}o=(Rz(q)|0)!=0;q=kH(b,q,o?2:0,i,d,e)|0;c[(c[b+16>>2]|0)+104>>2]=q;q=(c[p+16>>2]|0)+113|0;a[q>>0]=a[q>>0]|4}d=xx(b,108373)|0;d=d|0?d:191979;if(a[d>>0]|0)a[(c[(c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0)+16>>2]|0)+145>>0]=1;g=b+16|0;f=(c[g>>2]|0)+16|0;e=c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0;hM(s,c[(c[(c[(c[e+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,e,d);d=s;e=f+40|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));if((iM(b,c[46434]|0)|0)<<24>>24)a[(c[g>>2]|0)+46>>0]=0;d=xx(b,108382)|0;d=d|0?d:191979;if(!(a[d>>0]|0))e=b+-48|0;else{e=b+-48|0;a[(c[(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)+16>>2]|0)+145>>0]=1}f=(c[g>>2]|0)+56|0;e=c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0;hM(u,c[(c[(c[(c[e+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,e,d);d=u;e=f+40|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));if((iM(b,c[46435]|0)|0)<<24>>24)a[(c[g>>2]|0)+86>>0]=0;l=v;return t|0}function fM(a,b){a=a|0;b=b|0;h[b>>3]=+LL(a,c[46409]|0,14.0,1.0);c[b+8>>2]=OL(a,c[46410]|0,104968)|0;c[b+12>>2]=OL(a,c[46411]|0,134232)|0;return}function gM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=b+8|0;if(!(c[e>>2]|0))fM(a,b);h[d>>3]=+LL(a,c[46429]|0,+h[b>>3],1.0);c[d+8>>2]=OL(a,c[46430]|0,c[e>>2]|0)|0;c[d+12>>2]=OL(a,c[46431]|0,c[b+12>>2]|0)|0;return}function hM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+128|0;k=m+80|0;h=m+40|0;g=m;if((f|0)!=0?(j=A$(f,58)|0,(j|0)!=0):0){a[j>>0]=0;i=j+1|0;xb[d&31](h,e,f,i);e=k;g=h;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0));a[j>>0]=58;f=i}else{xb[d&31](g,e,f,0);e=k;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0))}e=b;g=k;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0));c[b+36>>2]=f;l=m;return}function iM(b,c){b=b|0;c=c|0;var d=0;if(((c|0)!=0?(d=yx(b,c)|0,(d|0)!=0):0)?(a[d>>0]|0)!=0:0)b=(QL(d)|0)<<24>>24==0&1;else b=0;return b|0}function jM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;k=l;l=l+32|0;i=k;j=c[b+8>>2]|0;d=c[b+4>>2]|0;d=(c[b+44>>2]|0)+((O((d|0)>1?d+-1|0:0,j)|0)<<4)|0;e=i+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];f=i+8|0;g=i+24|0;b=1;while(1){if((b|0)>=(j|0))break;m=d+(b<<4)|0;o=+h[m>>3];h[i>>3]=+h[(+h[i>>3]>3];n=+h[m+8>>3];h[f>>3]=+h[(+h[f>>3]>3];h[e>>3]=+h[(+h[e>>3]>o?e:m)>>3];h[g>>3]=+h[(+h[g>>3]>n?e:m)+8>>3];b=b+1|0}c[a>>2]=c[i>>2];c[a+4>>2]=c[i+4>>2];c[a+8>>2]=c[i+8>>2];c[a+12>>2]=c[i+12>>2];c[a+16>>2]=c[i+16>>2];c[a+20>>2]=c[i+20>>2];c[a+24>>2]=c[i+24>>2];c[a+28>>2]=c[i+28>>2];l=k;return}function kM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;g=d+32|0;e=d;f=c[a+16>>2]|0;a=f+16|0;f=c[f+116>>2]&1;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];c[g+20>>2]=c[a+20>>2];c[g+24>>2]=c[a+24>>2];c[g+28>>2]=c[a+28>>2];lM(e,g,b,f);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];c[a+16>>2]=c[e+16>>2];c[a+20>>2]=c[e+20>>2];c[a+24>>2]=c[e+24>>2];c[a+28>>2]=c[e+28>>2];l=d;return}function lM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0;g=+h[d+56>>3];l=+h[d+64>>3];j=e<<24>>24==0;k=+h[d+24>>3];i=+h[d+32>>3];m=(j?k:i)*.5;f=g-m;g=m+g;if(f<+h[b>>3])h[b>>3]=f;e=b+16|0;if(g>+h[e>>3])h[e>>3]=g;g=(j?i:k)*.5;f=l-g;g=g+l;e=b+8|0;if(f<+h[e>>3])h[e>>3]=f;e=b+24|0;if(g>+h[e>>3])h[e>>3]=g;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function mM(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0;L=l;l=l+448|0;H=L+416|0;t=L+384|0;u=L+304|0;K=L+256|0;G=L+192|0;B=L+144|0;C=L+96|0;d=L+400|0;e=L+368|0;f=L+352|0;g=L+336|0;v=L+288|0;w=L+224|0;x=L+160|0;y=L+112|0;z=L+64|0;A=L+32|0;I=L;J=b+16|0;if((ay(b)|0)==0?(c[(c[J>>2]|0)+180>>2]|0)==0:0){nM(d,0.0,0.0);c[K>>2]=c[d>>2];c[K+4>>2]=c[d+4>>2];c[K+8>>2]=c[d+8>>2];c[K+12>>2]=c[d+12>>2];K=K+16|0;nM(e,0.0,0.0);c[K>>2]=c[e>>2];c[K+4>>2]=c[e+4>>2];c[K+8>>2]=c[e+8>>2];c[K+12>>2]=c[e+12>>2]}else{nM(f,2147483647.0,2147483647.0);c[K>>2]=c[f>>2];c[K+4>>2]=c[f+4>>2];c[K+8>>2]=c[f+8>>2];c[K+12>>2]=c[f+12>>2];F=K+16|0;nM(g,-2147483647.0,-2147483647.0);c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];o=C+8|0;p=u+16|0;D=K+8|0;q=u+8|0;E=K+24|0;r=u+24|0;s=B+8|0;n=Sy(b)|0;while(1){if(!n)break;WL(B,n);d=n+16|0;m=c[d>>2]|0;h[C>>3]=(+h[m+96>>3]+ +h[m+88>>3])*.5;h[o>>3]=+h[m+80>>3]*.5;c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];oM(u,t,H);c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];pM(v,t,H);c[p>>2]=c[v>>2];c[p+4>>2]=c[v+4>>2];c[p+8>>2]=c[v+8>>2];c[p+12>>2]=c[v+12>>2];h[K>>3]=+h[(+h[K>>3]<+h[u>>3]?K:u)>>3];h[D>>3]=+h[(+h[D>>3]<+h[q>>3]?K:u)+8>>3];h[F>>3]=+h[(+h[F>>3]>+h[p>>3]?K:u)+16>>3];h[E>>3]=+h[(+h[E>>3]>+h[r>>3]?K:u)+24>>3];d=c[(c[d>>2]|0)+108>>2]|0;if(d|0?a[d+81>>0]|0:0){m=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(w,H,d,m);c[K>>2]=c[w>>2];c[K+4>>2]=c[w+4>>2];c[K+8>>2]=c[w+8>>2];c[K+12>>2]=c[w+12>>2];c[K+16>>2]=c[w+16>>2];c[K+20>>2]=c[w+20>>2];c[K+24>>2]=c[w+24>>2];c[K+28>>2]=c[w+28>>2]}m=Ex(b,n)|0;while(1){if(!m)break;k=m+16|0;d=c[k>>2]|0;j=d+8|0;e=c[j>>2]|0;if(e|0){i=0;while(1){if((i|0)<(c[e+4>>2]|0))g=0;else break;while(1){f=c[e>>2]|0;if((g|0)>=(c[f+(i*48|0)+4>>2]|0))break;e=(c[f+(i*48|0)>>2]|0)+(g<<4)|0;c[B>>2]=c[e>>2];c[B+4>>2]=c[e+4>>2];c[B+8>>2]=c[e+8>>2];c[B+12>>2]=c[e+12>>2];N=+h[B>>3];h[K>>3]=+h[(+h[K>>3]>3];M=+h[s>>3];h[D>>3]=+h[(+h[D>>3]>3];h[F>>3]=+h[(+h[F>>3]>N?F:B)>>3];h[E>>3]=+h[(+h[E>>3]>M?F:B)+8>>3];g=g+1|0;e=c[j>>2]|0}i=i+1|0}e=c[d+96>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(x,H,e,d);c[K>>2]=c[x>>2];c[K+4>>2]=c[x+4>>2];c[K+8>>2]=c[x+8>>2];c[K+12>>2]=c[x+12>>2];c[K+16>>2]=c[x+16>>2];c[K+20>>2]=c[x+20>>2];c[K+24>>2]=c[x+24>>2];c[K+28>>2]=c[x+28>>2];d=c[k>>2]|0}e=c[d+100>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(y,H,e,d);c[K>>2]=c[y>>2];c[K+4>>2]=c[y+4>>2];c[K+8>>2]=c[y+8>>2];c[K+12>>2]=c[y+12>>2];c[K+16>>2]=c[y+16>>2];c[K+20>>2]=c[y+20>>2];c[K+24>>2]=c[y+24>>2];c[K+28>>2]=c[y+28>>2];d=c[k>>2]|0}e=c[d+104>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(z,H,e,d);c[K>>2]=c[z>>2];c[K+4>>2]=c[z+4>>2];c[K+8>>2]=c[z+8>>2];c[K+12>>2]=c[z+12>>2];c[K+16>>2]=c[z+16>>2];c[K+20>>2]=c[z+20>>2];c[K+24>>2]=c[z+24>>2];c[K+28>>2]=c[z+28>>2];d=c[k>>2]|0}d=c[d+108>>2]|0;if(d|0?a[d+81>>0]|0:0){k=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(A,H,d,k);c[K>>2]=c[A>>2];c[K+4>>2]=c[A+4>>2];c[K+8>>2]=c[A+8>>2];c[K+12>>2]=c[A+12>>2];c[K+16>>2]=c[A+16>>2];c[K+20>>2]=c[A+20>>2];c[K+24>>2]=c[A+24>>2];c[K+28>>2]=c[A+28>>2]}}m=Gx(b,m)|0}n=Ty(b,n)|0}d=c[J>>2]|0;f=c[d+180>>2]|0;g=d+184|0;i=G+8|0;j=G+16|0;k=G+24|0;e=1;while(1){if((e|0)>(f|0))break;P=+h[(c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0)+16>>3];h[G>>3]=P;C=c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0;O=+h[C+24>>3];h[i>>3]=O;M=+h[C+32>>3];h[j>>3]=M;N=+h[C+40>>3];h[k>>3]=N;h[K>>3]=+h[(+h[K>>3]>3];h[D>>3]=+h[(+h[D>>3]>3];h[F>>3]=+h[(+h[F>>3]>M?K:G)+16>>3];h[E>>3]=+h[(+h[E>>3]>N?K:G)+24>>3];e=e+1|0}e=c[d+12>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[d+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];lM(I,H,e,d);c[K>>2]=c[I>>2];c[K+4>>2]=c[I+4>>2];c[K+8>>2]=c[I+8>>2];c[K+12>>2]=c[I+12>>2];c[K+16>>2]=c[I+16>>2];c[K+20>>2]=c[I+20>>2];c[K+24>>2]=c[I+24>>2];c[K+28>>2]=c[I+28>>2];d=c[J>>2]|0}J=d+16|0;c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];c[J+16>>2]=c[K+16>>2];c[J+20>>2]=c[K+20>>2];c[J+24>>2]=c[K+24>>2];c[J+28>>2]=c[K+28>>2]}l=L;return}function nM(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function oM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function pM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function qM(a){a=a|0;if((c[a+60>>2]|0)==(a|0))a=1;else a=(V$(ry(a)|0,104980,7)|0)==0&1;return a|0}function rM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a:do if(!e)switch(pz(b)|0){case 0:{e=nx(a,0,c,191979)|0;break a}case 1:{e=nx(a,1,c,191979)|0;break a}case 2:{e=nx(a,2,c,191979)|0;break a}default:{e=0;break a}}while(0);rx(b,e,d)|0;return e|0}function sM(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+144|0;g=k;i=tM(d)|0;h=Cw(23488,c[4555]|0)|0;j=vA(d,104988,1)|0;Az(j,134401,280,1)|0;Tw(g,128,k+16|0);e=Sy(d)|0;while(1){if(!e)break;a:do if(!(a[(c[e+16>>2]|0)+118>>0]|0)){f=Ex(d,e)|0;while(1){if(!f)break a;uM(f,j,g,h,i);f=Gx(d,f)|0}}while(0);e=Ty(d,e)|0}Xw(g);yw(h)|0;f=ay(j)|0;e=Sy(j)|0;while(1){if(!e)break;h=Ty(j,e)|0;dz(d,e)|0;e=h}$x(j)|0;if(f|0){j=(c[d+16>>2]|0)+136|0;b[j>>1]=b[j>>1]|1}yw(i)|0;l=k;return f|0}function tM(a){a=a|0;var b=0;b=Cw(23524,c[4555]|0)|0;DM(a,b);return b|0}function uM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+48|0;q=t+32|0;p=t+24|0;s=t+16|0;r=t+8|0;k=t;n=c[b>>2]&3;m=c[((n|0)==3?b:b+48|0)+40>>2]|0;n=c[((n|0)==2?b:b+-48|0)+40>>2]|0;do if(!(a[(c[n+16>>2]|0)+118>>0]|0)){if(!(z$(ry(m)|0,104980,7)|0))o=vM(g,ry(m)|0)|0;else o=0;if(!(z$(ry(n)|0,104980,7)|0))i=vM(g,ry(n)|0)|0;else i=0;h=(o|0)!=0;j=(i|0)!=0;if(h|j){if((o|0)==(i|0)){r=ry(m)|0;s=ry(m)|0;c[k>>2]=r;c[k+4>>2]=s;Pw(0,105003,k)|0;break}g=wM(f,b)|0;if(g|0){xM(b,c[g+16>>2]|0,c[g+20>>2]|0)|0;break}if(!j)if(!(oz(o,n)|0)){zM(f,m,n,xM(b,yM(m,o,e,d)|0,n)|0);break}else{r=ry(n)|0;s=ry(o)|0;c[q>>2]=r;c[q+4>>2]=s;Pw(0,105158,q)|0;break}if(!h)if(!(oz(i,m)|0)){zM(f,m,n,xM(b,m,yM(n,i,e,d)|0)|0);break}else{r=ry(m)|0;s=ry(i)|0;c[p>>2]=r;c[p+4>>2]=s;Pw(0,105121,p)|0;break}if(oz(i,o)|0){q=ry(o)|0;s=ry(i)|0;c[r>>2]=q;c[r+4>>2]=s;Pw(0,105041,r)|0;break}if(!(oz(o,i)|0)){s=yM(m,o,e,d)|0;zM(f,m,n,xM(b,s,yM(n,i,e,d)|0)|0);break}else{q=ry(i)|0;r=ry(o)|0;c[s>>2]=q;c[s+4>>2]=r;Pw(0,105081,s)|0;break}}}while(0);l=t;return}function vM(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b,512)|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function wM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[b>>2]&3;c[e>>2]=c[((f|0)==3?b:b+48|0)+40>>2];c[e+4>>2]=c[((f|0)==2?b:b+-48|0)+40>>2];b=nb[c[a>>2]&63](a,e,512)|0;l=d;return b|0}function xM(a,b,c){a=a|0;b=b|0;c=c|0;c=Rx(ez(b)|0,b,c,0,1)|0;Az(c,134378,176,1)|0;Bx(a,c)|0;return c|0}function yM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+112|0;g=k;j=k+4|0;Ww(e,105195)|0;i=c[46551]|0;c[46551]=i+1;c[g>>2]=i;Y0(j,134313,g)|0;Ww(e,j)|0;j=e+4|0;g=c[j>>2]|0;i=e+8|0;if(g>>>0>=(c[i>>2]|0)>>>0){Uw(e,1)|0;g=c[j>>2]|0}c[j>>2]=g+1;a[g>>0]=58;Ww(e,ry(d)|0)|0;h=fz(d)|0;g=c[j>>2]|0;if(g>>>0>=(c[i>>2]|0)>>>0){Uw(e,1)|0;g=c[j>>2]|0}a[g>>0]=0;e=c[e>>2]|0;c[j>>2]=e;j=az(h,e,1)|0;Az(j,134365,304,1)|0;a[(c[j+16>>2]|0)+118>>0]=1;Xy(d,j,1)|0;Xy(f,b,1)|0;f=ez(j)|0;c[46384]=rM(f,j,105198,191979,c[46384]|0)|0;f=ez(j)|0;c[46387]=rM(f,j,138e3,131253,c[46387]|0)|0;f=ez(j)|0;c[46377]=rM(f,j,105204,105210,c[46377]|0)|0;l=k;return j|0}function zM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+32|0;g=f;n=g+8|0;c[n>>2]=b;m=g+12|0;c[m>>2]=d;o=c[e>>2]&3;i=e+48|0;j=g+16|0;c[j>>2]=c[((o|0)==3?e:i)+40>>2];k=e+-48|0;h=g+20|0;c[h>>2]=c[((o|0)==2?e:k)+40>>2];nb[c[a>>2]&63](a,g,1)|0;c[n>>2]=d;c[m>>2]=b;d=c[e>>2]&3;c[j>>2]=c[((d|0)==2?e:k)+40>>2];c[h>>2]=c[((d|0)==3?e:i)+40>>2];nb[c[a>>2]&63](a,g,1)|0;l=f;return}function AM(a,b,d){a=a|0;b=b|0;d=d|0;d=uH(24)|0;c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];return d|0}function BM(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function CM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if(a>>>0>=e>>>0)if(a>>>0>e>>>0)a=1;else{b=c[b+4>>2]|0;d=c[d+4>>2]|0;return (b>>>0>>0?-1:b>>>0>d>>>0&1)|0}else a=-1;return a|0}function DM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;f=a+16|0;e=1;while(1){a=c[f>>2]|0;if((e|0)>(c[a+180>>2]|0))break;a=c[(c[a+184>>2]|0)+(e<<2)>>2]|0;d=ry(a)|0;if(!(nb[c[b>>2]&63](b,d,512)|0)){i=uH(16)|0;c[i+8>>2]=d;c[i+12>>2]=a;nb[c[b>>2]&63](b,i,1)|0}else{c[g>>2]=d;Pw(0,105214,g)|0}DM(a,b);e=e+1|0}l=h;return}function EM(a,b,c){a=a|0;b=b|0;c=c|0;D_(b);return}function FM(a){a=a|0;var b=0,c=0,d=0;d=vA(a,104988,1)|0;Az(d,134401,280,1)|0;b=Sy(a)|0;while(1){if(!b)break;c=Ex(a,b)|0;while(1){if(!c)break;GM(c,d);c=Gx(a,c)|0}b=Ty(a,b)|0}b=Sy(d)|0;while(1){if(!b)break;c=Ty(d,b)|0;HM(b);dz(a,b)|0;b=c}$x(d)|0;return}function GM(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]&3;f=c[((e|0)==3?b:b+48|0)+40>>2]|0;e=c[((e|0)==2?b:b+-48|0)+40>>2]|0;if(!((a[(c[f+16>>2]|0)+118>>0]|0)==0?!(a[(c[e+16>>2]|0)+118>>0]|0):0)){f=IM(f,d)|0;e=xM(b,f,IM(e,d)|0)|0;f=c[b+16>>2]|0;d=f+8|0;e=c[e+16>>2]|0;c[e+8>>2]=c[d>>2];c[d>>2]=0;d=f+96|0;c[e+96>>2]=c[d>>2];c[d>>2]=0;d=f+108|0;c[e+108>>2]=c[d>>2];c[d>>2]=0;d=f+100|0;c[e+100>>2]=c[d>>2];c[d>>2]=0;f=f+104|0;c[e+104>>2]=c[f>>2];c[f>>2]=0;JM(b)}return}function HM(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;b=c[e>>2]|0;d=c[b+132>>2]|0;if(d){D_(d);b=c[e>>2]|0}d=c[b+8>>2]|0;if(d){tb[c[(c[d+4>>2]|0)+4>>2]&127](a);b=c[e>>2]|0}nH(c[b+104>>2]|0);nH(c[(c[e>>2]|0)+108>>2]|0);Cz(a,134365)|0;return}function IM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=ez(b)|0;a:do if(a[(c[b+16>>2]|0)+118>>0]|0){Xy(d,b,1)|0;b=A$(ry(b)|0,58)|0;if(!b)qa(108182,104635,1225,105266);d=b+1|0;b=az(f,d,0)|0;if(!b){b=az(f,d,1)|0;Az(b,134365,304,1)|0;d=sx(f,1,0)|0;while(1){if(!d)break a;g=yx(b,d)|0;e=c[d+12>>2]|0;if((g|0)!=(e|0))rx(b,d,e)|0;d=sx(f,1,d)|0}}}while(0);return b|0}function JM(a){a=a|0;var b=0;b=a+16|0;D_(c[(c[b>>2]|0)+144>>2]|0);KM(a);nH(c[(c[b>>2]|0)+96>>2]|0);nH(c[(c[b>>2]|0)+108>>2]|0);nH(c[(c[b>>2]|0)+100>>2]|0);nH(c[(c[b>>2]|0)+104>>2]|0);Cz(a,134378)|0;return}function KM(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;a=c[e>>2]|0;b=c[a+8>>2]|0;if(b){d=0;while(1){a=c[b>>2]|0;if((d|0)>=(c[b+4>>2]|0))break;D_(c[a+(d*48|0)>>2]|0);d=d+1|0;b=c[(c[e>>2]|0)+8>>2]|0}D_(a);D_(c[(c[e>>2]|0)+8>>2]|0);a=c[e>>2]|0}c[a+8>>2]=0;return}function LM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=nx(a,b,c,0)|0;if(!e)e=nx(a,b,c,d)|0;return e|0}function MM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;i=o;h=o+8|0;j=o+16|0;m=A$(b,59)|0;n=d+4|0;e=c[n>>2]|0;k=d+8|0;if(e>>>0>=(c[k>>2]|0)>>>0){Uw(d,1)|0;e=c[n>>2]|0}c[n>>2]=e+1;a[e>>0]=38;if(((m|0)!=0?(f=m-b|0,(f+-2|0)>>>0<=6):0)?(U0(j,b,f)|0,a[j+f>>0]=0,c[h>>2]=j,g=e2(h,23560,252,8,94)|0,(g|0)!=0):0){c[i>>2]=c[g+4>>2];Y0(j,134313,i)|0;b=c[n>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){Uw(d,1)|0;b=c[n>>2]|0}c[n>>2]=b+1;a[b>>0]=35;Ww(d,j)|0;b=c[n>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){Uw(d,1)|0;b=c[n>>2]|0}c[n>>2]=b+1;a[b>>0]=59;b=m+1|0}l=o;return b|0}function NM(a,b){a=a|0;b=b|0;return b$(c[a>>2]|0,c[b>>2]|0)|0}function OM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+1072|0;k=q+8|0;j=q;i=q+16|0;o=q+24|0;c[i>>2]=b;if((c[46552]|0)!=(d|0)){c[46552]=d;a[191878]=0}Tw(o,1024,q+40|0);p=o+4|0;n=o+8|0;while(1){f=b+1|0;c[i>>2]=f;e=a[b>>0]|0;if(!(e<<24>>24))break;do if((e&255)<192)if(e<<24>>24==38){f=QM(i)|0;if(!f)e=38;else{if(f>>>0<127){e=f&255;break}b=c[p>>2]|0;e=b>>>0>=(c[n>>2]|0)>>>0;if(f>>>0<2047){if(e){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>6|192;e=(f&63|128)&255;break}if(e){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>12|224;b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>6&63|128;e=(f&63|128)&255}}else{h=0;m=9}else if((e&255)>=224)if((e&255)>=240)if((e&255)<248){h=3;m=9}else{if(!(a[191878]|0)){c[j>>2]=ry(d)|0;Pw(0,106681,j)|0;a[191878]=1}h=-1;e=PM(e,o)|0;m=9}else{h=2;m=9}else{h=1;m=9}while(0);do if((m|0)==9){m=0;g=0;while(1){if((g|0)>=(h|0)){m=34;break}if((a[f>>0]&-64)<<24>>24!=-128)break;b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=e;g=g+1|0;e=a[f>>0]|0;f=f+1|0}if((m|0)==34){m=0;c[i>>2]=f;break}c[i>>2]=f;if(!(a[191878]|0)){g=ry(d)|0;c[k>>2]=h+1;c[k+4>>2]=g;Pw(0,106802,k)|0;a[191878]=1}e=PM(e,o)|0}while(0);b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=e;b=c[i>>2]|0}b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){Uw(o,1)|0;b=c[p>>2]|0}a[b>>0]=0;n=c[o>>2]|0;c[p>>2]=n;p=n1(n)|0;Xw(o);l=q;return p|0}function PM(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j;a[g>>0]=b;a[g+1>>0]=0;g=RM(g)|0;h=d+4|0;i=d+8|0;e=W_(g)|0;f=g;while(1){if((e|0)<=1)break;b=c[h>>2]|0;if(b>>>0>=(c[i>>2]|0)>>>0){Uw(d,1)|0;b=c[h>>2]|0}k=a[f>>0]|0;c[h>>2]=b+1;a[b>>0]=k;e=e+-1|0;f=f+1|0}k=a[f>>0]|0;D_(g);l=j;return k|0}function QM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;d=i+8|0;e=c[b>>2]|0;a:do if((a[e>>0]|0)!=35){c[h>>2]=d;g=0;b:while(1){if((g|0)>=8){d=0;break a}f=a[e+g>>0]|0;switch(f<<24>>24){case 0:{d=0;break a}case 59:break b;default:{}}a[d>>0]=f;d=d+1|0;g=g+1|0}a[d>>0]=0;d=e2(h,23560,252,8,94)|0;if(!d)d=0;else{e=e+(g+1)|0;d=c[d+4>>2]|0}}else{h=a[e+1>>0]|0;d=h&255;c:do if((h|32)<<24>>24==120){h=0;g=2;while(1){if((g|0)>=8){f=h;break c}f=a[e+g>>0]|0;d=f&255;if((f+-65&255)>=6)if((f+-97&255)>=6)if((f+-48&255)<10)f=-48;else{f=h;break c}else f=-87;else f=-55;d=f+d|0;h=d+(h<<4)|0;g=g+1|0}}else{f=0;g=1;while(1){if((g|0)>=8)break c;h=a[e+g>>0]|0;d=h&255;if((h+-48&255)>=10)break c;f=(f*10|0)+-48+d|0;g=g+1|0}}while(0);d=(d|0)==59;e=d?e+(g+1)|0:e;d=d?f:0}while(0);c[b>>2]=e;l=i;return d|0}function RM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+1056|0;g=k;i=k+8|0;c[g>>2]=b;Tw(i,1024,k+24|0);j=i+4|0;h=i+8|0;while(1){c[g>>2]=b+1;d=a[b>>0]|0;if(!(d<<24>>24))break;b=d&255;if(d<<24>>24==38){b=QM(g)|0;if(!b){b=38;f=6}else f=5}else f=5;do if((f|0)==5){f=0;if(b>>>0<127)f=6;else{d=c[j>>2]|0;e=d>>>0>=(c[h>>2]|0)>>>0;if(b>>>0<2047){if(e){Uw(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>6|192;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}b=b&63|128;break}if(e){Uw(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>12|224;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>6&63|128;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}b=b&63|128}}while(0);if((f|0)==6){d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;d=c[j>>2]|0}}c[j>>2]=d+1;a[d>>0]=b;b=c[g>>2]|0}b=c[j>>2]|0;if(b>>>0>=(c[h>>2]|0)>>>0){Uw(i,1)|0;b=c[j>>2]|0}a[b>>0]=0;h=c[i>>2]|0;c[j>>2]=h;j=n1(h)|0;Xw(i);l=k;return j|0}function SM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+1040|0;g=i;Tw(g,1024,i+16|0);h=g+4|0;f=g+8|0;while(1){d=b+1|0;e=a[b>>0]|0;if(!(e<<24>>24))break;if((e&255)<127){b=c[h>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){Uw(g,1)|0;b=c[h>>2]|0}c[h>>2]=b+1;a[b>>0]=e;b=d;continue}else{e=a[d>>0]&63|e<<6&255;d=c[h>>2]|0;if(d>>>0>=(c[f>>2]|0)>>>0){Uw(g,1)|0;d=c[h>>2]|0}c[h>>2]=d+1;a[d>>0]=e;b=b+2|0;continue}}b=c[h>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){Uw(g,1)|0;b=c[h>>2]|0}a[b>>0]=0;f=c[g>>2]|0;c[h>>2]=f;h=n1(f)|0;Xw(g);l=i;return h|0}function TM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+80|0;e=n+48|0;d=n+32|0;f=n+64|0;g=n+16|0;i=n;j=b+16|0;k=a+16|0;m=c[k>>2]|0;if(((+h[j>>3]>=+h[m+48>>3]?+h[m+64>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=+h[m+56>>3]:0)?+h[m+72>>3]>=+h[b+8>>3]:0){m=m+16|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];UM(g,d,e);c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];oM(i,d,e);c[f>>2]=a;c[f+4>>2]=0;d=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];d=lb[d&127](f,e)|0}else d=0;l=n;return d|0}function UM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function VM(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;e=l;l=l+80|0;j=e+64|0;k=e+48|0;m=e;n=e+32|0;g=e+16|0;h[m>>3]=+h[a+24>>3]*.5;h[m+8>>3]=+h[a+32>>3]*.5;a=a+56|0;c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];oM(n,k,j);i=+h[n>>3];f=+h[n+8>>3];c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];pM(g,k,j);d=+h[g+8>>3];if((+h[b+16>>3]>=i?+h[g>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=f:0)a=d>=+h[b+8>>3]&1;else a=0;l=e;return a|0}function WM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+80|0;k=n+48|0;j=n;h=a+16|0;a=c[h>>2]|0;i=c[a+8>>2]|0;a:do if((i|0)!=0?(g=i+8|0,c[j>>2]=c[g>>2],c[j+4>>2]=c[g+4>>2],c[j+8>>2]=c[g+8>>2],c[j+12>>2]=c[g+12>>2],c[j+16>>2]=c[g+16>>2],c[j+20>>2]=c[g+20>>2],c[j+24>>2]=c[g+24>>2],c[j+28>>2]=c[g+28>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(XM(j,k)|0)!=0):0){d=i+4|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=j;f=(c[i>>2]|0)+(a*48|0)|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];if(!((YM(j,k)|0)<<24>>24))a=a+1|0;else{a=1;break a}}a=c[h>>2]|0;m=7}else m=7;while(0);do if((m|0)==7){a=c[a+96>>2]|0;if(a|0?(c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(VM(a,k)|0)<<24>>24):0){a=1;break}a=0}while(0);l=n;return a|0}function XM(a,b){a=a|0;b=b|0;if((+h[a+16>>3]>=+h[b>>3]?+h[b+16>>3]>=+h[a>>3]:0)?+h[a+24>>3]>=+h[b+8>>3]:0)a=+h[b+24>>3]>=+h[a+8>>3]&1;else a=0;return a|0}function YM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+96|0;k=n+64|0;j=n+48|0;i=n+32|0;f=n+16|0;g=n;m=a+4|0;d=c[m>>2]|0;if(!d)qa(106911,104635,1637,106919);e=c[a>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];e=1;while(1){if((e|0)>=(d|0)){h=7;break}d=(c[a>>2]|0)+(e<<4)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];if((VG(i,j,k)|0)!=-1){d=1;break};c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];e=e+1|0;d=c[m>>2]|0}do if((h|0)==7){d=c[a+8>>2]|0;if(d|0?(g=a+16|0,h=c[a>>2]|0,c[i>>2]=c[g>>2],c[i+4>>2]=c[g+4>>2],c[i+8>>2]=c[g+8>>2],c[i+12>>2]=c[g+12>>2],c[j>>2]=c[h>>2],c[j+4>>2]=c[h+4>>2],c[j+8>>2]=c[h+8>>2],c[j+12>>2]=c[h+12>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(ZM(i,j,d,k)|0)<<24>>24):0){d=1;break}d=c[a+12>>2]|0;if(d|0?(h=a+32|0,m=(c[a>>2]|0)+((c[m>>2]|0)+-1<<4)|0,c[i>>2]=c[h>>2],c[i+4>>2]=c[h+4>>2],c[i+8>>2]=c[h+8>>2],c[i+12>>2]=c[h+12>>2],c[j>>2]=c[m>>2],c[j+4>>2]=c[m+4>>2],c[j+8>>2]=c[m+8>>2],c[j+12>>2]=c[m+12>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(ZM(i,j,d,k)|0)<<24>>24):0){d=1;break}d=0}while(0);l=n;return d|0}function ZM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;m=l;l=l+160|0;g=m+144|0;f=m+128|0;n=m+96|0;i=m+64|0;j=m+32|0;k=m;o=+h[e+16>>3];c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];JE(n,f,g,1.0,d);if(((o>=+h[n>>3]?(c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],JE(i,f,g,1.0,d),+h[i+16>>3]>=+h[e>>3]):0)?(o=+h[e+24>>3],c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],JE(j,f,g,1.0,d),o>=+h[j+8>>3]):0)?(c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],JE(k,f,g,1.0,d),+h[k+24>>3]>=+h[e+8>>3]):0)f=1;else f=0;l=m;return f|0}function _M(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;a:do if((b|0)!=0?(e=a[b>>0]|0,e<<24>>24!=0):0){do switch(e<<24>>24|0){case 48:{d=2;break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{d=10;break a}case 67:case 99:{e=b+1|0;if(!(O$(e,106934)|0)){d=4;break a}if(!(O$(e,106940)|0)){d=12;break a}break}case 70:case 102:{if(!(O$(b+1|0,106948)|0)){d=2;break a}break}case 76:case 108:{if(!(O$(b+1|0,106953)|0)){d=2;break a}break}case 78:case 110:{e=b+1|0;if(!(O$(e,106957)|0)){d=0;break a}if(!(O$(e,106961)|0)){d=2;break a}break}case 79:case 111:{if(!(O$(b+1|0,106963)|0)){d=8;break a}break}case 80:case 112:{if(!(O$(b+1|0,106968)|0)){d=6;break a}break}case 83:case 115:{if(!(O$(b+1|0,106976)|0)){d=10;break a}break}case 84:case 116:{if(!(O$(b+1|0,106982)|0)){d=10;break a}break}case 89:case 121:{if(!(O$(b+1|0,106986)|0)){d=10;break a}break}default:{}}while(0);c[f>>2]=b;Pw(0,106989,f)|0}while(0);l=g;return d|0}function $M(d,f){d=d|0;f=f|0;var g=0;g=xx(d,107030)|0;if(g)if(!(a[g>>0]|0))f=0;else f=_M(g,f)|0;d=(c[d+16>>2]|0)+136|0;b[d>>1]=f|e[d>>1];return}function aN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0;v=l;l=l+32|0;p=v+16|0;r=v;t=e&1;u=e&2;a:do if((c|0)==2){s=+h[a+16>>3];f=+h[a>>3];j=+h[a+24>>3];i=+h[a+8>>3];f=f-(s-f);h[p>>3]=f;h[r>>3]=s;i=i-(j-i);h[p+8>>3]=i;h[r+8>>3]=j}else{g=+h[a>>3];h[r>>3]=g;h[p>>3]=g;j=+h[a+8>>3];m=r+8|0;h[m>>3]=j;n=p+8|0;h[n>>3]=j;e=0;f=g;i=j;while(1){if((e|0)>=(c|0)){s=g;break a}w=a+(e<<4)|0;q=+h[w>>3];k=+h[(q>3];h[p>>3]=k;s=+h[a+(e<<4)+8>>3];o=+h[(s>3];h[n>>3]=o;q=+h[(q>g?w:r)>>3];h[r>>3]=q;s=+h[(s>j?w:r)+8>>3];h[m>>3]=s;e=e+1|0;f=k;i=o;g=q;j=s}}while(0);g=(s-f)*.5;q=g+f;o=(j-i)*.5;k=o+i;if(!t){f=j-k;j=d;i=+F(+j);j=+E(+j);if(!u){g=i*f-k;f=-k-o*i}else{f=i*f;g=k-f;f=f+k}h[b+8>>3]=g;h[b+24>>3]=f;d=j*(s-q);h[b>>3]=q-d;h[b+16>>3]=d+q}else{d=+C(+(o*o+g*g));h[b+8>>3]=u|0?k:-k;h[b>>3]=q;h[b+16>>3]=d*.25;h[b+24>>3]=d}l=v;return}function bN(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=a+16|0;f=c[e>>2]|0;if(!(b<<24>>24)){d=+h[f+32>>3]*36.0;h[f+88>>3]=d;a=f+40|0}else{d=+h[f+40>>3]*36.0;h[f+88>>3]=d;a=f+32|0}h[f+96>>3]=d;h[(c[e>>2]|0)+80>>3]=+h[a>>3]*72.0;return}function cN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0;y=l;l=l+16|0;j=y+8|0;x=4;w=C_(40)|0;c[w>>2]=0;s=y;o=0;e=$(29,b|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;a:do if((g|0)!=1){o=0;v=$(23,e<<3|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){e=E3(c[f>>2]|0,w|0,x|0)|0;if(!e)bb(f|0,p|0);z=p}else e=-1;if((e|0)!=1){if(!(a[191874]|0))t=0;else{o=0;e=_(3)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){n=0;k=0;m=0;j=0;i=0;d=v;h=v;e=z;g=0;u=74;break}t=e}o=0;e=aa(95,b|0,107038)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){c[46553]=0;b:do if(e|0?(i=a[e>>0]|0,i<<24>>24):0){h=e;f=i;g=0;while(1){i=h+1|0;if(!(f<<24>>24))break b;switch(f<<24>>24|0){case 99:{e=8;u=16;break}case 105:{e=18;u=16;break}case 109:{e=1;u=16;break}case 114:{e=4;u=16;break}case 115:{e=2;u=16;break}default:e=g}if((u|0)==16){u=0;e=g|e;c[46553]=e}h=i;f=a[i>>0]|0;g=e}}while(0);if(d|0){o=0;ca(20,0,107042,j|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){n=0;k=t;m=0;j=0;i=0;d=v;h=v;e=z;g=0;u=74;break}}o=0;r=aa(96,b|0,0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){m=c[r+16>>2]|0;if(c[46553]&2|0){o=0;ja(26,c[15686]|0,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){n=0;k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break}}o=0;g=$(25,b|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){n=0;while(1){if(!g)break;o=0;e=aa(97,b|0,g|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}i=n;while(1){if(!e)break;if(!((c[46363]|0)==2?(c[(c[e+16>>2]|0)+8>>2]|0)!=0:0))u=32;c:do if((u|0)==32){u=0;do if(a[191874]|0){k=c[e>>2]&3;j=(c[c[((k|0)==3?e:e+48|0)+40>>2]>>2]|0)>>>4;k=(c[c[((k|0)==2?e:e+-48|0)+40>>2]>>2]|0)>>>4;if(j>>>0>k>>>0){o=0;f=ca(31,t|0,k|0,j|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){d=E3(c[h>>2]|0,w|0,x|0)|0;if(!d)bb(h|0,p|0);z=p}else d=-1;if((d|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}if(f|0)break c;o=0;ka(64,t|0,k|0,j|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}break}else{o=0;f=ca(31,t|0,j|0,k|0)|0;h=o;o=0;if((h|0)!=0&(p|0)!=0){d=E3(c[h>>2]|0,w|0,x|0)|0;if(!d)bb(h|0,p|0);z=p}else d=-1;if((d|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}if(f|0)break c;o=0;ka(64,t|0,j|0,k|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}break}}while(0);c[v+(i<<3)+4>>2]=e;o=0;d=$(30,e|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}c[v+(i<<3)>>2]=d;i=i+1|0}while(0);o=0;e=aa(98,b|0,e|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=E3(c[f>>2]|0,w|0,x|0)|0;if(!h)bb(f|0,p|0);z=p}else h=-1;if((h|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}}o=0;g=aa(84,b|0,g|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74;break a}n=i}o=0;j=$(31,n<<3|0)|0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){o=0;ma(28,v|0,n|0,8,99);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){g=c[m>>2]|0;o=0;ia(107,g+2|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){i=c[m+16>>2]|0;d=i+(g*40|0)|0;i=i+((g+1|0)*40|0)|0;q=c[15686]|0;h=0;while(1){if((h|0)>=(n|0))break;if((h|0)>0?c[46553]&16|0:0){o=0;ja(26,q|0,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}}e=c[v+(h<<3)+4>>2]|0;k=c[e>>2]&3;g=c[(c[(c[((k|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;e=c[(c[(c[((k|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;if((g|0)==(e|0)){o=0;ma(29,m|0,g|0,i|0,d|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}}else{o=0;ka(65,m|0,e|0,i|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}o=0;ka(65,m|0,g|0,d|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}}o=0;e=ca(32,m|0,i|0,d|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}if(e|0){k=t;m=j;i=r;d=v;h=v;break a}e=j+(h<<3)|0;o=0;ma(30,s|0,m|0,d|0,i|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}g=s;k=c[g+4>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=k;o=0;ia(108,m|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74;break a}h=h+1|0}o=0;ha(8);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){o=0;e=$(32,r|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){c[r+20>>2]=e;o=0;e=$(33,r|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)!=1){c[r+24>>2]=e;o=0;ka(66,n|0,j|0,r|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){w=D3(186216,1,w|0,x|0)|0;x=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)!=1){k=t;m=j;i=r;d=v;h=v;e=0;g=q;u=74}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=q;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=0;u=74}}else{k=t;m=j;i=r;d=v;h=v;e=z;g=0;u=74}}else{k=t;m=0;i=r;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=t;m=0;j=0;i=r;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=t;m=0;j=0;i=0;d=v;h=v;e=z;g=0;u=74}}else{n=0;k=0;m=0;j=0;i=0;d=0;h=v;e=z;g=0;u=74}}else{n=0;k=0;m=0;j=0;i=0;d=0;h=0;e=z;g=0;u=74}while(0);d:while(1){if((u|0)==74){u=0;if(e|0){q=g;continue}o=0;ia(109,i|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){A=g;f=h;q=d;r=i;s=j;t=m;v=k;u=n;e=z;g=A;h=f;d=q;i=r;j=s;m=t;k=v;n=u;u=74;continue}if(c[46553]&4|0){o=0;na(8,g|0,i|0,n|0,m|0,d|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=g;q=h;r=d;s=i;t=j;v=m;A=k;u=n;e=z;g=f;h=q;d=r;i=s;j=t;m=v;k=A;n=u;u=74;continue}}o=0;oa(10,b|0,i|0,n|0,m|0,d|0,0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){f=g;q=h;r=d;s=i;t=j;v=m;A=k;u=n;e=z;g=f;h=q;d=r;i=s;j=t;m=v;k=A;n=u;u=74;continue}q=g}if(!(a[191874]|0))e=0;else{o=0;ia(110,k|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74;continue}e=0}while(1){if((e|0)>=(n|0))break;o=0;ia(103,c[m+(e<<3)+4>>2]|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=E3(c[f>>2]|0,w|0,x|0)|0;if(!g)bb(f|0,p|0);z=p}else g=-1;if((g|0)==1){e=z;g=q;u=74;continue d}e=e+1|0}o=0;ia(103,j|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74;continue}o=0;ia(111,i|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74;continue}o=0;ia(103,h|0);e=o;o=0;if((e|0)!=0&(p|0)!=0){f=E3(c[e>>2]|0,w|0,x|0)|0;if(!f)bb(e|0,p|0);z=p}else f=-1;if((f|0)==1){e=z;g=q;u=74}else break}D_(w|0);l=y;return}function dN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+64|0;p=q+32|0;o=q+16|0;j=q;k=q+48|0;D1(107909,a)|0;D1(107920,a)|0;m=b+16|0;n=j+8|0;i=k+4|0;g=0;while(1){if((g|0)>=(c[b>>2]|0))break;d=c[m>>2]|0;e=c[d+(g*40|0)+20>>2]|0;f=c[d+(g*40|0)+24>>2]|0;if((e|0)==(f|0)){YN(j,e);d=~~+h[j>>3];e=~~+h[n>>3]}else{_N(k,(c[e>>2]&1|0)==0?e:f,d+(g*40|0)|0);d=c[k>>2]|0;e=c[i>>2]|0}c[o>>2]=g;c[o+4>>2]=d;c[o+8>>2]=e;g1(a,107940,o)|0;g=g+1|0}f=b+4|0;e=b+20|0;d=0;while(1){if((d|0)>=(c[f>>2]|0))break;o=c[e>>2]|0;b=c[o+(d*24|0)+16>>2]|0;r=+h[o+(d*24|0)>>3];c[p>>2]=c[o+(d*24|0)+12>>2];c[p+4>>2]=b;h[p+8>>3]=r;g1(a,107960,p)|0;d=d+1|0}D1(107982,a)|0;l=q;return}function eN(a){a=a|0;var b=0.0,d=0.0,e=0,f=0;f=c[a>>2]&3;e=c[(c[((f|0)==3?a:a+48|0)+40>>2]|0)+16>>2]|0;a=c[(c[((f|0)==2?a:a+-48|0)+40>>2]|0)+16>>2]|0;b=+h[e+16>>3]-+h[a+16>>3];d=+h[e+24>>3]-+h[a+24>>3];return ~~(d*d+b*b)|0}function fN(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function gN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;j=n;YN(n+16|0,d);k=d+32|0;m=d+36|0;g=0;while(1){if((g|0)>=(c[k>>2]|0))break;h=c[(c[m>>2]|0)+(g<<2)>>2]|0;do if(!(a[h+36>>0]|0)){i=c[h+20>>2]|0;if((i|0)==(d|0)){WN(j,h,c[h+24>>2]|0);pO(b,f,h,0.0)|0;break}else{WN(j,h,i);pO(b,e,h,0.0)|0;break}}while(0);g=g+1|0}c[b>>2]=(c[b>>2]|0)+2;l=n;return}function hN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;h=k;YN(k+16|0,b);i=b+32|0;j=b+36|0;f=0;while(1){if((f|0)>=(c[i>>2]|0))break;g=c[(c[j>>2]|0)+(f<<2)>>2]|0;e=c[g+20>>2]|0;if((e|0)==(b|0))e=c[g+24>>2]|0;WN(h,g,e);pO(a,d,g,0.0)|0;f=f+1|0}c[a>>2]=(c[a>>2]|0)+1;c[d+24>>2]=b;c[d+20>>2]=b;l=k;return}function iN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+128|0;C=H+64|0;n=H+48|0;D=H+32|0;E=H+16|0;F=H;g=0;i=e;while(1){if(!i)break;g=g+1|0;i=c[i+8>>2]|0}B=uH((g*56|0)+-112|0)|0;c[C+52>>2]=0;c[C+48>>2]=0;A=e+8|0;e=c[A>>2]|0;i=c[e+8>>2]|0;g=c[e+20>>2]|0;if(c[g>>2]&1)g=c[e+24>>2]|0;WN(n,e,g);j=e;q=e;p=0.0;o=+h[n>>3];z=0;m=0.0;x=+h[n+8>>3];while(1){y=i+8|0;if(!(c[y>>2]|0))break;v=XN(j,i)|0;NR(d,v,c[q+12>>2]|0);t=q+36|0;u=i+36|0;if((a[t>>0]|0)==(a[u>>0]|0))if((c[y>>2]|0)==(f|0)){WN(E,i,v);e=E;G=12}else{j=q;e=z;k=x}else{YN(D,v);e=D;G=12}if((G|0)==12){G=0;w=+h[e>>3];k=+h[e+8>>3];e=a[t>>0]|0;s=e<<24>>24==0;r=(q|0)==(c[A>>2]|0);if(s){if(!(a[u>>0]|0))e=0;else e=(c[i+20>>2]|0)==(v|0)?4:2;n=v+48|0;q=g+48|0;j=g+40|0;g=r?0:p>o?4:2}else{if(e<<24>>24==(a[u>>0]|0))e=0;else e=(c[i+20>>2]|0)==(v|0)?1:3;n=v+40|0;q=g+40|0;j=g+48|0;g=r?0:m>x?1:3}ZN(C,s&1,+h[j>>3],+h[q>>3],+h[n>>3],g,e);q=z+1|0;g=B+(z*56|0)|0;e=C;j=g+56|0;do{c[g>>2]=c[e>>2];g=g+4|0;e=e+4|0}while((g|0)<(j|0));if((a[t>>0]|0)!=(a[u>>0]|0)?(c[y>>2]|0)==(f|0):0){WN(F,i,v);n=(a[u>>0]|0)==0;e=v+40|0;g=v+48|0;p=+h[(n?g:e)>>3];ZN(C,n&1,+h[(n?e:g)>>3],p,p,n?(o>w?4:2):x>k?1:3,0);n=z+2|0;g=B+(q*56|0)|0;e=C;j=g+56|0;do{c[g>>2]=c[e>>2];g=g+4|0;e=e+4|0}while((g|0)<(j|0));g=v;j=i;p=o;o=w;e=n;m=x}else{g=v;j=i;p=o;o=w;e=q;m=x}}v=i;i=c[y>>2]|0;q=j;z=e;x=k;j=v}i=F_(B,z*56|0)|0;e=z+-1|0;g=0;while(1){if((g|0)>=(z|0))break;if((g|0)>0)c[i+(g*56|0)+48>>2]=i+((g+-1|0)*56|0);if((g|0)<(e|0)){G=g+1|0;c[i+(g*56|0)+52>>2]=i+(G*56|0);g=G;continue}else{g=g+1|0;continue}}c[b>>2]=z;c[b+4>>2]=i;l=H;return}function jN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;j=Cw(25588,c[4555]|0)|0;k=a+8|0;i=0;while(1){if((i|0)>=(c[a>>2]|0))break;b=(c[k>>2]|0)+(i*72|0)|0;if(!(c[b>>2]&4)){while(1){d=c[(c[b+36>>2]|0)+8>>2]|0;if(!d)break;d=c[d+20>>2]|0;if(!d)break;if(!(c[d>>2]&1))b=d;else break}g=uH(40)|0;c[g+36>>2]=b;h[g+8>>3]=+h[b+40>>3];f=b;d=c[b>>2]|0;while(1){c[f>>2]=d|4;d=c[c[f+36>>2]>>2]|0;if(!d)break;e=c[d+24>>2]|0;if(!e)break;d=c[e>>2]|0;if(d&1|0)break;else f=e}h[g+16>>3]=+h[f+56>>3];RN(j,g,+h[b+48>>3])}i=i+1|0}return j|0}function kN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;j=Cw(25588,c[4555]|0)|0;k=a+8|0;i=0;while(1){if((i|0)>=(c[a>>2]|0))break;b=(c[k>>2]|0)+(i*72|0)|0;if(!(c[b>>2]&2)){while(1){d=c[(c[b+36>>2]|0)+12>>2]|0;if(!d)break;d=c[d+20>>2]|0;if(!d)break;if(!(c[d>>2]&1))b=d;else break}g=uH(40)|0;c[g+36>>2]=b;h[g+8>>3]=+h[b+48>>3];f=b;d=c[b>>2]|0;while(1){c[f>>2]=d|2;d=c[(c[f+36>>2]|0)+4>>2]|0;if(!d)break;e=c[d+24>>2]|0;if(!e)break;d=c[e>>2]|0;if(d&1|0)break;else f=e}h[g+16>>3]=+h[f+64>>3];RN(j,g,+h[b+40>>3])}i=i+1|0}return j|0}function lN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=e+20|0;i=e+24|0;e=0;while(1){if((e|0)>=(b|0))break;g=c[d+(e<<3)>>2]|0;h=c[d+(e<<3)+4>>2]|0;f=0;while(1){if((f|0)>=(g|0))break;k=h+(f*56|0)|0;QN(uN(c[((a[k>>0]|0)==0?j:i)>>2]|0,k)|0,k);f=f+1|0}e=e+1|0}return}function mN(a){a=a|0;var b=0,d=0;d=a+20|0;wN(c[d>>2]|0);b=a+24|0;wN(c[b>>2]|0);xN(c[d>>2]|0);xN(c[b>>2]|0);yN(c[d>>2]|0,a);yN(c[b>>2]|0,a);zN(c[d>>2]|0);zN(c[b>>2]|0);return}function nN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0,E=0.0;z=l;l=l+224|0;n=z+176|0;m=z+208|0;x=z+160|0;y=z+128|0;k=z+96|0;t=z+64|0;u=z;o=z+32|0;v=u+8|0;h[v>>3]=1797693134862315708145274.0e284;h[u>>3]=1797693134862315708145274.0e284;w=u+24|0;h[w>>3]=-1797693134862315708145274.0e284;p=u+16|0;h[p>>3]=-1797693134862315708145274.0e284;D1(107157,a)|0;c[n>>2]=10;c[n+4>>2]=10;g1(a,107563,n)|0;D1(135183,a)|0;i=b+4|0;j=b+12|0;q=t+8|0;r=t+16|0;s=t+24|0;g=0;while(1){if((g|0)>=(c[i>>2]|0))break;D=(c[j>>2]|0)+(g*72|0)+40|0;c[t>>2]=c[D>>2];c[t+4>>2]=c[D+4>>2];c[t+8>>2]=c[D+8>>2];c[t+12>>2]=c[D+12>>2];c[t+16>>2]=c[D+16>>2];c[t+20>>2]=c[D+20>>2];c[t+24>>2]=c[D+24>>2];c[t+28>>2]=c[D+28>>2];C=+h[q>>3];B=+h[r>>3];A=+h[s>>3];h[k>>3]=+h[t>>3];h[k+8>>3]=C;h[k+16>>3]=B;h[k+24>>3]=A;g1(a,135202,k)|0;g=g+1|0}g=0;while(1){if((g|0)>=(d|0))break;D=c[f+(g<<3)+4>>2]|0;k=e+(g<<3)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[n>>2]=c[u>>2];c[n+4>>2]=c[u+4>>2];c[n+8>>2]=c[u+8>>2];c[n+12>>2]=c[u+12>>2];c[n+16>>2]=c[u+16>>2];c[n+20>>2]=c[u+20>>2];c[n+24>>2]=c[u+24>>2];c[n+28>>2]=c[u+28>>2];vN(o,a,D,m,b,n);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];c[u+12>>2]=c[o+12>>2];c[u+16>>2]=c[o+16>>2];c[u+20>>2]=c[o+20>>2];c[u+24>>2]=c[o+24>>2];c[u+28>>2]=c[o+28>>2];g=g+1|0}D1(107580,a)|0;i=b+8|0;g=0;while(1){if((g|0)>=(c[b>>2]|0))break;D=(c[i>>2]|0)+(g*72|0)+40|0;c[t>>2]=c[D>>2];c[t+4>>2]=c[D+4>>2];c[t+8>>2]=c[D+8>>2];c[t+12>>2]=c[D+12>>2];c[t+16>>2]=c[D+16>>2];c[t+20>>2]=c[D+20>>2];c[t+24>>2]=c[D+24>>2];c[t+28>>2]=c[D+28>>2];E=+h[t>>3];A=+h[q>>3];B=+h[r>>3];C=+h[s>>3];h[y>>3]=E;h[y+8>>3]=A;h[y+16>>3]=B;h[y+24>>3]=C;g1(a,135239,y)|0;h[u>>3]=+h[(+h[u>>3]>3];h[v>>3]=+h[(+h[v>>3]>3];h[p>>3]=+h[(+h[p>>3]>B?u:t)+16>>3];h[w>>3]=+h[(+h[w>>3]>C?u:t)+24>>3];g=g+1|0}v=~~(+h[v>>3]+10.0);y=~~(+h[p>>3]+10.0);D=~~(+h[w>>3]+10.0);c[x>>2]=~~(+h[u>>3]+10.0);c[x+4>>2]=v;c[x+8>>2]=y;c[x+12>>2]=D;g1(a,107605,x)|0;l=z;return}function oN(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;N=l;l=l+112|0;F=N+88|0;E=N+72|0;M=N+32|0;I=N+16|0;J=N;K=N+56|0;L=N+40|0;G=c[15686]|0;w=(i|0)==0;x=J+8|0;y=I+8|0;v=0;m=0;n=0;o=0;p=0;i=0;while(1){if((v|0)>=(e|0))break;z=c[g+(v<<3)+4>>2]|0;A=z+48|0;u=(c[(c[((c[z>>2]&3|0)==3?z:A)+40>>2]|0)+16>>2]|0)+16|0;B=z+16|0;C=(c[B>>2]|0)+16|0;c[E>>2]=c[u>>2];c[E+4>>2]=c[u+4>>2];c[E+8>>2]=c[u+8>>2];c[E+12>>2]=c[u+12>>2];c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];c[F+8>>2]=c[C+8>>2];c[F+12>>2]=c[C+12>>2];pN(K,E,F);c[I>>2]=c[K>>2];c[I+4>>2]=c[K+4>>2];c[I+8>>2]=c[K+8>>2];c[I+12>>2]=c[K+12>>2];C=z+-48|0;u=(c[(c[((c[z>>2]&3|0)==2?z:C)+40>>2]|0)+16>>2]|0)+16|0;t=(c[B>>2]|0)+56|0;c[E>>2]=c[u>>2];c[E+4>>2]=c[u+4>>2];c[E+8>>2]=c[u+8>>2];c[E+12>>2]=c[u+12>>2];c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];c[F+8>>2]=c[t+8>>2];c[F+12>>2]=c[t+12>>2];pN(L,E,F);c[J>>2]=c[L>>2];c[J+4>>2]=c[L+4>>2];c[J+8>>2]=c[L+8>>2];c[J+12>>2]=c[L+12>>2];t=c[f+(v<<3)>>2]|0;u=c[f+(v<<3)+4>>2]|0;s=t*3|0;D=s+1|0;if((s|0)>=(n|0)){if(m|0)D_(i);p=vH(D<<4)|0;m=p;n=D;o=p;i=p}if(!(a[u>>0]|0)){k=+(rN(u,d)|0);j=+h[I>>3]}else{j=+qN(u,d);k=+h[y>>3]}r=m+16|0;h[m+16>>3]=j;h[m+24>>3]=k;c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];r=1;q=u;s=2;while(1){if((r|0)>=(t|0))break;q=u+(r*56|0)|0;if(!(a[q>>0]|0))k=+(rN(q,d)|0);else j=+qN(q,d);O=m+(s+2<<4)|0;Q=m+(s+1<<4)|0;P=m+(s<<4)|0;h[P>>3]=j;h[m+(s<<4)+8>>3]=k;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];r=r+1|0;s=s+3|0}if(!(a[q>>0]|0)){k=+(rN(q,d)|0);j=+h[J>>3]}else{j=+qN(q,d);k=+h[x>>3]}Q=m+(s<<4)|0;O=s+1|0;P=m+(O<<4)|0;h[P>>3]=j;h[m+(O<<4)+8>>3]=k;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];c[Q+8>>2]=c[P+8>>2];c[Q+12>>2]=c[P+12>>2];if(0>1){P=ry(c[((c[z>>2]&3|0)==3?z:A)+40>>2]|0)|0;Q=ry(c[((c[z>>2]&3|0)==2?z:C)+40>>2]|0)|0;c[M>>2]=P;c[M+4>>2]=Q;g1(G,107116,M)|0}QK(z,c[((c[z>>2]&3|0)==2?z:C)+40>>2]|0,m,D,25576);if((!w?(H=c[(c[B>>2]|0)+96>>2]|0,H|0):0)?(a[H+81>>0]|0)==0:0){c[E>>2]=c[I>>2];c[E+4>>2]=c[I+4>>2];c[E+8>>2]=c[I+8>>2];c[E+12>>2]=c[I+12>>2];c[F>>2]=c[J>>2];c[F+4>>2]=c[J+4>>2];c[F+8>>2]=c[J+8>>2];c[F+12>>2]=c[J+12>>2];jL(b,z,E,F)}v=v+1|0}D_(o);l=N;return}function pN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;h[b>>3]=+h[b>>3]+ +h[d>>3];e=b+8|0;h[e>>3]=+h[e>>3]+ +h[d+8>>3];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qN(a,b){a=a|0;b=b|0;var d=0.0,e=0;b=uN(c[b+24>>2]|0,a)|0;e=c[b+36>>2]|0;d=+h[e+40>>3];return +((+h[e+56>>3]-d)*(+(c[a+44>>2]|0)/+((c[b+24>>2]|0)+1|0))+d)}function rN(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=uN(c[b+20>>2]|0,a)|0;b=c[e+36>>2]|0;d=+h[b+48>>3];return ~~((1.0-+(c[a+44>>2]|0)/+((c[e+24>>2]|0)+1|0))*(+h[b+64>>3]-d)+d)|0}function sN(a){a=a|0;return 0}function tN(a){a=a|0;return 0}function uN(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b+8|0,512)|0;if(!a)qa(107129,107135,423,107143);a=c[a+16>>2]|0;a=nb[c[a>>2]&63](a,b+16|0,512)|0;if(!a)qa(107154,107135,425,107143);else return a|0;return 0}function vN(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0.0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;z=l;l=l+32|0;y=z+16|0;u=z+8|0;m=z;j=c[(c[(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;t=c[f+4>>2]|0;if(!(a[t>>0]|0)){k=+h[j+56>>3];s=+h[j+40>>3];j=rN(t,g)|0;k=(s+k)*.5}else{k=+h[j+64>>3];s=+h[j+48>>3];j=~~((s+k)*.5);k=+qN(t,g)}A=~~k;p=+h[i>>3];r=+(A|0);p=p>3]=p;v=i+8|0;q=+h[v>>3];s=+(j|0);q=q>3]=q;w=i+16|0;k=+h[w>>3];r=k>r?k:r;h[w>>3]=r;x=i+24|0;k=+h[x>>3];s=k>s?k:s;h[x>>3]=s;c[m>>2]=A;c[m+4>>2]=j;g1(d,107656,m)|0;o=c[f>>2]|0;m=t;n=1;f=A;while(1){if((n|0)>=(o|0))break;m=t+(n*56|0)|0;if(!(a[m>>0]|0))j=rN(m,g)|0;else f=~~+qN(m,g);B=+(f|0);D=p>3]=D;k=+(j|0);C=q>3]=C;B=r>B?r:B;h[w>>3]=B;k=s>k?s:k;h[x>>3]=k;c[u>>2]=f;c[u+4>>2]=j;g1(d,107678,u)|0;n=n+1|0;p=D;q=C;r=B;s=k}j=c[(c[(c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;if(!(a[m>>0]|0)){k=+h[j+56>>3];D=+h[j+40>>3];j=rN(m,g)|0;k=(D+k)*.5}else{k=+h[j+64>>3];D=+h[j+48>>3];j=~~((D+k)*.5);k=+qN(m,g)}A=~~k;C=+(A|0);h[i>>3]=p>3]=q>3]=r>C?r:C;h[x>>3]=s>D?s:D;c[y>>2]=A;c[y+4>>2]=j;g1(d,107692,y)|0;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];c[b+16>>2]=c[i+16>>2];c[b+20>>2]=c[i+20>>2];c[b+24>>2]=c[i+24>>2];c[b+28>>2]=c[i+28>>2];l=z;return}function wN(a){a=a|0;var b=0;a=Aw(a)|0;while(1){if(!a)break;b=Aw(c[a+16>>2]|0)|0;while(1){if(!b)break;c[b+32>>2]=$N(c[b+24>>2]|0)|0;b=c[b>>2]|0}a=c[a>>2]|0}return}function xN(a){a=a|0;var b=0;a=Aw(a)|0;while(1){if(!a)break;b=Aw(c[a+16>>2]|0)|0;while(1){if(!b)break;if(c[b+24>>2]|0)PN(b);b=c[b>>2]|0}a=c[a>>2]|0}return}function yN(a,b){a=a|0;b=b|0;var d=0;d=Aw(a)|0;while(1){if(!d)break;a=Aw(c[d+16>>2]|0)|0;while(1){if(!a)break;DN(a,b);a=c[a>>2]|0}d=c[d>>2]|0}return}function zN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0;e=Aw(a)|0;while(1){if(!e)break;i=e+8|0;f=Aw(c[e+16>>2]|0)|0;while(1){if(!f)break;a=f+24|0;a:do if(c[a>>2]|0){if(c[46553]&8|0)AN(f,~~+h[i>>3]);g=f+32|0;eO(c[g>>2]|0);b=c[a>>2]|0;d=f+28|0;a=0;while(1){if((a|0)>=(b|0))break a;c[(c[(c[d>>2]|0)+(a<<2)>>2]|0)+44>>2]=(c[(c[(c[g>>2]|0)+4>>2]|0)+(a*12|0)+4>>2]|0)+1;a=a+1|0}}while(0);f=c[f>>2]|0}e=c[e>>2]|0}return}function AN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0.0,m=0.0;j=l;l=l+32|0;d=j;g=a+24|0;a:do if((c[g>>2]|0)>=2){i=c[15686]|0;m=+h[a+8>>3];k=+h[a+16>>3];c[d>>2]=b;h[d+8>>3]=m;h[d+16>>3]=k;g1(i,107713,d)|0;f=a+32|0;a=a+28|0;b=0;while(1){if((b|0)>=(c[g>>2]|0))break a;e=c[(c[(c[f>>2]|0)+4>>2]|0)+(b*12|0)+8>>2]|0;b:do if(Ew(e)|0){BN(i,c[(c[a>>2]|0)+(b<<2)>>2]|0);D1(107733,i)|0;d=nb[c[e>>2]&63](e,0,128)|0;while(1){if(!d)break b;D1(107738,i)|0;BN(i,c[(c[a>>2]|0)+(c[d>>2]<<2)>>2]|0);D1(150517,i)|0;d=nb[c[e>>2]&63](e,d,8)|0}}while(0);b=b+1|0}}while(0);l=j;return}function BN(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0;g=l;l=l+80|0;f=g+40|0;e=g;if(!(a[d>>0]|0)){m=+h[d+16>>3];j=+h[d+8>>3];k=+h[d+24>>3];i=CN(c[d+32>>2]|0)|0;e=CN(c[d+36>>2]|0)|0;h[f>>3]=m;h[f+8>>3]=j;h[f+16>>3]=k;h[f+24>>3]=j;c[f+32>>2]=i;c[f+36>>2]=e;g1(b,107744,f)|0}else{k=+h[d+8>>3];j=+h[d+16>>3];m=+h[d+24>>3];f=CN(c[d+32>>2]|0)|0;i=CN(c[d+36>>2]|0)|0;h[e>>3]=k;h[e+8>>3]=j;h[e+16>>3]=k;h[e+24>>3]=m;c[e+32>>2]=f;c[e+36>>2]=i;g1(b,107744,e)|0}l=g;return}function CN(a){a=a|0;switch(a|0){case 0:{a=107795;break}case 1:{a=107790;break}case 2:{a=107783;break}case 3:{a=107776;break}case 4:{a=107768;break}default:a=0}return a|0}function DN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;r=w+8|0;t=w;u=c[a+32>>2]|0;v=c[a+28>>2]|0;p=a+24|0;m=r+4|0;n=t+4|0;j=0;a=c[p>>2]|0;a:while(1){q=j+1|0;if((q|0)>=(a|0))break;o=v+(j<<2)|0;k=q;while(1){if((k|0)>=(a|0)){j=q;continue a}b:do if(((dO(u,j,k)|0)==0?(dO(u,k,j)|0)==0:0)?(s=v+(k<<2)|0,EN(c[o>>2]|0,c[s>>2]|0)|0):0){f=c[o>>2]|0;a=c[f+48>>2]|0;i=c[s>>2]|0;d=c[i+48>>2]|0;e=(d|0)==0;if(a)if(e)a=1;else a=+h[a+8>>3]!=+h[d+8>>3];else a=e^1;g=a&1;FN(r,f,i,0,g);a=c[r>>2]|0;i=c[m>>2]|0;f=g^1;FN(t,c[o>>2]|0,c[s>>2]|0,1,f);d=c[t>>2]|0;e=c[n>>2]|0;switch(i|0){case -1:{GN(c[s>>2]|0,c[o>>2]|0,g,0,a,b);GN(c[s>>2]|0,c[o>>2]|0,f,1,d,b);if((e|0)!=1)break b;HN(c[o>>2]|0,c[s>>2]|0,f,b);break b}case 0:switch(e|0){case -1:{GN(c[s>>2]|0,c[o>>2]|0,g,0,a,b);GN(c[s>>2]|0,c[o>>2]|0,f,1,d,b);break b}case 0:{GN(c[o>>2]|0,c[s>>2]|0,0,g,a,b);GN(c[o>>2]|0,c[s>>2]|0,1,f,d,b);break b}case 1:{GN(c[o>>2]|0,c[s>>2]|0,0,g,a,b);GN(c[o>>2]|0,c[s>>2]|0,1,f,d,b);break b}default:break b}case 1:{GN(c[o>>2]|0,c[s>>2]|0,0,g,a,b);GN(c[o>>2]|0,c[s>>2]|0,1,f,d,b);if((e|0)!=-1)break b;HN(c[o>>2]|0,c[s>>2]|0,f,b);break b}default:break b}}while(0);k=k+1|0;a=c[p>>2]|0}}l=w;return}function EN(a,b){a=a|0;b=b|0;if(!(+h[a+8>>3]==+h[b+8>>3]))qa(107866,107135,843,107897);if((+h[a+16>>3]==+h[b+16>>3]?+h[a+24>>3]==+h[b+24>>3]:0)?(c[a+32>>2]|0)==(c[b+32>>2]|0):0)a=(c[a+36>>2]|0)==(c[b+36>>2]|0)&1;else a=0;return a|0}function FN(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=0;while(1){b=IN(b,e)|0;if(!b){h=0;break}d=IN(d,f)|0;if(!d){i=6;break}if(!(EN(b,d)|0)){i=7;break}g=g+1|0}if((i|0)==6)qa(135312,107135,871,107815);else if((i|0)==7)h=KN(b,JN(b,d)|0,g+1|0,1-e|0)|0;c[a>>2]=g;c[a+4>>2]=h;return}function GN(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i+20|0;n=i+24|0;i=uN(c[((a[b>>0]|0)==0?o:n)>>2]|0,b)|0;bO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0);k=1;while(1){if((k|0)>(g|0))break;l=IN(b,e)|0;m=IN(d,f)|0;do if(!(a[b>>0]|0)){j=uN(c[n>>2]|0,l)|0;if(+h[l+8>>3]==+h[b+16>>3]){p=(c[b+32>>2]|0)==1;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}}else{p=(c[b+36>>2]|0)==1;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}}}else{j=uN(c[o>>2]|0,l)|0;if(+h[l+8>>3]==+h[b+16>>3]){p=(c[b+32>>2]|0)==2;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}}else{p=(c[b+36>>2]|0)==2;i=(dO(c[i+32>>2]|0,c[b+40>>2]|0,c[d+40>>2]|0)|0)!=0;b=c[j+32>>2]|0;if(p)if(i){bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}else{bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else if(i){bO(b,c[l+40>>2]|0,c[m+40>>2]|0);i=j;break}else{bO(b,c[m+40>>2]|0,c[l+40>>2]|0);i=j;break}}}while(0);b=l;d=m;k=k+1|0}return}function HN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;while(1){if(!(EN(b,d)|0))break;g=IN(b,1)|0;d=IN(d,e)|0;b=g}g=c[(uN(c[((a[b>>0]|0)==0?f+20|0:f+24|0)>>2]|0,b)|0)+32>>2]|0;cO(g,c[b+40>>2]|0,c[d+40>>2]|0);return}function IN(a,b){a=a|0;b=b|0;if(!a)qa(107802,107135,798,107806);else return c[((b|0)==0?a+48|0:a+52|0)>>2]|0;return 0}function JN(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=a[b>>0]|0;if(d<<24>>24==(a[c>>0]|0)?!(+h[b+8>>3]!=+h[c+8>>3]):0){if(!(d<<24>>24))b=LN(b,c,3,1)|0;else b=LN(b,c,4,2)|0;l=f;return b|0}Pw(1,107828,e)|0;bb(186216,1);return 0}function KN(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0;j=1;while(1){if((j|0)>(e|0))break;i=IN(b,f)|0;g=+h[i+8>>3]==+h[b+16>>3];do if(!(a[b>>0]|0))if(g){g=(c[b+32>>2]|0)==1;break}else{g=(c[b+36>>2]|0)==3;break}else if(g){g=(c[b+32>>2]|0)==4;break}else{g=(c[b+36>>2]|0)==2;break}while(0);b=i;j=j+1|0;d=g?0-d|0:d}return d|0}function LN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0.0,j=0.0,k=0.0,l=0,m=0,n=0,o=0;j=+h[a+24>>3];k=+h[b+16>>3];do if(!(j>3],i=+h[b+24>>3],!(g>i)):0){if(k>2]|0;return ((d|0)==(c[b+32>>2]|0)?0:(d|0)==(e|0)?1:-1)|0}else{d=c[a+32>>2]|0;b=(d|0)==(c[b+36>>2]|0)?0:(d|0)==(e|0)?1:-1;break}if(!(j==i))if(j>2]|0)==(d|0);d=ON(c[b+32>>2]|0,c[a+32>>2]|0,d,e)|0;return (o?d:0-d|0)|0}else{o=(c[b+36>>2]|0)==(e|0);b=ON(c[a+32>>2]|0,c[b+32>>2]|0,d,e)|0;b=o?b:0-b|0;break}o=c[a+32>>2]|0;n=c[b+32>>2]|0;if((o|0)==(n|0)){b=c[b+36>>2]|0;if((c[a+36>>2]|0)==(b|0)){b=0;break}}else b=c[b+36>>2]|0;m=(n|0)==(d|0);if((n|0)==(b|0)){if(m){b=1;break}if((n|0)==(e|0)){b=-1;break}if((o|0)!=(d|0)?(c[a+36>>2]|0)!=(d|0):0){b=1;break}if((o|0)!=(e|0)?(c[a+36>>2]|0)!=(e|0):0){b=-1;break}b=0;break}f=(b|0)==(e|0);if(m&f){b=(c[a+36>>2]|0)==(e|0);if((o|0)==(d|0)){if(!b){b=-1;break}}else if(b){b=1;break}b=0;break}l=(b|0)==(d|0);if((n|0)==(e|0)&l){b=(o|0)==(e|0);if((c[a+36>>2]|0)==(d|0)){if(!b){b=-1;break}}else if(b){b=1;break}b=0;break}if(!n){if(l){b=NN(o,c[a+36>>2]|0,d)|0;break}if(f){b=0-(NN(o,c[a+36>>2]|0,e)|0)|0;break}}f=c[a+36>>2]|0;if(m&(b|0)==0){b=NN(f,o,d)|0;break}else{b=0-(NN(f,o,e)|0)|0;break}}else b=0;while(0);return b|0}function MN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0;i=+h[a+24>>3];j=+h[b+24>>3];do if(i>2]|0;if((a|0)==(d|0)?(c[b+32>>2]|0)==(e|0):0){a=-1;break}if((a|0)==(e|0)?(c[b+32>>2]|0)==(d|0):0){a=1;break}a=0}else{f=c[b+32>>2]|0;g=(f|0)==(e|0);if(i==j)if(g){a=ON(c[a+36>>2]|0,c[b+36>>2]|0,d,e)|0;break}else{a=0-(ON(c[b+36>>2]|0,c[a+36>>2]|0,d,e)|0)|0;break}if(g?(c[b+36>>2]|0)==(e|0):0){a=-1;break}if((f|0)==(d|0)?(c[b+36>>2]|0)==(d|0):0){a=1;break}a=0}while(0);return a|0}function NN(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)==(c|0)?((b|0)==(c|0))<<31>>31:1)|0}function ON(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)==(d|0)){b=(a|0)==0;if(b)return 0;else b=b&1}return ((a|0)!=0|(b|0)!=(c|0))<<31>>31|0}function PN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=c[a+28>>2]|0;h=c[a+24>>2]|0;d=c[a+32>>2]|0;a=0;a:while(1){e=a+1|0;if((e|0)>=(h|0))break;f=g+(a<<2)|0;b=e;while(1){if((b|0)==(h|0)){a=e;continue a}switch(JN(c[f>>2]|0,c[g+(b<<2)>>2]|0)|0){case 1:{bO(d,a,b);break}case -1:{bO(d,b,a);break}default:{}}b=b+1|0}}return}function QN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+24|0;e=c[f>>2]|0;d=e+1|0;c[f>>2]=d;c[b+40>>2]=e;e=a+28|0;a=c[e>>2]|0;if(!a)a=vH(d<<2)|0;else a=xH(a,d<<2)|0;c[e>>2]=a;c[a+((c[f>>2]|0)+-1<<2)>>2]=b;return}function RN(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;h[f>>3]=d;e=nb[c[a>>2]&63](a,f,512)|0;if(!e){e=uH(24)|0;h[e+8>>3]=+h[f>>3];c[e+16>>2]=Cw(25624,c[4555]|0)|0;nb[c[a>>2]&63](a,e,1)|0}f=c[e+16>>2]|0;nb[c[f>>2]&63](f,b,1)|0;l=g;return}function SN(a,b,d){a=a|0;b=b|0;d=d|0;aO(c[b+32>>2]|0);D_(c[b+28>>2]|0);D_(b);return}function TN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;e=+h[b>>3];f=+h[c>>3];if(!(e>f))if(e>3]>=+h[c+8>>3])<<31>>31;else a=0;else a=!(+h[b+8>>3]<=+h[c+8>>3])&1;return a|0}function UN(a,b,d){a=a|0;b=b|0;d=d|0;yw(c[b+16>>2]|0)|0;D_(b);return}function VN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+h[b>>3];e=+h[c>>3];return (f>e?1:(f>31)|0}function WN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0;i=(a[d+36>>0]|0)!=0;j=e+40|0;do if((c[d+24>>2]|0)==(e|0)){f=+h[j>>3];if(i){g=(+h[e+64>>3]+ +h[e+48>>3])*.5;break}else{g=+h[e+48>>3];f=(+h[e+56>>3]+f)*.5;break}}else if(i){g=(+h[e+64>>3]+ +h[e+48>>3])*.5;f=+h[e+56>>3];break}else{g=+h[e+64>>3];f=(+h[e+56>>3]+ +h[j>>3])*.5;break}while(0);h[b>>3]=f;h[b+8>>3]=g;return}function XN(a,b){a=a|0;b=b|0;var d=0;d=c[a+20>>2]|0;if((d|0)!=(c[b+20>>2]|0)?(d|0)!=(c[b+24>>2]|0):0)d=c[a+24>>2]|0;return d|0}function YN(a,b){a=a|0;b=b|0;var c=0.0;c=(+h[b+64>>3]+ +h[b+48>>3])*.5;h[a>>3]=(+h[b+56>>3]+ +h[b+40>>3])*.5;h[a+8>>3]=c;return}function ZN(b,d,e,f,g,i,j){b=b|0;d=d|0;e=+e;f=+f;g=+g;i=i|0;j=j|0;var k=0,l=0;a[b>>0]=d;h[b+8>>3]=e;if(f>3]=f;h[b+16>>3]=e;c[b+36>>2]=d;c[b+32>>2]=l;a[b+1>>0]=k;return}function _N(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[b+36>>2]|0;do if((c[e+4>>2]|0)!=(d|0)){if((c[e+12>>2]|0)==(d|0)){e=~~((+h[b+56>>3]+ +h[b+40>>3])*.5);d=~~+h[b+48>>3];break}if((c[e+8>>2]|0)==(d|0)){e=~~+h[b+40>>3];d=~~((+h[b+64>>3]+ +h[b+48>>3])*.5);break}if((c[e>>2]|0)==(d|0)){e=~~+h[b+56>>3];d=~~((+h[b+64>>3]+ +h[b+48>>3])*.5)}else{e=0;d=0}}else{e=~~((+h[b+56>>3]+ +h[b+40>>3])*.5);d=~~+h[b+64>>3]}while(0);c[a>>2]=e;c[a+4>>2]=d;return}function $N(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=uH(8)|0;c[d>>2]=a;e=d+4|0;c[e>>2]=uH(a*12|0)|0;b=0;while(1){if((b|0)>=(a|0))break;g=yR()|0;f=c[e>>2]|0;c[f+(b*12|0)+8>>2]=g;c[f+(b*12|0)>>2]=0;b=b+1|0}return d|0}function aO(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=0;while(1){e=c[d>>2]|0;if((b|0)>=(c[a>>2]|0))break;yw(c[e+(b*12|0)+8>>2]|0)|0;b=b+1|0}D_(e);D_(a);return}function bO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=c[(c[a+4>>2]|0)+(b*12|0)+8>>2]|0;nb[c[d>>2]&63](d,f,1)|0;l=e;return}function cO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;c[f>>2]=d;a=a+4|0;g=c[(c[a>>2]|0)+(b*12|0)+8>>2]|0;nb[c[g>>2]&63](g,f,2)|0;c[f>>2]=b;d=c[(c[a>>2]|0)+(d*12|0)+8>>2]|0;nb[c[d>>2]&63](d,f,2)|0;l=e;return}function dO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=c[(c[a+4>>2]|0)+(b*12|0)+8>>2]|0;d=(nb[c[d>>2]&63](d,f,512)|0)!=0&1;l=e;return d|0}function eO(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a>>2]|0;switch(b|0){case 0:break;case 1:{c[(c[a+4>>2]|0)+4>>2]=0;break}default:{e=fO(b)|0;f=a+4|0;d=0;b=0;while(1){if((d|0)>=(c[a>>2]|0)){b=0;break}if(!(c[(c[f>>2]|0)+(d*12|0)>>2]|0))b=gO(a,d,b,e)|0;d=d+1|0}while(1){d=hO(e)|0;if((d|0)<=-1)break;c[(c[f>>2]|0)+(d*12|0)+4>>2]=b;b=b+1|0}iO(e)}}return}function fO(a){a=a|0;var b=0;b=uH(8)|0;c[b+4>>2]=uH(a<<2)|0;c[b>>2]=-1;return b|0}function gO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a+4|0;g=c[i>>2]|0;j=g+(b*12|0)|0;c[j>>2]=1;g=c[g+(b*12|0)+8>>2]|0;h=g+4|0;d=d+1|0;g=Aw(g)|0;while(1){if(!g)break;f=c[(c[h>>2]|0)+8>>2]|0;if((f|0)<0)f=c[g+8>>2]|0;else f=g+(0-f)|0;f=c[f>>2]|0;if(!(c[(c[i>>2]|0)+(f*12|0)>>2]|0))d=gO(a,f,d,e)|0;g=c[g>>2]|0}c[j>>2]=2;jO(e,b);return d+1|0}function hO(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if((b|0)==-1)a=-1;else{d=c[(c[a+4>>2]|0)+(b<<2)>>2]|0;c[a>>2]=b+-1;a=d}return a|0}function iO(a){a=a|0;D_(c[a+4>>2]|0);D_(a);return}function jO(a,b){a=a|0;b=b|0;var d=0;d=(c[a>>2]|0)+1|0;c[a>>2]=d;c[(c[a+4>>2]|0)+(d<<2)>>2]=b;return}function kO(a){a=a|0;var d=0,e=0,f=0;e=c[a>>2]|0;c[a+8>>2]=e;c[a+12>>2]=c[a+4>>2];d=a+16|0;a=0;while(1){if((a|0)>=(e|0))break;f=c[d>>2]|0;b[f+(a*40|0)+18>>1]=b[f+(a*40|0)+16>>1]|0;a=a+1|0}return}function lO(a){a=a|0;var d=0,e=0,f=0;d=c[a+8>>2]|0;c[a>>2]=d;c[a+4>>2]=c[a+12>>2];e=a+16|0;a=0;while(1){if((a|0)>=(d|0))break;f=c[e>>2]|0;b[f+(a*40|0)+16>>1]=b[f+(a*40|0)+18>>1]|0;a=a+1|0}d=d+2|0;while(1){if((a|0)>=(d|0))break;b[(c[e>>2]|0)+(a*40|0)+16>>1]=0;a=a+1|0}return}function mO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=uH(((c[a>>2]|0)*6|0)+(b<<1)<<2)|0;c[a+20>>2]=uH((((c[a>>2]|0)*3|0)+b|0)*24|0)|0;e=c[a>>2]|0;f=a+16|0;a=0;while(1){if((a|0)>=(e|0))break;c[(c[f>>2]|0)+(a*40|0)+28>>2]=d;d=d+24|0;a=a+1|0}e=e+2|0;while(1){if((a|0)>=(e|0))break;c[(c[f>>2]|0)+(a*40|0)+28>>2]=d;d=d+(b<<2)|0;a=a+1|0}return}function nO(a){a=a|0;var b=0;b=uH(24)|0;c[b>>2]=0;c[b+16>>2]=uH(a*40|0)|0;return b|0}function oO(a){a=a|0;var b=0,d=0;d=c[a+16>>2]|0;b=c[a>>2]|0;c[d+(b*40|0)+32>>2]=b;c[a>>2]=b+1;return d+(b*40|0)|0}function pO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=a+4|0;f=c[g>>2]|0;c[g>>2]=f+1;g=c[a+20>>2]|0;a=g+(f*24|0)|0;c[g+(f*24|0)+12>>2]=c[b+32>>2];c[g+(f*24|0)+16>>2]=c[d+32>>2];h[a>>3]=e;c[g+(f*24|0)+8>>2]=0;qO(b,f);qO(d,f);return a|0}function qO(a,d){a=a|0;d=d|0;var e=0,f=0;e=a+16|0;f=b[e>>1]|0;c[(c[a+28>>2]|0)+(f<<16>>16<<2)>>2]=d;b[e>>1]=f+1<<16>>16;return}function rO(a){a=a|0;var b=0;b=a+16|0;D_(c[(c[b>>2]|0)+28>>2]|0);D_(c[b>>2]|0);D_(c[a+20>>2]|0);D_(a);return}function sO(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;g=c[a>>2]|0;i=a+16|0;f=0;while(1){if((f|0)>=(g|0))break;c[(c[i>>2]|0)+(f*40|0)>>2]=-2147483648;f=f+1|0}GR();a:do if(!(JR(d)|0)){c[d+8>>2]=0;c[d>>2]=0;d=a+20|0;b:while(1){g=LR()|0;if(!g){f=0;break a}c[g>>2]=0-(c[g>>2]|0);if((g|0)==(e|0)){f=0;break a}i=g+16|0;j=g+28|0;f=0;while(1){if((f|0)>=(b[i>>1]|0))continue b;k=(c[d>>2]|0)+((c[(c[j>>2]|0)+(f<<2)>>2]|0)*24|0)|0;l=tO(a,k,g)|0;m=c[l>>2]|0;do if((m|0)<0){n=~~-(+h[k>>3]+ +(c[g>>2]|0));if((m|0)==-2147483648){c[l>>2]=n;if(JR(l)|0){f=1;break a}c[l+8>>2]=g;c[l+12>>2]=k;break}else{if((m|0)>=(n|0))break;MR(l,n);c[l+8>>2]=g;c[l+12>>2]=k;break}}while(0);f=f+1|0}}}else f=1;while(0);return f|0}function tO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[b+12>>2]|0;if((e|0)==(c[d+32>>2]|0))e=c[b+16>>2]|0;return (c[a+16>>2]|0)+(e*40|0)|0}function uO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=c[a>>2]|0;wC(g,3,b)|0;b=c[g+92>>2]|0;do if(b){d=c[b+16>>2]|0;h=c[d+12>>2]|0;c[a+76>>2]=h;e=c[d+16>>2]|0;c[a+84>>2]=e;f=a+80|0;c[f>>2]=c[d>>2];c[a+88>>2]=c[b+4>>2];d=a+152|0;e=c[d>>2]|c[e>>2];c[d>>2]=e;b=c[g+80>>2]|0;if(!b){c[a+60>>2]=0;b=999;break}else{g=c[b+16>>2]|0;c[a+60>>2]=c[g+12>>2];i=c[g+16>>2]|0;c[a+68>>2]=i;c[a+72>>2]=c[b+4>>2];c[d>>2]=e|c[i>>2];c[a+64>>2]=c[((h|0)==0?f:g)>>2];b=300;break}}else b=999;while(0);return b|0}function vO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(!(XB(a)|0))if((b|0)!=0?(d=c[b>>2]|0,(d|0)!=0):0){tb[d&127](a);a=0}else a=0;else a=1;return a|0}function wO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+4>>2]|0,d|0):0)tb[d&127](a);c[(c[a>>2]|0)+24>>2]=0;dC(a);return}function xO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0;e=+h[b+504>>3];f=+h[b+512>>3];i=+h[b+352>>3];if(!(c[b+360>>2]|0)){g=+h[d>>3]+e;d=d+8|0;e=f}else g=-(f+ +h[d+8>>3]);f=+h[b+528>>3]*i*(+h[d>>3]+e);h[a>>3]=+h[b+520>>3]*i*g;h[a+8>>3]=f;return}function yO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0;f=+h[a+504>>3];g=+h[a+512>>3];i=+h[a+352>>3];j=+h[a+520>>3]*i;i=+h[a+528>>3]*i;a:do if(!(c[a+360>>2]|0)){a=0;while(1){if((a|0)>=(e|0))break a;h[d+(a<<4)>>3]=(+h[b+(a<<4)>>3]+f)*j;h[d+(a<<4)+8>>3]=(+h[b+(a<<4)+8>>3]+g)*i;a=a+1|0}}else{a=0;while(1){if((a|0)>=(e|0))break a;k=-(j*(+h[b+(a<<4)+8>>3]+g));h[d+(a<<4)+8>>3]=(+h[b+(a<<4)>>3]+f)*i;h[d+(a<<4)>>3]=k;a=a+1|0}}while(0);return d|0}function zO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+8>>2]|0,d|0):0)tb[d&127](a);return}function AO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+12>>2]|0,d|0):0)tb[d&127](a);cC(a);return}function BO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+24>>2]|0,d|0):0)tb[d&127](a);return}function CO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+28>>2]|0,d|0):0)tb[d&127](a);return}function DO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+16>>2]|0,d|0):0){b=c[a+160>>2]|0;xb[d&31](a,c[(c[(c[a>>2]|0)+308>>2]|0)+(b<<2)>>2]|0,b,c[a+156>>2]|0)}return}function EO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+20>>2]|0,d|0):0)tb[d&127](a);return}function FO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+32>>2]|0,d|0):0)tb[d&127](a);return}function GO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+36>>2]|0,d|0):0)tb[d&127](a);return}function HO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+40>>2]|0,d|0):0)tb[d&127](a);return}function IO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+44>>2]|0,d|0):0)tb[d&127](a);return}function JO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+48>>2]|0,d|0):0)tb[d&127](a);return}function KO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+52>>2]|0,d|0):0)tb[d&127](a);return}function LO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+56>>2]|0,d|0):0)tb[d&127](a);return}function MO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+60>>2]|0,d|0):0)tb[d&127](a);return}function NO(a,b){a=a|0;b=b|0;var d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+64>>2]|0,d|0):0)tb[d&127](a);return}function OO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+68>>2]|0,d|0):0)tb[d&127](a);return}function PO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=c[a+60>>2]|0;if(g|0?(h=c[g+72>>2]|0,h|0):0)yb[h&15](a,b,d,e,f);return}function QO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+76>>2]|0,d|0):0)tb[d&127](a);return}function RO(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+60>>2]|0;if(d|0?(e=c[d+80>>2]|0,e|0):0)ub[e&63](a,b);return}function SO(a){a=a|0;var b=0,d=0;b=c[a+60>>2]|0;if(b|0?(d=c[b+84>>2]|0,d|0):0)tb[d&127](a);return}function TO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+48|0;f=k+32|0;h=k;i=k+16|0;j=c[b+60>>2]|0;m=c[e>>2]|0;do if(m|0?a[m>>0]|0:0){m=c[b+16>>2]|0;if(m|0?(c[m+144>>2]|0)==0:0)break;if(!(c[b+152>>2]&8192)){c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];xO(i,b,f);c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[h+12>>2]=c[i+12>>2]}else{c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2]}if(j|0?(g=c[j+88>>2]|0,g|0):0){c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];vb[g&127](b,f,e)}}while(0);l=k;return}function UO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=c[b+60>>2]|0;g=(c[b+16>>2]|0)+16|0;i=A$(d,58)|0;h=(i|0)!=0;if(h)a[i>>0]=0;if(f|0?(VO(c[b+68>>2]|0,d,g),e=c[f+92>>2]|0,e|0):0)ub[e&63](b,g);if(h)a[i>>0]=58;return}function VO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;g=k+16|0;j=k+8|0;i=k;c[d>>2]=b;c[d+32>>2]=5;e=iQ(b)|0;f=c[a+16>>2]|0;if(!((f|0)!=0?(e2(e,f,c[a+20>>2]|0,4,100)|0)!=0:0))h=3;a:do if((h|0)==3){switch(jQ(b,d,c[a+24>>2]|0)|0){case 0:break a;case 1:break;default:{Pw(1,108020,g)|0;break a}}a=vH((W_(b)|0)+16|0)|0;c[i>>2]=b;Y0(a,107985,i)|0;if(AG(a)|0){c[j>>2]=b;Pw(0,107994,j)|0}D_(a)}while(0);l=k;return}function WO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=c[b+60>>2]|0;g=(c[b+16>>2]|0)+56|0;i=A$(d,58)|0;h=(i|0)!=0;if(h)a[i>>0]=0;if(f|0?(VO(c[b+68>>2]|0,d,g),e=c[f+92>>2]|0,e|0):0)ub[e&63](b,g);if(h)a[i>>0]=58;return}function XO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,j=0;h=c[a+60>>2]|0;i=a+16|0;j=(c[i>>2]|0)+96|0;if(h|0?(VO(c[a+68>>2]|0,b,j),f=c[h+92>>2]|0,f|0):0)ub[f&63](a,j);j=c[i>>2]|0;c[j+136>>2]=d;g[j+140>>2]=e;return}function YO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;j=c[b+60>>2]|0;b=c[b+16>>2]|0;c[b+160>>2]=d;a:do if((d|0)!=0&(j|0)!=0){j=b+144|0;i=b+152|0;g=b+148|0;b=d;b:while(1){f=b+4|0;b=c[b>>2]|0;if(!b)break a;c:do switch(a[b>>0]|0){case 115:{if(!(b$(b,108041)|0)){c[j>>2]=3;b=f;continue b}if(!(b$(b,108062)|0)){e=115;while(1){d=b+1|0;if(!(e<<24>>24))break;b=d;e=a[d>>0]|0}h[i>>3]=+b2(d);b=f;continue b}break}case 100:{if(!(b$(b,134245)|0)){c[j>>2]=1;b=f;continue b}if(!(b$(b,134238)|0)){c[j>>2]=2;b=f;continue b}break}case 105:{if(b$(b,131253)|0?b$(b,108047)|0:0)break c;c[j>>2]=0;b=f;continue b}case 98:{if(!(b$(b,108057)|0)){h[i>>3]=2.0;b=f;continue b}break}case 102:{if(!(b$(b,108075)|0)){c[g>>2]=1;b=f;continue b}break}case 117:{if(!(b$(b,108082)|0)){c[g>>2]=0;b=f;continue b}break}case 116:{if(!(b$(b,108091)|0)){b=f;continue b}break}default:{}}while(0);c[k>>2]=b;Pw(0,108099,k)|0;b=f}}while(0);l=m;return}function ZO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0;j=l;l=l+32|0;g=j;d=c[a+60>>2]|0;if((d|0?(i=d+96|0,f=c[i>>2]|0,f|0):0)?c[(c[a+16>>2]|0)+144>>2]|0:0){d=b+16|0;h[g>>3]=(+h[d>>3]+ +h[b>>3])*.5;h[g+8>>3]=(+h[b+24>>3]+ +h[b+8>>3])*.5;b=g+16|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(!(c[a+152>>2]&8192)){yO(a,g,g,2)|0;f=c[i>>2]|0}vb[f&127](a,g,e)}l=j;return}function _O(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;m=o;f=c[a+60>>2]|0;if((f|0?(n=f+100|0,c[n>>2]|0):0)?(k=a+16|0,j=c[k>>2]|0,c[j+144>>2]|0):0){if(!(e&4)){f=e;g=0}else{f=e&-5;e=j+16|0;g=m;h=e;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));g=e;h=j+56|0;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));g=1}if(!(c[a+152>>2]&8192)){e=d+10|0;if((c[46593]|0)<(d|0)){c[46593]=e;e=xH(c[46594]|0,e<<4)|0;c[46594]=e}else e=c[46594]|0;yO(a,b,e,d)|0;xb[c[n>>2]&31](a,e,d,f)}else xb[c[n>>2]&31](a,b,d,f);if(g|0){g=(c[k>>2]|0)+16|0;h=m;i=g+40|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0))}}l=o;return}function $O(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+64|0;f=e;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];g=f+32|0;b=b+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];h[f+16>>3]=+h[f>>3];h[f+24>>3]=+h[f+40>>3];h[f+48>>3]=+h[g>>3];h[f+56>>3]=+h[f+8>>3];_O(a,f,4,d);l=e;return}function aP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=c[a+60>>2]|0;do if((i|0?(j=i+104|0,h=c[j>>2]|0,h|0):0)?c[(c[a+16>>2]|0)+144>>2]|0:0){if(c[a+152>>2]&8192|0){zb[h&15](a,b,d,e,f,g&255);break}h=d+10|0;if((c[46593]|0)<(d|0)){c[46593]=h;h=xH(c[46594]|0,h<<4)|0;c[46594]=h}else h=c[46594]|0;yO(a,b,h,d)|0;zb[c[j>>2]&15](a,h,d,e,f,g&255)}while(0);return}function bP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[a+60>>2]|0;do if((e|0?(g=e+108|0,f=c[g>>2]|0,f|0):0)?c[(c[a+16>>2]|0)+144>>2]|0:0){if(c[a+152>>2]&8192|0){vb[f&127](a,b,d);break}e=d+10|0;if((c[46593]|0)<(d|0)){c[46593]=e;e=xH(c[46594]|0,e<<4)|0;c[46594]=e}else e=c[46594]|0;yO(a,b,e,d)|0;vb[c[g>>2]&127](a,e,d)}while(0);return}function cP(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b+60>>2]|0;if((d|0?!((e|0)==0|(a[d>>0]|0)==0):0)?(f=c[e+112>>2]|0,f|0):0)ub[f&63](b,d);return}function dP(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0.0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;F=l;l=l+112|0;B=F+64|0;E=F;n=F+96|0;x=F+48|0;y=F+32|0;C=c[b+60>>2]|0;if(!b)qa(108200,108152,691,108163);if(!d)qa(108182,108152,692,108163);if(!(a[d>>0]|0))qa(108187,108152,693,108163);D=yC(d)|0;if(!D){if((C|0)!=0&(VJ(d)|0)!=0?(m=c[C+116>>2]|0,m|0):0)yb[m&15](b,d,e,f,g&255)}else{s=b+432|0;c[B>>2]=c[s>>2];c[B+4>>2]=c[s+4>>2];c[B+8>>2]=c[s+8>>2];c[B+12>>2]=c[s+12>>2];BC(n,D,B);s=c[n>>2]|0;m=c[n+4>>2]|0;if(!((s|0)<1&(m|0)<1)){n=E+16|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];c[E>>2]=c[e>>2];c[E+4>>2]=c[e+4>>2];c[E+8>>2]=c[e+8>>2];c[E+12>>2]=c[e+12>>2];z=E+8|0;A=E+24|0;d=1;while(1){if((d|0)>=(f|0))break;G=e+(d<<4)|0;v=+h[G>>3];h[E>>3]=+h[(+h[E>>3]>3];w=+h[e+(d<<4)+8>>3];h[z>>3]=+h[(+h[z>>3]>3];h[n>>3]=+h[(+h[n>>3]>v?n:G)>>3];h[A>>3]=+h[(+h[A>>3]>w?n:G)+8>>3];d=d+1|0}k=+h[n>>3];j=+h[E>>3];t=k-j;u=+h[A>>3];v=+h[z>>3];w=u-v;o=+(m|0);p=+(s|0);q=t/p;r=w/o;a:do switch(eP(i)|0){case 1:if(q>3]=j;k=k-t;h[n>>3]=k}if(o>3]=v+w;h[A>>3]=u-w}if(!(c[b+152>>2]&8192)){c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];xO(x,b,B);c[E>>2]=c[x>>2];c[E+4>>2]=c[x+4>>2];c[E+8>>2]=c[x+8>>2];c[E+12>>2]=c[x+12>>2];c[B>>2]=c[n>>2];c[B+4>>2]=c[n+4>>2];c[B+8>>2]=c[n+8>>2];c[B+12>>2]=c[n+12>>2];xO(y,b,B);c[n>>2]=c[y>>2];c[n+4>>2]=c[y+4>>2];c[n+8>>2]=c[y+8>>2];c[n+12>>2]=c[y+12>>2];k=+h[n>>3];j=+h[E>>3]}if(j>k){h[E>>3]=k;h[n>>3]=j}j=+h[z>>3];k=+h[A>>3];if(j>k){h[z>>3]=k;h[A>>3]=j}if(C|0){G=c[b+72>>2]|0;c[B>>2]=c[E>>2];c[B+4>>2]=c[E+4>>2];c[B+8>>2]=c[E+8>>2];c[B+12>>2]=c[E+12>>2];c[B+16>>2]=c[E+16>>2];c[B+20>>2]=c[E+20>>2];c[B+24>>2]=c[E+24>>2];c[B+28>>2]=c[E+28>>2];gP(b,D,B,g,G)}}}l=F;return}function eP(b){b=b|0;if(a[b>>0]|0)if(O$(b,138034)|0)if(O$(b,137966)|0)if(!(O$(b,108195)|0))b=4;else b=(QL(b)|0)<<24>>24!=0&1;else b=3;else b=2;else b=0;return b|0}function fP(a,b){a=a|0;b=+b;if(c[a+60>>2]|0)h[(c[a+16>>2]|0)+152>>3]=b;return} +function SX(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f-e|0;a:do if((h|0)>0){l=b+72|0;switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{c[g>>2]=e;f=0;break a}case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[b+340>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[b+344>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[b+348>>2]&127](b,e)|0)){c[g>>2]=e;f=0;break a}else h=4;break}default:{c[g>>2]=e;f=0;break a}}i=b+328|0;j=b+332|0;k=b+336|0;e=e+h|0;b:while(1){h=f-e|0;if((h|0)<=0){f=-20;break a}switch(a[l+(d[e>>0]|0)>>0]|0){case 29:{h=17;break b}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{h=28;break b}case 27:case 26:case 25:case 24:case 22:{h=1;break}case 5:{if((h|0)<2){f=-2;break a}if(!(lb[c[i>>2]&127](b,e)|0)){h=20;break b}else h=2;break}case 6:{if((h|0)<3){f=-2;break a}if(!(lb[c[j>>2]&127](b,e)|0)){h=23;break b}else h=3;break}case 7:{if((h|0)<4){f=-2;break a}if(!(lb[c[k>>2]&127](b,e)|0)){h=26;break b}else h=4;break}default:{h=29;break b}}e=e+h|0}if((h|0)==17){c[g>>2]=e;f=0;break}else if((h|0)==20){c[g>>2]=e;f=0;break}else if((h|0)==23){c[g>>2]=e;f=0;break}else if((h|0)==26){c[g>>2]=e;f=0;break}else if((h|0)==28){c[g>>2]=e;f=20;break}else if((h|0)==29){c[g>>2]=e;f=0;break}}else f=-1;while(0);return f|0}function TX(){return 58116}function UX(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;g=i;c[g>>2]=d;h=c[b>>2]|0;a=f-(c[e>>2]|0)|0;if((d-h|0)>(a|0)){a=h+a|0;c[g>>2]=a;f=1}else{f=0;a=d}fX(h,g);h=c[g>>2]|0;d=c[b>>2]|0;g=h-d|0;F3(c[e>>2]|0,d|0,g|0)|0;c[b>>2]=(c[b>>2]|0)+g;c[e>>2]=(c[e>>2]|0)+g;l=i;return (f?2:h>>>0>>0&1)|0}function VX(d,e,f,g,h){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;j=d+72|0;k=f;l=h;m=c[e>>2]|0;n=c[g>>2]|0;a:while(1){d=m>>>0>>0;if(!(n>>>0>>0&d)){o=12;break}d=a[m>>0]|0;i=d&255;switch(a[j+i>>0]|0){case 5:{if((k-m|0)<2){d=1;break a}b[n>>1]=(d&31)<<6|a[m+1>>0]&63;m=m+2|0;n=n+2|0;continue a}case 6:{if((k-m|0)<3){d=1;break a}b[n>>1]=(a[m+1>>0]&63)<<6|i<<12|a[m+2>>0]&63;m=m+3|0;n=n+2|0;continue a}case 7:{if((l-n|0)<4){d=2;break a}if((k-m|0)<4){d=1;break a}i=((a[m+1>>0]&63)<<12|(d&7)<<18|(a[m+2>>0]&63)<<6|a[m+3>>0]&63)+-65536|0;b[n>>1]=i>>>10|55296;b[n+2>>1]=i&1023|56320;m=m+4|0;n=n+4|0;continue a}default:{b[n>>1]=d<<24>>24;m=m+1|0;n=n+2|0;continue a}}}if((o|0)==12)d=d?2:0;c[e>>2]=m;c[g>>2]=n;return d|0}function WX(a,b){a=a|0;b=b|0;a=d[b>>0]|0;b=d[b+1>>0]|0;return 1<<(b&31)&c[56836+(((d[140962+(a>>>2&7)>>0]|0)<<3|a<<1&6|b>>>5&1)<<2)>>2]|0}function XX(b,e){b=b|0;e=e|0;var f=0;f=d[e+1>>0]|0;b=d[e+2>>0]|0;return 1<<(b&31)&c[56836+(((d[140962+(f>>>2&15|a[e>>0]<<4&255)>>0]|0)<<3|f<<1&6|b>>>5&1)<<2)>>2]|0}function YX(a,b){a=a|0;b=b|0;return 0}function ZX(a,b){a=a|0;b=b|0;a=d[b>>0]|0;b=d[b+1>>0]|0;return 1<<(b&31)&c[56836+(((d[140706+(a>>>2&7)>>0]|0)<<3|a<<1&6|b>>>5&1)<<2)>>2]|0}function _X(b,e){b=b|0;e=e|0;var f=0;f=d[e+1>>0]|0;b=d[e+2>>0]|0;return 1<<(b&31)&c[56836+(((d[140706+(f>>>2&15|a[e>>0]<<4&255)>>0]|0)<<3|f<<1&6|b>>>5&1)<<2)>>2]|0}function $X(a,b){a=a|0;b=b|0;if((d[b>>0]|0)<194)return 1;else{b=d[b+1>>0]|0;return b>>>7^1|(b&192|0)==192|0}return 0}function aY(b,c){b=b|0;c=c|0;var d=0;b=a[c+2>>0]|0;do if(b<<24>>24>-1)b=1;else{d=a[c>>0]|0;if(d<<24>>24==-17?(a[c+1>>0]|0)==-65:0)if((b&255)>189){b=1;break}else{b=191;c=-65}else{if((b&255)>191){b=1;break}c=a[c+1>>0]|0;b=c&255;if(d<<24>>24==-32){b=(c&255)<160|(b&192|0)==192;break}}b=(b&128|0)==0?1:d<<24>>24==-19?(c&255)>159:(b&192|0)==192}while(0);return b&1|0}function bY(b,c){b=b|0;c=c|0;var e=0;e=d[c+3>>0]|0;do if(!((e&128|0)==0|(e&192|0)==192)?(e=d[c+2>>0]|0,!((e&128|0)==0|(e&192|0)==192)):0){e=a[c>>0]|0;b=a[c+1>>0]|0;c=b&255;if(e<<24>>24==-16){b=(b&255)<144|(c&192|0)==192;break}else{b=(c&128|0)==0?1:e<<24>>24==-12?(b&255)>143:(c&192|0)==192;break}}else b=1;while(0);return b&1|0}function cY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if(e>>>0>>0){i=e;m=f-i|0;k=(m&1|0)==0;m=m&-2;l=(m|0)==0;m=k|l?f:e+m|0;if(k|l^1){f=a[e+1>>0]|0;if(!(f<<24>>24)){h=a[e>>0]|0;j=h;h=d[b+72+(h&255)>>0]|0}else{h=a[e>>0]|0;j=h;h=sY(f,h)|0}do switch(h|0){case 12:{f=EY(12,b,e+2|0,m,g)|0;break a}case 13:{f=EY(13,b,e+2|0,m,g)|0;break a}case 2:{h=e+2|0;if((m-h|0)<=1){f=-1;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;switch(f|0){case 16:{f=FY(b,e+4|0,m,g)|0;break a}case 15:{f=AY(b,e+4|0,m,g)|0;break a}case 7:case 6:case 5:case 29:case 24:case 22:{c[g>>2]=e;f=29;break a}default:{c[g>>2]=h;f=0;break a}}}case 9:{if((e+2|0)==(m|0)){c[g>>2]=m;f=-15;break a}else i=7;break}case 10:case 21:{i=7;break}case 30:{f=uY(b,e+2|0,m,g)|0;break a}case 35:{c[g>>2]=e+2;f=38;break a}case 20:{c[g>>2]=e+2;f=25;break a}case 4:{h=e+2|0;f=m-h|0;if((f|0)<=1){f=-26;break a}if((a[e+3>>0]|0)==0?(a[h>>0]|0)==93:0){if((f|0)<=3){f=-1;break a}if((a[e+5>>0]|0)==0?(a[e+4>>0]|0)==62:0){c[g>>2]=e+6;f=34;break a}}c[g>>2]=h;f=26;break a}case 31:{c[g>>2]=e+2;f=23;break a}case 32:{h=e+2|0;if((m-h|0)<=1){f=-24;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;switch(f|0){case 33:{c[g>>2]=e+4;f=36;break a}case 15:{c[g>>2]=e+4;f=35;break a}case 34:{c[g>>2]=e+4;f=37;break a}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[g>>2]=h;f=24;break a}default:{c[g>>2]=h;f=0;break a}}}case 36:{c[g>>2]=e+2;f=21;break a}case 11:{c[g>>2]=e+2;f=17;break a}case 19:{f=GY(b,e+2|0,m,g)|0;break a}case 5:{if((m-i|0)<2){f=-2;break a}c[g>>2]=e;f=0;break a}case 6:{if((m-i|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((m-i|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 24:case 22:{f=18;i=61;break}case 23:case 27:case 26:case 25:{f=19;i=61;break}case 29:{i=f&255;h=j&255;f=h>>>5;h=1<<(h&31);if(!(h&c[56836+((f|d[140706+i>>0]<<3)<<2)>>2]))if(!(c[56836+((d[140962+i>>0]<<3|f)<<2)>>2]&h))i=64;else{f=19;i=61}else{f=18;i=61}break}default:i=64}while(0);if((i|0)==7){k=m;b=b+72|0;j=e;b:while(1){i=j;j=j+2|0;if((k-j|0)<=1){i=28;break}f=a[i+3>>0]|0;h=a[j>>0]|0;if(!(f<<24>>24))f=d[b+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 21:continue b;case 9:break;default:{i=27;break b}}if((i+4|0)==(m|0)){i=27;break}}if((i|0)==27){c[g>>2]=j;f=15;break}else if((i|0)==28){c[g>>2]=j;f=15;break}}else if((i|0)==61){l=b+72|0;h=e+2|0;c:while(1){e=f&255;d:while(1){k=m-h|0;if((k|0)<=1){i=104;break c}i=a[h+1>>0]|0;j=a[h>>0]|0;if(!(i<<24>>24))b=d[l+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 5:{i=73;break c}case 6:{i=74;break c}case 7:{i=76;break c}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{i=78;break c}case 34:{i=94;break c}case 33:{i=97;break c}case 15:{i=100;break c}case 29:{k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){i=71;break c}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{k=h+2|0;switch(e&63){case 41:{f=19;h=k;continue c}case 18:break d;default:{h=k;continue d}}}default:{i=103;break c}}h=h+2|0}b=m-k|0;if((b|0)<=1){f=-1;break a}f=a[h+3>>0]|0;i=a[k>>0]|0;if(!(f<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(f,i)|0;switch(j|0){case 5:{i=89;break c}case 6:{i=90;break c}case 7:{i=92;break c}case 29:{e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(f&255)>>0]<<3)<<2)>>2])){i=87;break c}break}case 27:case 26:case 25:case 24:case 22:break;default:{f=19;h=k;continue c}}f=41;h=h+4|0}switch(i|0){case 71:{c[g>>2]=h;f=0;break a}case 73:{c[g>>2]=h;f=0;break a}case 74:{if((k|0)<3){f=-2;break a}c[g>>2]=h;f=0;break a}case 76:{if((k|0)<4){f=-2;break a}c[g>>2]=h;f=0;break a}case 78:{c[g>>2]=h;break a}case 87:{c[g>>2]=k;f=0;break a}case 89:{c[g>>2]=k;f=0;break a}case 90:{if((b|0)<3){f=-2;break a}c[g>>2]=k;f=0;break a}case 92:{if((b|0)<4){f=-2;break a}c[g>>2]=k;f=0;break a}case 94:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=32;break a}case 97:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=31;break a}case 100:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=30;break a}case 103:{c[g>>2]=h;f=0;break a}case 104:{f=0-f|0;break a}}}else if((i|0)==64){c[g>>2]=e;f=0;break}}else f=-1}else f=-4;while(0);return f|0}function dY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e+1>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e>>0]|0)>>0]|0;else f=sY(f,a[e>>0]|0)|0;do switch(f|0){case 2:{f=xY(b,e+2|0,i,g)|0;break a}case 3:{f=tY(b,e+2|0,i,g)|0;break a}case 9:{h=e+2|0;if((i-h|0)<=1){f=-3;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 4:{h=e+2|0;if((i-h|0)<=1){f=-5;break a}if((a[e+3>>0]|0)==0?(a[h>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-5;break a}if((a[e+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=f;f=0;break a}else f=i}else f=i;break}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:{h=e+2|0;f=i}}while(0);j=b+72|0;b=h;b:while(1){e=f-b|0;if((e|0)<=1){h=52;break}h=a[b+1>>0]|0;i=a[b>>0]|0;if(!(h<<24>>24))h=d[j+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{h=50;break b}case 5:{b=b+2|0;continue b}case 6:{if((e|0)<3){h=38;break b}b=b+3|0;continue b}case 7:{if((e|0)<4){h=41;break b}b=b+4|0;continue b}case 4:{if((e|0)<=3){h=50;break b}h=b+2|0;if(a[b+3>>0]|0){b=h;continue b}if((a[h>>0]|0)!=93){b=h;continue b}if((e|0)<=5){h=50;break b}i=b+4|0;if(a[b+5>>0]|0){b=h;continue b}if((a[i>>0]|0)==62){h=49;break b}else{b=h;continue b}}default:{b=b+2|0;continue b}}}if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==41){c[g>>2]=b;f=6;break}else if((h|0)==49){c[g>>2]=i;f=0;break}else if((h|0)==50){c[g>>2]=b;f=6;break}else if((h|0)==52){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function eY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e+1>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e>>0]|0)>>0]|0;else f=sY(f,a[e>>0]|0)|0;switch(f|0){case 4:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}if((a[e+3>>0]|0)==0?(a[h>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-1;break a}if((a[e+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=e+6;f=40;break a}}break}case 9:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}f=a[e+3>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[h>>0]|0)>>0]|0;else f=sY(f,a[h>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;i=f;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;i=f;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;i=f;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:h=e+2|0}j=b+72|0;b=h;b:while(1){e=i-b|0;if((e|0)<=1){h=40;break}f=a[b+1>>0]|0;h=a[b>>0]|0;if(!(f<<24>>24))f=d[j+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 9:case 8:case 1:case 0:case 4:{h=38;break b}case 6:{if((e|0)<3){h=35;break b}else f=3;break}case 7:{if((e|0)<4){h=37;break b}else f=4;break}default:f=2}b=b+f|0}if((h|0)==35){c[g>>2]=b;f=6;break}else if((h|0)==37){c[g>>2]=b;f=6;break}else if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==40){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function fY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f-e|0;k=(k&1|0)==0?f:e+(k&-2)|0;j=b+72|0;i=0;f=e;a:while(1){h=k-f|0;if((h|0)<=1){f=-1;break}b=a[f+1>>0]|0;e=a[f>>0]|0;if(!(b<<24>>24))b=d[j+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 8:case 1:case 0:{l=12;break a}case 5:{h=i;f=f+2|0;i=h;continue a}case 6:{if((h|0)<3){f=-2;break a}h=i;f=f+3|0;i=h;continue a}case 7:{if((h|0)<4){f=-2;break a}h=i;f=f+4|0;i=h;continue a}case 2:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[f+3>>0]|0){h=i;f=b;i=h;continue a}if((a[b>>0]|0)!=33){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[f+5>>0]|0){h=i;f=b;i=h;continue a}h=(a[b>>0]|0)==91;i=i+(h&1)|0;f=h?f+6|0:b;continue a}case 4:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[f+3>>0]|0){h=i;f=b;i=h;continue a}if((a[b>>0]|0)!=93){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[f+5>>0]|0){h=i;f=b;i=h;continue a}if((a[b>>0]|0)!=62){h=i;f=b;i=h;continue a}f=f+6|0;if(!i){l=26;break a}i=i+-1|0;continue a}default:{h=i;f=f+2|0;i=h;continue a}}}if((l|0)==12){c[g>>2]=f;f=0}else if((l|0)==26){c[g>>2]=f;f=42}return f|0}function gY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=30;break}h=a[j+1>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 2:{i=14;break a}case 10:{i=15;break a}case 9:{i=18;break a}case 21:{i=25;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=tY(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14){c[g>>2]=j;h=0;break}else if((i|0)==15)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==18){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[e+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==25)if((j|0)==(e|0)){c[g>>2]=e+2;h=39;break}else{c[g>>2]=j;h=6;break}else if((i|0)==30){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function hY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=29;break}h=a[j+1>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 30:{i=14;break a}case 10:{i=17;break a}case 9:{i=20;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=tY(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14)if((j|0)==(e|0)){h=uY(b,e+2|0,f,g)|0;h=(h|0)==22?0:h;break}else{c[g>>2]=j;h=6;break}else if((i|0)==17)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==20){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[e+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==29){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function iY(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=d;b=c;while(1){c=a[e>>0]|0;if(!(c<<24>>24)){g=7;break}if((f-b|0)<2){b=0;break}if(a[b+1>>0]|0){b=0;break}if((a[b>>0]|0)!=c<<24>>24){b=0;break}e=e+1|0;b=b+2|0}if((g|0)==7)b=(b|0)==(d|0)&1;return b|0}function jY(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+72|0;f=c;a:while(1){b=a[f+1>>0]|0;e=a[f>>0]|0;if(!(b<<24>>24))b=d[g+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 5:{b=2;break}case 6:{b=3;break}case 7:{b=4;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{b=2;break}default:break a}f=f+b|0}return f-c|0}function kY(b,c){b=b|0;c=c|0;var e=0,f=0;f=b+72|0;a:while(1){b=a[c+1>>0]|0;e=a[c>>0]|0;if(!(b<<24>>24))b=d[f+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 21:case 9:case 10:break;default:break a}c=c+2|0}return c|0}function lY(b,e,f,g){b=b|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;o=b+72|0;m=0;n=0;b=1;a:while(1){l=e+2|0;i=e+3|0;h=a[i>>0]|0;j=h<<24>>24==0;k=a[l>>0]|0;if(j)h=d[o+(k&255)>>0]|0;else h=sY(h,k)|0;do switch(h|0){case 5:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 6:{if(b|0){j=b;k=n;l=m;e=i;b=j;n=k;m=l;continue a}if((n|0)>=(f|0)){k=n;l=m;b=1;e=i;n=k;m=l;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;k=n;l=m;b=1;e=i;n=k;m=l;continue a}case 7:{if(!b)if((n|0)<(f|0)){c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;b=1}else b=1;k=n;l=m;e=e+4|0;n=k;m=l;continue a}case 24:case 22:case 29:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 12:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=12;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=12;b=2;e=l;n=k;continue a}if((m|0)!=12){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=12;n=n+1|0;b=0;e=l;continue a}case 13:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=13;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=13;b=2;e=l;n=k;continue a}if((m|0)!=13){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=13;n=n+1|0;b=0;e=l;continue a}case 3:{if((n|0)>=(f|0)){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}case 21:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}i=g+(n<<4)+12|0;if(!(a[i>>0]|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}do if(j&(l|0)!=(c[g+(n<<4)+4>>2]|0)&k<<24>>24==32){h=a[e+5>>0]|0;b=a[e+4>>0]|0;if(!(h<<24>>24)){if(b<<24>>24==32)break;b=d[o+(b&255)>>0]|0}else b=sY(h,b)|0;if((b|0)!=(m|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}}while(0);a[i>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 10:case 9:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 17:case 11:if((b|0)==2){j=n;k=m;b=2;e=l;n=j;m=k;continue a}else break a;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}while(0)}return n|0}function mY(b,c){b=b|0;c=c|0;var d=0,e=0;b=c+4|0;a:do if((a[c+5>>0]|0)==0?(a[b>>0]|0)==120:0){c=c+6|0;b=0;while(1){b:while(1){if(!(a[c+1>>0]|0)){d=a[c>>0]|0;if(d<<24>>24==59){e=17;break a}d=d<<24>>24;switch(d|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{e=8;break b}case 70:case 69:case 68:case 67:case 66:case 65:{e=9;break b}case 102:case 101:case 100:case 99:case 98:case 97:{e=10;break b}default:{}}}c=c+2|0}if((e|0)==8){e=0;b=d+-48|b<<4}else if((e|0)==9){e=0;b=(b<<4)+-55+d|0}else if((e|0)==10){e=0;b=(b<<4)+-87+d|0}if((b|0)<1114112)c=c+2|0;else{b=-1;break}}}else{d=b;b=0;e=13}while(0);c:do if((e|0)==13)while(1){e=0;if(!(a[d+1>>0]|0)){c=a[d>>0]|0;if(c<<24>>24==59){e=17;break c}c=c<<24>>24}else c=-1;b=(b*10|0)+-48+c|0;if((b|0)>=1114112){b=-1;break}else{d=d+2|0;e=13}}while(0);if((e|0)==17)b=jX(b)|0;return b|0}function nY(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do switch((d-c|0)/2|0|0){case 2:{if((a[c+3>>0]|0)==0?(a[c+2>>0]|0)==116:0){if(!(a[c+1>>0]|0))b=a[c>>0]|0;else b=-1;b=(b|0)==108?60:(b|0)==103?62:0}else e=27;break}case 3:{if((((((a[c+1>>0]|0)==0?(a[c>>0]|0)==97:0)?(a[c+3>>0]|0)==0:0)?(a[c+2>>0]|0)==109:0)?(a[c+5>>0]|0)==0:0)?(a[c+4>>0]|0)==112:0)b=38;else e=27;break}case 4:{if(!(a[c+1>>0]|0))switch(a[c>>0]|0){case 113:{if(a[c+3>>0]|0){e=27;break a}if((a[c+2>>0]|0)!=117){e=27;break a}if(a[c+5>>0]|0){e=27;break a}if((a[c+4>>0]|0)!=111){e=27;break a}if(a[c+7>>0]|0){e=27;break a}if((a[c+6>>0]|0)==116){b=34;break a}else{e=27;break a}}case 97:{if(a[c+3>>0]|0){e=27;break a}if((a[c+2>>0]|0)!=112){e=27;break a}if(a[c+5>>0]|0){e=27;break a}if((a[c+4>>0]|0)!=111){e=27;break a}if(a[c+7>>0]|0){e=27;break a}if((a[c+6>>0]|0)==115){b=39;break a}else{e=27;break a}}default:{e=27;break a}}else e=27;break}default:e=27}while(0);if((e|0)==27)b=0;return b|0}function oY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=b+72|0;k=g+4|0;while(1){if((f-e|0)<=1)break;b=a[e+1>>0]|0;h=a[e>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;switch(b|0){case 5:{e=e+2|0;break}case 6:{e=e+3|0;break}case 7:{e=e+4|0;break}case 10:{c[k>>2]=-1;c[g>>2]=(c[g>>2]|0)+1;e=e+2|0;break}case 9:{c[g>>2]=(c[g>>2]|0)+1;i=e+2|0;if((f-i|0)>1){b=a[e+3>>0]|0;h=a[i>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;e=(b|0)==10?e+4|0:i}else e=i;c[k>>2]=-1;break}default:e=e+2|0}c[k>>2]=(c[k>>2]|0)+1}return}function pY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f+-2|0;i=b+72|0;f=e;a:while(1){h=f+2|0;if((j-h|0)<=1){f=1;break}f=a[f+3>>0]|0;b=f<<24>>24==0;e=a[h>>0]|0;if(b)f=d[i+(e&255)>>0]|0;else f=sY(f,e)|0;switch(f|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:{f=h;continue a}case 21:if(b&e<<24>>24==9){k=12;break a}else{f=h;continue a}case 22:case 26:{if(!b){k=12;break a}if(e<<24>>24>=0){f=h;continue a}break}default:if(!b){k=12;break a}}switch(e<<24>>24|0){case 64:case 36:{f=h;break}default:{k=12;break a}}}if((k|0)==12){c[g>>2]=h;f=0}return f|0}function qY(b,e,f,g,h){b=b|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;j=c[e>>2]|0;k=j+(f-j&-2)|0;l=k;m=h;a:while(1){if(j>>>0>=k>>>0){b=0;break}i=a[j>>0]|0;b=a[j+1>>0]|0;f=b&255;switch(b<<24>>24){case 0:{if(i<<24>>24>-1){b=c[g>>2]|0;if((b|0)==(h|0)){b=2;break a}c[g>>2]=b+1;a[b>>0]=i;b=j}else n=7;break}case 7:case 6:case 5:case 4:case 3:case 2:case 1:{n=7;break}case -37:case -38:case -39:case -40:{b=c[g>>2]|0;if((m-b|0)<4){b=2;break a}if((l-j|0)<4){b=1;break a}o=i&255;i=(f<<2&12|o>>>6)+1|0;c[g>>2]=b+1;a[b>>0]=i>>>2|240;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>2&15|i<<4&48|128;b=j+2|0;i=d[b>>0]|0;f=(o<<4&48|i>>>6|a[j+3>>0]<<2&12|128)&255;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=f;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=i&63|128;break}default:{b=c[g>>2]|0;if((m-b|0)<3){b=2;break a}c[g>>2]=b+1;a[b>>0]=f>>>4|224;o=i&255;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2&60|128;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}}if((n|0)==7){n=0;b=c[g>>2]|0;if((m-b|0)<2){b=2;break}o=i&255;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2|192;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}j=b+2|0}c[e>>2]=j;return b|0}function rY(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=c[f>>2]|0;l=g-j&-2;e=j+l|0;if((l|0)>(i-(c[h>>2]|0)|0)){k=e+-2|0;g=(a[k+1>>0]&-8)<<24>>24==-40;l=g&1;e=g?k:e}else l=0;g=j;while(1){j=g>>>0>>0;k=c[h>>2]|0;if(!(j&k>>>0>>0))break;j=((d[g+1>>0]|0)<<8|(d[g>>0]|0))&65535;c[h>>2]=k+2;b[k>>1]=j;k=(c[f>>2]|0)+2|0;c[f>>2]=k;g=k}return ((k|0)!=(i|0)|j^1?l:2)|0}function sY(a,b){a=a|0;b=b|0;var c=0;switch(a<<24>>24){case -37:case -38:case -39:case -40:{a=7;break}case -33:case -34:case -35:case -36:{a=8;break}case -1:{if((b&255)>253)a=0;else c=4;break}default:c=4}if((c|0)==4)a=29;return a|0}function tY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=f;j=l-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;b=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;b=0;break a}case 6:{if((j|0)<3){b=-2;break a}c[g>>2]=e;b=0;break a}case 7:{if((j|0)<4){b=-2;break a}c[g>>2]=e;b=0;break a}case 19:{b=vY(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;b=0;break a}}k=b+72|0;j=e;b:while(1){i=j+2|0;e=l-i|0;if((e|0)<=1){b=-1;break a}b=a[j+3>>0]|0;h=a[i>>0]|0;if(!(b<<24>>24))f=d[k+(h&255)>>0]|0;else f=sY(b,h)|0;switch(f|0){case 27:case 26:case 25:case 24:case 22:{j=i;continue b}case 5:{h=23;break b}case 6:{h=24;break b}case 7:{h=26;break b}case 18:{h=28;break b}case 29:break;default:{h=29;break b}}e=h&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(b&255)>>0]|0)<<3)<<2)>>2])){h=22;break}else j=i}if((h|0)==22){c[g>>2]=i;b=0;break}else if((h|0)==23){c[g>>2]=i;b=0;break}else if((h|0)==24){if((e|0)<3){b=-2;break}c[g>>2]=i;b=0;break}else if((h|0)==26){if((e|0)<4){b=-2;break}c[g>>2]=i;b=0;break}else if((h|0)==28){c[g>>2]=j+4;b=9;break}else if((h|0)==29){c[g>>2]=i;b=0;break}}else b=-1;while(0);return b|0}function uY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 30:case 9:case 10:case 21:{c[g>>2]=e;f=22;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){k=b+2|0;e=f-k|0;if((e|0)<=1){f=-1;break a}h=a[b+3>>0]|0;i=a[k>>0]|0;if(!(h<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(h,i)|0;switch(j|0){case 27:case 26:case 25:case 24:case 22:{b=k;continue b}case 5:{h=23;break b}case 6:{h=24;break b}case 7:{h=26;break b}case 18:{h=28;break b}case 29:break;default:{h=29;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=22;break}else b=k}if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){c[g>>2]=k;f=0;break}else if((h|0)==24){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==26){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==28){c[g>>2]=b+4;f=28;break}else if((h|0)==29){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function vY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=f;a:do if((k-e|0)>1){i=a[e+1>>0]|0;h=a[e>>0]|0;do if(!(i<<24>>24))if(h<<24>>24==120){h=wY(b,e+2|0,f,g)|0;break a}else{h=d[b+72+(h&255)>>0]|0;break}else h=sY(i,h)|0;while(0);if((h|0)!=25){c[g>>2]=e;h=0;break}j=b+72|0;b=e;b:while(1){i=b+2|0;if((k-i|0)<=1){h=-1;break a}h=a[b+3>>0]|0;f=a[i>>0]|0;if(!(h<<24>>24))h=d[j+(f&255)>>0]|0;else h=sY(h,f)|0;switch(h|0){case 25:{b=i;break}case 18:{f=15;break b}default:{f=16;break b}}}if((f|0)==15){c[g>>2]=b+4;h=10;break}else if((f|0)==16){c[g>>2]=i;h=0;break}}else h=-1;while(0);return h|0}function wY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a:do if((f-e|0)>1){h=a[e+1>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e>>0]|0)>>0]|0;else h=sY(h,a[e>>0]|0)|0;if((h&-2|0)!=24){c[g>>2]=e;f=0;break}j=b+72|0;b:while(1){i=e+2|0;if((f-i|0)<=1){f=-1;break a}h=a[e+3>>0]|0;b=a[i>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 25:{e=i;break}case 18:{h=13;break b}default:{h=14;break b}}}if((h|0)==13){c[g>>2]=e+4;f=10;break}else if((h|0)==14){c[g>>2]=i;f=0;break}}else f=-1;while(0);return f|0}function xY(b,e,f,g){b=b|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;o=f;j=o-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{m=i&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;h=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;h=0;break a}case 6:{if((j|0)<3){h=-2;break a}c[g>>2]=e;h=0;break a}case 7:{if((j|0)<4){h=-2;break a}c[g>>2]=e;h=0;break a}case 16:{i=e+2|0;if((o-i|0)<=1){h=-1;break a}h=a[e+3>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[i>>0]|0)>>0]|0;else h=sY(h,a[i>>0]|0)|0;switch(h|0){case 27:{h=yY(b,e+4|0,f,g)|0;break a}case 20:{h=zY(e+4|0,f,g)|0;break a}default:{c[g>>2]=i;h=0;break a}}}case 15:{h=AY(b,e+2|0,f,g)|0;break a}case 17:{h=BY(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;h=0;break a}}m=b+72|0;l=0;h=e+2|0;b:while(1){c:while(1){i=o-h|0;if((i|0)<=1){h=-1;break a}j=a[h+1>>0]|0;k=a[h>>0]|0;if(!(j<<24>>24))e=d[m+(k&255)>>0]|0;else e=sY(j,k)|0;switch(e|0){case 5:{n=34;break b}case 6:{n=35;break b}case 7:{n=37;break b}case 10:case 9:case 21:{n=55;break b}case 11:{n=69;break b}case 17:break b;case 23:break c;case 29:{e=k&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(j&255)>>0]<<3)<<2)>>2])){n=32;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{n=75;break b}}h=h+2|0}if(l|0){n=40;break}k=h+2|0;e=o-k|0;if((e|0)<=1){h=-1;break a}l=a[h+3>>0]|0;i=a[k>>0]|0;if(!(l<<24>>24))j=d[m+(i&255)>>0]|0;else j=sY(l,i)|0;switch(j|0){case 5:{n=49;break b}case 6:{n=50;break b}case 7:{n=52;break b}case 29:{e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140706+(l&255)>>0]<<3)<<2)>>2])){n=47;break b}break}case 24:case 22:break;default:{n=54;break b}}l=1;h=h+4|0}d:switch(n|0){case 32:{c[g>>2]=h;h=0;break a}case 34:{c[g>>2]=h;h=0;break a}case 35:{if((i|0)<3){h=-2;break a}c[g>>2]=h;h=0;break a}case 37:{if((i|0)<4){h=-2;break a}c[g>>2]=h;h=0;break a}case 40:{c[g>>2]=h;h=0;break a}case 47:{c[g>>2]=k;h=0;break a}case 49:{c[g>>2]=k;h=0;break a}case 50:{if((e|0)<3){h=-2;break a}c[g>>2]=k;h=0;break a}case 52:{if((e|0)<4){h=-2;break a}c[g>>2]=k;h=0;break a}case 54:{c[g>>2]=k;h=0;break a}case 55:{e:while(1){n=0;i=h+2|0;j=o-i|0;if((j|0)<=1){h=-1;break a}k=a[h+3>>0]|0;e=a[i>>0]|0;if(!(k<<24>>24))l=d[m+(e&255)>>0]|0;else l=sY(k,e)|0;switch(l|0){case 11:{h=i;n=69;break d}case 17:{h=i;break d}case 10:case 9:case 21:{h=i;n=55;break}case 29:{n=60;break e}case 24:case 22:break e;case 5:{n=63;break e}case 6:{n=64;break e}case 7:{n=66;break e}default:{n=68;break e}}}if((n|0)==60){o=e&255;if(!(1<<(o&31)&c[56836+((o>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=i;h=0;break a}}else if((n|0)==63){c[g>>2]=i;h=0;break a}else if((n|0)==64){if((j|0)<3){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==66){if((j|0)<4){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==68){c[g>>2]=i;h=0;break a}h=CY(b,h+4|0,f,g)|0;break a}case 75:{c[g>>2]=h;h=0;break a}}if((n|0)==69){c[g>>2]=h+2;h=2;break}i=h+2|0;if((o-i|0)>1){if((a[h+3>>0]|0)==0?(a[i>>0]|0)==62:0){c[g>>2]=h+4;h=4;break}c[g>>2]=i;h=0}else h=-1}else h=-1;while(0);return h|0}function yY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f;a:do if((j-e|0)>1){if((a[e+1>>0]|0)==0?(a[e>>0]|0)==45:0){i=b+72|0;h=e+2|0;b:while(1){e=j-h|0;if((e|0)<=1){f=-1;break a}f=a[h+1>>0]|0;b=a[h>>0]|0;if(!(f<<24>>24))f=d[i+(b&255)>>0]|0;else f=sY(f,b)|0;switch(f|0){case 8:case 1:case 0:{k=16;break b}case 5:{h=h+2|0;continue b}case 6:{if((e|0)<3){f=-2;break a}h=h+3|0;continue b}case 7:{if((e|0)<4){f=-2;break a}h=h+4|0;continue b}case 27:{f=h+2|0;if((j-f|0)<=1){f=-1;break a}if(a[h+3>>0]|0){h=f;continue b}if((a[f>>0]|0)==45)break b;else{h=f;continue b}}default:{h=h+2|0;continue b}}}if((k|0)==16){c[g>>2]=h;f=0;break}f=h+4|0;if((j-f|0)<=1){f=-1;break}if((a[h+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=h+6;f=13;break}c[g>>2]=f;f=0;break}c[g>>2]=e;f=0}else f=-1;while(0);return f|0}function zY(b,d,e){b=b|0;d=d|0;e=e|0;if((d-b|0)>11){d=0;while(1){if((d|0)>=6){d=8;break}if(a[b+1>>0]|0){d=0;break}if((a[b>>0]|0)!=(a[141218+d>>0]|0)){d=0;break}d=d+1|0;b=b+2|0}c[e>>2]=b}else d=-1;return d|0}function AY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q;o=f;j=o-e|0;a:do if((j|0)>1){f=a[e+1>>0]|0;if(!(f<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(f,i)|0}switch(h|0){case 29:{m=i&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(f&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}m=b+72|0;k=e;b:while(1){f=k+2|0;h=o-f|0;if((h|0)<=1){f=-1;break a}i=a[k+3>>0]|0;j=a[f>>0]|0;if(!(i<<24>>24))b=d[m+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 27:case 26:case 25:case 24:case 22:{k=f;continue b}case 5:{n=22;break b}case 6:{n=23;break b}case 7:{n=25;break b}case 10:case 9:case 21:{n=27;break b}case 15:{n=46;break b}case 29:break;default:break b}k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){n=21;break}else k=f}if((n|0)==21){c[g>>2]=f;f=0;break}else if((n|0)==22){c[g>>2]=f;f=0;break}else if((n|0)==23){if((h|0)<3){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==25){if((h|0)<4){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==27){if(!(DY(e,f,p)|0)){c[g>>2]=f;f=0;break}j=k+4|0;c:while(1){i=o-j|0;if((i|0)<=1){f=-1;break a}f=a[j+1>>0]|0;h=a[j>>0]|0;if(!(f<<24>>24))f=d[m+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 8:case 1:case 0:{n=40;break c}case 5:{j=j+2|0;continue c}case 6:{if((i|0)<3){f=-2;break a}j=j+3|0;continue c}case 7:{if((i|0)<4){f=-2;break a}j=j+4|0;continue c}case 15:{f=j+2|0;if((o-f|0)<=1){f=-1;break a}if(a[j+3>>0]|0){j=f;continue c}if((a[f>>0]|0)==62){n=44;break c}else{j=f;continue c}}default:{j=j+2|0;continue c}}}if((n|0)==40){c[g>>2]=j;f=0;break}else if((n|0)==44){c[g>>2]=j+4;f=c[p>>2]|0;break}}else if((n|0)==46){if(!(DY(e,f,p)|0)){c[g>>2]=f;f=0;break}f=k+4|0;if((o-f|0)<=1){f=-1;break}if((a[k+5>>0]|0)==0?(a[f>>0]|0)==62:0){c[g>>2]=k+6;f=c[p>>2]|0;break}}c[g>>2]=f;f=0}else f=-1;while(0);l=q;return f|0}function BY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){j=b+2|0;e=f-j|0;if((e|0)<=1){f=-1;break a}h=a[b+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))k=d[l+(i&255)>>0]|0;else k=sY(h,i)|0;switch(k|0){case 23:case 27:case 26:case 25:case 24:case 22:{b=j;continue b}case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 10:case 9:case 21:{h=27;break b}case 11:{h=34;break b}case 29:break;default:{h=35;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=21;break}else b=j}if((h|0)==21){c[g>>2]=j;f=0;break}else if((h|0)==22){c[g>>2]=j;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==27){c:while(1){k=j+2|0;if((f-k|0)<=1){f=-1;break a}h=a[j+3>>0]|0;i=a[k>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 21:{j=k;h=27;break}case 11:{h=32;break c}default:{h=33;break c}}}if((h|0)==32){c[g>>2]=j+4;f=5;break}else if((h|0)==33){c[g>>2]=k;f=0;break}}else if((h|0)==34){c[g>>2]=b+4;f=5;break}else if((h|0)==35){c[g>>2]=j;f=0;break}}else f=-1;while(0);return f|0}function CY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;c[q>>2]=e;r=f;o=b+72|0;h=0;a:while(1){b:while(1){m=r-e|0;if((m|0)<=1){e=-1;break a}i=a[e+1>>0]|0;j=a[e>>0]|0;if(!(i<<24>>24))k=d[o+(j&255)>>0]|0;else k=sY(i,j)|0;switch(k|0){case 5:{p=11;break a}case 6:{p=12;break a}case 7:{p=14;break a}case 23:{p=16;break b}case 10:case 9:case 21:{p=31;break b}case 14:{p=37;break b}case 29:{n=j&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){p=9;break a}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=89;break a}}n=e+2|0;c[q>>2]=n;e=n}c:do if((p|0)==16){p=0;if(h|0){p=17;break a}h=e+2|0;c[q>>2]=h;i=h;j=r-i|0;if((j|0)<=1){e=-1;break a}k=a[e+3>>0]|0;m=a[h>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=25;break a}case 6:{p=26;break a}case 7:{p=28;break a}case 24:case 22:{h=1;break c}case 29:break;default:{p=30;break a}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=24;break a}else h=1}else if((p|0)==31)while(1){p=0;i=e+2|0;c[q>>2]=i;j=i;if((r-j|0)<=1){e=-1;break a}e=a[e+3>>0]|0;h=a[i>>0]|0;if(!(e<<24>>24))e=d[o+(h&255)>>0]|0;else e=sY(e,h)|0;switch(e|0){case 14:{e=i;p=37;break c}case 9:case 10:case 21:{e=i;p=31;break}default:{p=36;break a}}}while(0);d:do if((p|0)==37){while(1){p=0;j=e+2|0;c[q>>2]=j;k=j;if((r-k|0)<=1){e=-1;break a}h=a[e+3>>0]|0;i=a[j>>0]|0;if(!(h<<24>>24))m=d[o+(i&255)>>0]|0;else m=sY(h,i)|0;if((m|1|0)==13)break;switch(m|0){case 9:case 10:case 21:{e=j;p=37;break}default:{p=43;break a}}}e=e+4|0;c[q>>2]=e;e:while(1){j=r-e|0;if((j|0)<=1){e=-1;break a}h=a[e+1>>0]|0;i=a[e>>0]|0;if(!(h<<24>>24))h=d[o+(i&255)>>0]|0;else h=sY(h,i)|0;if((h|0)==(m|0))break;switch(h|0){case 8:case 1:case 0:{p=56;break a}case 2:{p=61;break a}case 5:{n=e+2|0;c[q>>2]=n;e=n;continue e}case 6:{if((j|0)<3){e=-2;break a}n=e+3|0;c[q>>2]=n;e=n;continue e}case 7:{if((j|0)<4){e=-2;break a}n=e+4|0;c[q>>2]=n;e=n;continue e}case 3:{e=tY(b,e+2|0,f,q)|0;if((e|0)<1){p=59;break a}e=c[q>>2]|0;continue e}default:{n=e+2|0;c[q>>2]=n;e=n;continue e}}}i=e+2|0;c[q>>2]=i;k=i;if((r-k|0)<=1){e=-1;break a}h=a[e+3>>0]|0;j=a[i>>0]|0;if(!(h<<24>>24))h=d[o+(j&255)>>0]|0;else h=sY(h,j)|0;switch(h|0){case 11:{p=81;break a}case 17:{p=82;break a}case 10:case 9:case 21:{e=i;break}default:{p=68;break a}}f:while(1){i=e+2|0;c[q>>2]=i;h=i;j=r-h|0;if((j|0)<=1){e=-1;break a}k=a[e+3>>0]|0;m=a[i>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=76;break a}case 6:{p=77;break a}case 7:{p=79;break a}case 11:{p=81;break a}case 17:{p=82;break a}case 24:case 22:{h=0;break d}case 10:case 9:case 21:{e=i;break}case 29:break f;default:{p=87;break a}}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=75;break a}else h=0}while(0);e=e+4|0;c[q>>2]=e}switch(p|0){case 9:{c[g>>2]=e;e=0;break}case 11:{c[g>>2]=e;e=0;break}case 12:{if((m|0)<3)e=-2;else{c[g>>2]=e;e=0}break}case 14:{if((m|0)<4)e=-2;else{c[g>>2]=e;e=0}break}case 17:{c[g>>2]=e;e=0;break}case 24:{c[g>>2]=h;e=0;break}case 25:{c[g>>2]=h;e=0;break}case 26:{if((j|0)<3)e=-2;else{c[g>>2]=h;e=0}break}case 28:{if((j|0)<4)e=-2;else{c[g>>2]=h;e=0}break}case 30:{c[g>>2]=i;e=0;break}case 36:{c[g>>2]=j;e=0;break}case 43:{c[g>>2]=k;e=0;break}case 56:{c[g>>2]=e;e=0;break}case 59:{if(!e){c[g>>2]=c[q>>2];e=0}break}case 61:{c[g>>2]=e;e=0;break}case 68:{c[g>>2]=k;e=0;break}case 75:{c[g>>2]=i;e=0;break}case 76:{c[g>>2]=i;e=0;break}case 77:{if((j|0)<3)e=-2;else{c[g>>2]=i;e=0}break}case 79:{if((j|0)<4)e=-2;else{c[g>>2]=i;e=0}break}case 81:{c[g>>2]=e+4;e=1;break}case 82:{h=i+2|0;c[q>>2]=h;e=h;if((r-e|0)>1){if((a[i+3>>0]|0)==0?(a[h>>0]|0)==62:0){c[g>>2]=i+4;e=3;break}c[g>>2]=e;e=0}else e=-1;break}case 87:{c[g>>2]=h;e=0;break}case 89:{c[g>>2]=e;e=0;break}}l=s;return e|0}function DY(b,d,e){b=b|0;d=d|0;e=e|0;c[e>>2]=11;a:do if((d-b|0)==6?(a[b+1>>0]|0)==0:0){switch(a[b>>0]|0){case 120:{d=0;break}case 88:{d=1;break}default:{d=1;break a}}if(!(a[b+3>>0]|0)){switch(a[b+2>>0]|0){case 109:break;case 77:{d=1;break}default:{d=1;break a}}if(!(a[b+5>>0]|0)){switch(a[b+4>>0]|0){case 108:break;case 76:{d=0;break a}default:{d=1;break a}}if(!d){c[e>>2]=12;d=1}else d=0}else d=1}else d=1}else d=1;while(0);return d|0}function EY(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;k=e+72|0;a:while(1){b:while(1){j=g-f|0;if((j|0)<=1){f=-1;break a}e=a[f+1>>0]|0;i=a[f>>0]|0;if(!(e<<24>>24))e=d[k+(i&255)>>0]|0;else e=sY(e,i)|0;switch(e|0){case 8:case 1:case 0:{l=10;break a}case 6:{l=9;break b}case 7:{l=19;break b}case 5:{f=f+2|0;continue b}case 13:case 12:{i=f+2|0;if((e|0)==(b|0)){l=12;break a}else{f=i;continue b}}default:{f=f+2|0;continue b}}}if((l|0)==9){l=0;if((j|0)<3){f=-2;break}else{f=f+3|0;continue}}else if((l|0)==19){l=0;if((j|0)<4){f=-2;break}else{f=f+4|0;continue}}}c:do if((l|0)==10){c[h>>2]=f;f=0}else if((l|0)==12)if((g-i|0)>1){c[h>>2]=i;g=a[f+3>>0]|0;f=a[i>>0]|0;if(!(g<<24>>24))f=d[k+(f&255)>>0]|0;else f=sY(g,f)|0;switch(f|0){case 20:case 30:case 11:case 10:case 9:case 21:{f=27;break c}default:{}}f=0}else f=-27;while(0);return f|0}function FY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f;a:do if((k-e|0)>1){h=a[e+1>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e>>0]|0)>>0]|0;else h=sY(h,a[e>>0]|0)|0;switch(h|0){case 27:{h=yY(b,e+2|0,f,g)|0;break a}case 20:{c[g>>2]=e+2;h=33;break a}case 24:case 22:{j=b+72|0;b:while(1){i=e+2|0;f=k-i|0;if((f|0)<=1){h=-1;break a}h=a[e+3>>0]|0;b=a[i>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 22:{e=i;break}case 30:{l=15;break b}case 10:case 9:case 21:break b;default:{l=22;break b}}}if((l|0)==22){c[g>>2]=i;h=0;break a}c:do if((l|0)==15){if((f|0)<=3){h=-1;break a}b=a[e+5>>0]|0;h=a[e+4>>0]|0;if(!(b<<24>>24))h=d[j+(h&255)>>0]|0;else h=sY(b,h)|0;switch(h|0){case 30:case 10:case 9:case 21:break;default:break c}c[g>>2]=i;h=0;break a}while(0);c[g>>2]=i;h=16;break a}default:{c[g>>2]=e;h=0;break a}}}else h=-1;while(0);return h|0}function GY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f-e|0;a:do if((j|0)>1){k=a[e+1>>0]|0;if(!(k<<24>>24)){i=a[e>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}b=b+72|0;k=e;b:while(1){h=k;k=k+2|0;e=f-k|0;if((e|0)<=1){f=-20;break a}h=a[h+3>>0]|0;i=a[k>>0]|0;if(!(h<<24>>24))j=d[b+(i&255)>>0]|0;else j=sY(h,i)|0;switch(j|0){case 27:case 26:case 25:case 24:case 22:continue b;case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{h=27;break b}case 29:break;default:{h=28;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=21;break}}if((h|0)==21){c[g>>2]=k;f=0;break}else if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==27){c[g>>2]=k;f=20;break}else if((h|0)==28){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function HY(b,d,e){b=b|0;d=d|0;e=e|0;e=IY(e)|0;if((e|0)==-1)e=0;else{a[b+69>>0]=e;c[b>>2]=67;c[b+4>>2]=68;c[b+48>>2]=31;c[b+72>>2]=d;c[d>>2]=b;e=1}return e|0}function IY(a){a=a|0;var b=0;a:do if(!a)b=6;else{b=0;while(1){if((b|0)>=6){b=-1;break a}if(qZ(a,c[59964+(b<<2)>>2]|0)|0)break a;b=b+1|0}}while(0);return b|0}function JY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(58844,a,0,b,c,d)|0}function KY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(58844,a,1,b,c,d)|0}function LY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BX(58480,b,c,d);return}function MY(b,d,e,f,g,h){b=b|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;a:do if(f>>>0>>0){l=c[d+72>>2]|0;i=f+1|0;b:do if((i|0)==(g|0)){i=a[d+69>>0]|0;if(((i<<24>>24)+-3|0)>>>0<3){i=-1;break a}switch(a[f>>0]|0){case 60:case 0:{i=-1;break a}case -17:case -1:case -2:break;default:break b}if(!((e|0)==1&i<<24>>24==0)){i=-1;break a}}else{k=a[f>>0]|0;i=a[i>>0]|0;j=((k&255)<<8|i&255)&65535;c:do if(j<<16>>16<-2){if(j<<16>>16>=-257){switch(j<<16>>16){case -257:break;default:break c}if((e|0)==1&(a[d+69>>0]|0)==0)break b;c[h>>2]=f+2;c[l>>2]=c[b+16>>2];i=14;break a}switch(j<<16>>16){case -4165:break;default:break c}if((e|0)==1)switch(a[d+69>>0]|0){case 0:case 3:case 4:case 5:break b;default:{}}i=f+2|0;if((i|0)==(g|0)){i=-1;break a}if((a[i>>0]|0)!=-65)break b;c[h>>2]=f+3;c[l>>2]=c[b+8>>2];i=14;break a}else{if(j<<16>>16<15360){switch(j<<16>>16){case -2:break;default:break c}if((e|0)==1&(a[d+69>>0]|0)==0)break b;c[h>>2]=f+2;c[l>>2]=c[b+20>>2];i=14;break a}switch(j<<16>>16){case 15360:break;default:break c}i=a[d+69>>0]|0;if(i<<24>>24==4){if((e|0)==1)break b}else if((e|0)==1&i<<24>>24==3)break b;i=c[b+20>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0;break a}while(0);if(k<<24>>24){if((e|0)==1|i<<24>>24!=0)break;i=c[b+20>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0;break a}if((e|0)==1?(a[d+69>>0]|0)==5:0)break;i=c[b+16>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0;break a}while(0);i=c[b+(a[d+69>>0]<<2)>>2]|0;c[l>>2]=i;i=ob[c[i+(e<<2)>>2]&127](i,f,g,h)|0}else i=-4;while(0);return i|0}function NY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if(e>>>0>>0){i=e;m=f-i|0;k=(m&1|0)==0;m=m&-2;l=(m|0)==0;m=k|l?f:e+m|0;if(k|l^1){f=a[e>>0]|0;if(!(f<<24>>24)){h=a[e+1>>0]|0;j=h;h=d[b+72+(h&255)>>0]|0}else{h=a[e+1>>0]|0;j=h;h=sY(f,h)|0}do switch(h|0){case 12:{f=mZ(12,b,e+2|0,m,g)|0;break a}case 13:{f=mZ(13,b,e+2|0,m,g)|0;break a}case 2:{h=e+2|0;if((m-h|0)<=1){f=-1;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;switch(f|0){case 16:{f=nZ(b,e+4|0,m,g)|0;break a}case 15:{f=iZ(b,e+4|0,m,g)|0;break a}case 7:case 6:case 5:case 29:case 24:case 22:{c[g>>2]=e;f=29;break a}default:{c[g>>2]=h;f=0;break a}}}case 9:{if((e+2|0)==(m|0)){c[g>>2]=m;f=-15;break a}else i=7;break}case 10:case 21:{i=7;break}case 30:{f=cZ(b,e+2|0,m,g)|0;break a}case 35:{c[g>>2]=e+2;f=38;break a}case 20:{c[g>>2]=e+2;f=25;break a}case 4:{h=e+2|0;f=m-h|0;if((f|0)<=1){f=-26;break a}if((a[h>>0]|0)==0?(a[e+3>>0]|0)==93:0){if((f|0)<=3){f=-1;break a}if((a[e+4>>0]|0)==0?(a[e+5>>0]|0)==62:0){c[g>>2]=e+6;f=34;break a}}c[g>>2]=h;f=26;break a}case 31:{c[g>>2]=e+2;f=23;break a}case 32:{h=e+2|0;if((m-h|0)<=1){f=-24;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;switch(f|0){case 33:{c[g>>2]=e+4;f=36;break a}case 15:{c[g>>2]=e+4;f=35;break a}case 34:{c[g>>2]=e+4;f=37;break a}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{c[g>>2]=h;f=24;break a}default:{c[g>>2]=h;f=0;break a}}}case 36:{c[g>>2]=e+2;f=21;break a}case 11:{c[g>>2]=e+2;f=17;break a}case 19:{f=oZ(b,e+2|0,m,g)|0;break a}case 5:{if((m-i|0)<2){f=-2;break a}c[g>>2]=e;f=0;break a}case 6:{if((m-i|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((m-i|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 24:case 22:{f=18;i=61;break}case 23:case 27:case 26:case 25:{f=19;i=61;break}case 29:{i=f&255;h=j&255;f=h>>>5;h=1<<(h&31);if(!(h&c[56836+((f|d[140706+i>>0]<<3)<<2)>>2]))if(!(c[56836+((d[140962+i>>0]<<3|f)<<2)>>2]&h))i=64;else{f=19;i=61}else{f=18;i=61}break}default:i=64}while(0);if((i|0)==7){k=m;b=b+72|0;j=e;b:while(1){i=j;j=j+2|0;if((k-j|0)<=1){i=28;break}f=a[j>>0]|0;h=a[i+3>>0]|0;if(!(f<<24>>24))f=d[b+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 21:continue b;case 9:break;default:{i=27;break b}}if((i+4|0)==(m|0)){i=27;break}}if((i|0)==27){c[g>>2]=j;f=15;break}else if((i|0)==28){c[g>>2]=j;f=15;break}}else if((i|0)==61){l=b+72|0;h=e+2|0;c:while(1){e=f&255;d:while(1){k=m-h|0;if((k|0)<=1){i=104;break c}i=a[h>>0]|0;j=a[h+1>>0]|0;if(!(i<<24>>24))b=d[l+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 5:{i=73;break c}case 6:{i=74;break c}case 7:{i=76;break c}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{i=78;break c}case 34:{i=94;break c}case 33:{i=97;break c}case 15:{i=100;break c}case 29:{k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){i=71;break c}break}case 27:case 26:case 25:case 24:case 22:break;case 23:{k=h+2|0;switch(e&63){case 41:{f=19;h=k;continue c}case 18:break d;default:{h=k;continue d}}}default:{i=103;break c}}h=h+2|0}b=m-k|0;if((b|0)<=1){f=-1;break a}f=a[k>>0]|0;i=a[h+3>>0]|0;if(!(f<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(f,i)|0;switch(j|0){case 5:{i=89;break c}case 6:{i=90;break c}case 7:{i=92;break c}case 29:{e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(f&255)>>0]<<3)<<2)>>2])){i=87;break c}break}case 27:case 26:case 25:case 24:case 22:break;default:{f=19;h=k;continue c}}f=41;h=h+4|0}switch(i|0){case 71:{c[g>>2]=h;f=0;break a}case 73:{c[g>>2]=h;f=0;break a}case 74:{if((k|0)<3){f=-2;break a}c[g>>2]=h;f=0;break a}case 76:{if((k|0)<4){f=-2;break a}c[g>>2]=h;f=0;break a}case 78:{c[g>>2]=h;break a}case 87:{c[g>>2]=k;f=0;break a}case 89:{c[g>>2]=k;f=0;break a}case 90:{if((b|0)<3){f=-2;break a}c[g>>2]=k;f=0;break a}case 92:{if((b|0)<4){f=-2;break a}c[g>>2]=k;f=0;break a}case 94:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=32;break a}case 97:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=31;break a}case 100:if((f|0)==19){c[g>>2]=h;f=0;break a}else{c[g>>2]=h+2;f=30;break a}case 103:{c[g>>2]=h;f=0;break a}case 104:{f=0-f|0;break a}}}else if((i|0)==64){c[g>>2]=e;f=0;break}}else f=-1}else f=-4;while(0);return f|0}function OY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+1>>0]|0)>>0]|0;else f=sY(f,a[e+1>>0]|0)|0;do switch(f|0){case 2:{f=fZ(b,e+2|0,i,g)|0;break a}case 3:{f=bZ(b,e+2|0,i,g)|0;break a}case 9:{h=e+2|0;if((i-h|0)<=1){f=-3;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 4:{h=e+2|0;if((i-h|0)<=1){f=-5;break a}if((a[h>>0]|0)==0?(a[e+3>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-5;break a}if((a[f>>0]|0)==0?(a[e+5>>0]|0)==62:0){c[g>>2]=f;f=0;break a}else f=i}else f=i;break}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:{h=e+2|0;f=i}}while(0);j=b+72|0;b=h;b:while(1){e=f-b|0;if((e|0)<=1){h=52;break}h=a[b>>0]|0;i=a[b+1>>0]|0;if(!(h<<24>>24))h=d[j+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{h=50;break b}case 5:{b=b+2|0;continue b}case 6:{if((e|0)<3){h=38;break b}b=b+3|0;continue b}case 7:{if((e|0)<4){h=41;break b}b=b+4|0;continue b}case 4:{if((e|0)<=3){h=50;break b}h=b+2|0;if(a[h>>0]|0){b=h;continue b}if((a[b+3>>0]|0)!=93){b=h;continue b}if((e|0)<=5){h=50;break b}i=b+4|0;if(a[i>>0]|0){b=h;continue b}if((a[b+5>>0]|0)==62){h=49;break b}else{b=h;continue b}}default:{b=b+2|0;continue b}}}if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==41){c[g>>2]=b;f=6;break}else if((h|0)==49){c[g>>2]=i;f=0;break}else if((h|0)==50){c[g>>2]=b;f=6;break}else if((h|0)==52){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function PY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;a:do if(e>>>0>>0){h=e;i=f-h|0;k=(i&1|0)==0;i=i&-2;j=(i|0)==0;i=k|j?f:e+i|0;if(k|j^1){f=a[e>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+1>>0]|0)>>0]|0;else f=sY(f,a[e+1>>0]|0)|0;switch(f|0){case 4:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}if((a[h>>0]|0)==0?(a[e+3>>0]|0)==93:0){f=e+4|0;if((i-f|0)<=1){f=-1;break a}if((a[f>>0]|0)==0?(a[e+5>>0]|0)==62:0){c[g>>2]=e+6;f=40;break a}}break}case 9:{h=e+2|0;if((i-h|0)<=1){f=-1;break a}f=a[h>>0]|0;if(!(f<<24>>24))f=d[b+72+(d[e+3>>0]|0)>>0]|0;else f=sY(f,a[e+3>>0]|0)|0;c[g>>2]=(f|0)==10?e+4|0:h;f=7;break a}case 10:{c[g>>2]=e+2;f=7;break a}case 5:{f=i;if((f-h|0)<2){f=-2;break a}h=e+2|0;i=f;break}case 6:{f=i;if((f-h|0)<3){f=-2;break a}h=e+3|0;i=f;break}case 7:{f=i;if((f-h|0)<4){f=-2;break a}h=e+4|0;i=f;break}case 8:case 1:case 0:{c[g>>2]=e;f=0;break a}default:h=e+2|0}j=b+72|0;b=h;b:while(1){e=i-b|0;if((e|0)<=1){h=40;break}f=a[b>>0]|0;h=a[b+1>>0]|0;if(!(f<<24>>24))f=d[j+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 10:case 9:case 8:case 1:case 0:case 4:{h=38;break b}case 6:{if((e|0)<3){h=35;break b}else f=3;break}case 7:{if((e|0)<4){h=37;break b}else f=4;break}default:f=2}b=b+f|0}if((h|0)==35){c[g>>2]=b;f=6;break}else if((h|0)==37){c[g>>2]=b;f=6;break}else if((h|0)==38){c[g>>2]=b;f=6;break}else if((h|0)==40){c[g>>2]=b;f=6;break}}else f=-1}else f=-4;while(0);return f|0}function QY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f-e|0;k=(k&1|0)==0?f:e+(k&-2)|0;j=b+72|0;i=0;f=e;a:while(1){h=k-f|0;if((h|0)<=1){f=-1;break}b=a[f>>0]|0;e=a[f+1>>0]|0;if(!(b<<24>>24))b=d[j+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 8:case 1:case 0:{l=12;break a}case 5:{h=i;f=f+2|0;i=h;continue a}case 6:{if((h|0)<3){f=-2;break a}h=i;f=f+3|0;i=h;continue a}case 7:{if((h|0)<4){f=-2;break a}h=i;f=f+4|0;i=h;continue a}case 2:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}if((a[f+3>>0]|0)!=33){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}h=(a[f+5>>0]|0)==91;i=i+(h&1)|0;f=h?f+6|0:b;continue a}case 4:{b=f+2|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}if((a[f+3>>0]|0)!=93){h=i;f=b;i=h;continue a}b=f+4|0;if((k-b|0)<=1){f=-1;break a}if(a[b>>0]|0){h=i;f=b;i=h;continue a}if((a[f+5>>0]|0)!=62){h=i;f=b;i=h;continue a}f=f+6|0;if(!i){l=26;break a}i=i+-1|0;continue a}default:{h=i;f=f+2|0;i=h;continue a}}}if((l|0)==12){c[g>>2]=f;f=0}else if((l|0)==26){c[g>>2]=f;f=42}return f|0}function RY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=30;break}h=a[j>>0]|0;i=a[j+1>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 2:{i=14;break a}case 10:{i=15;break a}case 9:{i=18;break a}case 21:{i=25;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=bZ(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14){c[g>>2]=j;h=0;break}else if((i|0)==15)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==18){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[j>>0]|0;i=a[e+3>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==25)if((j|0)==(e|0)){c[g>>2]=e+2;h=39;break}else{c[g>>2]=j;h=6;break}else if((i|0)==30){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function SY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;do if(e>>>0>>0){k=f;if((k-e|0)>1){l=b+72|0;j=e;a:while(1){if((k-j|0)<=1){i=29;break}h=a[j>>0]|0;i=a[j+1>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 3:{i=11;break a}case 30:{i=14;break a}case 10:{i=17;break a}case 9:{i=20;break a}case 5:{h=2;break}case 6:{h=3;break}case 7:{h=4;break}default:h=2}j=j+h|0}if((i|0)==11)if((j|0)==(e|0)){h=bZ(b,e+2|0,f,g)|0;break}else{c[g>>2]=j;h=6;break}else if((i|0)==14)if((j|0)==(e|0)){h=cZ(b,e+2|0,f,g)|0;h=(h|0)==22?0:h;break}else{c[g>>2]=j;h=6;break}else if((i|0)==17)if((j|0)==(e|0)){c[g>>2]=e+2;h=7;break}else{c[g>>2]=j;h=6;break}else if((i|0)==20){if((j|0)!=(e|0)){c[g>>2]=j;h=6;break}j=e+2|0;if((k-j|0)<=1){h=-3;break}h=a[j>>0]|0;i=a[e+3>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;c[g>>2]=(h|0)==10?e+4|0:j;h=7;break}else if((i|0)==29){c[g>>2]=j;h=6;break}}else h=-1}else h=-4;while(0);return h|0}function TY(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=d;b=c;while(1){c=a[e>>0]|0;if(!(c<<24>>24)){g=7;break}if((f-b|0)<2){b=0;break}if(a[b>>0]|0){b=0;break}if((a[b+1>>0]|0)!=c<<24>>24){b=0;break}e=e+1|0;b=b+2|0}if((g|0)==7)b=(b|0)==(d|0)&1;return b|0}function UY(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=b+72|0;f=c;a:while(1){b=a[f>>0]|0;e=a[f+1>>0]|0;if(!(b<<24>>24))b=d[g+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 5:{b=2;break}case 6:{b=3;break}case 7:{b=4;break}case 27:case 26:case 25:case 24:case 23:case 22:case 29:{b=2;break}default:break a}f=f+b|0}return f-c|0}function VY(b,c){b=b|0;c=c|0;var e=0,f=0;f=b+72|0;a:while(1){b=a[c>>0]|0;e=a[c+1>>0]|0;if(!(b<<24>>24))b=d[f+(e&255)>>0]|0;else b=sY(b,e)|0;switch(b|0){case 21:case 9:case 10:break;default:break a}c=c+2|0}return c|0}function WY(b,e,f,g){b=b|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;o=b+72|0;m=0;n=0;b=1;a:while(1){l=e+2|0;h=a[l>>0]|0;j=h<<24>>24==0;i=e+3|0;k=a[i>>0]|0;if(j)h=d[o+(k&255)>>0]|0;else h=sY(h,k)|0;do switch(h|0){case 5:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 6:{if(b|0){j=b;k=n;l=m;e=i;b=j;n=k;m=l;continue a}if((n|0)>=(f|0)){k=n;l=m;b=1;e=i;n=k;m=l;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;k=n;l=m;b=1;e=i;n=k;m=l;continue a}case 7:{if(!b)if((n|0)<(f|0)){c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;b=1}else b=1;k=n;l=m;e=e+4|0;n=k;m=l;continue a}case 24:case 22:case 29:{if(b|0){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}if((n|0)>=(f|0)){j=n;k=m;b=1;e=l;n=j;m=k;continue a}c[g+(n<<4)>>2]=l;a[g+(n<<4)+12>>0]=1;j=n;k=m;b=1;e=l;n=j;m=k;continue a}case 12:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=12;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=12;b=2;e=l;n=k;continue a}if((m|0)!=12){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=12;n=n+1|0;b=0;e=l;continue a}case 13:{if((b|0)!=2){if((n|0)>=(f|0)){k=n;m=13;b=2;e=l;n=k;continue a}c[g+(n<<4)+4>>2]=e+4;k=n;m=13;b=2;e=l;n=k;continue a}if((m|0)!=13){j=n;k=m;b=2;e=l;n=j;m=k;continue a}if((n|0)<(f|0))c[g+(n<<4)+8>>2]=l;m=13;n=n+1|0;b=0;e=l;continue a}case 3:{if((n|0)>=(f|0)){i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}case 21:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}i=g+(n<<4)+12|0;if(!(a[i>>0]|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}do if(j&(l|0)!=(c[g+(n<<4)+4>>2]|0)&k<<24>>24==32){h=a[e+4>>0]|0;b=a[e+5>>0]|0;if(!(h<<24>>24)){if(b<<24>>24==32)break;b=d[o+(b&255)>>0]|0}else b=sY(h,b)|0;if((b|0)!=(m|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}}while(0);a[i>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 10:case 9:{switch(b|0){case 1:{j=n;k=m;b=0;e=l;n=j;m=k;continue a}case 2:break;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}if((n|0)>=(f|0)){j=n;k=m;b=2;e=l;n=j;m=k;continue a}a[g+(n<<4)+12>>0]=0;j=n;k=m;b=2;e=l;n=j;m=k;continue a}case 17:case 11:if((b|0)==2){j=n;k=m;b=2;e=l;n=j;m=k;continue a}else break a;default:{i=b;j=n;k=m;e=l;b=i;n=j;m=k;continue a}}while(0)}return n|0}function XY(b,c){b=b|0;c=c|0;var d=0,e=0;b=c+4|0;a:do if(!(a[b>>0]|0))if((a[c+5>>0]|0)==120){c=c+6|0;b=0;while(1){b:while(1){if(!(a[c>>0]|0)){d=a[c+1>>0]|0;if(d<<24>>24==59){e=18;break a}d=d<<24>>24;switch(d|0){case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{e=8;break b}case 70:case 69:case 68:case 67:case 66:case 65:{e=9;break b}case 102:case 101:case 100:case 99:case 98:case 97:{e=10;break b}default:{}}}c=c+2|0}if((e|0)==8)b=d+-48|b<<4;else if((e|0)==9)b=(b<<4)+-55+d|0;else if((e|0)==10)b=(b<<4)+-87+d|0;if((b|0)<1114112)c=c+2|0;else{b=-1;e=19;break}}}else{c=b;b=0;e=13}else{d=b;b=0;c=-1;e=16}while(0);while(1)if((e|0)==13){if(a[c>>0]|0){d=c;c=-1;e=16;continue}if((a[c+1>>0]|0)==59){e=18;continue}d=c;c=a[c+1>>0]|0;e=16;continue}else if((e|0)==16){b=(b*10|0)+-48+c|0;if((b|0)>=1114112){b=-1;e=19;continue}c=d+2|0;e=13;continue}else if((e|0)==18){b=jX(b)|0;e=19;continue}else if((e|0)==19)return b|0;return 0}function YY(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do switch((d-c|0)/2|0|0){case 2:{if((a[c+2>>0]|0)==0?(a[c+3>>0]|0)==116:0){if(!(a[c>>0]|0))b=a[c+1>>0]|0;else b=-1;b=(b|0)==108?60:(b|0)==103?62:0}else e=27;break}case 3:{if((((((a[c>>0]|0)==0?(a[c+1>>0]|0)==97:0)?(a[c+2>>0]|0)==0:0)?(a[c+3>>0]|0)==109:0)?(a[c+4>>0]|0)==0:0)?(a[c+5>>0]|0)==112:0)b=38;else e=27;break}case 4:{if(!(a[c>>0]|0))switch(a[c+1>>0]|0){case 113:{if(a[c+2>>0]|0){e=27;break a}if((a[c+3>>0]|0)!=117){e=27;break a}if(a[c+4>>0]|0){e=27;break a}if((a[c+5>>0]|0)!=111){e=27;break a}if(a[c+6>>0]|0){e=27;break a}if((a[c+7>>0]|0)==116){b=34;break a}else{e=27;break a}}case 97:{if(a[c+2>>0]|0){e=27;break a}if((a[c+3>>0]|0)!=112){e=27;break a}if(a[c+4>>0]|0){e=27;break a}if((a[c+5>>0]|0)!=111){e=27;break a}if(a[c+6>>0]|0){e=27;break a}if((a[c+7>>0]|0)==115){b=39;break a}else{e=27;break a}}default:{e=27;break a}}else e=27;break}default:e=27}while(0);if((e|0)==27)b=0;return b|0}function ZY(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=b+72|0;k=g+4|0;while(1){if((f-e|0)<=1)break;b=a[e>>0]|0;h=a[e+1>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;switch(b|0){case 5:{e=e+2|0;break}case 6:{e=e+3|0;break}case 7:{e=e+4|0;break}case 10:{c[k>>2]=-1;c[g>>2]=(c[g>>2]|0)+1;e=e+2|0;break}case 9:{c[g>>2]=(c[g>>2]|0)+1;i=e+2|0;if((f-i|0)>1){b=a[i>>0]|0;h=a[e+3>>0]|0;if(!(b<<24>>24))b=d[j+(h&255)>>0]|0;else b=sY(b,h)|0;e=(b|0)==10?e+4|0:i}else e=i;c[k>>2]=-1;break}default:e=e+2|0}c[k>>2]=(c[k>>2]|0)+1}return}function _Y(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f+-2|0;j=b+72|0;a:while(1){h=e+2|0;if((k-h|0)<=1){f=1;break}f=a[h>>0]|0;i=f<<24>>24==0;b=a[e+3>>0]|0;if(i)f=d[j+(b&255)>>0]|0;else f=sY(f,b)|0;switch(f|0){case 23:case 19:case 30:case 33:case 16:case 18:case 10:case 9:case 15:case 14:case 17:case 35:case 34:case 32:case 31:case 13:case 27:case 24:case 25:{e=h;continue a}case 21:if(i&b<<24>>24==9){l=12;break a}else{e=h;continue a}case 22:case 26:{if(!i){l=12;break a}if(b<<24>>24>=0){e=h;continue a}break}default:if(!i){l=12;break a}}switch(b<<24>>24|0){case 64:case 36:{e=h;break}default:{l=12;break a}}}if((l|0)==12){c[g>>2]=h;f=0}return f|0}function $Y(b,e,f,g,h){b=b|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;j=c[e>>2]|0;k=j+(f-j&-2)|0;l=k;m=h;a:while(1){if(j>>>0>=k>>>0){b=0;break}i=a[j+1>>0]|0;b=a[j>>0]|0;f=b&255;switch(b<<24>>24){case 0:{if(i<<24>>24>-1){b=c[g>>2]|0;if((b|0)==(h|0)){b=2;break a}c[g>>2]=b+1;a[b>>0]=i;b=j}else n=7;break}case 7:case 6:case 5:case 4:case 3:case 2:case 1:{n=7;break}case -37:case -38:case -39:case -40:{b=c[g>>2]|0;if((m-b|0)<4){b=2;break a}if((l-j|0)<4){b=1;break a}o=i&255;i=(f<<2&12|o>>>6)+1|0;c[g>>2]=b+1;a[b>>0]=i>>>2|240;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>2&15|i<<4&48|128;b=j+2|0;i=d[j+3>>0]|0;f=(o<<4&48|i>>>6|a[b>>0]<<2&12|128)&255;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=f;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=i&63|128;break}default:{b=c[g>>2]|0;if((m-b|0)<3){b=2;break a}c[g>>2]=b+1;a[b>>0]=f>>>4|224;o=i&255;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2&60|128;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}}if((n|0)==7){n=0;b=c[g>>2]|0;if((m-b|0)<2){b=2;break}o=i&255;c[g>>2]=b+1;a[b>>0]=o>>>6|f<<2|192;b=c[g>>2]|0;c[g>>2]=b+1;a[b>>0]=o&63|128;b=j}j=b+2|0}c[e>>2]=j;return b|0}function aZ(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;j=c[f>>2]|0;l=g-j&-2;e=j+l|0;if((l|0)>(i-(c[h>>2]|0)|0)){k=e+-2|0;g=(a[k>>0]&-8)<<24>>24==-40;l=g&1;e=g?k:e}else l=0;g=j;while(1){j=g>>>0>>0;k=c[h>>2]|0;if(!(j&k>>>0>>0))break;j=((d[g>>0]|0)<<8|(d[g+1>>0]|0))&65535;c[h>>2]=k+2;b[k>>1]=j;k=(c[f>>2]|0)+2|0;c[f>>2]=k;g=k}return ((k|0)!=(i|0)|j^1?l:2)|0}function bZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=f;j=l-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;b=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;b=0;break a}case 6:{if((j|0)<3){b=-2;break a}c[g>>2]=e;b=0;break a}case 7:{if((j|0)<4){b=-2;break a}c[g>>2]=e;b=0;break a}case 19:{b=dZ(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;b=0;break a}}k=b+72|0;j=e;b:while(1){i=j+2|0;e=l-i|0;if((e|0)<=1){b=-1;break a}b=a[i>>0]|0;f=a[j+3>>0]|0;if(!(b<<24>>24))h=d[k+(f&255)>>0]|0;else h=sY(b,f)|0;switch(h|0){case 27:case 26:case 25:case 24:case 22:{j=i;continue b}case 5:{f=23;break b}case 6:{f=24;break b}case 7:{f=26;break b}case 18:{f=28;break b}case 29:break;default:{f=29;break b}}e=f&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(b&255)>>0]|0)<<3)<<2)>>2])){f=22;break}else j=i}if((f|0)==22){c[g>>2]=i;b=0;break}else if((f|0)==23){c[g>>2]=i;b=0;break}else if((f|0)==24){if((e|0)<3){b=-2;break}c[g>>2]=i;b=0;break}else if((f|0)==26){if((e|0)<4){b=-2;break}c[g>>2]=i;b=0;break}else if((f|0)==28){c[g>>2]=j+4;b=9;break}else if((f|0)==29){c[g>>2]=i;b=0;break}}else b=-1;while(0);return b|0}function cZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}case 30:case 9:case 10:case 21:{c[g>>2]=e;f=22;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){k=b+2|0;e=f-k|0;if((e|0)<=1){f=-1;break a}h=a[k>>0]|0;i=a[b+3>>0]|0;if(!(h<<24>>24))j=d[l+(i&255)>>0]|0;else j=sY(h,i)|0;switch(j|0){case 27:case 26:case 25:case 24:case 22:{b=k;continue b}case 5:{h=23;break b}case 6:{h=24;break b}case 7:{h=26;break b}case 18:{h=28;break b}case 29:break;default:{h=29;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=22;break}else b=k}if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){c[g>>2]=k;f=0;break}else if((h|0)==24){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==26){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==28){c[g>>2]=b+4;f=28;break}else if((h|0)==29){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function dZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=f;a:do if((k-e|0)>1){i=a[e>>0]|0;h=a[e+1>>0]|0;do if(!(i<<24>>24))if(h<<24>>24==120){h=eZ(b,e+2|0,f,g)|0;break a}else{h=d[b+72+(h&255)>>0]|0;break}else h=sY(i,h)|0;while(0);if((h|0)!=25){c[g>>2]=e;h=0;break}j=b+72|0;b=e;b:while(1){i=b+2|0;if((k-i|0)<=1){h=-1;break a}h=a[i>>0]|0;f=a[b+3>>0]|0;if(!(h<<24>>24))h=d[j+(f&255)>>0]|0;else h=sY(h,f)|0;switch(h|0){case 25:{b=i;break}case 18:{f=15;break b}default:{f=16;break b}}}if((f|0)==15){c[g>>2]=b+4;h=10;break}else if((f|0)==16){c[g>>2]=i;h=0;break}}else h=-1;while(0);return h|0}function eZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a:do if((f-e|0)>1){h=a[e>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e+1>>0]|0)>>0]|0;else h=sY(h,a[e+1>>0]|0)|0;if((h&-2|0)!=24){c[g>>2]=e;f=0;break}j=b+72|0;b:while(1){i=e+2|0;if((f-i|0)<=1){f=-1;break a}h=a[i>>0]|0;b=a[e+3>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 25:{e=i;break}case 18:{h=13;break b}default:{h=14;break b}}}if((h|0)==13){c[g>>2]=e+4;f=10;break}else if((h|0)==14){c[g>>2]=i;f=0;break}}else f=-1;while(0);return f|0}function fZ(b,e,f,g){b=b|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;o=f;j=o-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{m=i&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;h=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;h=0;break a}case 6:{if((j|0)<3){h=-2;break a}c[g>>2]=e;h=0;break a}case 7:{if((j|0)<4){h=-2;break a}c[g>>2]=e;h=0;break a}case 16:{i=e+2|0;if((o-i|0)<=1){h=-1;break a}h=a[i>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e+3>>0]|0)>>0]|0;else h=sY(h,a[e+3>>0]|0)|0;switch(h|0){case 27:{h=gZ(b,e+4|0,f,g)|0;break a}case 20:{h=hZ(e+4|0,f,g)|0;break a}default:{c[g>>2]=i;h=0;break a}}}case 15:{h=iZ(b,e+2|0,f,g)|0;break a}case 17:{h=jZ(b,e+2|0,f,g)|0;break a}default:{c[g>>2]=e;h=0;break a}}m=b+72|0;l=0;h=e+2|0;b:while(1){c:while(1){i=o-h|0;if((i|0)<=1){h=-1;break a}j=a[h>>0]|0;k=a[h+1>>0]|0;if(!(j<<24>>24))e=d[m+(k&255)>>0]|0;else e=sY(j,k)|0;switch(e|0){case 5:{n=34;break b}case 6:{n=35;break b}case 7:{n=37;break b}case 10:case 9:case 21:{n=55;break b}case 11:{n=69;break b}case 17:break b;case 23:break c;case 29:{e=k&255;if(!(1<<(e&31)&c[56836+((e>>>5|d[140962+(j&255)>>0]<<3)<<2)>>2])){n=32;break b}break}case 27:case 26:case 25:case 24:case 22:break;default:{n=75;break b}}h=h+2|0}if(l|0){n=40;break}e=h+2|0;l=o-e|0;if((l|0)<=1){h=-1;break a}i=a[e>>0]|0;j=a[h+3>>0]|0;if(!(i<<24>>24))k=d[m+(j&255)>>0]|0;else k=sY(i,j)|0;switch(k|0){case 5:{n=49;break b}case 6:{n=50;break b}case 7:{n=52;break b}case 29:{l=j&255;if(!(1<<(l&31)&c[56836+((l>>>5|d[140706+(i&255)>>0]<<3)<<2)>>2])){n=47;break b}break}case 24:case 22:break;default:{n=54;break b}}l=1;h=h+4|0}d:switch(n|0){case 32:{c[g>>2]=h;h=0;break a}case 34:{c[g>>2]=h;h=0;break a}case 35:{if((i|0)<3){h=-2;break a}c[g>>2]=h;h=0;break a}case 37:{if((i|0)<4){h=-2;break a}c[g>>2]=h;h=0;break a}case 40:{c[g>>2]=h;h=0;break a}case 47:{c[g>>2]=e;h=0;break a}case 49:{c[g>>2]=e;h=0;break a}case 50:{if((l|0)<3){h=-2;break a}c[g>>2]=e;h=0;break a}case 52:{if((l|0)<4){h=-2;break a}c[g>>2]=e;h=0;break a}case 54:{c[g>>2]=e;h=0;break a}case 55:{e:while(1){n=0;i=h+2|0;j=o-i|0;if((j|0)<=1){h=-1;break a}k=a[i>>0]|0;e=a[h+3>>0]|0;if(!(k<<24>>24))l=d[m+(e&255)>>0]|0;else l=sY(k,e)|0;switch(l|0){case 11:{h=i;n=69;break d}case 17:{h=i;break d}case 10:case 9:case 21:{h=i;n=55;break}case 29:{n=60;break e}case 24:case 22:break e;case 5:{n=63;break e}case 6:{n=64;break e}case 7:{n=66;break e}default:{n=68;break e}}}if((n|0)==60){o=e&255;if(!(1<<(o&31)&c[56836+((o>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){c[g>>2]=i;h=0;break a}}else if((n|0)==63){c[g>>2]=i;h=0;break a}else if((n|0)==64){if((j|0)<3){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==66){if((j|0)<4){h=-2;break a}c[g>>2]=i;h=0;break a}else if((n|0)==68){c[g>>2]=i;h=0;break a}h=kZ(b,h+4|0,f,g)|0;break a}case 75:{c[g>>2]=h;h=0;break a}}if((n|0)==69){c[g>>2]=h+2;h=2;break}i=h+2|0;if((o-i|0)>1){if((a[i>>0]|0)==0?(a[h+3>>0]|0)==62:0){c[g>>2]=h+4;h=4;break}c[g>>2]=i;h=0}else h=-1}else h=-1;while(0);return h|0}function gZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f;a:do if((j-e|0)>1){if((a[e>>0]|0)==0?(a[e+1>>0]|0)==45:0){i=b+72|0;h=e+2|0;b:while(1){e=j-h|0;if((e|0)<=1){f=-1;break a}f=a[h>>0]|0;b=a[h+1>>0]|0;if(!(f<<24>>24))f=d[i+(b&255)>>0]|0;else f=sY(f,b)|0;switch(f|0){case 8:case 1:case 0:{k=16;break b}case 5:{h=h+2|0;continue b}case 6:{if((e|0)<3){f=-2;break a}h=h+3|0;continue b}case 7:{if((e|0)<4){f=-2;break a}h=h+4|0;continue b}case 27:{f=h+2|0;if((j-f|0)<=1){f=-1;break a}if(a[f>>0]|0){h=f;continue b}if((a[h+3>>0]|0)==45)break b;else{h=f;continue b}}default:{h=h+2|0;continue b}}}if((k|0)==16){c[g>>2]=h;f=0;break}f=h+4|0;if((j-f|0)<=1){f=-1;break}if((a[f>>0]|0)==0?(a[h+5>>0]|0)==62:0){c[g>>2]=h+6;f=13;break}c[g>>2]=f;f=0;break}c[g>>2]=e;f=0}else f=-1;while(0);return f|0}function hZ(b,d,e){b=b|0;d=d|0;e=e|0;if((d-b|0)>11){d=0;while(1){if((d|0)>=6){d=8;break}if(a[b>>0]|0){d=0;break}if((a[b+1>>0]|0)!=(a[141218+d>>0]|0)){d=0;break}d=d+1|0;b=b+2|0}c[e>>2]=b}else d=-1;return d|0}function iZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q;o=f;i=o-e|0;a:do if((i|0)>1){j=a[e>>0]|0;if(!(j<<24>>24)){h=a[e+1>>0]|0;f=d[b+72+(h&255)>>0]|0}else{h=a[e+1>>0]|0;f=sY(j,h)|0}switch(f|0){case 29:{m=h&255;if(!(1<<(m&31)&c[56836+((m>>>5|d[140706+(j&255)>>0]<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((i|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((i|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}m=b+72|0;k=e;b:while(1){f=k+2|0;h=o-f|0;if((h|0)<=1){f=-1;break a}i=a[f>>0]|0;j=a[k+3>>0]|0;if(!(i<<24>>24))b=d[m+(j&255)>>0]|0;else b=sY(i,j)|0;switch(b|0){case 27:case 26:case 25:case 24:case 22:{k=f;continue b}case 5:{n=22;break b}case 6:{n=23;break b}case 7:{n=25;break b}case 10:case 9:case 21:{n=27;break b}case 15:{n=46;break b}case 29:break;default:break b}k=j&255;if(!(1<<(k&31)&c[56836+((k>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){n=21;break}else k=f}if((n|0)==21){c[g>>2]=f;f=0;break}else if((n|0)==22){c[g>>2]=f;f=0;break}else if((n|0)==23){if((h|0)<3){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==25){if((h|0)<4){f=-2;break}c[g>>2]=f;f=0;break}else if((n|0)==27){if(!(lZ(e,f,p)|0)){c[g>>2]=f;f=0;break}j=k+4|0;c:while(1){i=o-j|0;if((i|0)<=1){f=-1;break a}f=a[j>>0]|0;h=a[j+1>>0]|0;if(!(f<<24>>24))f=d[m+(h&255)>>0]|0;else f=sY(f,h)|0;switch(f|0){case 8:case 1:case 0:{n=40;break c}case 5:{j=j+2|0;continue c}case 6:{if((i|0)<3){f=-2;break a}j=j+3|0;continue c}case 7:{if((i|0)<4){f=-2;break a}j=j+4|0;continue c}case 15:{f=j+2|0;if((o-f|0)<=1){f=-1;break a}if(a[f>>0]|0){j=f;continue c}if((a[j+3>>0]|0)==62){n=44;break c}else{j=f;continue c}}default:{j=j+2|0;continue c}}}if((n|0)==40){c[g>>2]=j;f=0;break}else if((n|0)==44){c[g>>2]=j+4;f=c[p>>2]|0;break}}else if((n|0)==46){if(!(lZ(e,f,p)|0)){c[g>>2]=f;f=0;break}f=k+4|0;if((o-f|0)<=1){f=-1;break}if((a[f>>0]|0)==0?(a[k+5>>0]|0)==62:0){c[g>>2]=k+6;f=c[p>>2]|0;break}}c[g>>2]=f;f=0}else f=-1;while(0);l=q;return f|0}function jZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;j=f-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{l=i&255;if(!(1<<(l&31)&c[56836+((l>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}l=b+72|0;b=e;b:while(1){j=b+2|0;e=f-j|0;if((e|0)<=1){f=-1;break a}h=a[j>>0]|0;i=a[b+3>>0]|0;if(!(h<<24>>24))k=d[l+(i&255)>>0]|0;else k=sY(h,i)|0;switch(k|0){case 23:case 27:case 26:case 25:case 24:case 22:{b=j;continue b}case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 10:case 9:case 21:{h=27;break b}case 11:{h=34;break b}case 29:break;default:{h=35;break b}}e=i&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(h&255)>>0]|0)<<3)<<2)>>2])){h=21;break}else b=j}if((h|0)==21){c[g>>2]=j;f=0;break}else if((h|0)==22){c[g>>2]=j;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=j;f=0;break}else if((h|0)==27){c:while(1){k=j+2|0;if((f-k|0)<=1){f=-1;break a}h=a[k>>0]|0;i=a[j+3>>0]|0;if(!(h<<24>>24))h=d[l+(i&255)>>0]|0;else h=sY(h,i)|0;switch(h|0){case 10:case 9:case 21:{j=k;h=27;break}case 11:{h=32;break c}default:{h=33;break c}}}if((h|0)==32){c[g>>2]=j+4;f=5;break}else if((h|0)==33){c[g>>2]=k;f=0;break}}else if((h|0)==34){c[g>>2]=b+4;f=5;break}else if((h|0)==35){c[g>>2]=j;f=0;break}}else f=-1;while(0);return f|0}function kZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;c[q>>2]=e;r=f;o=b+72|0;h=0;a:while(1){b:while(1){m=r-e|0;if((m|0)<=1){e=-1;break a}i=a[e>>0]|0;j=a[e+1>>0]|0;if(!(i<<24>>24))k=d[o+(j&255)>>0]|0;else k=sY(i,j)|0;switch(k|0){case 5:{p=11;break a}case 6:{p=12;break a}case 7:{p=14;break a}case 23:{p=16;break b}case 10:case 9:case 21:{p=31;break b}case 14:{p=37;break b}case 29:{n=j&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140962+(i&255)>>0]<<3)<<2)>>2])){p=9;break a}break}case 27:case 26:case 25:case 24:case 22:break;default:{p=89;break a}}n=e+2|0;c[q>>2]=n;e=n}c:do if((p|0)==16){p=0;if(h|0){p=17;break a}h=e+2|0;c[q>>2]=h;i=h;j=r-i|0;if((j|0)<=1){e=-1;break a}k=a[h>>0]|0;m=a[e+3>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=25;break a}case 6:{p=26;break a}case 7:{p=28;break a}case 24:case 22:{h=1;break c}case 29:break;default:{p=30;break a}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=24;break a}else h=1}else if((p|0)==31)while(1){p=0;i=e+2|0;c[q>>2]=i;j=i;if((r-j|0)<=1){e=-1;break a}h=a[i>>0]|0;e=a[e+3>>0]|0;if(!(h<<24>>24))e=d[o+(e&255)>>0]|0;else e=sY(h,e)|0;switch(e|0){case 14:{e=i;p=37;break c}case 9:case 10:case 21:{e=i;p=31;break}default:{p=36;break a}}}while(0);d:do if((p|0)==37){while(1){p=0;j=e+2|0;c[q>>2]=j;k=j;if((r-k|0)<=1){e=-1;break a}h=a[j>>0]|0;i=a[e+3>>0]|0;if(!(h<<24>>24))m=d[o+(i&255)>>0]|0;else m=sY(h,i)|0;if((m|1|0)==13)break;switch(m|0){case 9:case 10:case 21:{e=j;p=37;break}default:{p=43;break a}}}e=e+4|0;c[q>>2]=e;e:while(1){j=r-e|0;if((j|0)<=1){e=-1;break a}h=a[e>>0]|0;i=a[e+1>>0]|0;if(!(h<<24>>24))h=d[o+(i&255)>>0]|0;else h=sY(h,i)|0;if((h|0)==(m|0))break;switch(h|0){case 8:case 1:case 0:{p=56;break a}case 2:{p=61;break a}case 5:{n=e+2|0;c[q>>2]=n;e=n;continue e}case 6:{if((j|0)<3){e=-2;break a}n=e+3|0;c[q>>2]=n;e=n;continue e}case 7:{if((j|0)<4){e=-2;break a}n=e+4|0;c[q>>2]=n;e=n;continue e}case 3:{e=bZ(b,e+2|0,f,q)|0;if((e|0)<1){p=59;break a}e=c[q>>2]|0;continue e}default:{n=e+2|0;c[q>>2]=n;e=n;continue e}}}i=e+2|0;c[q>>2]=i;k=i;if((r-k|0)<=1){e=-1;break a}h=a[i>>0]|0;j=a[e+3>>0]|0;if(!(h<<24>>24))h=d[o+(j&255)>>0]|0;else h=sY(h,j)|0;switch(h|0){case 11:{p=81;break a}case 17:{p=82;break a}case 10:case 9:case 21:{e=i;break}default:{p=68;break a}}f:while(1){i=e+2|0;c[q>>2]=i;h=i;j=r-h|0;if((j|0)<=1){e=-1;break a}k=a[i>>0]|0;m=a[e+3>>0]|0;if(!(k<<24>>24))n=d[o+(m&255)>>0]|0;else n=sY(k,m)|0;switch(n|0){case 5:{p=76;break a}case 6:{p=77;break a}case 7:{p=79;break a}case 11:{p=81;break a}case 17:{p=82;break a}case 24:case 22:{h=0;break d}case 10:case 9:case 21:{e=i;break}case 29:break f;default:{p=87;break a}}}n=m&255;if(!(1<<(n&31)&c[56836+((n>>>5|d[140706+(k&255)>>0]<<3)<<2)>>2])){p=75;break a}else h=0}while(0);e=e+4|0;c[q>>2]=e}switch(p|0){case 9:{c[g>>2]=e;e=0;break}case 11:{c[g>>2]=e;e=0;break}case 12:{if((m|0)<3)e=-2;else{c[g>>2]=e;e=0}break}case 14:{if((m|0)<4)e=-2;else{c[g>>2]=e;e=0}break}case 17:{c[g>>2]=e;e=0;break}case 24:{c[g>>2]=h;e=0;break}case 25:{c[g>>2]=h;e=0;break}case 26:{if((j|0)<3)e=-2;else{c[g>>2]=h;e=0}break}case 28:{if((j|0)<4)e=-2;else{c[g>>2]=h;e=0}break}case 30:{c[g>>2]=i;e=0;break}case 36:{c[g>>2]=j;e=0;break}case 43:{c[g>>2]=k;e=0;break}case 56:{c[g>>2]=e;e=0;break}case 59:{if(!e){c[g>>2]=c[q>>2];e=0}break}case 61:{c[g>>2]=e;e=0;break}case 68:{c[g>>2]=k;e=0;break}case 75:{c[g>>2]=i;e=0;break}case 76:{c[g>>2]=i;e=0;break}case 77:{if((j|0)<3)e=-2;else{c[g>>2]=i;e=0}break}case 79:{if((j|0)<4)e=-2;else{c[g>>2]=i;e=0}break}case 81:{c[g>>2]=e+4;e=1;break}case 82:{h=i+2|0;c[q>>2]=h;e=h;if((r-e|0)>1){if((a[h>>0]|0)==0?(a[i+3>>0]|0)==62:0){c[g>>2]=i+4;e=3;break}c[g>>2]=e;e=0}else e=-1;break}case 87:{c[g>>2]=h;e=0;break}case 89:{c[g>>2]=e;e=0;break}}l=s;return e|0}function lZ(b,d,e){b=b|0;d=d|0;e=e|0;c[e>>2]=11;a:do if((d-b|0)==6?(a[b>>0]|0)==0:0){switch(a[b+1>>0]|0){case 120:{d=0;break}case 88:{d=1;break}default:{d=1;break a}}if(!(a[b+2>>0]|0)){switch(a[b+3>>0]|0){case 109:break;case 77:{d=1;break}default:{d=1;break a}}if(!(a[b+4>>0]|0)){switch(a[b+5>>0]|0){case 108:break;case 76:{d=0;break a}default:{d=1;break a}}if(!d){c[e>>2]=12;d=1}else d=0}else d=1}else d=1}else d=1;while(0);return d|0}function mZ(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;k=e+72|0;a:while(1){b:while(1){j=g-f|0;if((j|0)<=1){f=-1;break a}e=a[f>>0]|0;i=a[f+1>>0]|0;if(!(e<<24>>24))i=d[k+(i&255)>>0]|0;else i=sY(e,i)|0;switch(i|0){case 8:case 1:case 0:{l=10;break a}case 6:{l=9;break b}case 7:{l=19;break b}case 5:{f=f+2|0;continue b}case 13:case 12:{e=f+2|0;if((i|0)==(b|0)){l=12;break a}else{f=e;continue b}}default:{f=f+2|0;continue b}}}if((l|0)==9){l=0;if((j|0)<3){f=-2;break}else{f=f+3|0;continue}}else if((l|0)==19){l=0;if((j|0)<4){f=-2;break}else{f=f+4|0;continue}}}c:do if((l|0)==10){c[h>>2]=f;f=0}else if((l|0)==12)if((g-e|0)>1){c[h>>2]=e;g=a[e>>0]|0;f=a[f+3>>0]|0;if(!(g<<24>>24))f=d[k+(f&255)>>0]|0;else f=sY(g,f)|0;switch(f|0){case 20:case 30:case 11:case 10:case 9:case 21:{f=27;break c}default:{}}f=0}else f=-27;while(0);return f|0}function nZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=f;a:do if((k-e|0)>1){h=a[e>>0]|0;if(!(h<<24>>24))h=d[b+72+(d[e+1>>0]|0)>>0]|0;else h=sY(h,a[e+1>>0]|0)|0;switch(h|0){case 27:{h=gZ(b,e+2|0,f,g)|0;break a}case 20:{c[g>>2]=e+2;h=33;break a}case 24:case 22:{j=b+72|0;b:while(1){i=e+2|0;f=k-i|0;if((f|0)<=1){h=-1;break a}h=a[i>>0]|0;b=a[e+3>>0]|0;if(!(h<<24>>24))h=d[j+(b&255)>>0]|0;else h=sY(h,b)|0;switch(h|0){case 24:case 22:{e=i;break}case 30:{l=15;break b}case 10:case 9:case 21:break b;default:{l=22;break b}}}if((l|0)==22){c[g>>2]=i;h=0;break a}c:do if((l|0)==15){if((f|0)<=3){h=-1;break a}b=a[e+4>>0]|0;h=a[e+5>>0]|0;if(!(b<<24>>24))h=d[j+(h&255)>>0]|0;else h=sY(b,h)|0;switch(h|0){case 30:case 10:case 9:case 21:break;default:break c}c[g>>2]=i;h=0;break a}while(0);c[g>>2]=i;h=16;break a}default:{c[g>>2]=e;h=0;break a}}}else h=-1;while(0);return h|0}function oZ(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=f-e|0;a:do if((j|0)>1){k=a[e>>0]|0;if(!(k<<24>>24)){i=a[e+1>>0]|0;h=d[b+72+(i&255)>>0]|0}else{i=a[e+1>>0]|0;h=sY(k,i)|0}switch(h|0){case 29:{j=i&255;if(!(1<<(j&31)&c[56836+((j>>>5|(d[140706+(k&255)>>0]|0)<<3)<<2)>>2])){c[g>>2]=e;f=0;break a}break}case 24:case 22:break;case 5:{c[g>>2]=e;f=0;break a}case 6:{if((j|0)<3){f=-2;break a}c[g>>2]=e;f=0;break a}case 7:{if((j|0)<4){f=-2;break a}c[g>>2]=e;f=0;break a}default:{c[g>>2]=e;f=0;break a}}b=b+72|0;k=e;b:while(1){h=k;k=k+2|0;e=f-k|0;if((e|0)<=1){f=-20;break a}j=a[k>>0]|0;h=a[h+3>>0]|0;if(!(j<<24>>24))i=d[b+(h&255)>>0]|0;else i=sY(j,h)|0;switch(i|0){case 27:case 26:case 25:case 24:case 22:continue b;case 5:{h=22;break b}case 6:{h=23;break b}case 7:{h=25;break b}case 36:case 30:case 11:case 32:case 21:case 10:case 9:{h=27;break b}case 29:break;default:{h=28;break b}}e=h&255;if(!(1<<(e&31)&c[56836+((e>>>5|(d[140962+(j&255)>>0]|0)<<3)<<2)>>2])){h=21;break}}if((h|0)==21){c[g>>2]=k;f=0;break}else if((h|0)==22){c[g>>2]=k;f=0;break}else if((h|0)==23){if((e|0)<3){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==25){if((e|0)<4){f=-2;break}c[g>>2]=k;f=0;break}else if((h|0)==27){c[g>>2]=k;f=20;break}else if((h|0)==28){c[g>>2]=k;f=0;break}}else f=-1;while(0);return f|0}function pZ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;while(1){b=c[d>>2]|0;h=b>>>0>>0;i=c[f>>2]|0;if(!(h&i>>>0>>0))break;c[d>>2]=b+1;h=a[b>>0]|0;i=c[f>>2]|0;c[f>>2]=i+1;a[i>>0]=h}return ((i|0)!=(g|0)|h^1?0:2)|0}function qZ(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:while(1){f=a[b>>0]|0;g=a[c>>0]|0;f=(f+-97&255)<26?(f&255)+224&255:f;switch((f<<24>>24==((g+-97&255)<26?(g&255)+224&255:g)<<24>>24?(f<<24>>24==0?2:0):1)&3){case 0:{c=c+1|0;b=b+1|0;break}case 1:{e=3;break a}case 2:{d=1;break a}default:{e=5;break a}}}if((e|0)==3)d=0;return d|0}function rZ(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;return tZ(36,a,b,c,d,e,f,g,h,i,j)|0}function sZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+144|0;i=h+4|0;f=h+8|0;g=h;c[i>>2]=d;c[g>>2]=f;pb[c[b+56>>2]&127](b,i,e,g,f+127|0)|0;do if((c[i>>2]|0)==(e|0)){a[c[g>>2]>>0]=0;if(qZ(f,141233)|0?(c[b+64>>2]|0)==2:0)break;b=IY(f)|0;if((b|0)!=-1)b=c[58844+(b<<2)>>2]|0;else b=0}else b=0;while(0);l=h;return b|0}function tZ(a,b,d,e,f,g,h,i,j,k,m){a=a|0;b=b|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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;t=v+8|0;q=v+12|0;o=v+4|0;p=v;c[q>>2]=0;c[o>>2]=0;c[p>>2]=0;u=d+64|0;s=c[u>>2]|0;r=e+(s*5|0)|0;c[t>>2]=r;s=f+(0-(s<<1))|0;r=(uZ(d,r,s,o,p,q,t)|0)!=0;n=c[o>>2]|0;e=n;a:do if(r&(n|0)!=0){r=d+24|0;f=c[p>>2]|0;do if(!(ob[c[r>>2]&127](d,n,f,141258)|0)){if(!b){c[g>>2]=e;e=0;break a}}else{if(h|0)c[h>>2]=c[q>>2];if(!i)e=c[t>>2]|0;else{e=c[t>>2]|0;c[i>>2]=e}if(!(uZ(d,e,s,o,p,q,t)|0)){c[g>>2]=c[t>>2];e=0;break a}f=c[o>>2]|0;if(f|0){e=f;n=f;f=c[p>>2]|0;break}if(!b){e=1;break a}c[g>>2]=c[t>>2];e=0;break a}while(0);if(ob[c[r>>2]&127](d,n,f,141266)|0){f=c[q>>2]|0;e=f;if((((vZ(d,f,s)|0)&-33)+-65|0)>>>0>=26){c[g>>2]=e;e=0;break}if(j|0)c[j>>2]=e;e=c[t>>2]|0;if(k|0)c[k>>2]=nb[a&63](d,f,e+(0-(c[u>>2]|0))|0)|0;if(!(uZ(d,e,s,o,p,q,t)|0)){c[g>>2]=c[t>>2];e=0;break}e=c[o>>2]|0;if(!e){e=1;break}n=e;f=c[p>>2]|0}if((b|0)!=0|(ob[c[r>>2]&127](d,n,f,141275)|0)==0){c[g>>2]=e;e=0;break}f=c[q>>2]|0;e=c[t>>2]|0;n=f;if(!(ob[c[r>>2]&127](d,f,e+(0-(c[u>>2]|0))|0,104631)|0)){if(!(ob[c[r>>2]&127](d,f,e+(0-(c[u>>2]|0))|0,104623)|0)){c[g>>2]=n;e=0;break}if(m)c[m>>2]=0}else if(m)c[m>>2]=1;while(1){if(!(wZ(vZ(d,e,s)|0)|0))break;e=e+(c[u>>2]|0)|0}c[t>>2]=e;if((e|0)==(s|0))e=1;else{c[g>>2]=e;e=0}}else{c[g>>2]=c[t>>2];e=0}while(0);l=v;return e|0}function uZ(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;a:do if((b|0)!=(d|0)){if(!(wZ(vZ(a,b,d)|0)|0)){c[h>>2]=b;b=0;break}j=a+64|0;do b=b+(c[j>>2]|0)|0;while((wZ(vZ(a,b,d)|0)|0)!=0);if((b|0)==(d|0)){c[e>>2]=0;b=1;break}c[e>>2]=b;b:while(1){i=vZ(a,b,d)|0;switch(i|0){case -1:{i=11;break b}case 61:{i=12;break b}default:{}}if(wZ(i)|0){i=14;break}b=b+(c[j>>2]|0)|0}if((i|0)==11){c[h>>2]=b;b=0;break}else if((i|0)==12)c[f>>2]=b;else if((i|0)==14){c[f>>2]=b;do{b=b+(c[j>>2]|0)|0;i=vZ(a,b,d)|0}while((wZ(i)|0)!=0);if((i|0)!=61){c[h>>2]=b;b=0;break}}if((b|0)==(c[e>>2]|0)){c[h>>2]=b;b=0;break}do{b=b+(c[j>>2]|0)|0;i=vZ(a,b,d)|0}while((wZ(i)|0)!=0);switch(i|0){case 34:case 39:break;default:{c[h>>2]=b;b=0;break a}}f=b+(c[j>>2]|0)|0;c[g>>2]=f;b=i<<24>>24;c:while(1){i=vZ(a,f,d)|0;if((i|0)==(b|0)){i=30;break}if((i+-48|0)>>>0>9&((i&-33)+-65|0)>>>0>25)switch(i|0){case 45:case 46:case 95:break;default:{i=28;break c}}f=f+(c[j>>2]|0)|0}if((i|0)==28){c[h>>2]=f;b=0;break}else if((i|0)==30){c[h>>2]=f+(c[j>>2]|0);b=1;break}}else{c[e>>2]=0;b=1}while(0);return b|0}function vZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+16|0;i=h+4|0;f=h+8|0;g=h;c[i>>2]=d;c[g>>2]=f;pb[c[b+56>>2]&127](b,i,e,g,f+1|0)|0;l=h;return ((c[g>>2]|0)==(f|0)?-1:a[f>>0]|0)|0}function wZ(a){a=a|0;switch(a|0){case 9:case 10:case 13:case 32:{a=1;break}default:a=0}return a|0}function xZ(){return 59988}function yZ(b,d,e){b=b|0;d=d|0;e=e|0;e=IY(e)|0;if((e|0)==-1)e=0;else{a[b+69>>0]=e;c[b>>2]=69;c[b+4>>2]=70;c[b+48>>2]=31;c[b+72>>2]=d;c[d>>2]=b;e=1}return e|0}function zZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(60352,a,0,b,c,d)|0}function AZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return MY(60352,a,1,b,c,d)|0}function BZ(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;return tZ(37,a,b,c,d,e,f,g,h,i,j)|0}function CZ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=l;l=l+144|0;i=h+4|0;f=h+8|0;g=h;c[i>>2]=d;c[g>>2]=f;pb[c[b+56>>2]&127](b,i,e,g,f+127|0)|0;do if((c[i>>2]|0)==(e|0)){a[c[g>>2]>>0]=0;if(qZ(f,141233)|0?(c[b+64>>2]|0)==2:0)break;b=IY(f)|0;if((b|0)!=-1)b=c[60352+(b<<2)>>2]|0;else b=0}else b=0;while(0);l=h;return b|0}function DZ(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;b=iX(b,c,d,e)|0;if(b|0)a[b+72+58>>0]=23;return b|0}function EZ(a){a=a|0;c[a>>2]=15;c[a+16>>2]=1;c[a+12>>2]=0;c[a+20>>2]=0;return}function FZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 15:{c[a>>2]=16;a=0;break}case 12:{c[a>>2]=16;a=1;break}case 11:{c[a>>2]=16;a=55;break}case 13:{c[a>>2]=16;a=56;break}case 14:{a=0;break}case 16:{if(!(ob[c[f+24>>2]&127](f,d+(c[f+64>>2]<<1)|0,e,141286)|0))g=9;else{c[a>>2]=17;a=3}break}case 29:{c[a>>2]=18;a=2;break}default:g=9}if((g|0)==9)a=JZ(a,b)|0;return a|0}function GZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 14:case 15:{a=0;break}case 11:{a=55;break}case 13:{a=56;break}case 16:{if(!(ob[c[f+24>>2]&127](f,d+(c[f+64>>2]<<1)|0,e,141286)|0))g=7;else{c[a>>2]=17;a=3}break}case 29:{c[a>>2]=18;a=2;break}default:g=7}if((g|0)==7)a=JZ(a,b)|0;return a|0}function HZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 41:case 18:{c[a>>2]=19;a=4;break}default:a=JZ(a,b)|0}return a|0}function IZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function JZ(a,b){a=a|0;b=b|0;if((b|0)==28&(c[a+16>>2]|0)==0)a=59;else{c[a>>2]=18;a=-1}return a|0}function KZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=3;break}case 25:{c[a>>2]=20;a=7;break}case 17:{c[a>>2]=21;a=8;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=22;a=3;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=8;else{c[a>>2]=23;a=3}break}default:h=8}while(0);if((h|0)==8)a=JZ(a,b)|0;return a|0}function LZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do switch(b|0){case -4:case 15:{a=0;break}case 16:{g=f+24|0;h=f+64|0;if(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141308)|0){c[a>>2]=24;a=11;break a}if(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141315)|0){c[a>>2]=25;a=33;break a}if(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141323)|0){c[a>>2]=26;a=39;break a}if(!(ob[c[g>>2]&127](f,d+(c[h>>2]<<1)|0,e,141331)|0))i=14;else{c[a>>2]=27;a=17}break}case 11:{a=55;break}case 13:{a=56;break}case 28:{a=60;break}case 26:{c[a>>2]=28;a=3;break}default:i=14}while(0);if((i|0)==14)a=JZ(a,b)|0;return a|0}function MZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;f=b+-11|0;switch(f>>>1|f<<31|0){case 2:{a=0;break}case 0:{a=55;break}case 1:{a=56;break}case 9:{c[a>>2]=18;a=2;break}default:a=JZ(a,b)|0}return a|0}function NZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 27:{c[a>>2]=29;a=5;break}default:a=JZ(a,b)|0}return a|0}function OZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 27:{c[a>>2]=22;a=6;break}default:a=JZ(a,b)|0}return a|0}function PZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 25:{c[a>>2]=20;a=7;break}case 17:{c[a>>2]=21;a=8;break}default:a=JZ(a,b)|0}return a|0}function QZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 22:{c[a>>2]=30;a=11;break}case 18:{c[a>>2]=31;a=9;break}default:a=JZ(a,b)|0}return a|0}function RZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 41:case 18:{c[a>>2]=32;a=34;break}default:a=JZ(a,b)|0}return a|0}function SZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 41:case 18:{c[a>>2]=33;a=40;break}default:a=JZ(a,b)|0}return a|0}function TZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 18:{c[a>>2]=34;a=18;break}default:a=JZ(a,b)|0}return a|0}function UZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=3;break}case 17:{c[a>>2]=21;a=8;break}default:a=JZ(a,b)|0}return a|0}function VZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=17;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=35;a=17;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=6;else{c[a>>2]=36;a=17}break}default:h=6}while(0);if((h|0)==6)a=JZ(a,b)|0;return a|0}function WZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 27:{c[a>>2]=37;c[a+8>>2]=17;a=19;break}default:a=JZ(a,b)|0}return a|0}function XZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 27:{c[a>>2]=38;a=21;break}default:a=JZ(a,b)|0}return a|0}function YZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=17;break}case 27:{c[a>>2]=37;c[a+8>>2]=17;a=19;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=20;break}default:a=JZ(a,b)|0}return a|0}function ZZ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=c[a+8>>2]|0;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=c[a+8>>2]|0;break}default:a=JZ(a,b)|0}return a|0}function _Z(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 33:{c[a>>2]=40;d=0;break}case 34:{d=a+12|0;e=c[d>>2]|0;if(!e)g=7;else{c[d>>2]=e+-1;d=0}break}case 15:{d=0;break}case 26:{g=7;break}case -4:{if(!(c[a+12>>2]|0))d=0;else g=7;break}default:d=LZ(a,b,d,e,f)|0}if((g|0)==7)d=JZ(a,b)|0;return d|0}function $Z(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=0;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141340)|0){c[a>>2]=41;a=0;break a}if(!(ob[c[g>>2]&127](f,d,e,141348)|0))h=6;else{c[a>>2]=42;a=0}break}default:h=6}while(0);if((h|0)==6)a=JZ(a,b)|0;return a|0}function a_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=0;break}case 25:{c[a>>2]=39;a=a+12|0;c[a>>2]=(c[a>>2]|0)+1;a=0;break}default:a=JZ(a,b)|0}return a|0}function b_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=0;break}case 25:{c[a>>2]=39;a=58;break}default:a=JZ(a,b)|0}return a|0}function c_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=39;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141355)|0){c[a>>2]=37;c[a+8>>2]=39;a=42;break a}if(!(ob[c[g>>2]&127](f,d,e,141361)|0))h=7;else{c[a>>2]=37;c[a+8>>2]=39;a=41}break}case 23:{c[a>>2]=43;c[a+4>>2]=1;a=44;break}default:h=7}while(0);if((h|0)==7)a=JZ(a,b)|0;return a|0}function d_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 15:{a=39;break}case 20:{if(!(ob[c[f+24>>2]&127](f,d+(c[f+64>>2]|0)|0,e,141365)|0))g=9;else{c[a>>2]=44;a=43}break}case 23:{c[a+4>>2]=2;c[a>>2]=45;a=44;break}case 41:case 18:{c[a>>2]=46;a=51;break}case 30:{c[a>>2]=46;a=53;break}case 31:{c[a>>2]=46;a=52;break}case 32:{c[a>>2]=46;a=54;break}default:g=9}if((g|0)==9)a=JZ(a,b)|0;return a|0}function e_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 24:{c[a>>2]=37;c[a+8>>2]=39;a=45;break}case 36:{c[a>>2]=37;c[a+8>>2]=39;a=46;break}case 21:{c[a>>2]=47;a=39;break}default:a=JZ(a,b)|0}return a|0}function f_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 23:{a=a+4|0;c[a>>2]=(c[a>>2]|0)+1;a=44;break}case 41:case 18:{c[a>>2]=46;a=51;break}case 30:{c[a>>2]=46;a=53;break}case 31:{c[a>>2]=46;a=52;break}case 32:{c[a>>2]=46;a=54;break}default:a=JZ(a,b)|0}return a|0}function g_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 24:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=45}else a=45;break}case 36:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=46}else a=46;break}case 35:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=47}else a=47;break}case 37:{e=a+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(!f){c[a>>2]=37;c[a+8>>2]=39;a=48}else a=48;break}case 38:{c[a>>2]=45;a=50;break}case 21:{c[a>>2]=45;a=49;break}default:a=JZ(a,b)|0}return a|0}function h_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 41:case 18:{c[a>>2]=48;a=51;break}default:a=JZ(a,b)|0}return a|0}function i_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=39;break}case 36:{c[a>>2]=37;c[a+8>>2]=39;a=46;break}case 21:{c[a>>2]=47;a=39;break}default:a=JZ(a,b)|0}return a|0}function j_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=33;break}case 41:case 18:{c[a>>2]=49;a=22;break}default:a=JZ(a,b)|0}return a|0}function k_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;a:do switch(b|0){case 15:{g=33;break}case 18:{h=f+24|0;g=0;while(1){i=c[h>>2]|0;if((g|0)>=8)break;if(ob[i&127](f,d,e,c[62200+(g<<2)>>2]|0)|0){j=6;break}g=g+1|0}if((j|0)==6){c[a>>2]=50;g=g+23|0;break a}if(!(ob[i&127](f,d,e,141331)|0))j=10;else{c[a>>2]=51;g=33}break}case 23:{c[a>>2]=52;g=33;break}default:j=10}while(0);if((j|0)==10)g=JZ(a,b)|0;return g|0}function l_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do switch(b|0){case 15:{a=33;break}case 20:{g=f+24|0;h=f+64|0;if(ob[c[g>>2]&127](f,d+(c[h>>2]|0)|0,e,141372)|0){c[a>>2]=32;a=35;break a}if(ob[c[g>>2]&127](f,d+(c[h>>2]|0)|0,e,141380)|0){c[a>>2]=32;a=36;break a}if(!(ob[c[g>>2]&127](f,d+(c[h>>2]|0)|0,e,141389)|0))i=9;else{c[a>>2]=53;a=33}break}case 27:{c[a>>2]=32;a=37;break}default:i=9}while(0);if((i|0)==9)a=JZ(a,b)|0;return a|0}function m_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 23:{c[a>>2]=54;a=33;break}default:a=JZ(a,b)|0}return a|0}function n_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 41:case 18:case 19:{c[a>>2]=55;a=31;break}default:a=JZ(a,b)|0}return a|0}function o_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 24:{c[a>>2]=50;a=33;break}case 21:{c[a>>2]=52;a=33;break}default:a=JZ(a,b)|0}return a|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 18:{c[a>>2]=56;a=32;break}default:a=JZ(a,b)|0}return a|0}function q_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 24:{c[a>>2]=50;a=33;break}case 21:{c[a>>2]=54;a=33;break}default:a=JZ(a,b)|0}return a|0}function r_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=33;break}case 27:{c[a>>2]=32;a=38;break}default:a=JZ(a,b)|0}return a|0}function s_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 18:{c[a>>2]=57;a=10;break}default:a=JZ(a,b)|0}return a|0}function t_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=11;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=58;a=11;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=7;else{c[a>>2]=59;a=11}break}case 27:{c[a>>2]=37;c[a+8>>2]=11;a=12;break}default:h=7}while(0);if((h|0)==7)a=JZ(a,b)|0;return a|0}function u_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=60;a=13;break}default:a=JZ(a,b)|0}return a|0}function v_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=58;a=14;break}default:a=JZ(a,b)|0}return a|0}function w_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;switch(b|0){case 15:{a=11;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=15;break}case 18:{if(!(ob[c[f+24>>2]&127](f,d,e,141443)|0))g=5;else{c[a>>2]=61;a=11}break}default:g=5}if((g|0)==5)a=JZ(a,b)|0;return a|0}function x_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 18:{c[a>>2]=37;c[a+8>>2]=11;a=16;break}default:a=JZ(a,b)|0}return a|0}function y_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do switch(b|0){case 15:{a=11;break}case 18:{g=f+24|0;if(ob[c[g>>2]&127](f,d,e,141294)|0){c[a>>2]=62;a=11;break a}if(!(ob[c[g>>2]&127](f,d,e,141301)|0))h=7;else{c[a>>2]=63;a=11}break}case 27:{c[a>>2]=37;c[a+8>>2]=11;a=12;break}default:h=7}while(0);if((h|0)==7)a=JZ(a,b)|0;return a|0}function z_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=64;a=13;break}default:a=JZ(a,b)|0}return a|0}function A_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 27:{c[a>>2]=62;a=14;break}default:a=JZ(a,b)|0}return a|0}function B_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;switch(b|0){case 15:{a=11;break}case 17:{c[a>>2]=c[a+16>>2]|0?20:39;a=15;break}default:a=JZ(a,b)|0}return a|0}function C_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=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;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[46749]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=187036+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[46749]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[46751]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=187036+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[46754]|0;b=n>>>3;d=187036+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46751]=h;c[46754]=f;w=i;l=x;return w|0}j=c[46750]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[187300+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=187300+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[46750]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[46754]|0;b=n>>>3;d=187036+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[46751]=h;c[46754]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[46750]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[187300+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[187300+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[46751]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=187300+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=187300+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[46751]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[46754]|0;if(b>>>0>15){w=a+n|0;c[46754]=w;c[46751]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[46751]=0;c[46754]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[46752]|0;if(i>>>0>n>>>0){u=i-n|0;c[46752]=u;w=c[46755]|0;v=w+n|0;c[46755]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[46867]|0)){c[46869]=4096;c[46868]=4096;c[46870]=-1;c[46871]=-1;c[46872]=0;c[46860]=0;c[46867]=p&-16^1431655768;a=4096}else a=c[46869]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[46859]|0;if(a|0?(o=c[46857]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[46860]&4)){d=c[46755]|0;c:do if(d){e=187444;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=I3(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=I3(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[46868]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[46857]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[46859]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=I3(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[46869]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((I3(a|0)|0)==(-1|0)){I3(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[46860]=c[46860]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=I3(m|0)|0,s=I3(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[46857]|0)+h|0;c[46857]=b;if(b>>>0>(c[46858]|0)>>>0)c[46858]=b;j=c[46755]|0;do if(j){b=187444;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[46752]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[46755]=v;c[46752]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[46756]=c[46871];break}if(g>>>0<(c[46753]|0)>>>0)c[46753]=g;a=g+h|0;b=187444;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=187444;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[46754]|0)==(b|0)){w=(c[46751]|0)+i|0;c[46751]=w;c[46754]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[46749]=c[46749]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=187300+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[46750]=c[46750]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=187300+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[46750]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[46752]|0)+i|0;c[46752]=w;c[46755]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=187444;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[46755]=v;c[46752]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[46756]=c[46871];d=a+4|0;c[d>>2]=27;c[b>>2]=c[46861];c[b+4>>2]=c[46862];c[b+8>>2]=c[46863];c[b+12>>2]=c[46864];c[46861]=g;c[46862]=h;c[46864]=0;c[46863]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=187300+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[46750]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[46753]|0;if((w|0)==0|g>>>0>>0)c[46753]=g;c[46861]=g;c[46862]=h;c[46864]=0;c[46758]=c[46867];c[46757]=-1;c[46762]=187036;c[46761]=187036;c[46764]=187044;c[46763]=187044;c[46766]=187052;c[46765]=187052;c[46768]=187060;c[46767]=187060;c[46770]=187068;c[46769]=187068;c[46772]=187076;c[46771]=187076;c[46774]=187084;c[46773]=187084;c[46776]=187092;c[46775]=187092;c[46778]=187100;c[46777]=187100;c[46780]=187108;c[46779]=187108;c[46782]=187116;c[46781]=187116;c[46784]=187124;c[46783]=187124;c[46786]=187132;c[46785]=187132;c[46788]=187140;c[46787]=187140;c[46790]=187148;c[46789]=187148;c[46792]=187156;c[46791]=187156;c[46794]=187164;c[46793]=187164;c[46796]=187172;c[46795]=187172;c[46798]=187180;c[46797]=187180;c[46800]=187188;c[46799]=187188;c[46802]=187196;c[46801]=187196;c[46804]=187204;c[46803]=187204;c[46806]=187212;c[46805]=187212;c[46808]=187220;c[46807]=187220;c[46810]=187228;c[46809]=187228;c[46812]=187236;c[46811]=187236;c[46814]=187244;c[46813]=187244;c[46816]=187252;c[46815]=187252;c[46818]=187260;c[46817]=187260;c[46820]=187268;c[46819]=187268;c[46822]=187276;c[46821]=187276;c[46824]=187284;c[46823]=187284;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[46755]=v;c[46752]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[46756]=c[46871]}while(0);b=c[46752]|0;if(b>>>0>n>>>0){u=b-n|0;c[46752]=u;w=c[46755]|0;v=w+n|0;c[46755]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(O_()|0)>>2]=12;w=0;l=x;return w|0}function D_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[46753]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[46754]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[46751]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[46749]=c[46749]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=187300+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[46750]=c[46750]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[46755]|0)==(j|0)){j=(c[46752]|0)+b|0;c[46752]=j;c[46755]=i;c[i+4>>2]=j|1;if((i|0)!=(c[46754]|0))return;c[46754]=0;c[46751]=0;return}if((c[46754]|0)==(j|0)){j=(c[46751]|0)+b|0;c[46751]=j;c[46754]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[46749]=c[46749]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=187300+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[46750]=c[46750]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[46754]|0)){c[46751]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=187036+(a<<1<<2)|0;b=c[46749]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=187300+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[46750]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[46750]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[46757]|0)+-1|0;c[46757]=j;if(!j)a=187452;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[46757]=-1;return}function E_(a,b){a=a|0;b=b|0;var d=0;if(a){d=O(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=C_(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;H3(a|0,0,d|0)|0;return a|0}function F_(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=C_(b)|0;return b|0}if(b>>>0>4294967231){c[(O_()|0)>>2]=12;b=0;return b|0}d=G_(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=C_(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;F3(d|0,a|0,(e>>>0>>0?e:b)|0)|0;D_(a);b=d;return b|0}function G_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[46869]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H_(k,d);return a|0}if((c[46755]|0)==(i|0)){k=(c[46752]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[46755]=e;c[46752]=d;return a|0}if((c[46754]|0)==(i|0)){e=(c[46751]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[46751]=d;c[46754]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[46749]=c[46749]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=187300+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[46750]=c[46750]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H_(i,k);return a|0}return 0}function H_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[46754]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[46751]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[46749]=c[46749]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=187300+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[46750]=c[46750]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[46755]|0)==(i|0)){i=(c[46752]|0)+b|0;c[46752]=i;c[46755]=h;c[h+4>>2]=i|1;if((h|0)!=(c[46754]|0))return;c[46754]=0;c[46751]=0;return}if((c[46754]|0)==(i|0)){i=(c[46751]|0)+b|0;c[46751]=i;c[46754]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[46749]=c[46749]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=187300+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[46750]=c[46750]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[46754]|0)){c[46751]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=187036+(b<<1<<2)|0;a=c[46749]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=187300+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[46750]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I_(a,b){a=a|0;b=b|0;if(a>>>0<9){b=C_(b)|0;return b|0}else{b=J_(a,b)|0;return b|0}return 0}function J_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;a=a>>>0>16?a:16;if(a+-1&a){d=16;while(1)if(d>>>0>>0)d=d<<1;else{a=d;break}}if((-64-a|0)>>>0<=b>>>0){c[(O_()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=C_(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;H_(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;H_(f,i)}i=b+8|0;return i|0}function K_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P_(c[a+60>>2]|0)|0;a=N_(Ja(6,d|0)|0)|0;l=b;return a|0}function L_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=N_(ya(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function M_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((N_(xa(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function N_(a){a=a|0;if(a>>>0>4294963200){c[(O_()|0)>>2]=0-a;a=-1}return a|0}function O_(){return 187492}function P_(a){a=a|0;return a|0}function Q_(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=18;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ia(54,f|0)|0):0)a[b+75>>0]=-1;f=R_(b,d,e)|0;l=g;return f|0}function R_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=N_(za(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=N_(za(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function S_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;b=N_(Ka(91,e|0)|0)|0;l=d;return b|0}function T_(){return}function U_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=l;l=l+32|0;h=i;do if((g&4095|0)==0&(((g|0)<0)<<31>>31&-4096|0)==0){if(b>>>0>2147483646){c[(O_()|0)>>2]=12;a=-1;break}c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=d;c[h+12>>2]=e;c[h+16>>2]=f;c[h+20>>2]=g>>12;a=N_(Aa(192,h|0)|0)|0}else{c[(O_()|0)>>2]=22;a=-1}while(0);l=i;return a|0}function V_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(W_(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function W_(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function X_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=Ha(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Ea(221,g|0)|0}i=N_(e)|0;l=h;return i|0}function Y_(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[141449+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=141537;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=141537;else{f=141537;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return Z_(f,c[e+20>>2]|0)|0}function Z_(a,b){a=a|0;b=b|0;return __(a,b)|0}function __(a,b){a=a|0;b=b|0;if(!b)b=0;else b=$_(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function $_(b,d,e){b=b|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;o=(c[b>>2]|0)+1794895138|0;h=a$(c[b+8>>2]|0,o)|0;f=a$(c[b+12>>2]|0,o)|0;g=a$(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=a$(c[b+(g<<2)>>2]|0,o)|0;g=a$(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=b$(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=a$(c[b+(f<<2)>>2]|0,o)|0;f=a$(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function a$(a,b){a=a|0;b=b|0;var c=0;c=C3(a|0)|0;return ((b|0)==0?a:c)|0}function b$(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function c$(a){a=a|0;return Y_(a,c[(d$()|0)+188>>2]|0)|0}function d$(){return e$()|0}function e$(){return 62872}function f$(a,b,c){a=+a;b=+b;c=c|0;var d=0.0,e=0.0,f=0.0;f=a*a;d=f*(f*f)*(f*1.58969099521155e-10+-2.5050760253406863e-08)+(f*(f*2.7557313707070068e-06+-1.984126982985795e-04)+.00833333333332249);e=f*a;if(!c)a=e*(f*d+-.16666666666666632)+a;else a=a-(e*.16666666666666632+(f*(b*.5-e*d)-b));return +a}function g$(a){a=+a;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,k=0.0,l=0.0,m=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){a=-1.0/(a*a);break}if(e){a=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;e=-1077;b=c[j>>2]|0;f=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)a=0.0;else{e=-1023;f=9}while(0);if((f|0)==9){f=d+614242|0;c[j>>2]=b;c[j+4>>2]=(f&1048575)+1072079006;m=+h[j>>3]+-1.0;k=m*(m*.5);i=m/(m+2.0);l=i*i;g=l*l;h[j>>3]=m-k;d=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=d;a=+h[j>>3];g=m-a-k+i*(k+(g*(g*(g*.15313837699209373+.22222198432149784)+.3999999999940942)+l*(g*(g*(g*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));l=a*1.4426950407214463;k=+(e+(f>>>20)|0);i=l+k;a=i+(l+(k-i)+(g*1.4426950407214463+(g+a)*1.6751713164886512e-10))}return +a}function h$(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=z3(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+h$(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function i$(a,b){a=+a;b=+b;var c=0.0,d=0.0,e=0.0,f=0.0;c=a*a;d=c*c;e=c*.5;f=1.0-e;return +(f+(1.0-f-e+(c*(c*(c*(c*2.480158728947673e-05+-.001388888888887411)+.0416666666666666)+d*d*(c*(2.087572321298175e-09-c*1.1359647557788195e-11)+-2.7557314351390663e-07))-a*b)))}function j$(a){a=+a;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,k=0.0,l=0.0,m=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){a=-1.0/(a*a);break}if(e){a=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;e=-1077;b=c[j>>2]|0;f=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)a=0.0;else{e=-1023;f=9}while(0);if((f|0)==9){f=d+614242|0;c[j>>2]=b;c[j+4>>2]=(f&1048575)+1072079006;k=+h[j>>3]+-1.0;i=k*(k*.5);l=k/(k+2.0);m=l*l;g=m*m;h[j>>3]=k-i;d=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=d;a=+h[j>>3];g=k-a-i+l*(i+(g*(g*(g*.15313837699209373+.22222198432149784)+.3999999999940942)+m*(g*(g*(g*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));m=a*.4342944818781689;i=+(e+(f>>>20)|0);l=i*.30102999566361177;k=l+m;a=k+(m+(l-k)+(g*.4342944818781689+(i*3.694239077158931e-13+(g+a)*2.5082946711645275e-11)))}return +a}function k$(a,b){a=+a;b=b|0;var d=0,e=0.0,f=0.0,g=0.0,i=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+48|0;m=r+16|0;n=r;h[j>>3]=a;d=c[j>>2]|0;i=c[j+4>>2]|0;o=z3(d|0,i|0,63)|0;q=i&2147483647;do if(q>>>0<1074752123)if((i&1048575|0)!=598523){d=(o|0)!=0;if(q>>>0<1073928573)if(d){g=a+1.5707963267341256;k=g+6.077100506506192e-11;h[b>>3]=k;h[b+8>>3]=g-k+6.077100506506192e-11;d=-1;break}else{g=a+-1.5707963267341256;k=g+-6.077100506506192e-11;h[b>>3]=k;h[b+8>>3]=g-k+-6.077100506506192e-11;d=1;break}else if(d){g=a+3.1415926534682512;k=g+1.2154201013012384e-10;h[b>>3]=k;h[b+8>>3]=g-k+1.2154201013012384e-10;d=-2;break}else{g=a+-3.1415926534682512;k=g+-1.2154201013012384e-10;h[b>>3]=k;h[b+8>>3]=g-k+-1.2154201013012384e-10;d=2;break}}else p=21;else{if(q>>>0<1075594812)if(q>>>0<1075183037){if((q|0)==1074977148){p=21;break}if(!o){g=a+-4.712388980202377;k=g+-1.8231301519518578e-10;h[b>>3]=k;h[b+8>>3]=g-k+-1.8231301519518578e-10;d=3;break}else{g=a+4.712388980202377;k=g+1.8231301519518578e-10;h[b>>3]=k;h[b+8>>3]=g-k+1.8231301519518578e-10;d=-3;break}}else{if((q|0)==1075388923){p=21;break}if(!o){g=a+-6.2831853069365025;k=g+-2.430840202602477e-10;h[b>>3]=k;h[b+8>>3]=g-k+-2.430840202602477e-10;d=4;break}else{g=a+6.2831853069365025;k=g+2.430840202602477e-10;h[b>>3]=k;h[b+8>>3]=g-k+2.430840202602477e-10;d=-4;break}}if(q>>>0>=1094263291){if(q>>>0>2146435071){k=a-a;h[b+8>>3]=k;h[b>>3]=k;d=0;break}c[j>>2]=d;c[j+4>>2]=i&1048575|1096810496;a=+h[j>>3];d=0;do{k=+(~~a|0);h[m+(d<<3)>>3]=k;a=(a-k)*16777216.0;d=d+1|0}while((d|0)!=2);h[m+16>>3]=a;if(a==0.0){d=1;while(1)if(+h[m+(d<<3)>>3]==0.0)d=d+-1|0;else break}else d=2;d=l$(m,n,(q>>>20)+-1046|0,d+1|0,1)|0;a=+h[n>>3];if(!o){h[b>>3]=a;h[b+8>>3]=+h[n+8>>3];break}else{h[b>>3]=-a;h[b+8>>3]=-+h[n+8>>3];d=0-d|0;break}}else p=21}while(0);if((p|0)==21){g=a*.6366197723675814+6755399441055744.0+-6755399441055744.0;d=~~g;e=a-g*1.5707963267341256;f=g*6.077100506506192e-11;a=e-f;h[b>>3]=a;h[j>>3]=a;p=z3(c[j>>2]|0,c[j+4>>2]|0,52)|0;i=q>>>20;if((i-(p&2047)|0)>16){f=g*6.077100506303966e-11;k=e-f;f=g*2.0222662487959506e-21-(e-k-f);a=k-f;h[b>>3]=a;h[j>>3]=a;q=z3(c[j>>2]|0,c[j+4>>2]|0,52)|0;s=g*2.0222662487111665e-21;e=k-s;g=g*8.4784276603689e-32-(k-e-s);if((i-(q&2047)|0)>49){a=e-g;h[b>>3]=a;f=g}else e=k}h[b+8>>3]=e-a-f}l=r;return d|0}function l$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0,k=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,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0;H=l;l=l+560|0;C=H+480|0;z=H+320|0;G=H+160|0;E=H;D=c[63116+(f<<2)>>2]|0;p=e+-1|0;y=(d+-3|0)/24|0;y=(y|0)>0?y:0;B=O(y,-24)|0;j=d+-24+B|0;if((D+p|0)>=0){n=D+e|0;k=y-p|0;m=0;while(1){if((k|0)<0)g=0.0;else g=+(c[63132+(k<<2)>>2]|0);h[z+(m<<3)>>3]=g;m=m+1|0;if((m|0)==(n|0))break;else k=k+1|0}}o=(e|0)>0;n=0;while(1){if(o){m=n+p|0;g=0.0;k=0;do{g=g+ +h[a+(k<<3)>>3]*+h[z+(m-k<<3)>>3];k=k+1|0}while((k|0)!=(e|0))}else g=0.0;h[E+(n<<3)>>3]=g;if((n|0)<(D|0))n=n+1|0;else break}t=(j|0)>0;u=24-j|0;v=23-j|0;w=(e|0)>0;x=(j|0)==0;k=D;a:while(1){g=+h[E+(k<<3)>>3];o=(k|0)>0;if(o){m=k;n=0;while(1){i=+(~~(g*5.9604644775390625e-08)|0);c[C+(n<<2)>>2]=~~(g-i*16777216.0);s=m;m=m+-1|0;g=+h[E+(m<<3)>>3]+i;if((s|0)<=1)break;else n=n+1|0}}g=+m$(g,j);g=g-+A(+(g*.125))*8.0;m=~~g;g=g-+(m|0);do if(!t)if(!x)if(!(g>=.5)){p=0;s=m;break}else{n=2;F=20;break}else{n=c[C+(k+-1<<2)>>2]>>23;F=19;break}else{s=C+(k+-1<<2)|0;n=c[s>>2]|0;F=n>>u;n=n-(F<>2]=n;n=n>>v;m=F+m|0;F=19}while(0);if((F|0)==19){F=0;if((n|0)>0)F=20;else{p=n;s=m}}if((F|0)==20){F=0;s=m+1|0;if(o){m=0;r=0;do{p=C+(r<<2)|0;q=c[p>>2]|0;if(!m)if(!q)m=0;else{m=1;o=16777216;F=23}else{o=16777215;F=23}if((F|0)==23){F=0;c[p>>2]=o-q}r=r+1|0}while((r|0)!=(k|0))}else m=0;b:do if(t){switch(j|0){case 1:{o=8388607;break}case 2:{o=4194303;break}default:break b}r=C+(k+-1<<2)|0;c[r>>2]=c[r>>2]&o}while(0);if((n|0)==2){g=1.0-g;if(!m)p=2;else{p=2;g=g-+m$(1.0,j)}}else p=n}if(!(g==0.0)){F=42;break}if((k|0)>(D|0)){m=0;n=k;do{n=n+-1|0;m=c[C+(n<<2)>>2]|m}while((n|0)>(D|0));if(m){F=41;break}else m=1}else m=1;while(1)if(!(c[C+(D-m<<2)>>2]|0))m=m+1|0;else break;o=m+k|0;if((m|0)<=0){k=o;continue}while(1){n=k+1|0;m=k+e|0;h[z+(m<<3)>>3]=+(c[63132+(n+y<<2)>>2]|0);if(w){g=0.0;k=0;do{g=g+ +h[a+(k<<3)>>3]*+h[z+(m-k<<3)>>3];k=k+1|0}while((k|0)!=(e|0))}else g=0.0;h[E+(n<<3)>>3]=g;if((n|0)<(o|0))k=n;else{k=o;continue a}}}if((F|0)==41)while(1){F=0;j=j+-24|0;k=k+-1|0;if(!(c[C+(k<<2)>>2]|0))F=41;else{o=k;break}}else if((F|0)==42){g=+m$(g,0-j|0);if(g>=16777216.0){i=+(~~(g*5.9604644775390625e-08)|0);c[C+(k<<2)>>2]=~~(g-i*16777216.0);j=B+d|0;k=k+1|0;g=i}c[C+(k<<2)>>2]=~~g;o=k}g=+m$(1.0,j);n=(o|0)>-1;if(n){j=o;while(1){h[E+(j<<3)>>3]=g*+(c[C+(j<<2)>>2]|0);if((j|0)>0){g=g*5.9604644775390625e-08;j=j+-1|0}else break}if(n){k=o;while(1){m=o-k|0;j=0;g=0.0;while(1){g=g+ +h[10904+(j<<3)>>3]*+h[E+(j+k<<3)>>3];if((j|0)>=(D|0)|(j|0)>=(m|0))break;else j=j+1|0}h[G+(m<<3)>>3]=g;if((k|0)>0)k=k+-1|0;else break}}}switch(f|0){case 0:{if(n){g=0.0;j=o;while(1){g=g+ +h[G+(j<<3)>>3];if((j|0)>0)j=j+-1|0;else break}}else g=0.0;i=(p|0)==0?g:-g;F=72;break}case 2:case 1:{if(n){g=0.0;j=o;while(1){g=g+ +h[G+(j<<3)>>3];if((j|0)>0)j=j+-1|0;else break}}else g=0.0;k=(p|0)==0;h[b>>3]=k?g:-g;g=+h[G>>3]-g;if((o|0)>=1){j=1;while(1){g=g+ +h[G+(j<<3)>>3];if((j|0)==(o|0))break;else j=j+1|0}}i=k?g:-g;b=b+8|0;F=72;break}case 3:{if((o|0)>0){j=o;g=+h[G+(o<<3)>>3];do{F=j;j=j+-1|0;E=G+(j<<3)|0;i=+h[E>>3];I=g;g=i+g;h[G+(F<<3)>>3]=I+(i-g);h[E>>3]=g}while((F|0)>1);k=(o|0)>1;if(k){j=o;g=+h[G+(o<<3)>>3];do{F=j;j=j+-1|0;E=G+(j<<3)|0;I=+h[E>>3];i=g;g=I+g;h[G+(F<<3)>>3]=i+(I-g);h[E>>3]=g}while((F|0)>2);if(k){j=o;i=0.0;while(1){i=i+ +h[G+(j<<3)>>3];if((j|0)>2)j=j+-1|0;else break}}else i=0.0}else i=0.0}else i=0.0;g=+h[G>>3];if(!p){h[b>>3]=g;g=+h[G+8>>3]}else{h[b>>3]=-g;i=-i;g=-+h[G+8>>3]}h[b+8>>3]=g;b=b+16|0;F=72;break}default:{}}if((F|0)==72)h[b>>3]=i;l=H;return s&7|0}function m$(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=A3(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function n$(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;do if(b>>>0>2146435071)a=a+a;else{if(b>>>0<1048576){h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;b=d&2147483647;if(!b)break;else e=696219795}else e=715094163;c[j>>2]=0;c[j+4>>2]=((b>>>0)/3|0)+e|d&-2147483648;f=+h[j>>3];g=f*f*(f/a);h[j>>3]=(g*(g*g)*(g*.14599619288661245+-.758397934778766)+(g*(g*1.6214297201053545+-1.8849797954337717)+1.87595182427177))*f;d=s3(c[j>>2]|0,c[j+4>>2]|0,-2147483648,0)|0;e=z;c[j>>2]=d&-1073741824;c[j+4>>2]=e;f=+h[j>>3];a=a/(f*f);a=(a-f)/(f+f+a)*f+f}while(0);return +a}function o$(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function p$(a,b){a=+a;b=+b;return +(+o$(a,b))}function q$(a,b){a=+a;b=b|0;return +(+m$(a,b))}function r$(a,b){a=+a;b=+b;return +(+s$(a,b))}function s$(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=z3(i|0,l|0,52)|0;e=e&2047;m=z3(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=A3(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=t$(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=A3(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=A3(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=A3(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=A3(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=A3(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=A3(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=A3(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=t3(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=A3(f|0,d|0,1)|0;g=z;e=e+-1|0;f=t3(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=A3(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=s3(f|0,d|0,0,-1048576)|0;d=z;e=A3(e|0,0,52)|0;d=d|z;e=o|e}else{e=z3(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function t$(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function u$(a,b){a=+a;b=+b;var d=0.0,e=0,f=0,g=0,i=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+32|0;m=q+24|0;n=q+16|0;o=q+8|0;p=q;h[j>>3]=a;t=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=b;e=c[j>>2]|0;g=g&2147483647;f=c[j+4>>2]&2147483647;i=g>>>0>>0|(g|0)==(f|0)&t>>>0>>0;s=i?e:t;r=i?f:g;e=i?t:e;f=i?g:f;g=z3(s|0,r|0,52)|0;i=z3(e|0,f|0,52)|0;c[j>>2]=s;c[j+4>>2]=r;a=+h[j>>3];c[j>>2]=e;c[j+4>>2]=f;k=+h[j>>3];do if((i|0)!=2047){if(!((e|0)==0&(f|0)==0|(g|0)==2047)){if((g-i|0)>64){a=a+k;break}if((g|0)>1533){d=5260135901548373507240989.0e186;b=a*1.90109156629516e-211;a=k*1.90109156629516e-211}else{t=(i|0)<573;d=t?1.90109156629516e-211:1.0;b=t?a*5260135901548373507240989.0e186:a;a=t?k*5260135901548373507240989.0e186:k}v$(m,n,b);v$(o,p,a);a=d*+C(+(+h[p>>3]+ +h[n>>3]+ +h[o>>3]+ +h[m>>3]))}}else a=k;while(0);l=q;return +a}function v$(a,b,c){a=a|0;b=b|0;c=+c;var d=0.0,e=0.0;e=c*134217729.0;e=e+(c-e);d=c-e;c=c*c;h[a>>3]=c;h[b>>3]=d*d+(e*e-c+e*2.0*d);return}function w$(a,b,d){a=+a;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0,k=0,m=0;k=l;l=l+16|0;g=k;h[j>>3]=a;f=c[j+4>>2]&2147483647;do if(f>>>0<1072243196)if(f>>>0<1044816030){h[b>>3]=a;h[d>>3]=1.0;break}else{h[b>>3]=+f$(a,0.0,0);h[d>>3]=+i$(a,0.0);break}else{if(f>>>0>2146435071){i=a-a;h[d>>3]=i;h[b>>3]=i;break}f=k$(a,g)|0;m=g+8|0;e=+f$(+h[g>>3],+h[m>>3],1);a=+i$(+h[g>>3],+h[m>>3]);switch(f&3){case 0:{h[b>>3]=e;i=a;break}case 1:{h[b>>3]=a;i=-e;break}case 2:{h[b>>3]=-e;i=-a;break}case 3:{h[b>>3]=-a;i=e;break}default:{}}h[d>>3]=i}while(0);l=k;return}function x$(a,b){a=+a;b=b|0;return +(+h$(a,b))}function y$(a){a=a|0;if(a>>>0<131072)a=(d[143341+((d[143341+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else a=0;return a|0}function z$(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function A$(b,c){b=b|0;c=c|0;b=V_(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function B$(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function C$(a,b,c){a=a|0;b=b|0;c=c|0;c=F$(a,b,c,-1,0)|0;return c|0}function D$(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function E$(a){a=a|0;return (a+-48|0)>>>0<10|0}function F$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;G$(h,0);d=H$(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function G$(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function H$(b,e,f,g,h){b=b|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=0,q=0,r=0;a:do if(e>>>0>36){c[(O_()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0}while((B$(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=I$(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if((d[146510+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){G$(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[146510+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;G$(b,0);c[(O_()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=r3(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=s3(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=I$(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[146766+((e*23|0)>>>5&7)>>0]|0;f=a[146510+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=z3(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=A3(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[146510+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=w3(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=r3(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=s3(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=I$(b)|0;f=a[146510+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[146510+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0}while(e>>>0>(d[146510+i>>0]|0)>>>0);c[(O_()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(O_()|0)>>2]=34;g=s3(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(O_()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=t3(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function I$(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=J$(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function J$(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((K$(a)|0)==0?(nb[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function K$(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)nb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function L$(a){a=a|0;return (a+-48|0)>>>0<10|0}function M$(a){a=a|0;if(!(N$(a)|0))a=(E$(a)|0)!=0&1;else a=1;return a|0}function N$(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function O$(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=b;b=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<<24>>24))break a;if(b<<24>>24!=e<<24>>24?(f=P$(f)|0,(f|0)!=(P$(d[c>>0]|0)|0)):0)break;b=g+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=b;b=e;f=e&255}}b=a[g>>0]|0}while(0);g=P$(b&255)|0;return g-(P$(d[c>>0]|0)|0)|0}function P$(a){a=a|0;var b=0;b=(Q$(a)|0)==0;return (b?a:a|32)|0}function Q$(a){a=a|0;return (a+-65|0)>>>0<26|0}function R$(a){a=a|0;return S$(a,0)|0}function S$(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(f<<1)+-1|0;l=f+-1|0;a:do if(!((c+-43008|0)>>>0<22272|((c+-11776|0)>>>0<30784|((c+-1536|0)>>>0<2560|(T$(c)|0)==0)))){g=(f|0)!=0;if(g&(c+-4256|0)>>>0<46){if((c|0)>4293)switch(c|0){case 4295:case 4301:break;default:break a}c=c+7264|0;break}if((c+-11520|0)>>>0<38&(g^1)){c=c+-7264|0;break}else g=0;do{i=a[66242+(g<<2)+2>>0]|0;j=i<<24>>24;h=c-(e[66242+(g<<2)>>1]|0)|0;if((h-(l&j)|0)>>>0<(d[66242+(g<<2)+3>>0]|0)>>>0){m=11;break}g=g+1|0}while((g|0)!=61);if((m|0)==11)if(i<<24>>24==1){c=f+c-(h&1)|0;break}else{c=(O(k,j)|0)+c|0;break}i=1-f|0;g=b[65754+(i<<1)>>1]|0;b:do if(g<<16>>16){h=0;while(1){if((g&65535|0)==(c|0))break;h=h+1|0;g=b[65754+(h<<2)+(i<<1)>>1]|0;if(!(g<<16>>16))break b}c=e[65754+(h<<2)+(f<<1)>>1]|0;break a}while(0);return ((c+-66600+(f*40|0)|0)>>>0<40?c+-40+(f*80|0)|0:c)|0}while(0);return c|0}function T$(a){a=a|0;if(a>>>0<131072)a=(d[146775+((d[146775+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else a=a>>>0<196606&1;return a|0}function U$(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function V$(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;if(!e)b=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))b=0;else{h=b;b=f;f=f&255;while(1){e=e+-1|0;g=a[c>>0]|0;if(!((e|0)!=0&g<<24>>24!=0))break a;if(b<<24>>24!=g<<24>>24?(g=P$(f)|0,(g|0)!=(P$(d[c>>0]|0)|0)):0)break;b=h+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){b=0;break a}else{h=b;b=f;f=f&255}}b=a[h>>0]|0}while(0);b=P$(b&255)|0;b=b-(P$(d[c>>0]|0)|0)|0}return b|0}function W$(a){a=a|0;if(a>>>0>=255)if((a+-57344|0)>>>0<8185|(a>>>0<8232|(a+-8234|0)>>>0<47062))a=1;else return (a&65534|0)!=65534&(a+-65532|0)>>>0<1048580&1|0;else a=(a+1&127)>>>0>32&1;return a|0}function X$(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?187560:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[($$()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[62280+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(O_()|0)>>2]=84;f=-1}l=k;return f|0}function Y$(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Z$(a,b,0)|0;return a|0}function Z$(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(_$()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(O_()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(O_()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function _$(){return e$()|0}function $$(){return e$()|0}function a0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+272|0;n=p+8|0;o=p;do if(!(a[d>>0]|0)){d=Ta(149751)|0;if(d|0?a[d>>0]|0:0)break;d=Ta(149758+(b*12|0)|0)|0;if(d|0?a[d>>0]|0:0)break;d=Ta(149830)|0;if(d|0?a[d>>0]|0:0)break;d=149835}while(0);e=0;a:do{switch(a[d+e>>0]|0){case 47:case 0:break a;default:{}}e=e+1|0}while(e>>>0<15);f=a[d>>0]|0;if(f<<24>>24!=46?(a[d+e>>0]|0)==0:0)if(f<<24>>24==67)m=15;else{k=d;m=16}else{d=149835;m=15}if((m|0)==15)if(!(a[d+1>>0]|0))m=18;else{k=d;m=16}b:do if((m|0)==16)if((b$(k,149835)|0)!=0?(b$(k,149843)|0)!=0:0){d=c[46891]|0;if(d|0)do{if(!(b$(k,d+8|0)|0))break b;d=c[d+24>>2]|0}while((d|0)!=0);ta(187568);d=c[46891]|0;c:do if(d|0){while(1){if(!(b$(k,d+8|0)|0))break;d=c[d+24>>2]|0;if(!d)break c}La(187568);break b}while(0);d:do if(((c[46876]|0)==0?(g=Ta(149849)|0,(g|0)!=0):0)?(a[g>>0]|0)!=0:0){i=254-e|0;j=e+1|0;f=g;while(1){h=V_(f,58)|0;d=a[h>>0]|0;g=h-f+((d<<24>>24!=0)<<31>>31)|0;if(g>>>0>>0){F3(n|0,f|0,g|0)|0;f=n+g|0;a[f>>0]=47;F3(f+1|0,k|0,e|0)|0;a[n+(j+g)>>0]=0;f=ua(n|0,o|0)|0;if(f|0)break;d=a[h>>0]|0}f=h+(d<<24>>24!=0&1)|0;if(!(a[f>>0]|0)){m=41;break d}}d=C_(28)|0;if(!d){S_(f,c[o>>2]|0)|0;m=41;break}else{c[d>>2]=f;c[d+4>>2]=c[o>>2];o=d+8|0;F3(o|0,k|0,e|0)|0;a[o+e>>0]=0;c[d+24>>2]=c[46891];c[46891]=d;break}}else m=41;while(0);if((m|0)==41){d=C_(28)|0;if(d){c[d>>2]=c[15558];c[d+4>>2]=c[15559];o=d+8|0;F3(o|0,k|0,e|0)|0;a[o+e>>0]=0;c[d+24>>2]=c[46891];c[46891]=d}}La(187568);d=(b|0)==0&(d|0)==0?62232:d}else{d=k;m=18}while(0);do if((m|0)==18){if((b|0)==0?(a[d+1>>0]|0)==46:0){d=62232;break}d=0}while(0);l=p;return d|0}function b0(a,b){a=a|0;b=b|0;c0(a,b)|0;return a|0}function c0(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function d0(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function e0(a){a=a|0;if(!a)a=0;else a=(f0(63396,a)|0)!=0&1;return a|0}function f0(a,b){a=a|0;b=b|0;var d=0;if(!b)a=a+((U$(a)|0)<<2)|0;else{while(1){d=c[a>>2]|0;if((d|0)==0|(d|0)==(b|0))break;else a=a+4|0}a=d|0?a:0}return a|0}function g0(a,b){a=a|0;b=b|0;do switch(b|0){case 1:{a=h0(a)|0;break}case 2:{a=T$(a)|0;break}case 3:{a=i0(a)|0;break}case 4:{a=j0(a)|0;break}case 5:{a=L$(a)|0;break}case 6:{a=k0(a)|0;break}case 7:{a=l0(a)|0;break}case 8:{a=W$(a)|0;break}case 9:{a=y$(a)|0;break}case 10:{a=e0(a)|0;break}case 11:{a=m0(a)|0;break}case 12:{a=n0(a)|0;break}default:a=0}while(0);return a|0}function h0(a){a=a|0;if(!(L$(a)|0))a=(T$(a)|0)!=0&1;else a=1;return a|0}function i0(a){a=a|0;return d0(a)|0}function j0(a){a=a|0;return ((a+-65529|0)>>>0<3|((a&-2|0)==8232|(a>>>0<32|(a+-127|0)>>>0<33)))&1|0}function k0(a){a=a|0;if(!(e0(a)|0))a=(W$(a)|0)!=0&1;else a=0;return a|0}function l0(a){a=a|0;return (R$(a)|0)!=(a|0)|0}function m0(a){a=a|0;return (o0(a)|0)!=(a|0)|0}function n0(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function o0(a){a=a|0;return S$(a,1)|0}function p0(a){a=a|0;return (a+-97|0)>>>0<26|0}function q0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=63484;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(O_()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=r0(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function r0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((s0(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=t0(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=s0(b,d,n,q,p)|0;if(h){nb[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=s0(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)u0(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function s0(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+64|0;D=I+16|0;E=I;A=I+24|0;G=I+8|0;H=I+20|0;c[D>>2]=e;w=(d|0)!=0;x=A+40|0;y=x;A=A+39|0;B=G+4|0;j=0;e=0;m=0;a:while(1){do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[(O_()|0)>>2]=75;e=-1;break}else{e=j+e|0;break}while(0);r=c[D>>2]|0;j=a[r>>0]|0;if(!(j<<24>>24)){v=88;break}else k=r;b:while(1){switch(j<<24>>24){case 37:{j=k;v=9;break b}case 0:{j=k;break b}default:{}}u=k+1|0;c[D>>2]=u;j=a[u>>0]|0;k=u}c:do if((v|0)==9)while(1){v=0;if((a[k+1>>0]|0)!=37)break c;j=j+1|0;k=k+2|0;c[D>>2]=k;if((a[k>>0]|0)!=37)break;else v=9}while(0);j=j-r|0;if(w)v0(d,r,j);if(j|0)continue;u=(E$(a[(c[D>>2]|0)+1>>0]|0)|0)==0;k=c[D>>2]|0;if(!u?(a[k+2>>0]|0)==36:0){s=(a[k+1>>0]|0)+-48|0;n=1;j=3}else{s=-1;n=m;j=1}j=k+j|0;c[D>>2]=j;k=a[j>>0]|0;u=(k<<24>>24)+-32|0;if(u>>>0>31|(1<>24)+-32|m;j=j+1|0;c[D>>2]=j;k=a[j>>0]|0;u=(k<<24>>24)+-32|0}while(!(u>>>0>31|(1<>24==42){if((E$(a[j+1>>0]|0)|0)!=0?(F=c[D>>2]|0,(a[F+2>>0]|0)==36):0){j=F+1|0;c[i+((a[j>>0]|0)+-48<<2)>>2]=10;j=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;k=1;n=F+3|0}else{if(n|0){e=-1;break}if(w){u=(c[f>>2]|0)+(4-1)&~(4-1);j=c[u>>2]|0;c[f>>2]=u+4}else j=0;k=0;n=(c[D>>2]|0)+1|0}c[D>>2]=n;t=(j|0)<0;u=t?0-j|0:j;m=t?m|8192:m;t=k;j=n}else{j=w0(D)|0;if((j|0)<0){e=-1;break}u=j;t=n;j=c[D>>2]|0}do if((a[j>>0]|0)==46){if((a[j+1>>0]|0)!=42){c[D>>2]=j+1;p=w0(D)|0;j=c[D>>2]|0;break}if(E$(a[j+2>>0]|0)|0?(C=c[D>>2]|0,(a[C+3>>0]|0)==36):0){p=C+2|0;c[i+((a[p>>0]|0)+-48<<2)>>2]=10;p=c[g+((a[p>>0]|0)+-48<<3)>>2]|0;j=C+4|0;c[D>>2]=j;break}if(t|0){e=-1;break a}if(w){q=(c[f>>2]|0)+(4-1)&~(4-1);j=c[q>>2]|0;c[f>>2]=q+4}else j=0;q=(c[D>>2]|0)+2|0;c[D>>2]=q;p=j;j=q}else p=-1;while(0);q=0;while(1){if(((a[j>>0]|0)+-65|0)>>>0>57){e=-1;break a}k=j;j=j+1|0;c[D>>2]=j;k=a[(a[k>>0]|0)+-65+(149862+(q*58|0))>>0]|0;n=k&255;if((n+-1|0)>>>0>=8)break;else q=n}if(!(k<<24>>24)){e=-1;break}o=(s|0)>-1;do if(k<<24>>24==19)if(o){e=-1;break a}else v=50;else{if(o){c[i+(s<<2)>>2]=n;o=g+(s<<3)|0;s=c[o+4>>2]|0;v=E;c[v>>2]=c[o>>2];c[v+4>>2]=s;v=50;break}if(!w){e=0;break a}x0(E,n,f);j=c[D>>2]|0}while(0);if((v|0)==50){v=0;if(!w){j=0;m=t;continue}}k=a[j+-1>>0]|0;k=(q|0)!=0&(k&15|0)==3?k&-33:k;j=m&-65537;s=(m&8192|0)==0?m:j;d:do switch(k|0){case 110:switch((q&255)<<24>>24){case 0:{c[c[E>>2]>>2]=e;j=0;m=t;continue a}case 1:{c[c[E>>2]>>2]=e;j=0;m=t;continue a}case 2:{j=c[E>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;m=t;continue a}case 3:{b[c[E>>2]>>1]=e;j=0;m=t;continue a}case 4:{a[c[E>>2]>>0]=e;j=0;m=t;continue a}case 6:{c[c[E>>2]>>2]=e;j=0;m=t;continue a}case 7:{j=c[E>>2]|0;c[j>>2]=e;c[j+4>>2]=((e|0)<0)<<31>>31;j=0;m=t;continue a}default:{j=0;m=t;continue a}}case 112:{k=120;j=p>>>0>8?p:8;m=s|8;v=62;break}case 88:case 120:{j=p;m=s;v=62;break}case 111:{k=E;j=c[k>>2]|0;k=c[k+4>>2]|0;o=z0(j,k,x)|0;m=y-o|0;q=0;n=150326;p=(s&8|0)==0|(p|0)>(m|0)?p:m+1|0;m=s;v=68;break}case 105:case 100:{k=E;j=c[k>>2]|0;k=c[k+4>>2]|0;if((k|0)<0){j=t3(0,0,j|0,k|0)|0;k=z;m=E;c[m>>2]=j;c[m+4>>2]=k;m=1;n=150326;v=67;break d}else{m=(s&2049|0)!=0&1;n=(s&2048|0)==0?((s&1|0)==0?150326:150328):150327;v=67;break d}}case 117:{k=E;m=0;n=150326;j=c[k>>2]|0;k=c[k+4>>2]|0;v=67;break}case 99:{a[A>>0]=c[E>>2];r=A;q=0;n=150326;o=x;k=1;break}case 109:{k=c$(c[(O_()|0)>>2]|0)|0;v=72;break}case 115:{k=c[E>>2]|0;k=k|0?k:150336;v=72;break}case 67:{c[G>>2]=c[E>>2];c[B>>2]=0;c[E>>2]=G;p=-1;m=G;v=76;break}case 83:{j=c[E>>2]|0;if(!p){B0(d,32,u,0,s);j=0;v=85}else{m=j;v=76}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{j=C0(d,+h[E>>3],u,p,s,k)|0;m=t;continue a}default:{q=0;n=150326;o=x;k=p;j=s}}while(0);e:do if((v|0)==62){s=E;r=c[s>>2]|0;s=c[s+4>>2]|0;o=y0(r,s,x,k&32)|0;n=(m&8|0)==0|(r|0)==0&(s|0)==0;q=n?0:2;n=n?150326:150326+(k>>4)|0;p=j;j=r;k=s;v=68}else if((v|0)==67){o=A0(j,k,x)|0;q=m;m=s;v=68}else if((v|0)==72){v=0;s=D$(k,0,p)|0;m=(s|0)==0;r=k;q=0;n=150326;o=m?k+p|0:s;k=m?p:s-k|0}else if((v|0)==76){v=0;o=m;j=0;k=0;while(1){n=c[o>>2]|0;if(!n)break;k=Y$(H,n)|0;if((k|0)<0|k>>>0>(p-j|0)>>>0)break;j=k+j|0;if(p>>>0>j>>>0)o=o+4|0;else break}if((k|0)<0){e=-1;break a}B0(d,32,u,j,s);if(!j){j=0;v=85}else{n=0;while(1){k=c[m>>2]|0;if(!k){v=85;break e}k=Y$(H,k)|0;n=k+n|0;if((n|0)>(j|0)){v=85;break e}v0(d,H,k);if(n>>>0>=j>>>0){v=85;break}else m=m+4|0}}}while(0);if((v|0)==68){v=0;k=(j|0)!=0|(k|0)!=0;j=(p|0)!=0|k;k=y-o+((k^1)&1)|0;r=j?o:x;o=x;k=j?((p|0)>(k|0)?p:k):p;j=(p|0)>-1?m&-65537:m}else if((v|0)==85){v=0;B0(d,32,u,j,s^8192);j=(u|0)>(j|0)?u:j;m=t;continue}p=o-r|0;o=(k|0)<(p|0)?p:k;s=o+q|0;m=(u|0)<(s|0)?s:u;B0(d,32,m,s,j);v0(d,n,q);B0(d,48,m,s,j^65536);B0(d,48,o,p,0);v0(d,r,p);B0(d,32,m,s,j^8192);j=m;m=t}f:do if((v|0)==88)if(!d)if(m){e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;x0(g+(e<<3)|0,j,f);j=e+1|0;if((e|0)<9)e=j;else{e=j;break}}if((e|0)<10)while(1){if(c[i+(e<<2)>>2]|0){e=-1;break f}if((e|0)<9)e=e+1|0;else{e=1;break}}else e=1}else e=0;while(0);l=I;return e|0}function t0(a){a=a|0;return 0}function u0(a){a=a|0;return}function v0(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))E0(b,d,a)|0;return}function w0(b){b=b|0;var d=0,e=0;if(!(E$(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((E$(a[e>>0]|0)|0)!=0)}return d|0}function x0(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function y0(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[150374+(b&15)>>0]|0|f;b=z3(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function z0(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=z3(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function A0(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=x3(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=w3(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function B0(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;H3(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{v0(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}v0(a,f,e)}l=g;return}function C0(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;D0(e)|0;if((z|0)<0){e=-e;C=1;B=150343}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?150344:150349):150346}D0(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;B0(b,32,f,j,h&-65537);v0(b,B,C);v0(b,e!=e|0.0!=0.0?(G?150511:150370):G?150362:150366,3);B0(b,32,f,j,h^8192)}else{r=+x$(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=A0(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[150374+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;B0(b,32,f,F,h);v0(b,s,q);B0(b,48,f,F,h^65536);v0(b,G,k);B0(b,48,j-k|0,0,0);v0(b,o,E);B0(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=A3(c[j>>2]|0,0,o|0)|0;x=s3(x|0,z|0,m|0,0)|0;y=z;v=x3(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=w3(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=A0(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;B0(b,32,f,j,h);v0(b,B,C);B0(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=A0(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){H3(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}v0(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)v0(b,150390,1);if(n>>>0>>0&(k|0)>0)while(1){m=A0(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){H3(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}v0(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}B0(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=A0(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;v0(b,m,1);if(s&(k|0)<1){m=n;break}v0(b,150390,1);m=n}else{if(m>>>0<=G>>>0)break;H3(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;v0(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}B0(b,48,k+18|0,18,0);v0(b,v,E-v|0)}B0(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function D0(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function E0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(F0(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=nb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=nb[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);F3(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function F0(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function G0(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;F3(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function H0(b){b=b|0;var c=0,d=0,e=0,f=0;e=a[b>>0]|0;c=1;d=150392;f=97;while(1){if(e<<24>>24==f<<24>>24?(b$(b,d)|0)==0:0)break;d=d+6|0;f=a[d>>0]|0;if(!(f<<24>>24)){c=0;break}else c=c+1|0}return c|0}function I0(a){a=a|0;var b=0;b=(p0(a)|0)==0;return (b?a:a&95)|0}function J0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;do if(b>>>0>6)d=0;else{ta(187576);if((b|0)!=6){d=K0(b,d)|0;La(187576);break}if(!d){d=194052;b=0}else{b=g;e=150465;f=b+16|0;do{a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}while((b|0)<(f|0));f=0;do{b=V_(d,59)|0;e=b-d|0;if((e|0)<16){F3(g|0,d|0,e|0)|0;a[g+e>>0]=0;d=(a[b>>0]|0)==0?d:b+1|0}K0(f,g)|0;f=f+1|0}while((f|0)!=6);d=194052;b=0}while(1){f=c[187536+(b<<2)>>2]|0;f=f|0?f+8|0:150481;e=W_(f)|0;F3(d|0,f|0,e|0)|0;f=d+e|0;a[f>>0]=59;b=b+1|0;if((b|0)==6)break;else d=d+(e+1)|0}a[f>>0]=0;La(187576);d=194052}while(0);l=h;return d|0}function K0(a,b){a=a|0;b=b|0;if(!b)a=c[187536+(a<<2)>>2]|0;else{b=a0(a,b)|0;c[187536+(a<<2)>>2]=b;a=b}return (a|0?a+8|0:150481)|0}function L0(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function M0(a){a=a|0;return N0(a)|0}function N0(a){a=a|0;return B3(a|0)|0}function O0(b,e,f){b=b|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;if((c[f+76>>2]|0)>-1)m=t0(f)|0;else m=0;g=e+-1|0;if((e|0)<2){n=f+74|0;l=a[n>>0]|0;a[n>>0]=l+255|l;if(m|0)u0(f);if(!g)a[b>>0]=0;else b=0}else{a:do if(g){k=f+4|0;l=f+8|0;e=b;while(1){h=c[k>>2]|0;o=h;p=(c[l>>2]|0)-o|0;i=D$(h,10,p)|0;j=(i|0)==0;i=j?p:1-o+i|0;i=i>>>0>>0?i:g;F3(e|0,h|0,i|0)|0;h=(c[k>>2]|0)+i|0;c[k>>2]=h;e=e+i|0;i=g-i|0;if(!(j&(i|0)!=0)){n=17;break a}if(h>>>0>=(c[l>>2]|0)>>>0){g=J$(f)|0;if((g|0)<0)break;else j=g}else{c[k>>2]=h+1;j=d[h>>0]|0}g=i+-1|0;h=e+1|0;a[e>>0]=j;if(!((g|0)!=0&(j&255|0)!=10)){e=h;n=17;break a}else e=h}if((e|0)!=(b|0)?(c[f>>2]&16|0)!=0:0)n=17;else b=0}else{e=b;n=17}while(0);if((n|0)==17)if(!b)b=0;else a[e>>0]=0;if(m)u0(f)}return b|0}function P0(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=A$(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=Q0(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=R0(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=S0(b,c)|0;break}else{b=T0(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function Q0(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function R0(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function S0(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function T0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(L0(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=D$(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function U0(a,b,c){a=a|0;b=b|0;c=c|0;V0(a,b,c)|0;return a|0}function V0(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);H3(b|0,0,e|0)|0;return b|0}function W0(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+32|0;f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{h=f+(((e&255)>>>5&255)<<2)|0;c[h>>2]=c[h>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{if(!(c[f+(((e&255)>>>5&255)<<2)>>2]&1<<(e&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function X0(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P_(a)|0;a=Ja(6,d|0)|0;a=N_((a|0)==-4?0:a)|0;l=b;return a|0}function Y0(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Z0(a,b,f)|0;l=e;return d|0}function Z0(a,b,c){a=a|0;b=b|0;c=c|0;return q0(a,2147483647,b,c)|0}function _0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)$0(a,d,e,f,j);else b1(a,d,e,k,f,0,j);if((f|0)==1){c1(k,1);f=0;break}else{c1(k,b);f=1;break}}else{$0(a,d,e,f,j);a1(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}b1(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){c1(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;a1(k,1);b1(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);c1(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;b1(h,d,e,k,n,1,j);a=h;f=n;continue}b=d1(k)|0;a1(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function $0(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((lb[d&127](a,g)|0)>-1?(lb[d&127](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((lb[d&127](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);f1(b,m,e);l=n;return}function a1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function b1(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(lb[d&127](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((lb[d&127](g,j)|0)>-1){i=10;break a}if((lb[d&127](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=d1(n)|0;a1(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((lb[d&127](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){f1(b,o,e);$0(a,b,d,f,h)}l=p;return}function c1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=e1(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function e1(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function f1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;F3(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;F3(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function g1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=r0(a,b,f)|0;l=e;return d|0}function h1(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;sa(0,e|0)|0;d=0;e=(c[e+4>>2]|0)*65537^(e>>>4)+b;while(1){a[b+d>>0]=(e&15)+65|e<<1&32;d=d+1|0;if((d|0)==6)break;else e=e>>>5}l=f;return b|0}function i1(a,b,c){a=a|0;b=b|0;c=c|0;c=F$(a,b,c,-2147483648,0)|0;return c|0}function j1(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h;e=a[d>>0]|0;a:do if(e<<24>>24!=0?(a[d+1>>0]|0)!=0:0){H3(f|0,0,32)|0;e=a[d>>0]|0;if(e<<24>>24)do{i=f+(((e&255)>>>5&255)<<2)|0;c[i>>2]=c[i>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);d=a[b>>0]|0;if(!(d<<24>>24))e=b;else{e=b;do{if(c[f+(((d&255)>>>5&255)<<2)>>2]&1<<(d&31)|0)break a;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0)}}else g=3;while(0);if((g|0)==3)e=V_(b,e<<24>>24)|0;l=h;return e-b|0}function k1(b,d){b=b|0;d=d|0;var e=0;if(!b){b=c[46896]|0;if(!b)b=0;else e=3}else e=3;do if((e|0)==3){b=b+(W0(b,d)|0)|0;if(!(a[b>>0]|0)){c[46896]=0;b=0;break}d=b+(j1(b,d)|0)|0;c[46896]=d;if(!(a[d>>0]|0)){c[46896]=0;break}else{c[46896]=d+1;a[d>>0]=0;break}}while(0);return b|0}function l1(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>24);return c|0}function m1(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!b){b=c[e>>2]|0;if(!b)b=0;else f=3}else f=3;do if((f|0)==3){b=b+(W0(b,d)|0)|0;if(!(a[b>>0]|0)){c[e>>2]=0;b=0;break}d=b+(j1(b,d)|0)|0;c[e>>2]=d;if(!(a[d>>0]|0)){c[e>>2]=0;break}else{c[e>>2]=d+1;a[d>>0]=0;break}}while(0);return b|0}function n1(a){a=a|0;var b=0,c=0;b=(W_(a)|0)+1|0;c=C_(b)|0;if(!c)a=0;else a=F3(c|0,a|0,b|0)|0;return a|0}function o1(a,b){a=a|0;b=b|0;return l1(a,b,(W_(a)|0)+1|0)|0}function p1(a,b){a=a|0;b=b|0;b0(a+(W_(a)|0)|0,b)|0;return a|0}function q1(b,c){b=b|0;c=c|0;c=b+(j1(b,c)|0)|0;return (a[c>>0]|0?c:0)|0}function r1(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(t0(a)|0)==0;a=(c[a>>2]|0)>>>4&1}else a=(c[a>>2]|0)>>>4&1;return a|0}function s1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=t0(a)|0;else f=0;t1(a);g=(c[a>>2]&1|0)!=0;if(!g){e=u1()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;v1()}b=w1(a)|0;b=kb[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)D_(d);if(g){if(f|0)u0(a)}else D_(a);return b|0}function t1(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(y1()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function u1(){ta(187588);return 187596}function v1(){La(187588);return}function w1(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=x1(a)|0;break}d=(t0(a)|0)==0;b=x1(a)|0;if(!d)u0(a)}else{if(!(c[15685]|0))b=0;else b=w1(c[15685]|0)|0;a=c[(u1()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=t0(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=x1(a)|0|b;if(d|0)u0(a);a=c[a+56>>2]|0}while((a|0)!=0);v1()}while(0);return b|0}function x1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(nb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)nb[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function y1(){return e$()|0}function z1(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+64|0;j=k+40|0;h=k+24|0;g=k+16|0;f=k;i=k+56|0;if(A$(150498,a[d>>0]|0)|0){e=C_(1156)|0;if(!e)e=0;else{H3(e|0,0,124)|0;if(!(A$(d,43)|0))c[e>>2]=(a[d>>0]|0)==114?8:4;if(A$(d,101)|0){c[f>>2]=b;c[f+4>>2]=2;c[f+8>>2]=1;Ea(221,f|0)|0}if((a[d>>0]|0)==97){c[g>>2]=b;c[g+4>>2]=3;d=Ea(221,g|0)|0;if(!(d&1024)){c[h>>2]=b;c[h+4>>2]=4;c[h+8>>2]=d|1024;Ea(221,h|0)|0}f=c[e>>2]|128;c[e>>2]=f}else f=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;d=e+75|0;a[d>>0]=-1;if((f&8|0)==0?(c[j>>2]=b,c[j+4>>2]=21523,c[j+8>>2]=i,(Ia(54,j|0)|0)==0):0)a[d>>0]=10;c[e+32>>2]=15;c[e+36>>2]=18;c[e+40>>2]=16;c[e+12>>2]=17;if(!(c[46875]|0))c[e+76>>2]=-1;A1(e)|0}}else{c[(O_()|0)>>2]=22;e=0}l=k;return e|0}function A1(a){a=a|0;var b=0,d=0;b=u1()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;v1();return a|0}function B1(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;g=j;a:do if(!e)b=0;else{do if(f|0){i=(b|0)==0?g:b;b=a[e>>0]|0;if(b<<24>>24>-1){c[i>>2]=b&255;b=b<<24>>24!=0&1;break a}h=(c[c[(C1()|0)+188>>2]>>2]|0)==0;b=a[e>>0]|0;if(h){c[i>>2]=b<<24>>24&57343;b=1;break a}b=(b&255)+-194|0;if(b>>>0<=50){g=e+1|0;h=c[62280+(b<<2)>>2]|0;if(f>>>0<4?h&-2147483648>>>((f*6|0)+-6|0)|0:0)break;b=d[g>>0]|0;f=b>>>3;if((f+-16|f+(h>>26))>>>0<=7){b=b+-128|h<<6;if((b|0)>=0){c[i>>2]=b;b=2;break a}g=(d[e+2>>0]|0)+-128|0;if(g>>>0<=63){g=g|b<<6;if((g|0)>=0){c[i>>2]=g;b=3;break a}b=(d[e+3>>0]|0)+-128|0;if(b>>>0<=63){c[i>>2]=b|g<<6;b=4;break a}}}}}while(0);c[(O_()|0)>>2]=84;b=-1}while(0);l=j;return b|0}function C1(){return e$()|0}function D1(a,b){a=a|0;b=b|0;var c=0;c=W_(a)|0;return ((E1(a,1,c,b)|0)!=(c|0))<<31>>31|0}function E1(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(t0(e)|0)==0;a=E0(a,f,e)|0;if(!g)u0(e)}else a=E0(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function F1(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(F0(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((nb[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function G1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=N_(Fa(3,f|0)|0)|0;l=e;return d|0}function H1(){var a=0,b=0;b=l;l=l+16|0;a=Da(20,b|0)|0;l=b;return a|0}function I1(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=b;e=150483;f=d+15|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));if(!c){a[b+14>>0]=48;a[b+15>>0]=0}else{e=c;d=14;while(1){d=d+1|0;if(e>>>0<10)break;else e=(e>>>0)/10|0}a[b+d>>0]=0;while(1){d=d+-1|0;a[b+d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}}return}function J1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g+40|0;e=g+8|0;d=g;c[d>>2]=a;c[d+4>>2]=b;d=Ca(197,d|0)|0;if((d|0)==-9?(c[e>>2]=a,c[e+4>>2]=1,(Ea(221,e|0)|0)>=0):0){I1(e,a);c[f>>2]=e;c[f+4>>2]=b;b=N_(Ba(195,f|0)|0)|0}else b=N_(d)|0;l=g;return b|0}function K1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;b=N_(Ga(33,e|0)|0)|0;l=d;return b|0}function L1(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(A$(150498,a[d>>0]|0)|0){f=M1(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=N_(Ha(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Ea(221,g|0)|0}b=z1(e,d)|0;if(!b){c[h>>2]=e;Ja(6,h|0)|0;b=0}}else b=0}else{c[(O_()|0)>>2]=22;b=0}l=i;return b|0}function M1(b){b=b|0;var c=0,d=0,e=0;d=(A$(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(A$(b,120)|0)==0;d=e?d:d|128;b=(A$(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function N1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=O1(a,b,f)|0;l=e;return d|0}function O1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=38;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Q1(e,b,d)|0;l=g;return h|0}function P1(a,b,c){a=a|0;b=b|0;c=c|0;return Y1(a,b,c)|0}function Q1(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=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;L=l;l=l+288|0;F=L+8|0;G=L+17|0;H=L;I=L+16|0;if((c[b+76>>2]|0)>-1)K=t0(b)|0;else K=0;i=a[e>>0]|0;a:do if(i<<24>>24){y=b+4|0;A=b+100|0;B=b+108|0;C=b+8|0;D=G+10|0;E=G+33|0;x=F+4|0;p=e;u=0;e=0;j=0;k=i;i=0;b:while(1){c:do if(!(B$(k&255)|0)){k=(a[p>>0]|0)==37;d:do if(k){m=p+1|0;n=a[m>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{w=0;m=p+2|0;break}default:{if(E$(n&255)|0?(a[p+2>>0]|0)==36:0){w=R1(f,(d[m>>0]|0)+-48|0)|0;m=p+3|0;break e}v=(c[f>>2]|0)+(4-1)&~(4-1);w=c[v>>2]|0;c[f>>2]=v+4}}while(0);if(!(E$(d[m>>0]|0)|0))s=0;else{k=0;do{k=(k*10|0)+-48+(d[m>>0]|0)|0;m=m+1|0}while((E$(d[m>>0]|0)|0)!=0);s=k}p=a[m>>0]|0;n=m+1|0;if(p<<24>>24==109){k=(w|0)!=0&1;j=0;m=n;p=a[n>>0]|0;i=0}else k=0;n=m+1|0;switch(p<<24>>24){case 104:{v=(a[n>>0]|0)==104;p=v?-2:-1;m=v?m+2|0:n;break}case 108:{v=(a[n>>0]|0)==108;p=v?3:1;m=v?m+2|0:n;break}case 106:{p=3;m=n;break}case 116:case 122:{p=1;m=n;break}case 76:{p=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{p=0;break}default:{J=136;break b}}r=d[m>>0]|0;t=(r&47|0)==3;r=t?r|32:r;t=t?1:p;q=r&255;switch(q<<24>>24){case 99:{s=(s|0)>1?s:1;break}case 91:break;case 110:{S1(w,t,u,((u|0)<0)<<31>>31);n=u;break c}default:{G$(b,0);do{n=c[y>>2]|0;if(n>>>0<(c[A>>2]|0)>>>0){c[y>>2]=n+1;n=d[n>>0]|0}else n=I$(b)|0}while((B$(n)|0)!=0);if(!(c[A>>2]|0))n=c[y>>2]|0;else{n=(c[y>>2]|0)+-1|0;c[y>>2]=n}u=(c[B>>2]|0)+u+n-(c[C>>2]|0)|0}}G$(b,s);p=c[y>>2]|0;n=c[A>>2]|0;if(p>>>0>>0)c[y>>2]=p+1;else{if((I$(b)|0)<0){J=136;break b}n=c[A>>2]|0}if(n|0)c[y>>2]=(c[y>>2]|0)+-1;f:do switch(q<<24>>24){case 91:case 99:case 115:{v=(r|0)==99;g:do if((r|16|0)==115){H3(G|0,-1,257)|0;a[G>>0]=0;if((r|0)==115){a[E>>0]=0;a[D>>0]=0;a[D+1>>0]=0;a[D+2>>0]=0;a[D+3>>0]=0;a[D+4>>0]=0}}else{n=m+1|0;q=(a[n>>0]|0)==94;r=q&1;m=q?m+2|0:n;H3(G|0,r|0,257)|0;a[G>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;J=65;break}case 93:{n=94;J=65;break}default:{}}while(1){if((J|0)==65){J=0;a[G+n>>0]=r^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{J=136;break b}case 93:break g;case 45:{q=m+1|0;n=a[q>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){p=(r^1)&255;m=m&255;do{m=m+1|0;a[G+m>>0]=p;n=a[q>>0]|0}while((m|0)<(n&255|0));m=q}else m=q;break}default:{}}while(0);n=(n&255)+1|0;J=65}}while(0);n=v?s+1|0:31;r=(t|0)==1;t=(k|0)!=0;i:do if(r){if(t){i=C_(n<<2)|0;if(!i){j=0;i=0;J=136;break b}}else i=w;c[F>>2]=0;c[x>>2]=0;q=n;j=0;j:while(1){p=(i|0)==0;do{k:while(1){n=c[y>>2]|0;if(n>>>0<(c[A>>2]|0)>>>0){c[y>>2]=n+1;n=d[n>>0]|0}else n=I$(b)|0;if(!(a[G+(n+1)>>0]|0))break j;a[I>>0]=n;switch(X$(H,I,1,F)|0){case -1:{j=0;J=136;break b}case -2:break;default:break k}}if(!p){c[i+(j<<2)>>2]=c[H>>2];j=j+1|0}}while(!(t&(j|0)==(q|0)));j=q<<1|1;n=F_(i,j<<2)|0;if(!n){j=0;J=136;break b}else{p=q;q=j;i=n;j=p}}if(!(T1(F)|0)){j=0;J=136;break b}else{q=j;j=0;p=i}}else{if(t){j=C_(n)|0;if(!j){j=0;i=0;J=136;break b}else{p=n;i=0}while(1){do{n=c[y>>2]|0;if(n>>>0<(c[A>>2]|0)>>>0){c[y>>2]=n+1;n=d[n>>0]|0}else n=I$(b)|0;if(!(a[G+(n+1)>>0]|0)){q=i;p=0;i=0;break i}a[j+i>>0]=n;i=i+1|0}while((i|0)!=(p|0));i=p<<1|1;n=F_(j,i)|0;if(!n){i=0;J=136;break b}else{q=p;p=i;j=n;i=q}}}if(!w)while(1){i=c[y>>2]|0;if(i>>>0<(c[A>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if(!(a[G+(i+1)>>0]|0)){q=0;j=0;p=0;i=0;break i}}else j=0;while(1){i=c[y>>2]|0;if(i>>>0<(c[A>>2]|0)>>>0){c[y>>2]=i+1;i=d[i>>0]|0}else i=I$(b)|0;if(!(a[G+(i+1)>>0]|0)){q=j;j=w;p=0;i=0;break i}a[w+j>>0]=i;j=j+1|0}}while(0);if(!(c[A>>2]|0))n=c[y>>2]|0;else{n=(c[y>>2]|0)+-1|0;c[y>>2]=n}n=n-(c[C>>2]|0)+(c[B>>2]|0)|0;if(!n)break b;if(!((n|0)==(s|0)|v^1))break b;do if(t)if(r){c[w>>2]=p;break}else{c[w>>2]=j;break}while(0);if(!v){if(p|0)c[p+(q<<2)>>2]=0;if(!j){j=0;break f}a[j+q>>0]=0}break}case 120:case 88:case 112:{n=16;J=124;break}case 111:{n=8;J=124;break}case 117:case 100:{n=10;J=124;break}case 105:{n=0;J=124;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+U1(b,t,0);if((c[B>>2]|0)==((c[C>>2]|0)-(c[y>>2]|0)|0))break b;if(w)switch(t|0){case 0:{g[w>>2]=o;break f}case 1:{h[w>>3]=o;break f}case 2:{h[w>>3]=o;break f}default:break f}break}default:{}}while(0);do if((J|0)==124){J=0;n=H$(b,n,0,-1,-1)|0;if((c[B>>2]|0)==((c[C>>2]|0)-(c[y>>2]|0)|0))break b;if((w|0)!=0&(r|0)==112){c[w>>2]=n;break}else{S1(w,t,n,z);break}}while(0);e=e+((w|0)!=0&1)|0;n=(c[B>>2]|0)+u+(c[y>>2]|0)-(c[C>>2]|0)|0;break c}while(0);m=p+(k&1)|0;G$(b,0);k=c[y>>2]|0;if(k>>>0<(c[A>>2]|0)>>>0){c[y>>2]=k+1;k=d[k>>0]|0}else k=I$(b)|0;if((k|0)!=(d[m>>0]|0)){J=22;break b}n=u+1|0}else{m=p;while(1){k=m+1|0;if(!(B$(d[k>>0]|0)|0))break;else m=k}G$(b,0);do{k=c[y>>2]|0;if(k>>>0<(c[A>>2]|0)>>>0){c[y>>2]=k+1;k=d[k>>0]|0}else k=I$(b)|0}while((B$(k)|0)!=0);if(!(c[A>>2]|0))k=c[y>>2]|0;else{k=(c[y>>2]|0)+-1|0;c[y>>2]=k}n=(c[B>>2]|0)+u+k-(c[C>>2]|0)|0}while(0);p=m+1|0;k=a[p>>0]|0;if(!(k<<24>>24))break a;else u=n}if((J|0)==22){if(c[A>>2]|0)c[y>>2]=(c[y>>2]|0)+-1;if((e|0)!=0|(k|0)>-1)break;else{e=0;J=137}}else if((J|0)==136)if(!e){e=k;J=137}if((J|0)==137){k=e;e=-1}if(k){D_(j);D_(i)}}else e=0;while(0);if(K|0)u0(b);l=L;return e|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function S1(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function T1(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function U1(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0}while((B$(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=I$(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[150502+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=I$(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[150511+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=I$(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=I$(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(O_()|0)>>2]=22;G$(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=I$(b)|0;if((e|32|0)==120){g=+V1(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+W1(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(O_()|0)>>2]=22;G$(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function V1(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=I$(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=I$(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=I$(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=I$(a)|0;l=s3(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=s3(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=I$(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else G$(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=s3(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=X1(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){G$(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=A3(q|0,p|0,2)|0;l=s3(l|0,z|0,-32,-1)|0;l=s3(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(O_()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(O_()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=s3(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=t3(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=s3(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+p$(+m$(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(O_()|0)>>2]=34;h=+q$(h,l)}while(0);return +h}function W1(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=I$(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=I$(a)|0;if((b|0)==48){k=0;b=0;while(1){k=s3(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=I$(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=s3(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=I$(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=X1(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){G$(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=s3(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(O_()|0)>>2]=22;G$(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(O_()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(O_()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[63608+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[63608+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[63608+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=A3(c[p>>2]|0,0,29)|0;k=s3(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=w3(k|0,m|0,1e9,0)|0;k=x3(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[63640+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+p$(+m$(1.0,105-n|0),j);r=+r$(j,+m$(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+r$(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(O_()|0)>>2]=34}while(0);i=+q$(i,b)}while(0);l=J;return +i}function X1(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=r3(g|0,b|0,10,0)|0;g=z;e=s3(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=s3(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=I$(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=t3(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function Y1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=D$(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;F3(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Z1(a,b,c){a=a|0;b=b|0;c=c|0;return _1(a,b,c)|0}function _1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(t0(a)|0)==0;b=$1(a,b,d)|0;if(!e)u0(a)}else b=$1(a,b,d)|0;return b|0}function $1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(nb[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((nb[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function a2(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;while(1){e=b+1|0;if(!(B$(a[b>>0]|0)|0))break;else b=e}d=a[b>>0]|0;switch(d<<24>>24|0){case 45:{b=1;f=5;break}case 43:{b=0;f=5;break}default:{g=0;c=b;b=d}}if((f|0)==5){g=b;c=e;b=a[e>>0]|0}if(!(E$(b<<24>>24)|0))b=0;else{b=0;do{b=(b*10|0)+48-(a[c>>0]|0)|0;c=c+1|0}while((E$(a[c>>0]|0)|0)!=0)}return (g|0?b:0-b|0)|0}function b2(a){a=a|0;return +(+c2(a,0))}function c2(a,b){a=a|0;b=b|0;return +(+d2(a,b,1))}function d2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=l;l=l+128|0;h=i;f=h;g=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;G$(h,0);e=+U1(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=d|0?a+d|0:a;l=i;return +e}function e2(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;a:do if(!c)b=0;else{h=b;while(1){g=c>>>1;b=h+(O(g,d)|0)|0;f=lb[e&127](a,b)|0;if(!f)break a;if((c|0)==1){b=0;break a}f=(f|0)<0;c=f?g:c-g|0;if(!c){b=0;break}else h=f?h:b}}while(0);return b|0}function f2(a,c){a=a|0;c=c|0;var d=0,f=0,g=0;g=a+2|0;f=a+4|0;d=r3((e[c+2>>1]|0)<<16|(e[c>>1]|0)|0,e[c+4>>1]|0|0,(e[g>>1]|0)<<16|(e[a>>1]|0)|0,e[f>>1]|0|0)|0;c=s3(d|0,z|0,e[c+6>>1]|0|0,0)|0;d=z;b[a>>1]=c;a=z3(c|0,d|0,16)|0;b[g>>1]=a;b[f>>1]=d;z=d&65535;return c|0}function g2(){var a=0,b=0,d=0;b=183528;b=r3(c[b>>2]|0,c[b+4>>2]|0,1284865837,1481765933)|0;b=s3(b|0,z|0,1,0)|0;a=z;d=183528;c[d>>2]=b;c[d+4>>2]=a;a=z3(b|0,a|0,33)|0;return a|0}function h2(a){a=a|0;F3(190672,65740,6)|0;F3(65740,a|0,6)|0;return 190672}function i2(a){a=a|0;var c=0,d=0;c=l;l=l+16|0;d=c;b[d>>1]=13070;b[d+2>>1]=a;b[d+4>>1]=a>>>16;h2(d)|0;l=c;return}function j2(a){a=a|0;var b=0;b=f2(a,65746)|0;b=A3(b|0,z|0,4)|0;a=z|1072693248;c[j>>2]=b;c[j+4>>2]=a;return +(+h[j>>3]+-1.0)}function k2(){return +(+j2(65740))}function l2(a,b){a=a|0;b=b|0;if(!a)b=E_(1,24)|0;else H3(b|0,0,24)|0;return b|0}function m2(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0)do{D_(c[b>>2]|0);d=b;b=c[b+4>>2]|0;D_(d)}while((b|0)!=0);D_(a);return}function n2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;h=a+16|0;a:do if(!(c[h>>2]|0)){k=a+12|0;g=c[k>>2]|0;if(g>>>0>>0){do if(b)if(!d){c[h>>2]=1;b=0;break a}else{h=a+8|0;c[h>>2]=d;g=1024;b=d;break}else{g=f<<3;g=g>>>0>1024?g:1024;j=C_(8)|0;if(!j){c[h>>2]=1;b=0;break a}b=C_(g)|0;c[j>>2]=b;d=b;if(!b){D_(j);c[h>>2]=1;b=0;break a}c[j+4>>2]=0;h=a+4|0;i=c[h>>2]|0;if(i|0)c[i+4>>2]=j;if(!(c[a>>2]|0))c[a>>2]=j;c[h>>2]=j;h=a+8|0;c[h>>2]=d}while(0);c[k>>2]=g}else{h=a+8|0;b=c[h>>2]|0;d=b}d=d+f&3;d=((d|0)==0?0:4-d|0)+f|0;c[h>>2]=b+d;c[k>>2]=g-d;if(e)H3(b|0,0,d|0)|0}else b=0;while(0);return b|0}function o2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+48|0;h=v;t=p2()|0;a:do if(!t)b=12;else{u=l2(0,0)|0;if(!u){q2(t);b=12;break}H3(h|0,0,36)|0;c[h>>2]=u;c[h+4>>2]=t;c[h+16>>2]=b;c[h+32>>2]=d;e=h+28|0;c[e>>2]=-1;b=r2(h)|0;b:do if(!b){g=h+20|0;r=c[g>>2]|0;c[a>>2]=r+-1;i=c[h+8>>2]|0;if((c[e>>2]|0)<(r|0)){r=E_(1,68)|0;if(r){q=(c[e>>2]|0)>>>31^1;c[r+60>>2]=q;c[r+64>>2]=0;c[r+28>>2]=c[g>>2];if((d&8|0)==0|(q|0)!=0){b=s2(0,t,i,r)|0;if(b|0){g=r;h=0;i=0;f=0;e=0;break}e=r+40|0;b=c[e>>2]|0;if((b|0)>0){b=C_((b<<2)+4|0)|0;if(!b){g=r;h=0;i=0;b=12;f=0;e=0;break}c[r+32>>2]=b;H3(b|0,-1,(c[e>>2]<<2)+4|0)|0;f=b;b=c[e>>2]|0}else f=0;q=E_(b<<1|1,4)|0;c[r+36>>2]=q;if(!q){g=r;h=0;i=0;b=12;f=0;e=0;break}b=E_(c[g>>2]|0,12)|0;if(!b){g=r;h=0;i=0;b=12;f=0;e=0;break}c[r+16>>2]=b;b=s2(u,t,i,r)|0;if(!b)b=f;else{g=r;h=0;i=0;f=0;e=0;break}}else b=0;p=h+24|0;b=t2(u,t,i,p,b)|0;if(!b){b=c[p>>2]|0;c[p>>2]=b+1;b=u2(u,0,0,b)|0;if((b|0)!=0?(s=v2(u,i,b)|0,(s|0)!=0):0){b=w2(u,t,s)|0;if(!b){o=C_(c[p>>2]<<2)|0;if(o){q=C_(c[p>>2]<<2)|0;if(q){b=c[p>>2]|0;if((b|0)>0)H3(o|0,0,b<<2|0)|0;x2(s,0,o,0)|0;f=c[p>>2]|0;if((f|0)>0){b=0;e=0;do{c[q+(e<<2)>>2]=b;n=o+(e<<2)|0;b=b+1+(c[n>>2]|0)|0;c[n>>2]=0;e=e+1|0}while((e|0)<(f|0));k=b}else k=0;m=E_(k+1|0,32)|0;if(m){c[r>>2]=m;n=r+4|0;c[n>>2]=k;b=x2(s,m,o,q)|0;if(!b){c[r+20>>2]=0;f=s+24|0;b=c[f>>2]|0;e=0;while(1){e=e+1|0;if((c[b>>2]|0)<=-1)break;else b=b+32|0}j=E_(e,32)|0;if(!j){g=r;h=o;i=q;b=12;f=o;e=q}else{c[r+8>>2]=j;f=c[f>>2]|0;e=c[f>>2]|0;if((e|0)>-1){b=0;do{c[j+(b<<5)+8>>2]=m+(c[q+(e<<2)>>2]<<5);c[j+(b<<5)+12>>2]=e;h=j+(b<<5)+16|0;c[h>>2]=0;i=f+12|0;g=c[i>>2]|0;if(g|0){e=0;do{w=e;e=e+1|0}while((c[g+(w<<2)>>2]|0)>-1);e=e<<2;g=C_(e)|0;c[h>>2]=g;if(!g){g=r;h=o;i=q;b=12;f=o;e=q;break b}F3(g|0,c[i>>2]|0,e|0)|0}c[j+(b<<5)+20>>2]=c[f+16>>2];b=b+1|0;f=f+32|0;e=c[f>>2]|0}while((e|0)>-1)}else b=0;c[j+(b<<5)+8>>2]=0;c[n>>2]=k;c[r+12>>2]=m+(c[q+(c[c[s+28>>2]>>2]<<2)>>2]<<5);c[r+52>>2]=c[p>>2];c[r+56>>2]=d;m2(u);q2(t);D_(o);D_(q);c[a+4>>2]=r;b=0;break a}}else{g=r;h=o;i=q;f=o;e=q}}else{g=r;h=o;i=q;b=12;f=o;e=q}}else{g=r;h=o;i=q;b=12;f=o;e=0}}else{g=r;h=o;i=0;b=12;f=0;e=0}}else{g=r;h=0;i=0;f=0;e=0}}else{g=r;h=0;i=0;b=12;f=0;e=0}}else{g=r;h=0;i=0;f=0;e=0}}else{g=r;h=0;i=0;b=12;f=0;e=0}}else{g=0;h=0;i=0;b=6;f=0;e=0}}else{g=0;h=0;i=0;f=0;e=0}while(0);m2(u);q2(t);if(h|0)D_(f);if(i|0)D_(e);c[a+4>>2]=g;y2(a)}while(0);l=v;return b|0}function p2(){var a=0,b=0;a=C_(20)|0;do if(a){b=C_(2048)|0;c[a+16>>2]=b;if(!b){D_(a);a=0;break}else{c[a>>2]=512;c[a+4>>2]=1024e3;c[a+8>>2]=128;c[a+12>>2]=0;break}}while(0);return a|0}function q2(a){a=a|0;D_(c[a+16>>2]|0);D_(a);return}function r2(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;p=u+4|0;q=u;r=c[b+32>>2]&1;s=b+16|0;e=c[s>>2]|0;t=c[b+4>>2]|0;d=C2(t,0)|0;a:do if(!d){m=(r|0)!=0;n=b+8|0;o=b+12|0;d=0;k=1;b:while(1){g=0;h=d;f=0;c:while(1){d=a[e>>0]|0;if(m){if(d<<24>>24==40)break;if((h|0)!=0&d<<24>>24==41)j=13;else j=14}else if(d<<24>>24==92)switch(a[e+1>>0]|0){case 40:break c;case 41:{j=13;break}default:j=14}else j=14;if((j|0)==13){j=0;i=u2(c[b>>2]|0,-1,-1,-1)|0;c[n>>2]=i;if(!i){d=12;break a}else i=f}else if((j|0)==14){j=0;d=R2(b,e)|0;if(d|0)break a;i=f;e=c[o>>2]|0}d:while(1){e:while(1){d=a[e>>0]|0;switch(d<<24>>24){case 42:case 92:break;default:{if(!m)break e;switch(d<<24>>24){case 123:case 63:case 43:break;default:break e}}}d=d<<24>>24==92;if(m&d)break;f=e+1|0;if(d)switch(a[f>>0]|0){case 123:case 63:case 43:break;default:break e}e=d?f:e;if((!m?(e|0)==((c[s>>2]|0)+1|0):0)?(a[e+-1>>0]|0)==94:0)break;if((a[e>>0]|0)==123){e=S2(e+1|0,r,p,q)|0;if(!e){j=28;break b}d=c[q>>2]|0;f=c[b>>2]|0;if(!d)d=u2(f,-1,-1,-1)|0;else j=36}else{c[p>>2]=0;c[q>>2]=-1;d=a[e>>0]|0;if(d<<24>>24==43){c[p>>2]=1;d=a[e>>0]|0}if(d<<24>>24==63){c[q>>2]=1;d=1}else d=-1;e=e+1|0;f=c[b>>2]|0;j=36}if((j|0)==36){j=0;d=M2(f,c[n>>2]|0,c[p>>2]|0,d,0)|0}c[n>>2]=d;if(!d){d=12;break a}}d=v2(c[b>>2]|0,g,c[n>>2]|0)|0;f=a[e>>0]|0;f:do if(m){if(f<<24>>24==124){j=40;break d}if((h|0)!=0&f<<24>>24==41|f<<24>>24==0)j=47;else{g=d;f=i;continue c}}else{switch(f<<24>>24){case 0:{j=47;break f}case 92:break;default:{g=d;f=i;continue c}}switch(a[e+1>>0]|0){case 124:case 41:break;default:{g=d;f=i;continue c}}d=N2(c[b>>2]|0,i,d)|0;if((a[e+1>>0]|0)==124){f=2;break d}if(!h){d=8;break a}e=e+2|0;f=92}while(0);if((j|0)==47){j=0;d=N2(c[b>>2]|0,i,d)|0;e=f<<24>>24==41?e+1|0:e}d=T2(b,d,D2(t)|0)|0;if(d|0)break a;d=f<<24>>24==0;f=(h|0)<1;if(f&d){j=50;break b}if(f|d){d=8;break a}g=E2(t)|0;h=h+-1|0;i=E2(t)|0}if((j|0)==40){f=1;d=N2(c[b>>2]|0,i,d)|0}g=0;e=e+f|0;f=d}d=B2(t,f)|0;if(d|0)break a;d=B2(t,g)|0;if(d|0)break a;d=C2(t,k)|0;if(d|0)break a;d=h+1|0;k=k+1|0;e=m?e+1|0:e+2|0}if((j|0)==28){d=10;break}else if((j|0)==50){c[b+20>>2]=k;d=0;break}}while(0);l=u;return d|0}function s2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;x=A2(d)|0;y=(b|0)==0|(f|0)==0;if(!y){c[f+48>>2]=0;c[c[f+36>>2]>>2]=-1}g=f+28|0;z=C_((c[g>>2]<<3)+8|0)|0;do if(!z)g=12;else{c[z>>2]=-1;A=C_((c[g>>2]<<2)+4|0)|0;if(!A){D_(z);g=12;break}c[A>>2]=-1;B=C_((c[g>>2]<<3)+8|0)|0;if(!B){D_(z);D_(A);g=12;break}h=c[g>>2]|0;g=0;do{c[B+(g<<3)>>2]=-1;g=g+1|0}while(g>>>0<=h>>>0);B2(d,e)|0;g=C2(d,0)|0;a:do if((g|0)!=0|(A2(d)|0)<=(x|0)){e=z;n=0;h=0;m=0;l=-1}else{u=f+32|0;v=f+36|0;w=f+16|0;e=z;n=0;h=0;m=0;t=1;l=-1;s=0;while(1){b:do switch(D2(d)|0){case 6:{i=D2(d)|0;g=0;do{j=e+(g<<2)|0;g=g+1|0}while((c[j>>2]|0)>-1);c[j>>2]=i<<1|1;c[e+(g<<2)>>2]=-1;g=0;while(1)if((c[A+(g<<2)>>2]|0)>-1)g=g+1|0;else break;c[A+(g+-1<<2)>>2]=-1;g=0;j=t;i=s;break}case 0:{q=E2(d)|0;r=q+12|0;j=c[r>>2]|0;if((j|0)>-1){g=0;do{i=e+(g<<2)|0;g=g+1|0}while((c[i>>2]|0)>-1);c[i>>2]=j<<1;c[e+(g<<2)>>2]=-1;if(!y){g=0;while(1)if((c[A+(g<<2)>>2]|0)>-1)g=g+1|0;else break;c[(c[w>>2]|0)+(j*12|0)+8>>2]=0;if((g|0)>0){g=C_((g<<2)+4|0)|0;if(!g){g=12;j=t;i=s;break b}c[(c[w>>2]|0)+(j*12|0)+8>>2]=g;i=c[A>>2]|0;if((i|0)>-1){k=0;j=g;do{c[j>>2]=i;k=k+1|0;i=c[A+(k<<2)>>2]|0;j=g+(k<<2)|0}while((i|0)>-1);g=j}c[g>>2]=-1}}g=C2(d,c[r>>2]|0)|0;if(g|0){j=t;i=s;break b}g=C2(d,6)|0;if(g|0){j=t;i=s;break b}}c:do switch(c[q>>2]|0){case 0:{p=c[c[q+4>>2]>>2]|0;if((p|0)>-1|(p|0)==-4?(c[e>>2]|0)>-1:0){if(y){c[q+20>>2]=1;g=0}else{g=O2(b,q,m)|0;c[(c[u>>2]|0)+(m<<2)>>2]=s;if((l|0)>-1){j=c[v>>2]|0;i=0;while(1){k=j+(i<<2)|0;o=i+1|0;if((c[k>>2]|0)>-1)i=o;else break}c[k>>2]=m;c[j+(o<<2)>>2]=l;c[j+(i+2<<2)>>2]=-1;h=h+1|0;l=-1}P2(e,f,m)}c[e>>2]=-1;p=t+1|0;o=s;n=n+1|0;m=t}else{p=t;g=0;o=s}break}case 1:{j=c[q+4>>2]|0;k=c[j>>2]|0;j=c[j+4>>2]|0;g=B2(d,q)|0;if(!g){g=C2(d,5)|0;if(!g){g=B2(d,j)|0;if(!g){g=C2(d,0)|0;if(!g){i=k+20|0;g=C2(d,(c[i>>2]|0)+t|0)|0;if(!g){if((c[i>>2]|0)>0){i=(c[j+20>>2]|0)>0;g=i?t:-1;i=t+(i&1)|0}else{g=-1;i=t}g=C2(d,g)|0;if(!g){g=C2(d,4)|0;if(!g){g=B2(d,k)|0;if(!g){p=i;g=C2(d,0)|0;o=s}else{p=i;o=s}}else{p=i;o=s}}else{p=i;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}break}case 2:{i=c[q+4>>2]|0;if(y){if((c[e>>2]|0)>-1)g=1;else g=(a[i+12>>0]&1)!=0;g=C2(d,g&1)|0;if(g|0){p=t;o=s;break c}}else{g=C2(d,m)|0;if(g|0){p=t;o=s;break c}g=C2(d,a[i+12>>0]&1)|0;if(g|0){p=t;o=s;break c}}g=B2(d,q)|0;if(!g){g=C2(d,1)|0;if(!g){g=B2(d,c[i>>2]|0)|0;if(!g){g=C2(d,0)|0;if(!g){if((c[e>>2]|0)<=-1?(a[i+12>>0]&1)==0:0){p=t;g=0;o=0;break c}if(y)g=0;else{g=O2(b,q,m)|0;c[(c[u>>2]|0)+(m<<2)>>2]=(a[i+12>>0]&1)==0?s:1;if((l|0)>-1){j=c[v>>2]|0;i=0;while(1){k=j+(i<<2)|0;o=i+1|0;if((c[k>>2]|0)>-1)i=o;else break}c[k>>2]=m;c[j+(o<<2)>>2]=l;c[j+(i+2<<2)>>2]=-1;h=h+1|0;l=-1}P2(e,f,m)}c[e>>2]=-1;p=t+1|0;o=0;n=n+1|0;m=t}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}break}case 3:{j=c[q+4>>2]|0;k=c[j>>2]|0;j=c[j+4>>2]|0;i=(c[e>>2]|0)>-1;p=t+1|0;g=C2(d,i?p:t)|0;if(!g){g=C2(d,i?t:m)|0;if(!g){g=B2(d,e)|0;if(!g){g=C2(d,(c[e>>2]|0)>>>31^1)|0;if(!g){g=B2(d,q)|0;if(!g){g=B2(d,j)|0;if(!g){g=B2(d,k)|0;if(!g){g=C2(d,3)|0;if(!g){g=B2(d,j)|0;if(!g){g=C2(d,0)|0;if(g|0){p=t;o=s;break c}g=C2(d,2)|0;if(g|0){p=t;o=s;break c}g=B2(d,k)|0;if(g|0){p=t;o=s;break c}g=C2(d,0)|0;if(g|0){p=t;o=s;break c}if((c[e>>2]|0)>-1){if(y)g=0;else{g=O2(b,q,m)|0;c[(c[u>>2]|0)+(m<<2)>>2]=s;if((l|0)>-1){j=c[v>>2]|0;i=0;while(1){k=j+(i<<2)|0;o=i+1|0;if((c[k>>2]|0)>-1)i=o;else break}c[k>>2]=m;c[j+(o<<2)>>2]=l;c[j+(i+2<<2)>>2]=-1;h=h+1|0;l=-1}P2(e,f,m)}c[e>>2]=-1;n=n+1|0;m=t;i=p}else{g=0;i=t}t=(c[q+16>>2]|0)>0;p=t?i+2|0:i;o=s;m=t?i+1|0:m}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}}else{p=t;o=s}break}default:{p=t;g=0;o=s}}while(0);j=c[r>>2]|0;if((j|0)>-1){i=0;do{k=A+(i<<2)|0;i=i+1|0}while((c[k>>2]|0)>-1);c[k>>2]=j;c[A+(i<<2)>>2]=-1;j=p;i=o}else{j=p;i=o}break}case 1:{g=E2(d)|0;if(y){i=c[(c[c[g+4>>2]>>2]|0)+20>>2]|0;c[g+20>>2]=(D2(d)|0)+i;i=0;l=-1}else{q=D2(d)|0;r=D2(d)|0;i=q;l=(q|0)==0?l:r}g=0;j=t;i=y?s:(i|0)==0&1;break}case 4:{i=D2(d)|0;j=D2(d)|0;g=0;m=(i|0)>-1?i:m;i=s;break}case 5:{g=E2(d)|0;if(y){j=c[g+4>>2]|0;c[g+20>>2]=(c[(c[j+4>>2]|0)+20>>2]|0)+(c[(c[j>>2]|0)+20>>2]|0);g=0;j=t;i=s}else{g=0;j=t;i=s}break}case 2:{while(1)if((c[e>>2]|0)>-1)e=e+4|0;else{g=0;j=t;i=s;break}break}case 3:{j=E2(d)|0;o=E2(d)|0;g=E2(d)|0;e=D2(d)|0;if(y){r=c[g+4>>2]|0;s=g+16|0;c[g+20>>2]=(c[(c[r>>2]|0)+20>>2]|0)+e+(c[(c[r+4>>2]|0)+20>>2]|0)+((c[s>>2]|0)>0?2:0);g=s}else g=g+16|0;e=E2(d)|0;i=D2(d)|0;k=D2(d)|0;if((c[g>>2]|0)>0){if(y)g=0;else{g=Q2(b,j,i)|0;c[(c[u>>2]|0)+(i<<2)>>2]=1;if(!g)g=Q2(b,o,k)|0;c[(c[u>>2]|0)+(k<<2)>>2]=1}n=n+2|0;j=t;i=1}else{g=0;j=t;i=1}break}default:{g=0;j=t;i=s}}while(0);if((g|0)!=0|(A2(d)|0)<=(x|0))break a;else{t=j;s=i}}}while(0);if(!y?(P2(e,f,m),(l|0)>-1):0){i=c[f+36>>2]|0;e=0;while(1){j=i+(e<<2)|0;k=e+1|0;if((c[j>>2]|0)>-1)e=k;else break}c[j>>2]=m;c[i+(k<<2)>>2]=l;c[i+(e+2<<2)>>2]=-1;h=h+1|0}c[f+48>>2]=n;c[f+40>>2]=n;c[f+44>>2]=h;D_(z);D_(A);D_(B)}while(0);return g|0}function t2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=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;y=l;l=l+16|0;t=y+12|0;x=y+8|0;u=y+4|0;v=y;w=A2(b)|0;c[t>>2]=0;c[x>>2]=0;d=B2(b,d)|0;a:do if(!d){d=C2(b,0)|0;if(!d){b:do if((A2(b)|0)>(w|0)){g=0;i=0;j=0;c:while(1){q=D2(b)|0;r=E2(b)|0;d:do switch(q|0){case 0:{switch(c[r>>2]|0){case 0:{d=c[r+4>>2]|0;r=c[d>>2]|0;if(!((r|0)>-1|(r|0)==-4)){d=j;break d}r=d+8|0;d=(c[r>>2]|0)+j|0;c[r>>2]=d;if((d|0)<=(c[x>>2]|0)){d=j;break d}c[x>>2]=d;d=j;break d}case 3:{h=c[r+4>>2]|0;d=B2(b,c[h+4>>2]|0)|0;if(d|0)break b;d=C2(b,0)|0;if(d|0)break b;d=B2(b,c[h>>2]|0)|0;if(d|0)break b;break}case 1:{h=c[r+4>>2]|0;d=B2(b,c[h+4>>2]|0)|0;if(d|0)break b;d=C2(b,0)|0;if(d|0)break b;d=B2(b,c[h>>2]|0)|0;if(d|0)break b;break}case 2:{h=c[r+4>>2]|0;d=C2(b,j)|0;if(d|0)break b;d=B2(b,r)|0;if(d|0)break b;d=C2(b,1)|0;if(d|0)break b;d=B2(b,c[h>>2]|0)|0;if(d|0)break b;d=C2(b,0)|0;if(d|0)break b;if((c[h+4>>2]|0)<=1?(c[h+8>>2]|0)<=1:0)d=j;else{c[t>>2]=0;d=0}i=i+1|0;break d}default:{d=j;break d}}d=C2(b,0)|0;if(!d)d=j;else break b;break}case 1:{p=r+4|0;o=c[p>>2]|0;q=D2(b)|0;c[t>>2]=q;n=o+4|0;j=c[n>>2]|0;if((j|0)<=1)if((c[o+8>>2]|0)>1){c[u>>2]=0;if((j|0)>0)s=30;else{d=q;h=0;s=37}}else d=q;else{c[u>>2]=0;s=30}e:do if((s|0)==30){d=L2(a,b,c[o>>2]|0,(j|0)>1?1:2,t,f,v,x)|0;if(!d){h=0;k=q;m=1}else{s=34;break c}while(1){d=c[v>>2]|0;if(!h)h=d;else h=v2(a,h,d)|0;if(!h){d=12;s=34;break c}j=c[n>>2]|0;if((m|0)>=(j|0)){d=k;s=37;break e}k=c[t>>2]|0;m=m+1|0;d=L2(a,b,c[o>>2]|0,(m|0)<(j|0)?1:2,t,f,v,x)|0;if(d|0){s=34;break c}}}while(0);if((s|0)==37){s=0;n=o+8|0;k=c[n>>2]|0;if((k|0)==-1){k=c[t>>2]|0;d=L2(a,b,c[o>>2]|0,0,t,0,u,x)|0;if(d|0)break c;j=M2(a,c[u>>2]|0,0,-1,0)|0;c[u>>2]=j;if(!j){d=12;break c}else d=k}else if((j|0)<(k|0)){k=j;j=0;while(1){m=c[t>>2]|0;d=L2(a,b,c[o>>2]|0,0,t,0,v,x)|0;if(d|0){s=49;break c}if(!j){d=c[v>>2]|0;c[u>>2]=d}else{d=v2(a,c[v>>2]|0,j)|0;c[u>>2]=d}if(!d){d=12;s=49;break c}j=u2(a,-1,-1,-1)|0;if(!j){d=12;s=49;break c}j=N2(a,j,d)|0;c[u>>2]=j;if(!j){d=12;s=49;break c}k=k+1|0;if((k|0)>=(c[n>>2]|0)){d=m;break}}}else j=0;c[t>>2]=d;if(h){if(j){h=v2(a,h,j)|0;s=54}}else{h=j;s=54}if((s|0)==54){s=0;if(!h){d=12;break c}}c[p>>2]=c[h+4>>2];c[r>>2]=c[h>>2]}i=i+-1|0;h=d-q+g|0;if(!i){c[t>>2]=h;g=h;i=0;d=h}else g=h;break}default:d=j}while(0);if((A2(b)|0)>(w|0))j=d;else{d=0;break b}}break a}else{d=0;g=0}while(0);w=(c[e>>2]|0)+g|0;x=c[x>>2]|0;c[e>>2]=(x|0)>(w|0)?x:w}}while(0);l=y;return d|0}function u2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=n2(a,0,0,1,20)|0;a=K2(a,0,f)|0;if(!a)a=0;else{c[f>>2]=b;c[f+4>>2]=d;c[f+8>>2]=e}return a|0}function v2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(b){e=n2(a,0,0,1,8)|0;a=K2(a,1,e)|0;if(!a)d=0;else{c[e>>2]=b;c[e+4>>2]=d;c[a+16>>2]=(c[d+16>>2]|0)+(c[b+16>>2]|0);d=a}}return d|0}function w2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;j=o+4|0;k=o;m=A2(b)|0;d=B2(b,d)|0;a:do if(!d){d=C2(b,0)|0;if(!d)if((A2(b)|0)>(m|0)){b:while(1){h=D2(b)|0;i=E2(b)|0;c:do switch(h|0){case 0:switch(c[i>>2]|0){case 0:{g=c[i+4>>2]|0;f=c[g>>2]|0;if((f|0)==-4){c[i+8>>2]=0;d=g+8|0;h=F2(a,c[d>>2]|0,0,1114111,0,0,-1)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=F2(a,c[d>>2]|0,0,1114111,0,0,c[g+4>>2]|0)|0;c[i+28>>2]=h;if(!h){d=12;break a}else break c}d=i+8|0;if((f|0)<0){c[d>>2]=1;h=G2(a)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=G2(a)|0;c[i+28>>2]=h;if(!h){d=12;break a}else break c}else{c[d>>2]=0;d=g+8|0;e=g+4|0;h=F2(a,c[d>>2]|0,f,c[e>>2]|0,0,0,-1)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=F2(a,c[d>>2]|0,c[g>>2]|0,c[e>>2]|0,c[g+12>>2]|0,c[g+16>>2]|0,-1)|0;c[i+28>>2]=h;if(!h){d=12;break a}else break c}}case 3:{d=B2(b,i)|0;if(d|0)break a;d=C2(b,1)|0;if(d|0)break a;e=i+4|0;d=B2(b,c[(c[e>>2]|0)+4>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(d|0)break a;d=B2(b,c[c[e>>2]>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(!d)break c;else break a}case 1:{d=B2(b,i)|0;if(d|0)break a;d=C2(b,2)|0;if(d|0)break a;e=i+4|0;d=B2(b,c[(c[e>>2]|0)+4>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(d|0)break a;d=B2(b,c[c[e>>2]>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(!d)break c;else break a}case 2:{d=B2(b,i)|0;if(d|0)break a;d=C2(b,3)|0;if(d|0)break a;d=B2(b,c[c[i+4>>2]>>2]|0)|0;if(d|0)break a;d=C2(b,0)|0;if(!d)break c;else break a}default:break c}case 1:{d=c[i+4>>2]|0;e=c[d>>2]|0;f=d+4|0;g=c[f>>2]|0;if(!(c[e+8>>2]|0))h=(c[g+8>>2]|0)!=0;else h=1;c[i+8>>2]=h&1;h=H2(a,c[e+24>>2]|0,c[g+24>>2]|0,0,0)|0;c[i+24>>2]=h;if(!h){d=12;break a}h=H2(a,c[(c[d>>2]|0)+28>>2]|0,c[(c[f>>2]|0)+28>>2]|0,0,0)|0;c[i+28>>2]=h;if(!h){d=12;break a}break}case 3:{h=c[i+4>>2]|0;d=c[h>>2]|0;if(!(c[h+4>>2]|0))e=1;else e=(c[d+8>>2]|0)!=0&1;c[i+8>>2]=e;c[i+24>>2]=c[d+24>>2];c[i+28>>2]=c[d+28>>2];break}case 2:{g=c[i+4>>2]|0;d=c[g>>2]|0;e=d+8|0;if(!(c[e>>2]|0))f=0;else f=(c[(c[g+4>>2]|0)+8>>2]|0)!=0;c[i+8>>2]=f&1;if(c[e>>2]|0){d=I2(b,d,0,0,j)|0;if(d|0)break b;e=C_((c[j>>2]<<2)+4|0)|0;if(!e){d=12;break b}c[e>>2]=-1;c[k>>2]=0;d=I2(b,c[g>>2]|0,e,k,0)|0;if(d|0){n=45;break b}d=g+4|0;h=i+24|0;c[h>>2]=H2(a,c[(c[d>>2]|0)+24>>2]|0,c[(c[g>>2]|0)+24>>2]|0,e,c[k>>2]|0)|0;D_(e);if(!(c[h>>2]|0)){d=12;break b}else f=d}else{c[i+24>>2]=c[d+24>>2];f=g+4|0}d=c[f>>2]|0;if(c[d+8>>2]|0){d=I2(b,d,0,0,j)|0;if(d|0)break b;e=C_((c[j>>2]<<2)+4|0)|0;if(!e){d=12;break b}c[e>>2]=-1;c[k>>2]=0;d=I2(b,c[f>>2]|0,e,k,0)|0;if(d|0){n=52;break b}i=i+28|0;c[i>>2]=H2(a,c[(c[g>>2]|0)+28>>2]|0,c[(c[f>>2]|0)+28>>2]|0,e,c[k>>2]|0)|0;D_(e);if(!(c[i>>2]|0)){d=12;break b}}else c[i+28>>2]=c[d+28>>2];break}default:{}}while(0);if((A2(b)|0)<=(m|0)){d=0;break a}}if((n|0)==45)D_(e);else if((n|0)==52)D_(e)}else d=0}while(0);l=o;return d|0}function x2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:while(1){switch(c[a>>2]|0){case 2:{a=c[a+4>>2]|0;if((c[a+8>>2]|0)==-1?(h=c[a>>2]|0,h=z2(c[h+28>>2]|0,c[h+24>>2]|0,b,d,e)|0,(h|0)!=0):0){a=h;break a}break}case 3:{f=c[a+4>>2]|0;a=x2(c[f>>2]|0,b,d,e)|0;if(a|0)break a;a=f+4|0;break}case 1:{f=c[a+4>>2]|0;g=f+4|0;a=z2(c[(c[f>>2]|0)+28>>2]|0,c[(c[g>>2]|0)+24>>2]|0,b,d,e)|0;if(a|0)break a;a=x2(c[f>>2]|0,b,d,e)|0;if(!a)a=g;else break a;break}default:{a=0;break a}}a=c[a>>2]|0}return a|0}function y2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=c[a+4>>2]|0;if(h|0){e=h+4|0;a=c[h>>2]|0;if(c[e>>2]|0){d=0;do{if(c[a+(d<<5)+8>>2]|0){b=c[a+(d<<5)+16>>2]|0;if(b){D_(b);a=c[h>>2]|0}b=c[a+(d<<5)+28>>2]|0;if(b){D_(b);a=c[h>>2]|0}}d=d+1|0}while(d>>>0<(c[e>>2]|0)>>>0)}if(a|0)D_(a);d=h+8|0;a=c[d>>2]|0;if(a|0){if(c[a+8>>2]|0){while(1){b=c[a+16>>2]|0;if(b|0)D_(b);if(!(c[a+40>>2]|0))break;else a=a+32|0}a=c[d>>2]|0}D_(a)}f=h+16|0;a=c[f>>2]|0;if(a|0){g=h+28|0;b=c[g>>2]|0;if(b){e=0;do{d=c[a+(e*12|0)+8>>2]|0;if(d){D_(d);b=c[g>>2]|0;a=c[f>>2]|0}e=e+1|0}while(e>>>0>>0)}D_(a)}a=c[h+32>>2]|0;if(a|0)D_(a);a=c[h+20>>2]|0;if(a|0)D_(a);a=c[h+36>>2]|0;if(a|0)D_(a);D_(h)}return}function z2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=c[a>>2]|0;h=(g|0)>-1;a:do if(!d)if(h){h=b+32|0;do{if((c[b>>2]|0)>-1?(y=e+(g<<2)|0,c[y>>2]=(c[y>>2]|0)+1,(c[h>>2]|0)>-1):0){g=h;do{y=e+(c[a>>2]<<2)|0;c[y>>2]=(c[y>>2]|0)+1;g=g+32|0}while((c[g>>2]|0)>-1)}a=a+32|0;g=c[a>>2]|0}while((g|0)>-1);g=0}else g=0;else if(h)while(1){h=c[b>>2]|0;b:do if((h|0)>-1){p=a+4|0;q=a+8|0;r=a+16|0;s=a+20|0;t=a+24|0;u=a+28|0;v=a+12|0;e=-1;g=b;while(1){o=h;while(1){if((o|0)!=(e|0))break;g=g+32|0;h=c[g>>2]|0;if((h|0)>-1)o=h;else break b}l=d+(c[f+(c[a>>2]<<2)>>2]<<5)|0;while(1){h=l+8|0;if(!(c[h>>2]|0))break;else l=l+32|0}c[l+40>>2]=0;c[l>>2]=c[p>>2];c[l+4>>2]=c[q>>2];c[h>>2]=d+(c[f+(o<<2)>>2]<<5);c[l+12>>2]=o;h=c[s>>2]|0;e=c[g+16>>2]|c[r>>2]|(h|0?4:0)|(c[t>>2]|0?8:0);i=l+20|0;c[i>>2]=e;j=c[u>>2]|0;if((j|0)>-1){c[i>>2]=e|256;h=j}c[l+24>>2]=h;e=c[t>>2]|0;if(!e)c[l+28>>2]=0;else{h=0;do{n=h;h=h+1|0}while((c[e+(n<<2)>>2]|0)!=0);h=C_(h<<2)|0;c[l+28>>2]=h;if(!h){g=12;break a}k=c[t>>2]|0;e=c[k>>2]|0;if(e){j=0;i=h;do{c[i>>2]=e;j=j+1|0;e=c[k+(j<<2)>>2]|0;i=h+(j<<2)|0}while((e|0)!=0);h=i}c[h>>2]=0}e=c[v>>2]|0;if(!e)h=0;else{h=0;while(1)if((c[e+(h<<2)>>2]|0)>-1)h=h+1|0;else break}k=g+12|0;i=c[k>>2]|0;if(!i)e=0;else{e=0;while(1)if((c[i+(e<<2)>>2]|0)>-1)e=e+1|0;else break}j=l+16|0;i=c[j>>2]|0;if(i|0)D_(i);c[j>>2]=0;h=e+h|0;if((h|0)>0){n=C_((h<<2)+4|0)|0;c[j>>2]=n;if(!n){g=12;break a}e=c[v>>2]|0;if((e|0)!=0?(w=c[e>>2]|0,(w|0)>-1):0){h=0;i=w;do{c[n+(h<<2)>>2]=i;h=h+1|0;i=c[e+(h<<2)>>2]|0}while((i|0)>-1);m=h}else m=0;j=c[k>>2]|0;if((j|0)!=0?(x=c[j>>2]|0,(x|0)>-1):0){k=(m|0)>0;h=m;i=0;l=x;do{c:do if(k){e=0;while(1){if((c[n+(e<<2)>>2]|0)==(l|0))break c;e=e+1|0;if((e|0)>=(m|0)){y=39;break}}}else y=39;while(0);if((y|0)==39){y=0;c[n+(h<<2)>>2]=l;h=h+1|0}i=i+1|0;l=c[j+(i<<2)>>2]|0}while((l|0)>-1)}else h=m;c[n+(h<<2)>>2]=-1}g=g+32|0;h=c[g>>2]|0;if((h|0)<=-1)break;else e=o}}while(0);a=a+32|0;if((c[a>>2]|0)<=-1){g=0;break}}else g=0;while(0);return g|0}function A2(a){a=a|0;return c[a+12>>2]|0}function B2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;c[f>>2]=b;c[e>>2]=c[f>>2];b=J2(a,e)|0;l=d;return b|0}function C2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;c[f>>2]=b;c[e>>2]=c[f>>2];b=J2(a,e)|0;l=d;return b|0}function D2(a){a=a|0;var b=0,d=0;b=c[a+16>>2]|0;d=a+12|0;a=(c[d>>2]|0)+-1|0;c[d>>2]=a;return c[b+(a<<2)>>2]|0}function E2(a){a=a|0;var b=0,d=0;b=c[a+16>>2]|0;d=a+12|0;a=(c[d>>2]|0)+-1|0;c[d>>2]=a;return c[b+(a<<2)>>2]|0}function F2(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a=n2(a,0,0,1,64)|0;if(!a)a=0;else{c[a>>2]=b;c[a+4>>2]=d;c[a+8>>2]=e;c[a+20>>2]=f;c[a+24>>2]=g;c[a+28>>2]=h;c[a+32>>2]=-1;c[a+36>>2]=-1;c[a+40>>2]=-1}return a|0}function G2(a){a=a|0;a=n2(a,0,0,1,32)|0;if(!a)a=0;else{c[a>>2]=-1;c[a+4>>2]=-1;c[a+8>>2]=-1}return a|0}function H2(a,b,d,e,f){a=a|0;b=b|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;o=(e|0)==0;if(o)n=0;else{g=0;while(1)if((c[e+(g<<2)>>2]|0)>-1)g=g+1|0;else{n=g;break}}h=0;while(1)if((c[b+(h<<5)>>2]|0)>-1)h=h+1|0;else{g=0;break}while(1)if((c[d+(g<<5)>>2]|0)>-1)g=g+1|0;else break;g=n2(a,0,0,1,(g+h<<5)+32|0)|0;a:do if(!g)g=0;else{h=c[b>>2]|0;if((h|0)>-1){m=(n|0)>0;i=0;while(1){c[g+(i<<5)>>2]=h;c[g+(i<<5)+4>>2]=c[b+(i<<5)+4>>2];c[g+(i<<5)+8>>2]=c[b+(i<<5)+8>>2];c[g+(i<<5)+16>>2]=c[b+(i<<5)+16>>2]|f;c[g+(i<<5)+20>>2]=c[b+(i<<5)+20>>2];c[g+(i<<5)+24>>2]=c[b+(i<<5)+24>>2];c[g+(i<<5)+28>>2]=c[b+(i<<5)+28>>2];l=b+(i<<5)+12|0;j=c[l>>2]|0;h=(j|0)==0;if(o&h)h=0;else{if(h)k=0;else{h=0;while(1)if((c[j+(h<<2)>>2]|0)>-1)h=h+1|0;else{k=h;break}}h=n2(a,0,0,0,(k+n<<2)+4|0)|0;if(!h){g=0;break a}if((k|0)>0){l=c[l>>2]|0;j=0;do{c[h+(j<<2)>>2]=c[l+(j<<2)>>2];j=j+1|0}while((j|0)!=(k|0))}else k=0;if(m){j=0;do{c[h+(j+k<<2)>>2]=c[e+(j<<2)>>2];j=j+1|0}while((j|0)!=(n|0));j=n}else j=0;c[h+(j+k<<2)>>2]=-1}c[g+(i<<5)+12>>2]=h;i=i+1|0;h=c[b+(i<<5)>>2]|0;if((h|0)<=-1){n=i;break}}}else n=0;i=c[d>>2]|0;h=g+(n<<5)|0;if((i|0)>-1){m=0;l=n;do{c[h>>2]=i;c[g+(l<<5)+4>>2]=c[d+(m<<5)+4>>2];c[g+(l<<5)+8>>2]=c[d+(m<<5)+8>>2];c[g+(l<<5)+16>>2]=c[d+(m<<5)+16>>2];c[g+(l<<5)+20>>2]=c[d+(m<<5)+20>>2];c[g+(l<<5)+24>>2]=c[d+(m<<5)+24>>2];c[g+(l<<5)+28>>2]=c[d+(m<<5)+28>>2];j=d+(m<<5)+12|0;h=c[j>>2]|0;if(!h)h=0;else{i=0;while(1)if((c[h+(i<<2)>>2]|0)>-1)i=i+1|0;else break;h=n2(a,0,0,0,(i<<2)+4|0)|0;if(!h){g=0;break a}if((i|0)>0){k=c[j>>2]|0;j=0;do{c[h+(j<<2)>>2]=c[k+(j<<2)>>2];j=j+1|0}while((j|0)!=(i|0))}else i=0;c[h+(i<<2)>>2]=-1}c[g+(l<<5)+12>>2]=h;m=m+1|0;i=c[d+(m<<5)>>2]|0;l=m+n|0;h=g+(l<<5)|0}while((i|0)>-1)}c[h>>2]=-1}while(0);return g|0}function I2(a,b,d,e,f){a=a|0;b=b|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;o=A2(a)|0;p=(f|0)!=0;if(p)c[f>>2]=0;b=B2(a,b)|0;a:do if(!b){m=(d|0)==0;l=(e|0)==0;if((A2(a)|0)>(o|0))while(1){b=E2(a)|0;b:do switch(c[b>>2]|0){case 0:{b=c[b+4>>2]|0;switch(c[b>>2]|0){case -3:break;case -2:{if(l)break b;c[e>>2]=c[e>>2]|c[b+4>>2];break b}default:break b}h=c[b+4>>2]|0;if((h|0)>-1){c:do if(!m){b=0;while(1){i=d+(b<<2)|0;j=c[i>>2]|0;if((j|0)<=-1)break;if((j|0)==(h|0))break c;else b=b+1|0}c[i>>2]=h;c[d+(b+1<<2)>>2]=-1}while(0);if(p)c[f>>2]=(c[f>>2]|0)+1}break}case 3:{b=c[b+4>>2]|0;h=c[b>>2]|0;if(c[h+8>>2]|0){k=h;n=6;break b}b=c[b+4>>2]|0;if(c[b+8>>2]|0){k=b;n=6}break}case 1:{b=c[b+4>>2]|0;h=B2(a,c[b>>2]|0)|0;if(h|0){g=h;break a}k=c[b+4>>2]|0;n=6;break}case 2:{b=c[c[b+4>>2]>>2]|0;if(c[b+8>>2]|0){k=b;n=6}break}default:{}}while(0);if((n|0)==6?(n=0,g=B2(a,k)|0,g|0):0)break a;if((A2(a)|0)<=(o|0)){g=0;break a}}else g=0}else g=b;while(0);return g|0}function J2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k;d=a+12|0;e=c[d>>2]|0;j=c[a>>2]|0;if((e|0)>=(j|0)){d=c[a+4>>2]|0;if((j|0)<(d|0)?(f=(c[a+8>>2]|0)+j|0,f=(f|0)>(d|0)?d:f,h=a+16|0,i=F_(c[h>>2]|0,f<<2)|0,(i|0)!=0):0){c[a>>2]=f;c[h>>2]=i;c[g>>2]=c[b>>2];J2(a,g)|0;d=0}else d=12}else{c[(c[a+16>>2]|0)+(e<<2)>>2]=c[b>>2];c[d>>2]=(c[d>>2]|0)+1;d=0}l=k;return d|0}function K2(a,b,d){a=a|0;b=b|0;d=d|0;a=n2(a,0,0,1,32)|0;if((d|0)!=0&(a|0)!=0){c[a+4>>2]=d;c[a>>2]=b;c[a+8>>2]=-1;c[a+12>>2]=-1}else a=0;return a|0}function L2(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=A2(d)|0;B2(d,e)|0;e=C2(d,0)|0;a:do if(!e){q=(f&1|0)==0;p=(f&2|0)!=0;o=0;l=1;e=i;while(1){if((A2(d)|0)>(r|0))n=e;else{f=o;e=0;break a}b:while(1){c:while(1){switch(D2(d)|0){case 1:{i=7;break c}case 0:{e=E2(d)|0;switch(c[e>>2]|0){case 0:{i=9;break b}case 3:{i=19;break b}case 1:{i=26;break b}case 2:{i=33;break c}default:{}}break}default:{}}if((A2(d)|0)<=(r|0)){f=o;e=0;break a}}if((i|0)==7)e=E2(d)|0;else if((i|0)==33){f=c[e+4>>2]|0;e=B2(d,c[f>>2]|0)|0;if(e|0){f=o;break a}e=C2(d,0)|0;if(e|0){f=o;break a}e=M2(b,c[f>>2]|0,c[f+4>>2]|0,c[f+8>>2]|0,a[f+12>>0]&1)|0;c[n>>2]=e;if(!e){f=o;e=12;break a}e=c[e+4>>2]|0}if((A2(d)|0)>(r|0))n=e;else{f=o;e=0;break a}}if((i|0)==9){m=c[e+4>>2]|0;i=c[m+8>>2]|0;f=c[m>>2]|0;e=c[m+4>>2]|0;if(!((f|0)>-1|(f|0)==-4))if(q|(f|0)!=-3)if((f|0)==-3)if(p&(l|0)!=0){c[h+(e<<2)>>2]=1;f=-3;k=o;l=0}else{f=-3;k=o}else k=o;else{e=-1;f=-1;i=-1;k=o}else{i=(c[g>>2]|0)+i|0;k=o+1|0}e=u2(b,f,e,i)|0;c[n>>2]=e;if(!e)e=12;else{e=c[e+4>>2]|0;c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=0}if((i|0)>(c[j>>2]|0)){c[j>>2]=i;f=n}else f=n}else if((i|0)==19){i=c[e+4>>2]|0;f=i+4|0;e=N2(b,c[i>>2]|0,c[f>>2]|0)|0;c[n>>2]=e;if(!e){f=o;e=12;break a}m=c[e+4>>2]|0;e=B2(d,c[f>>2]|0)|0;if(e|0){f=o;break a}e=C2(d,0)|0;if(e|0){f=o;break a}e=B2(d,m+4|0)|0;if(e|0){f=o;break a}e=C2(d,1)|0;if(e|0){f=o;break a}e=B2(d,c[i>>2]|0)|0;if(e|0){f=o;break a}k=o;f=m;e=C2(d,0)|0}else if((i|0)==26){m=c[e+4>>2]|0;i=m+4|0;e=v2(b,c[m>>2]|0,c[i>>2]|0)|0;c[n>>2]=e;if(!e){f=o;e=12;break a}f=c[e+4>>2]|0;c[f>>2]=0;k=f+4|0;c[k>>2]=0;e=B2(d,c[i>>2]|0)|0;if(e|0){f=o;break a}e=C2(d,0)|0;if(e|0){f=o;break a}e=B2(d,k)|0;if(e|0){f=o;break a}e=C2(d,1)|0;if(e|0){f=o;break a}e=B2(d,c[m>>2]|0)|0;if(e|0){f=o;break a}k=o;e=C2(d,0)|0}if(!e){o=k;e=f}else{f=k;break}}}else f=0;while(0);c[g>>2]=(c[g>>2]|0)+f;return e|0}function M2(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=n2(b,0,0,1,16)|0;b=K2(b,2,h)|0;if(!b)b=0;else{c[h>>2]=d;c[h+4>>2]=e;c[h+8>>2]=f;h=h+12|0;a[h>>0]=a[h>>0]&-2|g&1;c[b+16>>2]=c[d+16>>2]}return b|0}function N2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(b){e=n2(a,0,0,1,8)|0;a=K2(a,3,e)|0;if((d|0)!=0&(a|0)!=0){c[e>>2]=b;c[e+4>>2]=d;c[a+16>>2]=(c[d+16>>2]|0)+(c[b+16>>2]|0);d=a}else d=0}return d|0}function O2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=n2(a,0,0,0,8)|0;if(((e|0)!=0?(d=u2(a,-3,d,-1)|0,c[e>>2]=d,(d|0)!=0):0)?(f=n2(a,0,0,0,32)|0,c[e+4>>2]=f,(f|0)!=0):0){a=b+4|0;c[f+4>>2]=c[a>>2];c[f>>2]=c[b>>2];c[f+8>>2]=-1;c[f+12>>2]=-1;f=f+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[a>>2]=e;c[b>>2]=1;a=0}else a=12;return a|0}function P2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a>>2]|0;if((f|0)>-1){g=c[b+16>>2]|0;e=0;b=f;do{f=b>>>1;c[((b&1|0)==0?g+(f*12|0)|0:g+(f*12|0)+4|0)>>2]=d;e=e+1|0;b=c[a+(e<<2)>>2]|0}while((b|0)>-1)}c[a>>2]=-1;return}function Q2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=n2(a,0,0,0,8)|0;if(((e|0)!=0?(d=u2(a,-3,d,-1)|0,c[e+4>>2]=d,(d|0)!=0):0)?(f=n2(a,0,0,0,32)|0,c[e>>2]=f,(f|0)!=0):0){a=b+4|0;c[f+4>>2]=c[a>>2];c[f>>2]=c[b>>2];c[f+8>>2]=-1;c[f+12>>2]=-1;f=f+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[a>>2]=e;c[b>>2]=1;a=0}else a=12;return a|0}function R2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;i=b+32|0;h=c[i>>2]|0;g=h&1;a:do switch(a[d>>0]|0){case 91:{e=V2(b,d+1|0)|0;break}case 92:{e=d+1|0;f=W2(e)|0;if(f|0){e=R2(b,f)|0;c[b+12>>2]=d+2;break a}f=a[e>>0]|0;switch(f|0){case 0:{e=5;break a}case 98:{f=u2(c[b>>2]|0,-2,64,-1)|0;break}case 66:{f=u2(c[b>>2]|0,-2,128,-1)|0;break}case 60:{f=u2(c[b>>2]|0,-2,16,-1)|0;break}case 62:{f=u2(c[b>>2]|0,-2,32,-1)|0;break}case 120:{h=d+2|0;i=(a[h>>0]|0)==123;g=i?8:2;h=i?d+3|0:h;e=0;f=0;do{d=X2(a[h+e>>0]|0)|0;if((d|0)<0)break;f=d+(f<<4)|0;e=e+1|0}while((f|0)<1114112&(e|0)<(g|0));e=h+e|0;if(i){if((a[e>>0]|0)!=125){e=9;break a}e=e+1|0}j=c[b>>2]|0;i=b+24|0;k=c[i>>2]|0;c[i>>2]=k+1;f=u2(j,f,f,k)|0;e=e+-1|0;break}case 63:case 43:case 123:if(!g){e=13;break a}else{k=37;break a}case 124:{if(g|0){k=37;break a}e=u2(c[b>>2]|0,-1,-1,-1)|0;k=45;break a}default:{if(!((g|0)==0&(f+-49|0)>>>0<9)){k=37;break a}j=f+-48|0;k=c[b>>2]|0;i=b+24|0;f=c[i>>2]|0;c[i>>2]=f+1;f=u2(k,-4,j,f)|0;k=b+28|0;i=c[k>>2]|0;c[k>>2]=(j|0)<(i|0)?i:j}}d=e+1|0;e=f;k=45;break}case 46:{e=c[b>>2]|0;g=b+24|0;f=c[g>>2]|0;c[g>>2]=f+1;if(h&4){f=u2(e,0,9,f)|0;k=c[b>>2]|0;e=c[g>>2]|0;c[g>>2]=e+1;e=u2(k,11,1114111,e)|0;if((f|0)!=0&(e|0)!=0)e=N2(c[b>>2]|0,f,e)|0;else e=0}else e=u2(e,0,1114111,f)|0;d=d+1|0;k=45;break}case 94:{if((g|0)==0?(c[b+16>>2]|0)!=(d|0):0){e=d;k=37;break a}d=d+1|0;e=u2(c[b>>2]|0,-2,1,-1)|0;k=45;break}case 36:{e=d+1|0;if((g|0)==0?a[e>>0]|0:0){e=d;k=37;break a}d=e;e=u2(c[b>>2]|0,-2,2,-1)|0;k=45;break}case 63:case 43:case 123:case 42:{if(!g){e=d;k=37}else e=13;break}case 124:{if(!g){e=d;k=37}else k=36;break}case 0:{k=36;break}default:{e=d;k=37}}while(0);if((k|0)==36){e=u2(c[b>>2]|0,-1,-1,-1)|0;k=45}else if((k|0)==37){h=B1(j,e,-1)|0;if((h|0)<0)e=2;else{do if(c[i>>2]&2){if((m0(c[j>>2]|0)|0)==0?(l0(c[j>>2]|0)|0)==0:0){k=43;break}i=c[b>>2]|0;n=R$(c[j>>2]|0)|0;g=R$(c[j>>2]|0)|0;f=b+24|0;g=u2(i,n,g,c[f>>2]|0)|0;n=c[b>>2]|0;i=o0(c[j>>2]|0)|0;d=o0(c[j>>2]|0)|0;d=u2(n,i,d,c[f>>2]|0)|0;if((g|0)!=0&(d|0)!=0)g=N2(c[b>>2]|0,g,d)|0;else g=0}else k=43;while(0);if((k|0)==43){g=c[j>>2]|0;f=b+24|0;g=u2(c[b>>2]|0,g,g,c[f>>2]|0)|0}c[f>>2]=(c[f>>2]|0)+1;d=e+h|0;e=g;k=45}}if((k|0)==45)if(!e)e=12;else{c[b+8>>2]=e;c[b+12>>2]=d;e=0}l=m;return e|0}function S2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j+4|0;g=j;b=U2(b,i)|0;if((a[b>>0]|0)==44){b=U2(b+1|0,g)|0;h=c[g>>2]|0;g=c[i>>2]|0}else{i=c[i>>2]|0;c[g>>2]=i;h=i;g=i}do if(!(g>>>0>255|((h|0)>255|(h|0)>-1&(h|0)<(g|0)))){if(!d)if((a[b>>0]|0)==92)b=b+1|0;else{b=0;break}if((a[b>>0]|0)==125){c[e>>2]=g;c[f>>2]=h;b=b+1|0}else b=0}else b=0;while(0);l=j;return b|0}function T2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((c[b+12>>2]|0)>-1){e=u2(c[a>>2]|0,-1,-1,-1)|0;if((e|0)!=0?(f=v2(c[a>>2]|0,e,b)|0,(f|0)!=0):0){e=c[b+16>>2]|0;c[f+16>>2]=e;g=6}else e=12}else{f=b;e=c[b+16>>2]|0;g=6}if((g|0)==6){c[f+12>>2]=d;c[f+16>>2]=e+1;c[a+8>>2]=f;e=0}return e|0}function U2(b,d){b=b|0;d=d|0;var e=0;c[d>>2]=-1;a:do if(E$(a[b>>0]|0)|0){c[d>>2]=0;e=0;do{c[d>>2]=(e*10|0)+-48+(a[b>>0]|0);b=b+1|0;if(!(E$(a[b>>0]|0)|0))break a;e=c[d>>2]|0}while((e|0)<=255)}while(0);return b|0}function V2(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+288|0;e=s+264|0;g=s;c[e>>2]=c[b>>2];h=e+8|0;c[h>>2]=0;c[e+12>>2]=32;p=C_(128)|0;r=e+4|0;c[r>>2]=p;if(!p)d=12;else{f=g+4|0;c[f>>2]=0;p=(a[d>>0]|0)==94;c[g>>2]=p&1;d=Y2(b,p?d+1|0:d,e,g)|0;a:do if(!d){p=(c[g>>2]|0)==0;if(!p){_0(c[r>>2]|0,c[h>>2]|0,4,109);d=_2(e)|0;if(!d){d=12;e=0;break}c[d>>2]=1114112;c[d+4>>2]=1114112;c[d+8>>2]=-1;d=c[f>>2]|0;if(d){e=d<<2;f=n2(c[b>>2]|0,0,0,0,e+4|0)|0;if(!f){d=12;e=0;break}F3(f|0,g+8|0,e|0)|0;c[f+(d<<2)>>2]=0}else f=0}else f=0;m=c[h>>2]|0;if((m|0)>0){n=c[r>>2]|0;o=b+24|0;e=0;d=0;k=0;while(1){j=c[n+(k<<2)>>2]|0;g=c[j>>2]|0;h=j+4|0;i=c[h>>2]|0;do if(!p)if((g|0)>(d|0)){c[j>>2]=d;c[h>>2]=g+-1;d=i+1|0;q=14;break}else{j=i+1|0;d=(j|0)>=(d|0)?j:d;break}else q=14;while(0);if((q|0)==14){q=0;c[j+8>>2]=c[o>>2];c[j+16>>2]=f;j=K2(c[b>>2]|0,0,j)|0;e=N2(c[b>>2]|0,e,j)|0;if(!e){d=12;e=0;break a}}k=k+1|0;if((k|0)>=(m|0)){d=0;break}}}else{d=0;e=0}}else e=0;while(0);D_(c[r>>2]|0);r=b+24|0;c[r>>2]=(c[r>>2]|0)+1;c[b+8>>2]=e}l=s;return d|0}function W2(b){b=b|0;var d=0;d=a[b>>0]|0;b=0;while(1){if((a[63648+(b<<3)>>0]|0)==d<<24>>24)break;b=b+1|0;if((b|0)==12){b=12;break}}return c[63648+(b<<3)+4>>2]|0}function X2(a){a=a|0;var b=0;b=a+-48|0;if(b>>>0<10)return b|0;else{b=a|32;return ((b+-97|0)>>>0<6?b+-87|0:-1)|0}return 0}function Y2(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;o=t;q=t+4|0;i=B1(o,d,-1)|0;g=a[d>>0]|0;a:do if((i|0)>=1){r=f+4|0;n=b+32|0;h=d;j=i;b:while(1){i=(h|0)==(d|0);if(!(i|g<<24>>24!=93)){s=5;break}c:do if(!(i|g<<24>>24!=45)){switch(a[h+1>>0]|0){case 93:break c;case 45:break;default:{g=11;break a}}if((a[h+2>>0]|0)==93){g=11;break a}}while(0);d:do if(g<<24>>24==91){switch(a[h+1>>0]|0){case 61:case 46:{g=3;break a}case 58:break;default:{s=17;break d}}i=h+2|0;g=0;e:while(1){switch(a[i+g>>0]|0){case 0:{s=16;break b}case 58:break e;default:{}}if((g|0)<13)g=g+1|0;else{s=16;break b}}F3(q|0,i|0,g|0)|0;a[q+g>>0]=0;j=H0(q)|0;if(!j){s=16;break b}h=i+(g+2)|0;if((a[i+(g+1)>>0]|0)!=93){s=16;break b}if(!(c[f>>2]|0)){g=1114111;m=0;k=1;s=25}else{g=c[r>>2]|0;if((g|0)>63){g=12;break a}c[r>>2]=g+1;c[f+8+(g<<2)>>2]=j}}else s=17;while(0);if((s|0)==17){s=0;i=c[o>>2]|0;h=h+j|0;if((a[h>>0]|0)==45?(p=h+1|0,(a[p>>0]|0)!=93):0){h=B1(o,p,-1)|0;g=c[o>>2]|0;if((h|0)<1|(i|0)>(g|0)){g=11;break a}j=0;m=i;h=p+h|0;k=0;s=25}else{j=0;g=i;m=i;k=0;s=25}}if((s|0)==25){s=0;i=_2(e)|0;if(!i){g=12;break a}c[i>>2]=m;c[i+4>>2]=g;c[i+12>>2]=j;c[i+8>>2]=-1;if(!(k|(c[n>>2]&2|0)==0)?($2(e,m,g)|0)!=0:0){g=12;break a}}j=B1(o,h,-1)|0;g=a[h>>0]|0;if((j|0)<1){s=3;break a}}if((s|0)==5){c[b+12>>2]=h+1;g=0;break}else if((s|0)==16){g=4;break}}else s=3;while(0);if((s|0)==3)g=g<<24>>24?2:7;l=t;return g|0}function Z2(a,b){a=a|0;b=b|0;return (c[c[a>>2]>>2]|0)-(c[c[b>>2]>>2]|0)|0}function _2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=a+8|0;d=c[h>>2]|0;e=a+12|0;f=c[e>>2]|0;if((d|0)>=(f|0))if((f|0)<=32767?(c[e>>2]=f<<1,g=a+4|0,b=F_(c[g>>2]|0,f<<3)|0,(b|0)!=0):0){c[g>>2]=b;d=c[h>>2]|0;i=6}else b=0;else{b=c[a+4>>2]|0;i=6}if((i|0)==6){c[h>>2]=d+1;i=n2(c[a>>2]|0,0,0,1,20)|0;c[b+(d<<2)>>2]=i;b=i}return b|0}function $2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a:do if((b|0)>(d|0))b=0;else while(1){b:do if(!(l0(b)|0)){if(!(m0(b)|0)){b=b+1|0;break}f=o0(b)|0;e=f;while(1){g=b+1|0;e=e+1|0;if((b|0)>=(d|0)){h=f;b=g;g=12;break b}if((o0(g)|0)==(e|0))b=g;else{h=f;b=g;g=12;break}}}else{f=R$(b)|0;e=f;while(1){g=b+1|0;e=e+1|0;if((b|0)>=(d|0)){h=f;b=g;g=12;break b}if((R$(g)|0)==(e|0))b=g;else{h=f;b=g;g=12;break}}}while(0);if((g|0)==12){g=0;f=_2(a)|0;if(!f){b=-1;break a}c[f>>2]=h;c[f+4>>2]=e+-1;c[f+8>>2]=-1}if((b|0)>(d|0)){b=0;break}}while(0);return b|0}function a3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;i=c[a+4>>2]|0;j=i+56|0;h=(c[j>>2]&8|0)==0?d:0;a=c[i+40>>2]|0;if((a|0)>0&(h|0)!=0){a=C_(a<<2)|0;if(!a)a=12;else{g=a;d=a;m=3}}else{g=0;d=0;m=3}if((m|0)==3){if(!(c[i+60>>2]|0))a=c3(i,b,g,f,k)|0;else a=b3(i,b,g,f,k)|0;if(!a)d3(h,e,c[j>>2]|0,i,g,c[k>>2]|0);if(g)D_(d)}l=n;return a|0}function b3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,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;V=l;l=l+16|0;T=V;c[T>>2]=0;o=e&1;R=e&2;S=a+56|0;n=c[S>>2]&4;U=l2(0,0)|0;a:do if(U){p=n2(U,0,0,0,32)|0;if(!p){m2(U);e=12;break}c[p+24>>2]=0;c[p+28>>2]=0;Q=a+40|0;e=c[Q>>2]|0;if(e){e=C_(e<<2)|0;if(!e){m=0;k=0;j=e;e=12;i=0;h=0;g=0}else{j=e;i=e;C=6}}else{j=0;i=0;C=6}b:do if((C|0)==6){e=c[a+28>>2]|0;if(e){e=C_(e<<3)|0;if(!e){m=e;k=0;e=12;h=0;g=0;break}else{m=e;h=e}}else{m=0;h=0}P=a+52|0;e=c[P>>2]|0;if(e){e=C_(e<<2)|0;if(!e){k=e;e=12;g=0;break}else{k=e;g=e}}else{k=0;g=0}K=a+8|0;L=a+12|0;M=(d|0)==0;N=(d|0)!=0;O=a+32|0;J=(n|0)!=0;I=(o|0)==0;r=b;e=1;q=-1;v=-1;B=0;c:while(1){n=c[Q>>2]|0;if((n|0)>0){o=0;do{c[j+(o<<2)>>2]=-1;if(!M){c[d+(o<<2)>>2]=-1;n=c[Q>>2]|0}o=o+1|0}while((o|0)<(n|0))}n=c[P>>2]|0;if((n|0)>0)H3(g|0,0,n<<2|0)|0;G=e+q|0;e=B1(T,r,4)|0;if((e|0)<1)if((e|0)<0){e=1;break b}else e=1;F=r+e|0;H=c[T>>2]|0;n=c[K>>2]|0;o=n+8|0;if(c[o>>2]|0){w=(G|0)!=0;x=(B|0)==95;y=(G|0)==0;A=J&(B|0)==10;z=(G|0)<1&I;u=n;n=0;t=0;s=o;while(1){r=u+20|0;o=c[r>>2]|0;d:do if(o)if((o&1|0)==0|z|A){if(o&2|0?(E=c[T>>2]|0,!((E|R|0)==0|J&(E|0)==10)):0){q=t;break}do if(o&16|0){if(x){q=t;break d}if(h0(B)|0){q=t;break d}o=c[T>>2]|0;if((o|0)==95)break;if(!(h0(o)|0)){q=t;break d}}while(0);o=c[r>>2]|0;if(o&32){if(x){o=c[T>>2]|0;if((o|0)==95){q=t;break}}else{E=(h0(B)|0)==0;o=c[T>>2]|0;if(E|(o|0)==95){q=t;break}}if(h0(o)|0){q=t;break}o=c[r>>2]|0}q=c[T>>2]|0;do if((q|0)!=0&(w&(o&64|0)!=0)){if(x)o=1;else{o=(h0(B)|0)!=0;q=c[T>>2]|0}if((q|0)==95)if(o){q=t;break d}else break;else if(o^(h0(q)|0)!=0)break;else{q=t;break d}}while(0);if(!(c[r>>2]&128)){C=49;break}o=c[T>>2]|0;if(y|(o|0)==0){q=t;break}if(x)q=1;else{q=(h0(B)|0)!=0;o=c[T>>2]|0}if((o|0)==95)if(q){C=49;break}else{q=t;break}else if(q^(h0(o)|0)!=0){q=t;break}else{C=49;break}}else q=t;else C=49;while(0);do if((C|0)==49){C=0;if(!t){n=c[u+16>>2]|0;q=c[s>>2]|0;break}q=p+28|0;o=c[q>>2]|0;if(!o){o=n2(U,0,0,0,32)|0;if(!o){C=53;break c}c[o+24>>2]=p;c[o+28>>2]=0;E=n2(U,0,0,0,c[Q>>2]<<2)|0;c[o+20>>2]=E;if(!E){C=60;break c}c[q>>2]=o;p=o}else p=o;c[p>>2]=G;c[p+4>>2]=F;c[p+8>>2]=c[s>>2];c[p+12>>2]=c[u+12>>2];c[p+16>>2]=c[T>>2];if((c[Q>>2]|0)>0){q=c[p+20>>2]|0;o=0;do{c[q+(o<<2)>>2]=c[j+(o<<2)>>2];o=o+1|0}while((o|0)<(c[Q>>2]|0))}o=c[u+16>>2]|0;if(!o)q=t;else{q=c[o>>2]|0;if((q|0)<=-1){q=t;break}r=c[p+20>>2]|0;do{o=o+4|0;c[r+(q<<2)>>2]=G;q=c[o>>2]|0}while((q|0)>-1);q=t}}while(0);s=u+40|0;if(!(c[s>>2]|0))break;else{u=u+32|0;t=q}}if(n){o=c[n>>2]|0;if((o|0)>-1)do{c[j+(o<<2)>>2]=G;n=n+4|0;o=c[n>>2]|0}while((o|0)>-1)}else n=0;if(!q)C=171;else{s=G;r=F;w=q;x=n;C=79}}else{n=0;C=171}e:while(1){if((C|0)==79){if((w|0)==(c[L>>2]|0)){if((v|0)>=(s|0)){if(!(N&(v|0)==(s|0))){n=x;C=171;continue}n=c[Q>>2]|0;if(!(f3(n,c[O>>2]|0,j,d)|0)){n=x;C=171;continue}}else{if(M){v=s;n=x;C=171;continue}n=c[Q>>2]|0}if((n|0)>0)n=0;else{v=s;n=x;C=171;continue}while(1){c[d+(n<<2)>>2]=c[j+(n<<2)>>2];n=n+1|0;if((n|0)>=(c[Q>>2]|0)){v=s;n=x;C=171;continue e}}}u=w+8|0;if((c[u>>2]|0)!=0?(c[w+20>>2]&256|0)!=0:0){o=c[w+24>>2]|0;d3(o+1|0,m,c[S>>2]&-9,a,j,s);E=c[m+(o<<3)>>2]|0;o=(c[m+(o<<3)+4>>2]|0)-E|0;if(z$(b+E|0,r+-1|0,o)|0){n=x;C=171;continue}E=(o|0)==0;n=E&1;q=c[w+12>>2]|0;if(E?c[k+(q<<2)>>2]|0:0){n=x;C=171;continue}c[k+(q<<2)>>2]=n;o=o+-1|0;r=r+o|0;o=o+s|0;q=c[T>>2]|0;n=B1(T,r,4)|0;if((n|0)<1)if((n|0)<0){e=1;break b}else n=1;D=r+n|0;E=n}else{q=c[T>>2]|0;if(!q){n=x;C=171;continue}n=B1(T,r,4)|0;if((n|0)<1)if((n|0)<0){e=1;break b}else n=1;o=s;D=r+n|0;E=n}s=o+e|0;if(!(c[u>>2]|0)){e=E;n=x;C=171;continue}y=(s|0)!=0;z=(q|0)==95;A=(s|0)==0;C=J&(q|0)==10;B=(s|0)<1&I;t=0;n=x;while(1){f:do if((c[w>>2]|0)>>>0<=q>>>0){if((c[w+4>>2]|0)>>>0>>0)break;r=w+20|0;e=c[r>>2]|0;do if(e|0){if(!((e&1|0)==0|B|C))break f;if(e&2|0?(x=c[T>>2]|0,!((x|R|0)==0|J&(x|0)==10)):0)break f;do if(e&16|0){if(z)break f;if(h0(q)|0)break f;e=c[T>>2]|0;if((e|0)==95)break;if(!(h0(e)|0))break f}while(0);e=c[r>>2]|0;if(e&32){if(z){e=c[T>>2]|0;if((e|0)==95)break f}else{x=(h0(q)|0)==0;e=c[T>>2]|0;if(x|(e|0)==95)break f}if(h0(e)|0)break f;e=c[r>>2]|0}o=c[T>>2]|0;do if((o|0)!=0&(y&(e&64|0)!=0)){if(z)e=1;else{e=(h0(q)|0)!=0;o=c[T>>2]|0}if((o|0)==95)if(e)break f;else break;else if(e^(h0(o)|0)!=0)break;else break f}while(0);do if(c[r>>2]&128|0){e=c[T>>2]|0;if(A|(e|0)==0)break f;if(z)o=1;else{o=(h0(q)|0)!=0;e=c[T>>2]|0}if((e|0)==95)if(o)break;else break f;else if(o^(h0(e)|0)!=0)break f;else break}while(0);e=c[r>>2]|0;do if(e&4){if(c[S>>2]&2|0)break;if(!(g0(q,c[w+24>>2]|0)|0))break f;e=c[r>>2]|0}while(0);do if(e&4|0){if(!(c[S>>2]&2))break;x=o0(q)|0;e=w+24|0;if(g0(x,c[e>>2]|0)|0)break;x=R$(q)|0;if(!(g0(x,c[e>>2]|0)|0))break f}while(0);if(!(c[r>>2]&8))break;if(e3(c[w+28>>2]|0,q,c[S>>2]&2)|0)break f}while(0);if(!t){t=c[u>>2]|0;n=c[w+16>>2]|0;break}o=p+28|0;e=c[o>>2]|0;if(!e){e=n2(U,0,0,0,32)|0;if(!e){C=145;break c}c[e+24>>2]=p;c[e+28>>2]=0;x=n2(U,0,0,0,c[Q>>2]<<2)|0;c[e+20>>2]=x;if(!x){C=152;break c}c[o>>2]=e;p=e}else p=e;c[p>>2]=s;c[p+4>>2]=D;c[p+8>>2]=c[u>>2];c[p+12>>2]=c[w+12>>2];c[p+16>>2]=c[T>>2];if((c[Q>>2]|0)>0){o=c[p+20>>2]|0;e=0;do{c[o+(e<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0}while((e|0)<(c[Q>>2]|0))}e=c[w+16>>2]|0;if(!e)break;o=c[e>>2]|0;if((o|0)<=-1)break;r=c[p+20>>2]|0;do{c[r+(o<<2)>>2]=s;e=e+4|0;o=c[e>>2]|0}while((o|0)>-1)}while(0);u=w+40|0;if(!(c[u>>2]|0))break;else w=w+32|0}if(!t){e=E;C=171;continue}if(n){e=c[n>>2]|0;if((e|0)>-1){do{n=n+4|0;c[j+(e<<2)>>2]=s;e=c[n>>2]|0}while((e|0)>-1);q=v;o=D;e=E}else{q=v;o=D;e=E}}else{q=v;o=D;e=E;n=0}}else if((C|0)==171){C=0;r=c[p+24>>2]|0;if(!r)break;t=c[p+8>>2]|0;if(c[t+20>>2]&256|0)c[k+(c[p+12>>2]<<2)>>2]=0;s=c[p>>2]|0;u=c[p+4>>2]|0;c[T>>2]=c[p+16>>2];q=c[Q>>2]|0;if((q|0)>0){p=c[p+20>>2]|0;o=0;do{c[j+(o<<2)>>2]=c[p+(o<<2)>>2];o=o+1|0}while((o|0)<(q|0));p=r;q=v;o=u}else{p=r;q=v;o=u}}r=o;v=q;w=t;x=n;C=79}n=(v|0)>-1;if(n|(c[T>>2]|0)==0){C=180;break}c[T>>2]=H;r=F;q=G;B=H}if((C|0)==53){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==60){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==145){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==152){m2(U);if(j|0)D_(i);if(m|0)D_(h);if(!k){e=12;break a}D_(g);e=12;break a}else if((C|0)==180){c[f>>2]=v;e=(n^1)&1;break}}while(0);m2(U);if(j|0)D_(i);if(m|0)D_(h);if(k)D_(g)}else e=12;while(0);l=V;return e|0}function c3(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;W=l;l=l+16|0;T=W;c[T>>2]=0;k=e&1;Q=e&2;R=a+56|0;j=c[R>>2]&4;if(!d)N=0;else N=c[a+40>>2]|0;P=N<<2;i=a+52|0;e=c[i>>2]|0;h=e<<3;g=h+8|0;e=P+12+h+(g+(O(P,e)|0)<<1)|0;U=C_(e)|0;if(!U)e=12;else{H3(U|0,0,e|0)|0;e=U+P|0;m=e&3;m=e+((m|0)==0?0:4-m|0)|0;e=m+g|0;n=e&3;n=e+((n|0)==0?0:4-n|0)|0;e=n+g|0;M=e&3;M=e+((M|0)==0?0:4-M|0)|0;e=M+h|0;g=e&3;i=c[i>>2]|0;h=(i|0)>0;if(h){e=e+((g|0)==0?0:4-g|0)|0;g=0;while(1){c[n+(g<<3)+4>>2]=e;e=e+P|0;c[m+(g<<3)+4>>2]=e;g=g+1|0;if((g|0)>=(i|0))break;else e=e+P|0}if(h){e=0;do{c[M+(e<<3)>>2]=-1;e=e+1|0}while((e|0)<(i|0))}}e=B1(T,b,4)|0;if((e|0)<1)if((e|0)<0)e=1;else{i=1;V=11}else{i=e;V=11}a:do if((V|0)==11){L=a+8|0;K=(j|0)!=0;E=(k|0)==0;F=(N|0)>0;G=a+12|0;H=(N|0)<1;I=a+44|0;J=a+32|0;C=a+36|0;D=(N|0)==0;h=0;v=b+i|0;u=0;j=0;e=-1;g=m;A=U;x=m;w=n;while(1){if((e|0)<0){a=c[L>>2]|0;k=a+8|0;b:do if(c[k>>2]|0){p=(u|0)!=0;q=(h|0)==95;r=(u|0)==0;t=K&(h|0)==10;s=(u|0)<1&E;while(1){c:while(1){o=a+12|0;if((c[M+(c[o>>2]<<3)>>2]|0)>=(u|0))break;n=a+20|0;b=c[n>>2]|0;if(!b){V=46;break}d:do if((b&1|0)==0|s|t){if(b&2|0?(B=c[T>>2]|0,!((B|Q|0)==0|K&(B|0)==10)):0)break;do if(b&16|0){if(q)break d;if(h0(h)|0)break d;b=c[T>>2]|0;if((b|0)==95)break;if(!(h0(b)|0))break d}while(0);b=c[n>>2]|0;if(b&32){if(q){b=c[T>>2]|0;if((b|0)==95)break}else{B=(h0(h)|0)==0;b=c[T>>2]|0;if(B|(b|0)==95)break}if(h0(b)|0)break;b=c[n>>2]|0}m=c[T>>2]|0;do if((m|0)!=0&(p&(b&64|0)!=0)){if(q)b=1;else{b=(h0(h)|0)!=0;m=c[T>>2]|0}if((m|0)==95)if(b)break d;else break;else if(b^(h0(m)|0)!=0)break;else break d}while(0);if(!(c[n>>2]&128)){V=46;break c}b=c[T>>2]|0;if(r|(b|0)==0)break;if(q)m=1;else{m=(h0(h)|0)!=0;b=c[T>>2]|0}if((b|0)==95)if(m){V=46;break c}else break;else if(m^(h0(b)|0)!=0)break;else{V=46;break c}}while(0);k=a+40|0;if(!(c[k>>2]|0))break b;else a=a+32|0}if((V|0)==46){V=0;c[g>>2]=c[k>>2];if(F)H3(c[g+4>>2]|0,-1,P|0)|0;k=c[a+16>>2]|0;if(k|0?(S=c[k>>2]|0,(S|0)>-1):0){m=g+4|0;b=S;do{if((b|0)<(N|0))c[(c[m>>2]|0)+(b<<2)>>2]=u;k=k+4|0;b=c[k>>2]|0}while((b|0)>-1)}k=(c[g>>2]|0)!=(c[G>>2]|0);if(k|H){j=k?j:1;e=k?e:u;k=g+4|0}else{k=g+4|0;j=c[k>>2]|0;e=0;do{c[d+(e<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0}while((e|0)!=(N|0));j=1;e=u}B=c[o>>2]|0;c[M+(B<<3)>>2]=u;c[M+(B<<3)+4>>2]=k;g=g+8|0}k=a+40|0;if(!(c[k>>2]|0))break;else a=a+32|0}}while(0);c[g>>2]=0;g=c[T>>2]|0;if(!g)break;else h=g}else{if(D)break;h=c[T>>2]|0;if(!((g|0)!=(x|0)&(h|0)!=0))break}B=u+i|0;g=B1(T,v,4)|0;if((g|0)<1)if((g|0)<0){e=1;break a}else i=1;else i=g;z=v+i|0;if((j|0)!=0&(c[I>>2]|0)!=0){if(!(c[x>>2]|0))g=w;else{o=c[C>>2]|0;p=c[o>>2]|0;q=(p|0)>-1;n=x;g=w;do{m=n+4|0;e:do if(q){k=0;b=p;do{a=c[o+((k|1)<<2)>>2]|0;if((b|0)>=(N|0))break e;j=c[m>>2]|0;if((c[j+(a<<2)>>2]|0)==(c[d+(a<<2)>>2]|0)?(c[j+(b<<2)>>2]|0)<(c[d+(b<<2)>>2]|0):0)break e;k=k+2|0;b=c[o+(k<<2)>>2]|0}while((b|0)>-1);k=m;V=75}else{k=m;j=c[m>>2]|0;V=75}while(0);if((V|0)==75){V=0;c[g>>2]=c[n>>2];v=g+4|0;y=c[v>>2]|0;c[v>>2]=j;c[k>>2]=y;g=g+8|0}n=n+8|0}while((c[n>>2]|0)!=0)}c[g>>2]=0;y=x;j=0}else{y=w;w=x}k=c[w>>2]|0;if(!k){k=A;g=y}else{r=(B|0)!=0;s=(h|0)==95;t=(B|0)==0;v=K&(h|0)==10;u=(B|0)<1&E;q=w;a=A;g=y;while(1){b=k+8|0;if(c[b>>2]|0){p=q+4|0;o=a;n=b;while(1){f:do if((c[k>>2]|0)>>>0<=h>>>0?(c[k+4>>2]|0)>>>0>=h>>>0:0){m=k+20|0;a=c[m>>2]|0;do if(a|0){if(!((a&1|0)==0|u|v)){a=o;break f}if(a&2|0?(A=c[T>>2]|0,!((A|Q|0)==0|K&(A|0)==10)):0){a=o;break f}do if(a&16|0){if(s){a=o;break f}if(h0(h)|0){a=o;break f}a=c[T>>2]|0;if((a|0)==95)break;if(!(h0(a)|0)){a=o;break f}}while(0);a=c[m>>2]|0;if(a&32){if(s){a=c[T>>2]|0;if((a|0)==95){a=o;break f}}else{A=(h0(h)|0)==0;a=c[T>>2]|0;if(A|(a|0)==95){a=o;break f}}if(h0(a)|0){a=o;break f}a=c[m>>2]|0}b=c[T>>2]|0;do if((b|0)!=0&(r&(a&64|0)!=0)){if(s)a=1;else{a=(h0(h)|0)!=0;b=c[T>>2]|0}if((b|0)==95)if(a){a=o;break f}else break;else if(a^(h0(b)|0)!=0)break;else{a=o;break f}}while(0);do if(c[m>>2]&128|0){a=c[T>>2]|0;if(t|(a|0)==0){a=o;break f}if(s)b=1;else{b=(h0(h)|0)!=0;a=c[T>>2]|0}if((a|0)==95)if(b)break;else{a=o;break f}else if(b^(h0(a)|0)!=0){a=o;break f}else break}while(0);a=c[m>>2]|0;do if(a&4){if(c[R>>2]&2|0)break;if(!(g0(h,c[k+24>>2]|0)|0)){a=o;break f}a=c[m>>2]|0}while(0);do if(a&4|0){if(!(c[R>>2]&2))break;A=o0(h)|0;a=k+24|0;if(g0(A,c[a>>2]|0)|0)break;A=R$(h)|0;if(!(g0(A,c[a>>2]|0)|0)){a=o;break f}}while(0);if(!(c[m>>2]&8))break;if(e3(c[k+28>>2]|0,h,c[R>>2]&2)|0){a=o;break f}}while(0);if(F){b=c[p>>2]|0;a=0;do{c[o+(a<<2)>>2]=c[b+(a<<2)>>2];a=a+1|0}while((a|0)!=(N|0))}a=c[k+16>>2]|0;do if(a|0){b=c[a>>2]|0;if((b|0)<=-1)break;do{if((b|0)<(N|0))c[o+(b<<2)>>2]=B;a=a+4|0;b=c[a>>2]|0}while((b|0)>-1)}while(0);a=c[k+12>>2]|0;b=M+(a<<3)|0;if((c[b>>2]|0)>=(B|0)){a=c[M+(a<<3)+4>>2]|0;b=c[a>>2]|0;if(!(f3(N,c[J>>2]|0,o,b)|0)){a=o;break}c[a>>2]=o;if((c[n>>2]|0)!=(c[G>>2]|0)){a=b;break}if(F)e=0;else{j=1;a=b;e=B;break}while(1){c[d+(e<<2)>>2]=c[o+(e<<2)>>2];e=e+1|0;if((e|0)==(N|0)){j=1;a=b;e=B;break f}}}A=c[n>>2]|0;c[g>>2]=A;x=g+4|0;m=c[x>>2]|0;c[x>>2]=o;c[b>>2]=B;c[M+(a<<3)+4>>2]=x;do if((c[G>>2]|0)==(A|0)){if((e|0)==-1)if(F)e=0;else{e=B;j=1;break}else{if(!F)break;if((c[o>>2]|0)>(c[d>>2]|0))break;else e=0}do{c[d+(e<<2)>>2]=c[o+(e<<2)>>2];e=e+1|0}while((e|0)<(N|0));e=B;j=1}while(0);a=m;g=g+8|0}else a=o;while(0);n=k+40|0;if(!(c[n>>2]|0))break;else{k=k+32|0;o=a}}}q=q+8|0;k=c[q>>2]|0;if(!k){k=a;break}}}c[g>>2]=0;v=z;u=B;A=k;x=y}c[f>>2]=e;e=e>>>31}while(0);D_(U)}l=W;return e|0}function d3(a,b,d,e,f,g){a=a|0;b=b|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;if((d&8|0)==0&(g|0)>-1?(m=c[e+16>>2]|0,n=c[e+28>>2]|0,l=(a|0)!=0&(n|0)!=0,l):0){k=c[e+48>>2]|0;j=0;do{d=c[m+(j*12|0)>>2]|0;if((d|0)==(k|0))i=g;else i=c[f+(d<<2)>>2]|0;h=b+(j<<3)|0;c[h>>2]=i;d=c[m+(j*12|0)+4>>2]|0;if((d|0)==(k|0))d=g;else d=c[f+(d<<2)>>2]|0;e=b+(j<<3)+4|0;c[e>>2]=d;if((d|0)==-1|(i|0)==-1){c[e>>2]=-1;c[h>>2]=-1}j=j+1|0}while(j>>>0>>0&j>>>0>>0);if(l){d=0;do{i=b+(d<<3)+4|0;j=c[m+(d*12|0)+8>>2]|0;if(j|0?(o=c[j>>2]|0,(o|0)>-1):0){k=b+(d<<3)|0;h=0;f=o;e=c[k>>2]|0;do{if(!((e|0)>=(c[b+(f<<3)>>2]|0)?(c[i>>2]|0)<=(c[b+(f<<3)+4>>2]|0):0)){c[i>>2]=-1;c[k>>2]=-1;e=-1}h=h+1|0;f=c[j+(h<<2)>>2]|0}while((f|0)>-1)}d=d+1|0}while(d>>>0>>0&d>>>0>>0)}else d=0}else d=0;if(d>>>0>>0)H3(b+(d<<3)|0,-1,a-d<<3|0)|0;return}function e3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[a>>2]|0;a:do if(!e)d=0;else{f=(d|0)==0;d=e;while(1){if(f){if(g0(b,d)|0){d=1;break a}}else{e=R$(b)|0;if(g0(e,c[a>>2]|0)|0){d=1;break a}e=o0(b)|0;if(g0(e,c[a>>2]|0)|0){d=1;break a}}a=a+4|0;d=c[a>>2]|0;if(!d){d=0;break}}}while(0);return d|0}function f3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if((a|0)>0){f=0;while(1){h=c[d+(f<<2)>>2]|0;g=c[e+(f<<2)>>2]|0;if(!(c[b+(f<<2)>>2]|0)){if((h|0)<(g|0)){f=1;break a}if((h|0)>(g|0)){f=0;break a}}else{if((h|0)>(g|0)){f=1;break a}if((h|0)<(g|0)){f=0;break a}}f=f+1|0;if((f|0)>=(a|0)){f=0;break}}}else f=0;while(0);return f|0}function g3(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=t0(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;i=(c[f+8>>2]|0)-h|0;if((i|0)>0){i=i>>>0>>0?i:k;F3(b|0,h|0,i|0)|0;c[g>>2]=(c[g>>2]|0)+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(K$(f)|0)break;h=nb[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)u0(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)u0(f);return e|0}function h3(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(t0(a)|0)==0;a=i3(a)|0}else a=i3(a)|0;return a|0}function i3(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=nb[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function j3(a){a=a|0;(c[a+76>>2]|0)>-1?t0(a)|0:0;return c[a+60>>2]|0}function k3(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[15653]|0;if((c[f+76>>2]|0)>-1)g=t0(f)|0;else g=0;do if((D1(b,f)|0)<0)b=-1;else{if((a[f+75>>0]|0)!=10?(d=f+20|0,e=c[d>>2]|0,e>>>0<(c[f+16>>2]|0)>>>0):0){c[d>>2]=e+1;a[e>>0]=10;b=0;break}b=(F1(f,10)|0)>>31}while(0);if(g|0)u0(f);return b|0}function l3(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;i=k+24|0;h=k+16|0;g=k;d=k+28|0;b=d;e=150604;f=b+20|0;do{a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}while((b|0)<(f|0));e=d+13|0;b=0;while(1){h1(e)|0;c[g>>2]=d;c[g+4>>2]=32962;c[g+8>>2]=384;f=N_(Ha(5,g|0)|0)|0;if((f|0)>-1){j=4;break}if((b|0)<99)b=b+1|0;else{b=0;break}}if((j|0)==4){c[h>>2]=d;wa(10,h|0)|0;b=z1(f,150624)|0;if(!b){c[i>>2]=f;Ja(6,i|0)|0;b=0}}l=k;return b|0}function m3(a){a=a|0;var b=0,e=0,f=0;if((c[a+76>>2]|0)>=0?(t0(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0}else b=J$(a)|0}else f=3;do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=J$(a)|0;break}}while(0);return b|0}function n3(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(t0(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=F1(d,b)|0;u0(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=F1(d,b)|0}while(0);return e|0}function o3(a){a=a|0;return h3(a)|0}function p3(){}function q3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function r3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=q3(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function s3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function t3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function u3(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0} +function v3(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=u3(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((u3(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=s3(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;t3(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=t3(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function w3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return v3(a,b,c,d,0)|0}function x3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;v3(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function y3(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>c;return a>>>c|(b&(1<>c-32|0}function z3(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function A3(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255|0}function C3(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function D3(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;q=q+1|0;c[a>>2]=q;while((f|0)<(e|0)){if(!(c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=q;c[d+((f<<3)+4)>>2]=b;c[d+((f<<3)+8)>>2]=0;z=e;return d|0}f=f+1|0}e=e*2|0;d=F_(d|0,8*(e+1|0)|0)|0;d=D3(a|0,b|0,d|0,e|0)|0;z=e;return d|0}function E3(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function F3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Ra(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function G3(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else F3(b,c,d)|0;return b|0}function H3(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function I3(a){a=a|0;var b=0,d=0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){W()|0;va(12);return -1}c[i>>2]=b;if((b|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=d;va(12);return -1}return d|0}function J3(a){a=a|0;return +gb[a&1]()}function K3(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;return +hb[a&7](+b,+c,+d)}function L3(a,b){a=a|0;b=b|0;return +ib[a&1](b|0)}function M3(a){a=a|0;return jb[a&3]()|0}function N3(a,b){a=a|0;b=b|0;return kb[a&63](b|0)|0}function O3(a,b,c){a=a|0;b=b|0;c=c|0;return lb[a&127](b|0,c|0)|0}function P3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return mb[a&3](b|0,c|0,+d,+e)|0}function Q3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nb[a&63](b|0,c|0,d|0)|0}function R3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ob[a&127](b|0,c|0,d|0,e|0)|0}function S3(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 pb[a&127](b|0,c|0,d|0,e|0,f|0)|0}function T3(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return qb[a&1](b|0,c|0,d|0,e|0,f|0,g|0)|0}function U3(a,b,c,d,e,f,g,h,i,j,k){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;return rb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)|0}function V3(a){a=a|0;sb[a&15]()}function W3(a,b){a=a|0;b=b|0;tb[a&127](b|0)}function X3(a,b,c){a=a|0;b=b|0;c=c|0;ub[a&63](b|0,c|0)}function Y3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vb[a&127](b|0,c|0,d|0)}function Z3(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;wb[a&15](b|0,c|0,d|0,+e,+f,g|0)}function _3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;xb[a&31](b|0,c|0,d|0,e|0)}function $3(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;yb[a&15](b|0,c|0,d|0,e|0,f|0)}function a4(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;zb[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function b4(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;Ab[a&0](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function c4(){S(0);return 0.0}function d4(a,b,c){a=+a;b=+b;c=+c;S(1);return 0.0}function e4(a){a=a|0;S(2);return 0.0}function f4(){S(3);return 0}function g4(a){a=a|0;S(4);return 0}function h4(a,b){a=a|0;b=b|0;S(5);return 0}function i4(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(6);return 0}function j4(a,b,c){a=a|0;b=b|0;c=c|0;S(7);return 0}function k4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(8);return 0}function l4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(9);return 0}function m4(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(10);return 0}function n4(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;S(11);return 0}function o4(){S(12)}function p4(a){a=a|0;S(13)}function q4(a,b){a=a|0;b=b|0;S(14)}function r4(a,b,c){a=a|0;b=b|0;c=c|0;S(15)}function s4(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;S(16)}function t4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(17)}function u4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(18)}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;S(19)}function w4(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;S(20)} + +// EMSCRIPTEN_END_FUNCS +var gb=[c4,FL];var hb=[d4,RF,QF,SF,TF,d4,d4,d4];var ib=[e4,ML];var jb=[f4,eq,EH,vI];var kb=[g4,eh,zg,Nm,Om,Fy,Iy,sN,tN,iP,jP,kP,lP,mP,nP,oP,pP,K_,Ib,bC,Al,Dl,an,vH,ay,Sy,$x,AH,FH,by,eN,uH,jN,kN,bV,C_,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4,g4];var lb=[h4,hy,Ey,Jy,EK,FK,wK,sK,aK,KT,LT,MT,NT,OT,PT,RT,ST,TT,UT,VT,WT,XT,YT,ZT,_T,$T,aU,bU,cU,dU,eU,fU,gU,hU,iU,jU,kU,lU,mU,nU,wX,xX,zX,WX,XX,YX,ZX,_X,$X,aY,bY,UY,VY,XY,jY,kY,mY,$B,pg,dh,Gh,ii,Ai,Lk,Jk,Bl,El,$o,oq,Kq,Mq,Oq,Pq,Rq,Qq,ar,is,ns,ps,tu,mB,lB,kB,gD,Ty,xH,tD,JD,ED,FD,GE,D1,n3,zL,NM,xx,PR,Ex,Gx,fN,b$,oQ,JT,ZU,_U,F_,kX,lX,mX,Z2,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4,h4];var mb=[i4,qt,vt,i4];var nb=[j4,Jm,Mu,kw,sw,Bw,Gw,Dy,Hy,HI,AM,zR,AX,YY,nY,L_,M_,Q_,R_,G0,Pw,Zm,Au,tp,os,Iw,eD,Y0,vA,g1,BL,DI,sO,WU,HY,yZ,sZ,CZ,P1,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4,j4];var ob=[k4,Lm,Wq,Nu,mw,uw,Cx,AA,Dx,Wx,jy,ly,wy,vy,Ky,Oy,Qy,xI,CM,VN,TN,PP,BR,XR,WR,pX,qX,rX,sX,tX,uX,vX,yX,CX,NY,OY,PY,QY,RY,SY,TY,WY,_Y,cY,dY,eY,fY,gY,hY,iY,lY,pY,Lw,Az,iD,DL,QV,TV,_V,jW,sW,yW,wW,zW,iX,DZ,XW,JY,KY,zZ,AZ,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4,k4];var pb=[l4,iy,bK,xK,DX,EX,UX,VX,pZ,$Y,aZ,qY,rY,nX,oX,FZ,GZ,HZ,IZ,KZ,LZ,MZ,NZ,OZ,QZ,RZ,SZ,TZ,UZ,PZ,s_,t_,j_,c_,VZ,WZ,XZ,ZZ,YZ,_Z,$Z,a_,b_,d_,e_,f_,g_,h_,i_,k_,l_,m_,n_,r_,p_,o_,q_,y_,u_,v_,w_,x_,z_,A_,B_,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4,l4];var qb=[m4,AU];var rb=[n4,rZ,BZ,n4];var sb=[o4,EL,BH,CH,DH,HH,IH,JH,FR,o4,o4,o4,o4,o4,o4,o4];var tb=[p4,Ob,Pb,Tb,Ub,Vb,nc,oc,Mc,Nc,Oc,Pc,Qc,Rc,Sc,cd,dd,gd,hd,id,jd,kd,ld,md,yd,zd,Ad,Cd,Dd,Ed,Fd,Gd,Hd,Id,Jd,Ud,Vd,Wd,Yd,Zd,_d,$d,ae,be,ce,de,ee,ge,te,ue,ve,we,He,Ie,Je,Le,Ye,Ze,_e,af,bf,cf,df,ef,ff,gf,hf,jf,sf,tf,uf,vf,Yf,Tf,rm,bm,fp,Go,ao,co,Np,Op,Zl,_l,fo,no,po,Ao,my,IJ,_J,KJ,JJ,uK,fJ,iJ,qP,vP,Mf,Fl,Ko,Oo,gp,D_,ax,jD,cF,ER,lO,mN,yI,YR,zU,UU,VU,$U,p4,p4,p4,p4,p4,p4,p4,p4,p4,p4,p4,p4];var ub=[q4,Uc,Zc,od,td,Qd,me,Ce,Re,pf,Bf,Ly,cK,GK,yK,tK,YJ,ZJ,CK,DK,tP,xP,PI,Sw,fD,GH,dN,AT,yU,XU,YU,aV,cV,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4,q4];var vb=[r4,Wb,Xb,_b,Lc,Tc,Vc,Yc,nd,pd,sd,Ld,Md,Pd,he,ie,le,xe,ye,Be,Me,Ne,Qe,kf,lf,of,wf,xf,Af,qk,rk,sk,Km,lw,tw,Zw,ny,Py,wz,BA,YC,BG,wI,II,hJ,BM,EM,UN,SN,rP,sP,uP,wP,yP,AR,nT,mT,qx,Sx,bz,Ez,Hz,zH,CL,BI,hN,lN,oT,qT,rT,zT,BT,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4,r4];var wb=[s4,xE,yE,zE,AE,BE,CE,DE,EE,s4,s4,s4,s4,s4,s4,s4];var xb=[t4,Yb,Wc,qd,Bd,Nd,Xd,je,ze,Oe,$e,mf,yf,Pf,Of,Nf,Lf,Kf,Jf,mc,If,Hf,ky,$J,vK,BX,ZY,oY,_0,gN,iN,LY];var yb=[u4,ed,Kd,Rd,fe,Ke,Cl,hD,nN,u4,u4,u4,u4,u4,u4,u4];var zb=[v4,Zb,Xc,rd,Od,ke,Ae,Pe,nf,zf,oN,v4,v4,v4,v4,v4];var Ab=[w4];return{___errno_location:O_,___muldi3:r3,___udivdi3:w3,___uremdi3:x3,_bitshift64Ashr:y3,_bitshift64Lshr:z3,_bitshift64Shl:A3,_dtextract:zw,_free:D_,_htons:M0,_i64Add:s3,_i64Subtract:t3,_llvm_bswap_i16:B3,_llvm_bswap_i32:C3,_malloc:C_,_memalign:I_,_memcpy:F3,_memmove:G3,_memset:H3,_realloc:F_,_saveSetjmp:D3,_sbrk:I3,_testSetjmp:E3,_vizCreateFile:Kb,_vizLastErrorMessage:Jb,_vizRenderFromString:Nb,_vizSetNop:Mb,_vizSetY_invert:Lb,dynCall_d:J3,dynCall_dddd:K3,dynCall_di:L3,dynCall_i:M3,dynCall_ii:N3,dynCall_iii:O3,dynCall_iiidd:P3,dynCall_iiii:Q3,dynCall_iiiii:R3,dynCall_iiiiii:S3,dynCall_iiiiiii:T3,dynCall_iiiiiiiiiii:U3,dynCall_v:V3,dynCall_vi:W3,dynCall_vii:X3,dynCall_viii:Y3,dynCall_viiiddi:Z3,dynCall_viiii:_3,dynCall_viiiii:$3,dynCall_viiiiii:a4,dynCall_viiiiiiiii:b4,establishStackSpace:Eb,getTempRet0:Hb,runPostSets:p3,setTempRet0:Gb,setThrew:Fb,stackAlloc:Bb,stackRestore:Db,stackSave:Cb}}) + + +// EMSCRIPTEN_END_ASM +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _dtextract=Module["_dtextract"]=asm["_dtextract"];var _free=Module["_free"]=asm["_free"];var _htons=Module["_htons"]=asm["_htons"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i16=Module["_llvm_bswap_i16"]=asm["_llvm_bswap_i16"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memalign=Module["_memalign"]=asm["_memalign"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _realloc=Module["_realloc"]=asm["_realloc"];var _saveSetjmp=Module["_saveSetjmp"]=asm["_saveSetjmp"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _testSetjmp=Module["_testSetjmp"]=asm["_testSetjmp"];var _vizCreateFile=Module["_vizCreateFile"]=asm["_vizCreateFile"];var _vizLastErrorMessage=Module["_vizLastErrorMessage"]=asm["_vizLastErrorMessage"];var _vizRenderFromString=Module["_vizRenderFromString"]=asm["_vizRenderFromString"];var _vizSetNop=Module["_vizSetNop"]=asm["_vizSetNop"];var _vizSetY_invert=Module["_vizSetY_invert"]=asm["_vizSetY_invert"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_dddd=Module["dynCall_dddd"]=asm["dynCall_dddd"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiiiiii=Module["dynCall_iiiiiiiiiii"]=asm["dynCall_iiiiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiiddi=Module["dynCall_viiiddi"]=asm["dynCall_viiiddi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];Module["asm"]=asm;Module["ccall"]=ccall;Module["Pointer_stringify"]=Pointer_stringify;Module["UTF8ToString"]=UTF8ToString;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() + + + + + return Module; +}; + +function render(instance, src, options) { + var i; + for (i = 0; i < options.files.length; i++) { + instance['ccall']('vizCreateFile', 'number', ['string', 'string'], [options.files[i].path, options.files[i].data]); + } + + instance['ccall']('vizSetY_invert', 'number', ['number'], [options.yInvert ? 1 : 0]); + instance['ccall']('vizSetNop', 'number', ['number'], [options.nop ? options.nop : 0]); + + var resultPointer = instance['ccall']('vizRenderFromString', 'number', ['string', 'string', 'string'], [src, options.format, options.engine]); + var resultString = instance['Pointer_stringify'](resultPointer); + instance['ccall']('free', 'number', ['number'], [resultPointer]); + + var errorMessagePointer = instance['ccall']('vizLastErrorMessage', 'number', [], []); + var errorMessageString = instance['Pointer_stringify'](errorMessagePointer); + instance['ccall']('free', 'number', ['number'], [errorMessagePointer]); + + if (errorMessageString != '') { + throw new Error(errorMessageString); + } + + return resultString; +} + +if (typeof importScripts === "function") { + var instance = Module(); + + onmessage = function(event) { + var id = event.data.id; + var src = event.data.src; + var options = event.data.options; + + try { + var result = render(instance, src, options); + postMessage({ id: id, result: result }); + } catch (e) { + var error; + if (e instanceof Error) { + error = { message: e.message, fileName: e.fileName, lineNumber: e.lineNumber }; + } else { + error = { message: e.toString() }; + } + postMessage({ id: id, error: error }); + } + } +} + +if (typeof exports === 'object' && typeof module !== 'undefined') { + module.exports = { render: render, Module: Module }; +} else if (typeof define === 'function' && define.amd) { + define(function() { return { render: render, Module: Module }; }); +} + +if (typeof global.Viz !== 'undefined') { + global.Viz.render = render; + global.Viz.Module = Module; +} + +})(typeof self !== 'undefined' ? self : this); diff --git a/lib/viz.js b/lib/viz.js index 0aa9f5f..d9e55bd 100644 --- a/lib/viz.js +++ b/lib/viz.js @@ -1,9 +1,333 @@ -function Ub(nr){throw nr}var cc=void 0,wc=!0,xc=null,ee=!1;function bk(){return(function(){})} +/* +Viz.js 2.1.2 (Graphviz 2.40.1, Expat 2.2.5, Emscripten 1.37.36) +Copyright (c) 2014-2018 Michael Daines +Licensed under MIT license +This distribution contains other software in object code form: +Graphviz +Licensed under Eclipse Public License - v 1.0 +http://www.graphviz.org -("undefined"!==typeof exports&&exports!==xc?exports:this).Viz=(function(nr,rQa){function ck(a,b){var i=16;if(b>1]=r;break;case"i32":a[x>>2]=r;break;case"i64":ji=[r>>>0,Math.min(Math.floor(r/4294967296),4294967295)];a[x>>2]=ji[0];a[x+4>>2]=ji[1];break;case"float":ib[x>>2]=r;break;case"double":f[0]=r;a[x>>2]=b[0];a[x+4>>2]=b[1];break;default:Yg("invalid type for setValue: "+i)}}function ki(x,r){r=r||"i8";"*"===r.charAt(r.length-1)&&(r="i32");switch(r){case"i1":return m[x];case"i8":return m[x];case"i16":return D[x>>1];case"i32":return a[x>>2];case"i64":return a[x>>2];case"float":return ib[x>>2];case"double":return b[0]=a[x>>2],b[1]=a[x+4>>2],f[0];default:Yg("invalid type for setValue: "+r)}return xc}function d(a,b,i,g){var q,Xa;"number"===typeof a?(q=wc,Xa=a):(q=ee,Xa=a.length);var d="string"===typeof b?b:xc,i=i==cC?g:[Gb,Qa.fa,Qa.Ba][i===cc?c:i](Math.max(Xa,d?1:b.length));if(q){return li(i,Xa),i}for(q=0;q=b?2*Math.abs(1<=a){return a}var i=32>=b?Math.abs(1<=i&&(32>=b||a>i)){a=-2*i+a}return a}function pr(a){Zg++;K.monitorRunDependencies&&K.monitorRunDependencies(Zg);a?(Ae(!ek[a]),ek[a]=1,fk===xc&&"undefined"!==typeof setInterval&&(fk=setInterval((function(){var a=ee,b;for(b in ek){a||(a=wc,K.n("still waiting on run dependencies:")),K.n("dependency: "+b)}a&&K.n("(end of list)")}),6e3))):K.n("warning: run dependency added without ID")}function rn(a){Zg--;K.monitorRunDependencies&&K.monitorRunDependencies(Zg);a?(Ae(ek[a]),delete ek[a]):K.n("warning: run dependency removed without ID");0==Zg&&(fk!==xc&&(clearInterval(fk),fk=xc),eC||qr())}function td(a,b,i){for(var g=0;gXa?1:-1}}return 0}function ka(a,b){return td(a,b,gk)}function Ve(a,b,i){for(var g=0;gXa?1:-1}}return 0}function tf(b,r,i){if(20<=i&&r%2==b%2){if(r%4==b%4){for(i=r+i;r%4;){m[b++]=m[r++]}for(var r=r>>2,b=b>>2,g=i>>2;r>=1;b>>=1;for(g=i>>1;r>2]=b}function fC(a,b,i){var g=Q.a[a];if(g){if(g.q){if(0>i){return Ea(va.i),-1}if(g.object.d){if(g.object.l){for(var q=0;qi||0>q){Ea(va.i),b=-1}else{for(var d=a.object.b;d.length>2],b[1]=a[r+(q+4)>>2],f[0]):"i64"==x?i=[a[r+q>>2],a[r+(q+4)>>2]]:(x="i32",i=a[r+q>>2]);q+=Qa.W(x);return i}for(var g=x,q=0,Xa=[],d,c;;){var n=g;d=m[g];if(0===d){break}c=m[g+1];if(37==d){var z=ee,h=ee,e=ee,j=ee;a:for(;;){switch(c){case 43:z=wc;break;case 45:h=wc;break;case 35:e=wc;break;case 48:if(j){break a}else{j=wc;break};default:break a}g++;c=m[g+1]}var t=0;if(42==c){t=i("i32"),g++,c=m[g+1]}else{for(;48<=c&&57>=c;){t=10*t+(c-48),g++,c=m[g+1]}}var u=ee;if(46==c){var w=0,u=wc;g++;c=m[g+1];if(42==c){w=i("i32"),g++}else{for(;;){c=m[g+1];if(48>c||57=A&&(d=(n?dC:or)(d&Math.pow(256,A)-1,8*A));var P=Math.abs(d),n="";if(100==c||105==c){C=8==A&&hk?hk.stringify(B[0],B[1],xc):dC(d,8*A).toString(10)}else{if(117==c){C=8==A&&hk?hk.stringify(B[0],B[1],wc):or(d,8*A).toString(10),d=Math.abs(d)}else{if(111==c){C=(e?"0":"")+P.toString(8)}else{if(120==c||88==c){n=e?"0x":"";if(8==A&&hk){C=(B[1]>>>0).toString(16)+(B[0]>>>0).toString(16)}else{if(0>d){d=-d;C=(P-1).toString(16);B=[];for(e=0;ed?"-"+n:"+"+n);n.length+C.lengthA&&-4<=A?(c=(103==c?"f":"F").charCodeAt(0),w-=A+1):(c=(103==c?"e":"E").charCodeAt(0),w--),A=Math.min(w,20)}if(101==c||69==c){C=d.toExponential(A),/[eE][-+]\d$/.test(C)&&(C=C.slice(0,-1)+"0"+C.slice(-1))}else{if(102==c||70==c){C=d.toFixed(A)}}n=C.split("e");if(u&&!e){for(;1A++;){n[0]+="0"}}C=n[0]+(1d?"-":"")+"inf",j=ee}}for(;C.lengthc&&(C=C.toUpperCase());C.split("").forEach((function(a){Xa.push(a.charCodeAt(0))}))}else{if(115==c){z=i("i8*")||tQa;j=Ba(z);u&&(j=Math.min(j,w));if(!h){for(;j>2]=Xa.length}else{if(37==c){Xa.push(d)}else{for(e=n;ei&&(i+=256);for(var q=b>>2,c=g>>2,d=i|i<<8|i<<16|i<<24;q>2],z=z+Qa.W("void*");a[e>>2]=q;k+=2}else{for(;;){h=r();if(0==h){return n}if(!(h in He.whiteSpace)){break}}i();if("%"===x[k]){k++;for(var j=k;48<=x[k].charCodeAt(0)&&57>=x[k].charCodeAt(0);){k++}var t;k!=j&&(t=parseInt(x.slice(j,k),10));var u=j=ee,w=ee;"l"==x[k]?(j=wc,k++,"l"==x[k]&&(w=wc,k++)):"h"==x[k]&&(u=wc,k++);var A=x[k];k++;var B=0,e=[];if("f"==A){B=0;for(h=r();0=h||C&&45==h)||"x"===A&&(48<=h&&57>=h||97<=h&&102>=h||65<=h&&70>=h))&&(k>=x.length||h!==x[k].charCodeAt(0))){e.push(String.fromCharCode(h)),h=r(),B++,C=ee}else{break}}i()}if(0===e.length){return 0}h=e.join("");e=a[g+z>>2];z+=Qa.W("void*");switch(A){case"d":;case"u":;case"i":u?D[e>>1]=parseInt(h,10):w?(ji=[parseInt(h,10)>>>0,Math.min(Math.floor(parseInt(h,10)/4294967296),4294967295)],a[e>>2]=ji[0],a[e+4>>2]=ji[1]):a[e>>2]=parseInt(h,10);break;case"x":a[e>>2]=parseInt(h,16);break;case"f":j?(f[0]=parseFloat(h),a[e>>2]=b[0],a[e+4>>2]=b[1]):ib[e>>2]=parseFloat(h);break;case"s":j=Nd(h);for(u=0;u=h){break a}h=r()}i(h)}else{if(h=r(),x[k].charCodeAt(0)!==h){i(h);break a}}k++}}}return n}function Cd(a,b,i){var g=0;return He(b,(function(){return m[a+g++]}),(function(){g--}),i)}function he(a,b){rr||(rr=Gb(4));var i;a:{i=a;var g=rr,q,c,d,f;if(0==i&&0==(i=ki(g,"i8*"))){i=0}else{b:for(;;){c=ki(i++,"i8");for(q=b;0!=(d=ki(q++,"i8"));){if(c==d){continue b}}break}if(0==c){dk(g,0,"i8*"),i=0}else{for(f=i-1;;){c=ki(i++,"i8");q=b;do{if((d=ki(q++,"i8"))==c){0==c?i=0:dk(i-1,0,"i8");dk(g,i,"i8*");i=f;break a}}while(0!=d)}Yg("strtok_r error!");i=cc}}}return i}function ah(a){return a in{32:0,9:0,10:0,11:0,12:0,13:0}}function Rf(a,b){var i=0;do{m[a+i]=m[b+i],i++}while(0!=m[b+(i-1)])}function uf(a,b){var i=Ba(a),g=0;do{m[a+i+g]=m[b+g],g++}while(0!=m[b+(g-1)])}function Jc(a,b){a--;do{a++;var i=m[a];if(i==b){return a}}while(i);return 0}function wg(b,r){for(var i=b;ah(m[b]);){b++}var g=1;45==m[b]?(g=-1,b++):43==m[b]&&b++;for(var q,c=0,d=ee;;){q=m[b];if(!(48<=q&&57>=q)){break}d=wc;c=10*c+q-48;b++}var f=ee;if(46==m[b]){b++;for(var n=.1;;){q=m[b];if(!(48<=q&&57>=q)){break}f=wc;c+=n*(q-48);n/=10;b++}}if(!d&&!f){return r&&(a[r>>2]=i),0}q=m[b];if(101==q||69==q){b++;i=0;d=ee;q=m[b];45==q?(d=wc,b++):43==q&&b++;for(q=m[b];48<=q&&57>=q;){i=10*i+q-48,b++,q=m[b]}d&&(i=-i);c*=Math.pow(10,i)}r&&(a[r>>2]=b);return c*g}function bh(a){for(;ah(m[a]);){a++}var b=1;45==m[a]?(b=-1,a++):43==m[a]&&a++;var i=10;!i&&48==m[a]&&(120==m[a+1]||88==m[a+1]?(i=16,a+=2):(i=8,a++));i||(i=10);for(var g,q=0;0!=(g=m[a])&&!(g=parseInt(String.fromCharCode(g),i),isNaN(g));){q=q*i+g,a++}q*=b;if(2147483647q){q=2147483647i||0>g){return Ea(va.i),-1}for(a=0;q.g.length&&0i){return Ea(va.i),-1}if(g.object.d){if(g.object.input){for(a=0;g.g.length&&0=a);return 0}function vQa(a){a=Oe(a);a=Q.o(a);return a===xc?-1:!a.v?(Ea(va.h),-1):0}function jk(a,b){for(var i=ee,g,q=0;63>q;q++){g=i?0:m[b+q],m[a+q]=g,i=i||0==m[b+q]}}function tn(a,b,i,g,q){for(var q=J[q],c=0,d,f,n;c>>1,n=b+d*g,f=q(a,n),0>f){i=d}else{if(0=a?a-65+97:a}function S(){Ub("abort() at "+Error().stack)}function kk(a,b){var i=or(a&255);m[kk.c]=i;return-1==fC(b,kk.c,1)?(Q.a[b]&&(Q.a[b].error=wc),-1):i}function pi(a,b){return Math.sqrt(a*a+b*b)}function wQa(b,r,i){var g=a[i>>2],q=r&3,i=0!=q,q=1!=q,c=Boolean(r&512),d=Boolean(r&2048),f=Boolean(r&1024),n=Boolean(r&8),b=Q.D(Oe(b));if(!b.L){return Ea(b.error),-1}if(r=b.object||xc){if(c&&d){return Ea(va.ha),-1}if((i||c||f)&&r.e){return Ea(va.N),-1}if(q&&!r.v||i&&!r.write){return Ea(va.h),-1}if(f&&!r.d){r.b=[]}else{if(!Q.ua(r)){return Ea(va.r),-1}}b=b.path}else{if(!c){return Ea(va.O),-1}if(!b.u.write){return Ea(va.h),-1}r=Q.S(b.u,b.name,[],g&256,g&128);b=b.ba+"/"+b.name}g=Q.a.length;if(r.e){i=0;jC&&(i=Gb(jC.A));var q=[],h;for(h in r.b){q.push(h)}Q.a[g]={path:b,object:r,position:-2,p:wc,q:ee,K:ee,error:ee,f:ee,g:[],b:q,qa:i}}else{Q.a[g]={path:b,object:r,position:0,p:q,q:i,K:n,error:ee,f:ee,g:[]}}return g}function qi(a,b){var i,b=Oe(b);if("r"==b[0]){i=-1!=b.indexOf("+")?2:0}else{if("w"==b[0]){i=-1!=b.indexOf("+")?2:1,i|=1536}else{if("a"==b[0]){i=-1!=b.indexOf("+")?2:1,i|=512,i|=8}else{return Ea(va.i),0}}}i=wQa(a,i,d([511,0,0,0],"i32",$g));return-1==i?0:i}function ri(a){Q.a[a]||Ea(va.j);Q.a[a]?(Q.a[a].qa&&G(Q.a[a].qa),Q.a[a]=xc):Ea(va.j)}function un(a,b){var i=0,g;do{i||(g=a,i=b);var q=m[a++],c=m[i++];if(0==c){return g}c!=q&&(a=g+1,i=0)}while(q);return 0}function kC(b,r){if(Q.a[b]){var i=Nd(Q.a[b].path);i=d(i,"i8",$g);i=Q.o(Oe(i),cc);if(i!==xc&&Q.ua(i)){var g=xQa;a[r+g.yb>>2]=1;a[r+g.Bb>>2]=0;a[r+g.ub>>2]=0;a[r+g.qb>>2]=4096;a[r+g.vb>>2]=i.$;var q=Math.floor(i.timestamp/1e3);if(g.ea===cc){g.ea=g.pb.Da;g.za=g.xb.Da;g.ya=g.sb.Da;var c=1e3*(i.timestamp%1e3);a[r+g.pb.Ca>>2]=c;a[r+g.xb.Ca>>2]=c;a[r+g.sb.Ca>>2]=c}a[r+g.ea>>2]=q;a[r+g.za>>2]=q;a[r+g.ya>>2]=q;var l=0,f=q=0,n=c=0;i.d?(c=n=i.$,q=f=0,l=8192):(c=1,n=0,i.e?(q=4096,f=1,l=16384):(l=i.b||i.link,q=l.length,f=Math.ceil(l.length/4096),l=i.link===cc?32768:40960));a[r+g.tb>>2]=c;a[r+g.zb>>2]=n;a[r+g.Ab>>2]=q;a[r+g.rb>>2]=f;i.v&&(l|=365);i.write&&(l|=146);a[r+g.wb>>2]=l}}else{Ea(va.j)}}function xg(a,b,i){if(Q.a[a]&&!Q.a[a].object.d){var g=Q.a[a];1===i?b+=g.position:2===i&&(b+=g.object.b.length);0>b?(Ea(va.i),i=-1):(g.g=[],i=g.position=b)}else{Ea(va.j),i=-1}-1!=i&&(Q.a[a].f=ee)}function lC(a,b,i,g){i*=b;if(0==i){return 0}a=sr(g,a,i);g=Q.a[g];if(-1==a){return g&&(g.error=wc),0}a>2]=r,ur=d([i],"i8**",c)):(i=a[ur>>2],r=a[i>>2]);var g=[],q=0,Xa;for(Xa in b){if("string"===typeof b[Xa]){var l=Xa+"="+b[Xa];g.push(l);q+=l.length}}1024>2]=r;r+=l.length+1}a[i+4*g.length>>2]=0}function lk(a){if(0===a){return 0}a=Oe(a);if(!Ee.hasOwnProperty(a)){return 0}lk.c&&G(lk.c);lk.c=d(Nd(Ee[a]),"i8",sn);return lk.c}function mk(a){0!==a&&li(a,yQa.A)}function si(a){si.buffer||(si.buffer=Gb(256));var b=si.buffer;if(a in vr){if(255=a||97<=a&&122>=a||65<=a&&90>=a}function ti(a){return 97<=a&&122>=a||65<=a&&90>=a}function zQa(a){if(Q.a[a]){return a=Q.a[a],a.object.d?(Ea(va.Fa),-1):a.position}Ea(va.j);return-1}function vn(a,b,i){var g=Q.o(b||"/tmp");if(!g||!g.e){if(b="/tmp",g=Q.o(b),!g||!g.e){return 0}}i=i||"file";do{i+=String.fromCharCode(65+Math.floor(25*Math.random()))}while(i in g.b);b=b+"/"+i;vn.buffer||(vn.buffer=Gb(256));a||(a=vn.buffer);for(g=0;g>12<<12,b.Oa=wc,Ie.Eb=We);b=We;0!=a&&Qa.Ba(a);return b}function pC(){return a[pC.La>>2]}function qC(b){var r;r=(b+8|0)>>2;var b=a[r]>>2,i=a[b];if(0!=(i&4096|0)){var g=a[b+1];return g}var q=0==(i&3|0);a:do{if(q){if(0!=(i&112|0)){g=a[b+2]}else{var c=a[b+1];if(0==(c|0)){g=0}else{var d=c+4|0,f=a[d>>2],n=0==(f|0);b:do{if(n){var h=c,e=a[c>>2]}else{for(var s=c,j=d,t=f;;){var m=t|0;a[j>>2]=a[m>>2];a[m>>2]=s;j=t+4|0;m=a[j>>2];if(0==(m|0)){h=t;e=s;break b}else{s=t,t=m}}}}while(0);if(0==(e|0)){g=h}else{c=h|0;for(f=e;;){d=a[f+4>>2];if(0==(d|0)){c=f}else{for(;!(n=d|0,a[f+4>>2]=a[n>>2],a[n>>2]=f,n=a[d+4>>2],0==(n|0));){f=d,d=n}c=a[c>>2]=d}c|=0;d=a[c>>2];if(0==(d|0)){g=h;break a}else{f=d}}}}}}else{if(d=a[b+2],f=a[b+3],c=(f<<2)+d|0,0<(f|0)){for(n=f=0;;){s=a[d>>2];if(0!=(s|0)){0==(f|0)?f=n=s:a[f>>2]=s;for(;!(s=a[f>>2],0==(s|0));){f=s}a[d>>2]=f}d=d+4|0;if(d>>>0>=c>>>0){g=n;break a}}}else{g=0}}}while(0);a[a[r]+4>>2]=g;h=a[r]|0;a[h>>2]|=4096;return g}function rC(b,r){var i=h;if(0==(a[qa+12>>2]|0)){a[qa>>2]=288;a[qa+4>>2]=304;a[qa+8>>2]=184;m[qa+31|0]=1;var g;g=xn(sC|0,0);a[qa+12>>2]=g;g=(g+40|0)>>2;0!=(a[ui(a[a[g]+4>>2]|0,wr|0,Y|0)+8>>2]|0)&&S();var q=ui(a[a[g]+4>>2]|0,vi|0,Y|0);1!=(a[q+8>>2]|0)&&S();m[q+12|0]=0;g=ui(a[a[g]+4>>2]|0,wi|0,Y|0);2==(a[g+8>>2]|0)?m[g+12|0]=0:S()}else{288==(a[qa>>2]|0)&304==(a[qa+4>>2]|0)&184==(a[qa+8>>2]|0)||la(0,tC|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j))}h=i;xi(0,dh|0,yg|0);i=fa(340);g=i>>2;0!=(i|0)&&(a[g]=nk|0,a[g+4]=94,a[g+8]=0,a[g+9]=1);g=a[i+32>>2];if(0!=(g|0)&&(q=a[g>>2],0!=(q|0))){for(;!(103==m[q]<<24>>24&&0!=(un(q,uC|0)|0)&&xr(i,a[g+4>>2]),g=g+8|0,q=a[g>>2],0==(q|0));){}}m[i+44|0]=0;g=eh(i,2,yr|0);0!=(g|0)&&(a[i+132>>2]=a[a[g+16>>2]+12>>2]);xr(i,yn);xr(i,zn);g=a[qa+32>>2];a[qa+32>>2]=22;vC(b);zr();a[qa+32>>2]=g;g=a[qa+16>>2];An(i,g,ok|0);var c=a[zg>>2],d,q=a[g+32>>2];wC(i,r);var f=a[i+124>>2];d=f>>2;a[d+14]=Bn(f,a[d+13]);0==(a[q+44>>2]|0)&&0==(a[d+37]&67108864|0)?Lc(Ar|0,20,1,a[oa>>2]):(a[d+9]=c,0==(c|0)&&(c=f+148|0,a[c>>2]|=134217728),Br(i,q),Cr(f),Dr(i));q=g+176|0;f=a[q>>2];0!=(f|0)&&(J[f](g),a[q>>2]=0);q=g+44|0;0!=(a[q>>2]|0)&&(xC(g),a[q>>2]=0,a[a[g+32>>2]+44>>2]=0);Sf(g);g=a[yi>>2];0!=(g|0)&&(Kc(g),a[yi>>2]=0);g=a[i+52>>2];q=0==(g|0);b:do{if(!q){for(f=g;;){if(c=a[f+4>>2],G(f),0==(c|0)){break b}else{f=c}}}}while(0);q=a[i+100>>2];f=0==(q|0);b:do{if(!f){c=q;for(g=c>>2;;){if(d=a[g],G(a[g+1]),G(a[g+2]),G(c),0==(d|0)){break b}else{c=d,g=c>>2}}}}while(0);Dr(i);g=a[i+40>>2];0!=(g|0)&&G(g);g=a[i+48>>2];0!=(g|0)&&G(g);G(i)}function Kc(b){var r=b>>2;if(0==(b|0)||0<(a[r+6]|0)){return-1}var i=a[r+1],g=i+32|0,q=a[g>>2];if(0==(q|0)){q=0}else{if(q=J[q](b,2,0,i),0>(q|0)){return-1}}0!=(a[r+7]|0)&&yC(b,0);if(q=0==(q|0)){J[a[a[r+4]>>2]](b,0,64);if(0<(rc(b)|0)){return-1}var c=b+8|0,d=a[c>>2],f=b+12|0;0<(a[d+12>>2]|0)?(J[a[f>>2]](b,a[d+8>>2],0,i),c=a[c>>2]):c=d;J[a[f>>2]](b,c,0,i)}f=a[r+5];if(0==(f|0)){G(b)}else{if(q&1==(f|0)){J[a[r+3]](b,b,0,i)}}r=a[g>>2];if(0==(r|0)){return 0}J[r](b,6,0,i);return 0}function pk(b,r,i){var g,q;q=(b+4|0)>>2;var c=a[q];if(0==(c|0)){a[q]=r;c=a[r+28>>2];a[b+12>>2]=0==(c|0)?144:c;var d;return r}if(0==(r|0)){return c}var f=a[a[b+16>>2]>>2];g=(b+8|0)>>2;0!=(a[a[g]>>2]&4096|0)&&Ag(b,0);var n=a[c+32>>2];if(0!=(n|0)&&0>(J[n](b,3,r,c)|0)){return 0}a[q]=r;q=a[r+28>>2];a[b+12>>2]=0==(q|0)?144:q;q=a[a[g]>>2];if(0!=(q&112|0)){return c}if(0==(q&2|0)){if(0==(q&3|0)){if(0!=(i&1|0)){return c}}else{if(3==(i&3|0)){return c}}}else{if(0!=(i&2|0)){return c}}q=qC(b);n=a[g]|0;a[n>>2]&=-4097;a[a[g]+4>>2]=0;a[a[g]+16>>2]=0;g=a[g]>>2;n=0==(a[g]&3|0);a:do{if(!n){var h=a[g+2],e=a[g+3],s=(e<<2)+h|0;if(0<(e|0)){for(;;){if(e=h+4|0,a[h>>2]=0,e>>>0>>0){h=e}else{break a}}}}}while(0);if(0==(q|0)){return c}g=r+8|0;n=r+4|0;s=r|0;h=r+24|0;if(0==(i&2|0)){i=q>>2}else{for(r=q;;){if(i=a[r>>2],J[f](b,r,32),0==(i|0)){d=c;break}else{r=i}}return d}for(;;){var e=a[i],j=a[g>>2],t=a[n>>2],j=(0>(j|0)?a[i+2]:q+ -j|0)+a[s>>2]|0,j=0>(t|0)?a[j>>2]:j,m=a[h>>2],t=0==(m|0)?Cn(0,j,t):J[m](b,j,r);a[i+1]=t;J[f](b,q,32);if(0==(e|0)){d=c;break}else{q=e,i=q>>2}}return d}function zC(b,r,i){var g,q,c,d,f,n,h,e,s,j,t,m,w,A=b>>2,B;w=(b+8|0)>>2;0!=(a[a[w]>>2]&4096|0)&&Ag(b,0);var C=a[A+1];m=C>>2;var P=a[m],T=a[m+1];t=(C+8|0)>>2;var gb=a[t],$e=a[m+5];j=(b+20|0)>>2;a[j]&=-32769;var M=0==(r|0);a:do{if(M){if(0==(i&24|0)){var X=a[w];s=X>>2;if(1>(a[s+4]|0)){var O=0;return O}if(0==(i&448|0)){return O=0}var y=a[s+2],Da=a[s+3],ia=(Da<<2)+y|0,D=0<(Da|0);if(0==(i&64|0)){b:do{if(D){var F=0==(i&256|0);c:do{if(F){for(var Tf=y;;){var sc=Tf+4|0,E=a[Tf>>2],G=0==(E|0);if(sc>>>0>>0&G){Tf=sc}else{var H=E,hc=G;break c}}}else{for(var ca=ia;;){var I=ca-4|0,K=a[I>>2],zb=0==(K|0);if(y>>>0>>0&zb){ca=I}else{H=K;hc=zb;break c}}}}while(0);if(hc|F){var ja=hc?0:H}else{for(var aa=H;;){var da=a[aa>>2];if(0==(da|0)){ja=aa;break b}else{aa=da}}}}else{ja=0}}while(0);var ea=X+20|0;a[ea>>2]=a[ea>>2]+1|0;a[a[w]+4>>2]=ja;return 0==(ja|0)?O=0:O=0>(gb|0)?a[ja+8>>2]:ja+ -gb|0}if(D){for(var xa=C+16|0,L=b+12|0,Od=0>(gb|0),ha=-gb|0,ga=y;;){var N=a[ga>>2];a[ga>>2]=0;var Rb=a[xa>>2];if(0==(Rb|0)){if(!(-1<(a[t]|0)|0==(N|0))){var Xe=N,tb=Rb;B=121}}else{0!=(N|0)&&(Xe=N,tb=Rb,B=121)}b:do{if(121==B){for(;;){B=0;var ya=a[Xe>>2];if(0!=(tb|0)){J[tb](b,Od?a[Xe+8>>2]:Xe+ha|0,C)}if(0>(a[t]|0)){J[a[L>>2]](b,Xe,0,C)}if(0==(ya|0)){break b}Xe=ya;tb=a[xa>>2]}}}while(0);var Uf=ga+4|0;if(Uf>>>0>>0){ga=Uf}else{break}}var wa=a[w]}else{wa=X}a[wa+4>>2]=0;a[a[w]+16>>2]=0;return O=a[a[w]+20>>2]=0}}else{var Ab=2==(a[a[A+4]+4>>2]|0);b:do{if(Ab){if(0==(i&4098|0)){B=150}else{if(0==(J[a[A]](b,r,4)|0)){return O=0}e=a[w]>>2;for(var Fa=a[e+1],Ga=((a[e+3]-1&a[Fa+4>>2])<<2)+a[e+2]|0,Bg=0>(gb|0),ta=-gb|0,Ka=Ga,za=0,ma=0;;){var pa=a[Ka>>2];if(0==(pa|0)){var wf=Ga,Ha=Fa;h=Ha>>2;var Ra=za;break b}if(((Bg?a[pa+8>>2]:pa+ta|0)|0)==(r|0)){wf=Ga;Ha=pa;h=Ha>>2;Ra=ma;break b}Ka=pa|0;za=(pa|0)==(Fa|0)?ma:za;ma=pa}}}else{B=150}}while(0);b:do{if(150==B){var W=0==(i&2565|0);c:do{if(W){if(0!=(i&1056|0)){var BC=0>(gb|0)?a[r+8>>2]:r+ -gb|0,La=BC+P|0,Vf=BC,Ya=r,Q=0>(T|0)?a[La>>2]:La,Za=a[r+4>>2]}else{n=a[w]>>2;var S=a[n+1];do{if(0!=(S|0)&&((0>(gb|0)?a[S+8>>2]:S+ -gb|0)|0)==(r|0)){var ab=a[S+4>>2],$a=r,jb=((a[n+3]-1&ab)<<2)+a[n+2]|0,Ca=S,Ia=0,eb=ab;B=192;break c}}while(0);var ub=r+P|0,Sa=0>(T|0)?a[ub>>2]:ub,U=a[m+6];0==(U|0)?(Vf=r,Q=Sa,Za=Cn(0,Sa,T)):(Vf=r,Q=Sa,Za=J[U](b,Sa,C))}}else{if(0==(i&512|0)){var ua=r+P|0,Oa=0>(T|0)?a[ua>>2]:ua}else{Oa=r}var Wa=a[m+6];0==(Wa|0)?(Vf=r,Q=Oa,Za=Cn(0,Oa,T)):(Vf=r,Q=Oa,Za=J[Wa](b,Oa,C))}B=175}while(0);c:do{if(175==B){var pb=a[w],ob=a[pb+12>>2];if(1>(ob|0)){var bb=0}else{var qb=((ob-1&Za)<<2)+a[pb+8>>2]|0,bb=a[qb>>2],V=qb}var kb=0>(gb|0),Y=0>(T|0),vb=0==($e|0),xb=1>(T|0),la=-gb|0,nb=bb;f=nb>>2;for(var rb=0;;){if(0==(nb|0)){var lb=Za,Ta=rb,cb=Ya,fb=0;d=fb>>2;var Ua=V;c=Ua>>2;var sb=Vf,Na=0;break c}if((Za|0)==(a[f+1]|0)){var R=(kb?a[f+2]:nb+la|0)+P|0,Db=Y?a[R>>2]:R;if(0==((vb?xb?ka(Q,Db):Ve(Q,Db,T):J[$e](b,Q,Db,C))|0)){var $a=Vf,jb=V,Ca=nb,Ob=Ya,Ia=rb,eb=Za;B=192;break c}}rb=nb;nb=a[f];f=nb>>2}}}while(0);192==B&&(0==(Ca|0)?(lb=eb,Ta=Ia,cb=Ob,fb=0,d=fb>>2,Ua=jb,c=Ua>>2,sb=$a,Na=0):(a[j]|=32768,lb=eb,Ta=Ia,cb=Ob,fb=Ca,d=fb>>2,Ua=jb,c=Ua>>2,sb=$a,Na=1));if(0!=(i&1540|0)){if(!Na){return O=0}if(0!=(Ta|0)){var Eb=a[w];if(0!=(a[Eb>>2]&1|0)&&1>(a[Eb+20>>2]|0)){var $=fb|0;a[Ta>>2]=a[$>>2];a[$>>2]=a[c];a[c]=fb}}a[a[w]+4>>2]=fb;return O=0>(gb|0)?a[d+2]:fb+ -gb|0}var Bb=0==(i&2049|0);c:do{if(Bb){var Ja=0==(i&8|0);d:do{if(Ja){if(0!=(i&16|0)){if(!(Na&0==(Ta|0))){var fa=Ta;B=251;break}var Z=a[c];if((Z|0)!=(fb|0)){for(var sa=Z;;){var CC=a[sa>>2];if((CC|0)==(fb|0)){fa=sa;B=251;break d}else{sa=CC}}}for(var DC=a[w],Wf=a[DC+8>>2],ic=Ua;;){var ra=ic-4|0;if(ra>>>0>>0){B=247;break}var ba=a[ra>>2];if(0==(ba|0)){ic=ra}else{var qa=ba;B=249;break}}if(247==B){a[DC+4>>2]=0;break a}else{if(249==B){for(;;){B=0;var na=a[qa>>2];if(0==(na|0)){var oa=qa;B=250;break d}else{qa=na,B=249}}}}}if(0==(i&32|0)){wf=Ua;Ha=fb;h=Ha>>2;Ra=Ta;break b}if(!Na){var pc=sb,Wc=cb;break c}if(0!=(a[a[w]>>2]&2|0)){pc=sb;Wc=cb;break c}var Vb=a[m+4];if(0!=(Vb|0)){J[Vb](b,sb,C)}if(0>(a[t]|0)){J[a[A+3]](b,cb,0,C)}return O=0>(gb|0)?a[d+2]:fb+ -gb|0}if(Na){var Xd=a[d];if(0!=(Xd|0)){oa=Xd,B=250}else{q=a[w]>>2;for(var Ba=(a[q+3]<<2)+a[q+2]|0,Ea=Ua;;){var Aa=Ea+4|0;if(Aa>>>0>=Ba>>>0){break}var Cb=a[Aa>>2];if(0==(Cb|0)){Ea=Aa}else{oa=Cb;B=250;break d}}a[q+1]=0;break a}}else{fa=Ta,B=251}}while(0);if(250==B){var Ma=a[a[w]+4>>2]=oa}else{if(251==B){if(a[a[w]+4>>2]=fa,0==(fa|0)){break a}else{Ma=fa}}}var lc=a[w]|0;a[lc>>2]|=8192;return O=0>(gb|0)?a[Ma+8>>2]:Ma+ -gb|0}if(Na){var wb=a[w];if(0!=(a[wb>>2]&1|0)){return a[wb+4>>2]=fb,O=0>(gb|0)?a[d+2]:fb+ -gb|0}}var Jd=C+12|0,va=a[Jd>>2];if(0==(va|0)){var Hc=sb}else{if(0==(i&1|0)){Hc=sb}else{var Pa=J[va](b,sb,C);if(0==(Pa|0)){return O=0}Hc=Pa}}if(-1<(gb|0)){var oe=Hc+gb|0}else{var Qa=J[a[A+3]](b,0,12,C);if(0!=(Qa|0)){a[Qa+8>>2]=Hc,oe=Qa}else{if(0==(a[Jd>>2]|0)){return O=0}var Qb=a[m+4];if(0==(Qb|0)||0==(i&1|0)){return O=0}J[Qb](b,Hc,C);return O=0}}a[oe+4>>2]=lb;pc=Hc;Wc=oe}while(0);var tc=a[w]+16|0,Sc=a[tc>>2]+1|0;a[tc>>2]=Sc;var Gb=a[w],Va=a[Gb+12>>2];if((Sc|0)>(Va<<1|0)){if(1>(a[Gb+20>>2]|0)){Er(b);var hb=a[w],rd=hb,oc=a[hb+12>>2]}else{var rd=Gb,oc=Va}}else{rd=Gb,oc=Va}if(0!=(oc|0)){var ib=((oc-1&lb)<<2)+a[rd+8>>2]|0;if(Na){var Ib=fb|0;a[Wc>>2]=a[Ib>>2];a[Ib>>2]=Wc}else{a[Wc>>2]=a[ib>>2],a[ib>>2]=Wc}a[a[w]+4>>2]=Wc;return O=pc}var ve=rd+16|0;a[ve>>2]=a[ve>>2]-1|0;var Rd=a[m+4];if(0!=(Rd|0)&&0!=(i&1|0)){J[Rd](b,pc,C)}if(0<=(a[t]|0)){return O=0}J[a[m+7]](b,Wc,0,C);return O=0}}while(0);if(0==(Ha|0)){return O=0}do{if(0==(Ra|0)){var Bc=a[wf>>2];if((Bc|0)==(Ha|0)){var Sd=a[h],fd=a[wf>>2]=Sd}else{for(var yb=Bc;;){var yc=yb|0,Nb=a[yc>>2];if((Nb|0)==(Ha|0)){break}else{yb=Nb}}a[yc>>2]=a[h];fd=yb}}else{a[Ra>>2]=a[h],fd=Ra}}while(0);var Hb=0>(gb|0)?a[h+2]:Ha+ -gb|0,Tc=a[w]+16|0;a[Tc>>2]=a[Tc>>2]-1|0;a[a[w]+4>>2]=fd;var mb=a[m+4];if(0!=(mb|0)&&0!=(i&2|0)){J[mb](b,Hb,C)}if(0<=(a[t]|0)){return O=Hb}J[a[A+3]](b,Ha,0,C);return O=Hb}}while(0);var Mc=a[w]+20|0,id=a[Mc>>2]-1|0;a[Mc>>2]=id;0>(id|0)&&(a[a[w]+20>>2]=0);g=a[w]>>2;if((a[g+4]|0)<=(a[g+3]<<1|0)||1<=(a[g+5]|0)){return O=0}Er(b);return O=0}function Er(b){var r,i,g=h;h+=4;var q;i=g>>2;r=(b+8|0)>>2;var c=a[r],d=c+24|0;if(!(0<(a[d>>2]|0)&&0<(a[c+12>>2]|0))){a[d>>2]=0;a[i]=a[a[r]+12>>2];c=b+4|0;d=a[c>>2];do{if(0==(d|0)){q=325}else{var f=a[d+32>>2];if(0==(f|0)){q=325}else{if(0<(J[f](b,7,g,d)|0)){f=a[i];do{if(0>(f|0)){a[a[r]+24>>2]=1;if(0<(a[a[r]+12>>2]|0)){h=g;return}var n=a[i]}else{for(n=2;;){if((n|0)<(f|0)){n<<=1}else{break}}a[i]=n}}while(0);if(1>(n|0)){q=329}else{var z=n,e=a[r]}}else{q=325}}}}while(0);325==q&&(a[i]=0,q=329);a:do{if(329==q){d=a[r];f=a[d+12>>2];n=0==(f|0)?256:f;a[i]=n;var f=d+16|0,s=n<<1;if((a[f>>2]|0)>(s|0)){for(n=s;;){if(a[i]=n,s=n<<1,(a[f>>2]|0)>(s|0)){n=s}else{z=n;e=d;break a}}}else{z=n,e=d}}}while(0);q=a[e+12>>2];if((z|0)!=(q|0)&&(b=J[a[b+12>>2]](b,0==(q|0)?0:a[e+8>>2],z<<2,a[c>>2]),0!=(b|0))){q=a[r];e=a[q+12>>2];z=(e<<2)+b|0;a[q+8>>2]=b;a[a[r]+12>>2]=a[i];r=a[i]-1|0;e=(r|0)<(e|0);a:do{if(!e){for(q=(r<<2)+b|0;;){if(a[q>>2]=0,q=q-4|0,q>>>0>>0){break a}}}}while(0);if(b>>>0>>0){for(r=b;;){e=a[r>>2];q=0;a:for(;;){c=0==(q|0);d=q|0;for(f=e;;){if(0==(f|0)){break a}var n=f|0,s=a[n>>2],j=((a[i]-1&a[f+4>>2])<<2)+b|0;if((j|0)==(r|0)){e=s;q=f;continue a}c?a[r>>2]=s:a[d>>2]=s;a[n>>2]=a[j>>2];a[j>>2]=f;f=s}}r=r+4|0;if(r>>>0>=z>>>0){break}}}}}h=g}function FC(b,r,i){var g,q,c,d,f,n;d=(b+8|0)>>2;0!=(a[a[d]>>2]&4096|0)&&Ag(b,0);var h=a[b+4>>2];q=h>>2;var e=a[q],s=a[q+1];n=(h+8|0)>>2;var j=a[n],m=a[q+5];f=(b+20|0)>>2;a[f]&=-32769;do{if(0==(r|0)){if(0!=(i&384|0)){d=a[d]>>2;b=a[d+2];if(0==(b|0)){var u=0;return u}if(0==(i&256|0)){d=a[d+1]=b}else{i=a[b+4>>2];a[d+1]=i;if(0==(i|0)){return u=0}d=i}return u=0>(j|0)?a[d+8>>2]:d+ -j|0}if(0!=(i&4098|0)){g=a[d];if(0!=(a[g>>2]&144|0)){return u=0}g=a[g+8>>2];if(0==(g|0)){u=0}else{var w=g;c=w>>2;break}return u}if(0==(i&64|0)){return u=0}i=h+16|0;q=a[i>>2];0==(q|0)?0>(a[n]|0)&&(g=372):g=372;a:do{if(372==g&&(m=a[a[d]+8>>2],0!=(m|0))){f=b+12|0;e=0>(j|0);s=-j|0;for(u=q;;){w=a[m>>2];if(0!=(u|0)){J[u](b,e?a[m+8>>2]:m+s|0,h)}if(0>(a[n]|0)){J[a[f>>2]](b,m,0,h)}if(0==(w|0)){break a}m=w;u=a[i>>2]}}}while(0);a[a[d]+4>>2]=0;a[a[d]+8>>2]=0;u=a[a[d]+16>>2]=0}else{if(0==(i&2049|0)){w=a[d];do{if(0==(i&512|0)){c=a[w+4>>2];if(0!=(c|0)&&((0>(j|0)?a[c+8>>2]:c+ -j|0)|0)==(r|0)){var A=c;break}g=r+e|0;var B=0>(s|0)?a[g>>2]:g}else{B=r}g=428}while(0);a:do{if(428==g){g=0>(j|0);c=0>(s|0);for(var r=0==(m|0),A=1>(s|0),C=-j|0,w=w+8|0;;){w=a[w>>2];if(0==(w|0)){u=0;break}var P=(g?a[w+8>>2]:w+C|0)+e|0,P=c?a[P>>2]:P;if(0==((r?A?ka(B,P):Ve(B,P,s):J[m](b,B,P,h))|0)){A=w;break a}else{w|=0}}return u}}while(0);if(0==(A|0)){return u=0}a[f]|=32768;if(0!=(i&4098|0)){w=A;c=w>>2;break}if(0==(i&8|0)){if(0==(i&16|0)){i=A}else{if(i=a[d],(A|0)!=(a[i+8>>2]|0)){i=a[A+4>>2]}else{return u=a[i+4>>2]=0}}}else{i=a[A>>2]}a[a[d]+4>>2]=i;return 0==(i|0)?u=0:u=0>(j|0)?a[i+8>>2]:i+ -j|0}n=h+12|0;f=a[n>>2];if(0==(f|0)){f=r}else{if(0==(i&1|0)){f=r}else{if(f=J[f](b,r,h),0==(f|0)){return u=0}}}if(-1<(j|0)){h=f+j|0,b=h>>2}else{if(e=J[a[b+12>>2]](b,0,12,h),0!=(e|0)){a[e+8>>2]=f,h=e,b=h>>2}else{if(0==(a[n>>2]|0)){return u=0}j=a[q+4];if(0==(j|0)||0==(i&1|0)){return u=0}J[j](b,f,h);return u=0}}n=h;f=a[d];q=f>>2;e=a[q];0==(e&128|0)?0==(e&16|0)?g=0==(e&32|0)?411:407:(e=a[q+1],s=0!=(e|0),0==(i&8192|0)?s?(e|0)==(a[q+2]|0)?g=407:(i=e+4|0,s=a[i>>2],a[b+1]=s,a[s>>2]=n,a[b]=e,a[i>>2]=h):g=407:s?(i=e|0,s=a[i>>2],0==(s|0)?g=411:(a[b]=s,a[s+4>>2]=h,a[b+1]=e,a[i>>2]=n)):g=411):g=0==(i&8192|0)?407:411;407==g?(q=a[q+2],i=h,a[i>>2]=q,0==(q|0)?a[b+1]=n:(q=q+4|0,a[b+1]=a[q>>2],a[q>>2]=h),a[a[d]+8>>2]=i):411==g&&(i=f+8|0,q=a[i>>2],0==(q|0)?(q=h,a[i>>2]=q,a[b+1]=n,i=q):(q=i=q+4|0,a[a[q>>2]>>2]=n,a[b+1]=a[q>>2],i=a[i>>2]=h),a[i>>2]=0);i=a[d];q=i+16|0;g=a[q>>2];-1<(g|0)?(a[q>>2]=g+1|0,d=a[d]):d=i;a[d+4>>2]=n;u=0>(j|0)?a[b+2]:h+ -j|0}return u}while(0);g=(w|0)>>2;f=a[g];0==(f|0)?f=0:(a[f+4>>2]=a[c+1],f=a[g]);s=a[d]+8|0;e=a[s>>2];(w|0)==(e|0)?(a[s>>2]=f|0,f=a[a[d]+8>>2],0!=(f|0)&&(a[f+4>>2]=a[c+1])):(s=w+4|0,a[a[s>>2]>>2]=f,f=e+4|0,(w|0)==(a[f>>2]|0)&&(a[f>>2]=a[s>>2]));f=a[d]+4|0;a[f>>2]=(w|0)==(a[f>>2]|0)?a[g]:0;d=a[d]+16|0;a[d>>2]=a[d>>2]-1|0;j=0>(j|0)?a[c+2]:w+ -j|0;d=a[q+4];if(0!=(d|0)&&0!=(i&2|0)){J[d](b,j,h)}if(0<=(a[n]|0)){return j}J[a[b+12>>2]](b,w,0,h);return j}function Cn(a,b,i){if(1>(i|0)){var i=m[b],g=0==i<<24>>24;a:do{if(g){var q=b,c=a}else{for(var d=b,f=a,n=i;;){var h=m[d+1|0],f=17109811*(((n&255)<<8)+f+(h&255))|0,d=d+(0!=h<<24>>24?2:1)|0,h=m[d];if(0==h<<24>>24){q=d;c=f;break a}else{n=h}}}}while(0);a=c+(q-b|0)|0;return 17109811*a|0}c=i-1|0;q=b+c|0;c=0<(c|0);a:do{if(c){f=b;for(h=a;;){if(h=17109811*(((m[f]&255)<<8)+(m[f+1|0]&255)+h)|0,f=f+2|0,f>>>0>=q>>>0){g=f;d=h;break a}}}else{g=b,d=a}}while(0);if(g>>>0>q>>>0){return a=d+i|0,17109811*a|0}a=17109811*(((m[g]&255)<<8)+d)|0;a=a+i|0;return 17109811*a|0}function Nc(b,r){var i,g,q,c,d,f=h;h+=4;var n;d=f>>2;if(0==(b|0)|0==(r|0)){return h=f,0}var z=Gb(40);c=z>>2;if(0==(z|0)){return h=f,0}a[c]=0;a[c+4]=0;a[c+1]=0;pk(z,b,0);q=(z+20|0)>>2;c=b+32|0;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;a[q+4]=0;q=a[c>>2];if(0==(q|0)){i=z,n=566}else{if(a[d]=0,q=J[q](z,1,f,b),0>(q|0)){var e=z;n=567}else{if(0<(q|0)){if(q=a[d],0!=(q|0)){if(0==(a[r+4>>2]&a[q>>2]|0)){e=z,n=567}else{var s=z;g=s>>2;var j=q}}else{if(n=b+28|0,0==(a[n>>2]|0)){e=z,n=567}else{G(z);n=J[a[n>>2]](0,0,40,b);i=n>>2;if(0==(n|0)){return h=f,0}a[i]=0;a[i+4]=0;a[i+1]=0;pk(n,b,0);a[i+5]=1;a[i+6]=0;a[i+8]=0;a[i+7]=0;i=n;n=566}}}else{i=z,n=566}}}566==n&&(z=J[a[i+12>>2]](i,0,28,b),a[d]=z,0==(z|0)?(e=i,n=567):(a[z>>2]=a[r+4>>2],a[a[d]+4>>2]=0,a[a[d]+8>>2]=0,a[a[d]+20>>2]=0,a[a[d]+16>>2]=0,a[a[d]+12>>2]=0,a[a[d]+24>>2]=0,s=i,g=s>>2,j=a[d]));if(567==n){return G(e),h=f,0}a[g+2]=j;a[g]=a[r>>2];a[g+4]=r;g=a[c>>2];if(0==(g|0)){return h=f,s}J[g](s,5,s,b);h=f;return s}function rc(b){var r,i;i=(b+8|0)>>2;r=a[i];0!=(a[r>>2]&4096|0)&&(Ag(b,0),r=a[i]);b=r>>2;r=(r+16|0)>>2;do{if(0>(a[r]|0)){var g=a[b];if(0!=(g&12|0)){a[r]=Fr(a[b+1])}else{if(0!=(g&112|0)){var g=a[b+2],q=0==(g|0);a:do{if(q){var c=0}else{for(var d=0,f=g;;){if(d=d+1|0,f=a[f>>2],0==(f|0)){c=d;break a}}}}while(0);a[r]=c}}}}while(0);return a[a[i]+16>>2]}function Fr(b){return 0==(b|0)?0:Fr(a[b+4>>2])+Fr(a[b>>2])+1|0}function GC(b,r,i){var g,q,c,d,f,n,z,e,s,j,m,u,w,A,B,C,P=h;h+=128;var T;C=P>>2;B=P+8>>2;A=(b+8|0)>>2;var gb=a[A];if(0==(a[gb>>2]&4096|0)){var $e=gb}else{Ag(b,0),$e=a[A]}var M=a[b+4>>2];w=M>>2;var X=a[w],O=a[w+1];u=(M+8|0)>>2;var y=a[u],Da=a[w+5];m=(b+20|0)>>2;a[m]&=-32769;var ia=a[$e+4>>2];if(0==(r|0)){if(0==(ia|0)){var D=0;h=P;return D}if(0==(i&448|0)){return D=0,h=P,D}if(0==(i&64|0)){var F=0==(i&256|0);a:do{if(F){var Tf=ia+4|0,sc=a[Tf>>2];if(0==(sc|0)){var E=ia}else{for(var G=ia,H=Tf,hc=sc;;){var ca=hc|0;a[H>>2]=a[ca>>2];a[ca>>2]=G;var I=hc+4|0,K=a[I>>2];if(0==(K|0)){E=hc;break a}else{G=hc,H=I,hc=K}}}}else{var zb=ia|0,ja=a[zb>>2];if(0==(ja|0)){E=ia}else{for(var aa=ia,da=zb,ea=ja;;){var xa=ea+4|0;a[da>>2]=a[xa>>2];a[xa>>2]=aa;var L=ea|0,N=a[L>>2];if(0==(N|0)){E=ea;break a}else{aa=ea,da=L,ea=N}}}}}while(0);a[a[A]+4>>2]=E;D=0>(y|0)?a[E+8>>2]:E+ -y|0;h=P;return D}var ha=M+16|0;if(0==(a[ha>>2]|0)){if(0>(a[u]|0)){T=599}else{var ga=$e}}else{T=599}if(599==T){for(var Zd=b+12|0,Rb=0>(y|0),Xe=-y|0,tb=ia;;){var ya=tb+4|0,Uf=a[ya>>2];if(0!=(Uf|0)){var wa=Uf|0;a[ya>>2]=a[wa>>2];a[wa>>2]=tb;tb=Uf}else{var Ab=a[tb>>2],Fa=a[ha>>2];if(0!=(Fa|0)){J[Fa](b,Rb?a[tb+8>>2]:tb+Xe|0,M)}if(0>(a[u]|0)){J[a[Zd>>2]](b,tb,0,M)}if(0==(Ab|0)){break}else{tb=Ab}}}ga=a[A]}a[ga+16>>2]=0;D=a[a[A]+4>>2]=0;h=P;return D}j=(b+16|0)>>2;var Ga=8==(a[a[j]+4>>2]|0);a:do{if(Ga){if(0==(i&4098|0)){T=637}else{for(var Bg=0>(O|0),ta=r+X|0,Ka=Bg?a[ta>>2]:ta,za=b,ma=0==(Da|0),pa=1>(O|0),wf=J[a[za>>2]](b,r,4);;){if(0==(wf|0)){T=637;break a}var Ha=wf+X|0,Ra=Bg?a[Ha>>2]:Ha;if(0!=((ma?pa?ka(Ka,Ra):Ve(Ka,Ra,O):J[Da](b,Ka,Ra,M))|0)){T=637;break a}if((wf|0)==(r|0)){break}wf=J[a[za>>2]](b,wf,8)}var W=a[a[A]+4>>2];a[C]=a[W+4>>2];a[C+1]=a[W>>2];var Q=W,La=P;T=779}}else{T=637}}while(0);a:do{if(637==T){if(0==(i&2565|0)){if(0!=(i&32|0)){var S=r,Ya=0>(y|0)?a[r+8>>2]:r+ -y|0,U=Ya+X|0,Za=0>(O|0)?a[U>>2]:U;if(0==(ia|0)){var V=P,ab=P,$a=S,jb=Ya;T=799}else{var Ca=Ya,Ia=S,eb=Za;T=656}}else{if(0==(ia|0)){ab=V=P,jb=r,T=799}else{if(((0>(y|0)?a[ia+8>>2]:ia+ -y|0)|0)==(r|0)){var ub=r,Sa=ia,Y=P,ua=P;T=736}else{var Oa=r+X|0;0>(O|0)?(Ca=r,eb=a[Oa>>2]):(Ca=r,eb=Oa);T=656}}}}else{if(0==(i&512|0)){var Wa=r+X|0,pb=0>(O|0)?a[Wa>>2]:Wa}else{pb=r}0==(ia|0)?(ab=V=P,jb=r,T=799):(Ca=r,eb=pb,T=656)}b:do{if(656==T){var ob=4==(a[a[j]+4>>2]|0);c:do{if(ob){var bb=a[a[A]+24>>2];if(0==(bb|0)){var qb=ia,R=P,kb=P}else{if(0==(i&516|0)){qb=ia,kb=R=P}else{for(var la=0>(y|0),vb=0>(O|0),xb=0==(Da|0),$=1>(O|0),nb=-y|0,rb=0,lb=ia;;){if((rb|0)>=(bb|0)){T=661;break}var Ta=(la?a[lb+8>>2]:lb+nb|0)+X|0,cb=vb?a[Ta>>2]:Ta,fb=xb?$?ka(eb,cb):Ve(eb,cb,O):J[Da](b,eb,cb,M);if(0==(fb|0)){T=673;break}a[(rb<<2>>2)+B]=fb;var Ua=a[(0>(fb|0)?lb+4|0:lb|0)>>2];if(0==(Ua|0)){D=0;T=825;break}else{rb=rb+1|0,lb=Ua}}if(673==T){return D=la?a[lb+8>>2]:lb+nb|0,h=P,D}if(661==T){if(0<(bb|0)){var sb=P;s=sb>>2;var Na=P;e=Na>>2;for(var Fb=ia,Db=0;;){if(0>(a[(Db<<2>>2)+B]|0)){var Ob=Fb+4|0,Eb=a[Ob>>2];if(0>(a[((Db|1)<<2>>2)+B]|0)){var fa=Eb|0;a[Ob>>2]=a[fa>>2];a[fa>>2]=Fb;a[e+1]=Eb;var Bb=Eb+4|0,Ja=Eb,Z=sb}else{a[s]=Eb,a[e+1]=Fb,Bb=Eb|0,Ja=Fb,Z=Eb}}else{var sa=Fb|0,xf=a[sa>>2];if(0<(a[((Db|1)<<2>>2)+B]|0)){var ra=xf+4|0;a[sa>>2]=a[ra>>2];a[ra>>2]=Fb;a[s]=xf;Bb=xf|0;Ja=Na;Z=xf}else{a[e+1]=xf,a[s]=Fb,Bb=xf+4|0,Ja=xf,Z=Fb}}var qa=a[Bb>>2],ba=Db+2|0;if((ba|0)<(bb|0)){sb=Z,s=sb>>2,Na=Ja,e=Na>>2,Fb=qa,Db=ba}else{qb=qa;R=Ja;kb=Z;break c}}}else{qb=ia,kb=R=P}}else{if(825==T){return h=P,D}}}}}else{qb=ia,kb=R=P}}while(0);var ic=0>(y|0),na=0>(O|0),oa=0!=(Da|0),Ba=1>(O|0),Ea=-y|0,Aa=qb,pc=R,Wc=kb;z=Wc>>2;c:for(;;){var Vb=Aa,Xd=pc;for(n=Xd>>2;;){var Cb=(ic?a[Vb+8>>2]:Vb+Ea|0)+X|0,Ma=na?a[Cb>>2]:Cb,wb=oa?J[Da](b,eb,Ma,M):Ba?ka(eb,Ma):Ve(eb,Ma,O);if(0==(wb|0)){var ub=Ca,va=Ia,Sa=Vb,Y=Xd,ua=Wc;T=736;break b}if(0<=(wb|0)){break}var Pa=Vb+4|0,lc=a[Pa>>2];f=lc>>2;if(0==(lc|0)){T=718;break c}var Gb=(ic?a[f+2]:lc+Ea|0)+X|0,Jd=na?a[Gb>>2]:Gb,Qa=oa?J[Da](b,eb,Jd,M):Ba?ka(eb,Jd):Ve(eb,Jd,O);if(0<=(Qa|0)){T=715;break}var Hc=lc|0;a[Pa>>2]=a[Hc>>2];a[Hc>>2]=Vb;a[n+1]=lc;var Va=a[f+1];if(0==(Va|0)){V=Wc;ab=lc;$a=Ia;jb=Ca;T=799;break b}else{Vb=Va,Xd=lc,n=Xd>>2}}if(715==T){T=0;if(0==(Qa|0)){T=716;break}a[z]=lc;a[n+1]=Vb;var oe=a[f];if(0==(oe|0)){V=lc;ab=Vb;$a=Ia;jb=Ca;T=799;break b}else{Aa=oe;pc=Vb;Wc=lc;z=Wc>>2;continue}}var hb=Vb|0,Qb=a[hb>>2];d=Qb>>2;if(0==(Qb|0)){T=735;break}var tc=(ic?a[d+2]:Qb+Ea|0)+X|0,Sc=na?a[tc>>2]:tc,ib=oa?J[Da](b,eb,Sc,M):Ba?ka(eb,Sc):Ve(eb,Sc,O);if(0<(ib|0)){var Ib=Qb+4|0;a[hb>>2]=a[Ib>>2];a[Ib>>2]=Vb;a[z]=Qb;var yb=a[d];if(0==(yb|0)){V=Qb;ab=Xd;$a=Ia;jb=Ca;T=799;break b}else{Aa=yb;pc=Xd;Wc=Qb;z=Wc>>2;continue}}if(0==(ib|0)){T=733;break}a[n+1]=Qb;a[z]=Vb;var rd=a[d+1];if(0==(rd|0)){V=Vb;ab=Qb;$a=Ia;jb=Ca;T=799;break b}else{Aa=rd,pc=Qb,Wc=Vb,z=Wc>>2}}733==T?(a[z]=Vb,ub=Ca,va=Ia,Sa=Qb,Y=Xd,ua=Vb,T=736):716==T?(a[n+1]=Vb,ub=Ca,va=Ia,Sa=lc,Y=Vb,ua=Wc,T=736):718==T?(a[n+1]=Vb,V=Wc,ab=Vb,$a=Ia,jb=Ca,T=799):735==T&&(V=a[z]=Vb,ab=Xd,$a=Ia,jb=Ca,T=799)}}while(0);do{if(736==T){if(0==(Sa|0)){V=ua,ab=Y,$a=va,jb=ub,T=799}else{if(a[m]|=32768,c=(Sa+4|0)>>2,a[ua>>2]=a[c],q=(Sa|0)>>2,a[Y+4>>2]=a[q],0!=(i&516|0)){var oc=Sa;g=oc>>2}else{if(0!=(i&8|0)){var Hb=P|0;a[c]=a[Hb>>2];a[q]=0;a[Hb>>2]=Sa;var Nb=Y,ve=ub;T=766}else{if(0!=(i&16|0)){var Rd=P+4|0;a[q]=a[Rd>>2];a[c]=0;a[Rd>>2]=Sa;var Bc=Y,Sd=ub;T=773}else{if(0!=(i&4098|0)){Q=Sa;La=Y;T=779;break a}if(0!=(i&2049|0)){if(0!=(a[a[j]+4>>2]&4|0)){oc=Sa,g=oc>>2}else{a[c]=0;var fd=P+4|0;a[q]=a[fd>>2];a[fd>>2]=Sa;var mb=Y,yc=Sa,db=ub;T=806}}else{if(0==(i&32|0)){return D=0,h=P,D}if(0==(a[a[j]+4>>2]&4|0)){a[va+4>>2]=0;var Lb=P+4|0;a[va>>2]=a[Lb>>2];a[Lb>>2]=va;var Tc=a[A]+16|0;a[Tc>>2]=a[Tc>>2]+1|0}else{var $b=a[w+4];if(0!=($b|0)){J[$b](b,ub,M)}if(0>(a[u]|0)){J[a[b+12>>2]](b,va,0,M)}}oc=Sa;g=oc>>2}}}}}}}while(0);do{if(799==T){if(a[ab+4>>2]=0,a[V>>2]=0,0!=(i&8|0)){Nb=ab,ve=jb,T=766}else{if(0!=(i&16|0)){Bc=ab,Sd=jb,T=773}else{if(0!=(i&516|0)){var Mc=jb,id=ab;break a}if(0!=(i&2049|0)){mb=ab,yc=0,db=jb,T=806}else{if(0==(i&32|0)){Mc=0;id=ab;break a}var Pb=a[A]+16|0;a[Pb>>2]=a[Pb>>2]+1|0;oc=$a;g=oc>>2}}}}}while(0);do{if(806==T){var Jb=M+12|0,Yb=a[Jb>>2],mf=0==(Yb|0)?db:0==(i&1|0)?db:J[Yb](b,db,M);if(0==(mf|0)){var nf=yc}else{if(-1<(y|0)){nf=mf+y|0}else{var Kb=J[a[b+12>>2]](b,0,12,M),af=Kb;if(0!=(Kb|0)){a[Kb+8>>2]=mf}else{if(0!=(a[Jb>>2]|0)){var yf=a[w+4];if(0!=(yf|0)&&0!=(i&1|0)){J[yf](b,mf,M)}}}nf=af}}if(0==(nf|0)){Mc=mf;id=mb;break a}var Td=a[A]+16|0,Fe=a[Td>>2];-1<(Fe|0)&&(a[Td>>2]=Fe+1|0);oc=nf;g=oc>>2}else{if(766==T){var gf=P+4|0,fe=a[gf>>2];if(0==(fe|0)){Mc=ve;id=Nb;break a}var fh=fe+4|0,df=a[fh>>2],jd=0==(df|0);b:do{if(jd){var md=fe,je=a[fe>>2]}else{for(var Qe=fe,Xf=fh,Uc=df;;){var bf=Uc|0;a[Xf>>2]=a[bf>>2];a[bf>>2]=Qe;var rk=Uc+4|0,Mb=a[rk>>2];if(0==(Mb|0)){md=Uc;je=Qe;break b}else{Qe=Uc,Xf=rk,Uc=Mb}}}}while(0);a[gf>>2]=je;oc=md;g=oc>>2}else{if(773==T){var Wb=P|0,ef=a[Wb>>2];if(0==(ef|0)){Mc=Sd;id=Bc;break a}var kd=ef|0,Tb=a[kd>>2],En=0==(Tb|0);b:do{if(En){var sk=ef,HC=a[ef+4>>2]}else{for(var Gr=ef,nd=kd,zd=Tb;;){var cf=zd+4|0;a[nd>>2]=a[cf>>2];a[cf>>2]=Gr;var uc=zd|0,ec=a[uc>>2];if(0==(ec|0)){sk=zd;HC=Gr;break b}else{Gr=zd,nd=uc,zd=ec}}}}while(0);a[Wb>>2]=HC;oc=sk;g=oc>>2}}}}while(0);a[g+1]=a[C];a[g]=a[C+1];var zi=0==(a[a[j]+4>>2]&8|0);b:do{if(zi){var we=oc}else{if(0==(i&516|0)){we=oc}else{for(var pe=0>(y|0),IC=0>(O|0),Kd=(pe?a[g+2]:oc+ -y|0)+X|0,Dd=IC?a[Kd>>2]:Kd,bc=0==(Da|0),rc=1>(O|0),Ye=-y|0,Ad=oc;;){var Ud=Ad+4|0,Vd=a[Ud>>2];if(0==(Vd|0)){we=Ad;break b}var jc=Vd|0,mc=a[jc>>2],gd=0==(mc|0);c:do{if(gd){var ud=Vd,Zb=jc}else{for(var qc=Vd,of=jc,Sb=mc;;){var kc=Sb+4|0;a[of>>2]=a[kc>>2];a[kc>>2]=qc;var Xb=Sb|0,Ac=a[Xb>>2];if(0==(Ac|0)){ud=Sb;Zb=Xb;break c}else{qc=Sb,of=Xb,Sb=Ac}}}}while(0);var ac=Ud|0;a[ac>>2]=ud;var dc=(pe?a[ud+8>>2]:ud+Ye|0)+X|0,fc=IC?a[dc>>2]:dc;if(0!=((bc?rc?ka(Dd,fc):Ve(Dd,fc,O):J[Da](b,Dd,fc,M))|0)){we=Ad;break b}a[ac>>2]=a[Zb>>2];a[Zb>>2]=Ad;Ad=ud}}}}while(0);a[a[A]+4>>2]=we;D=0>(y|0)?a[we+8>>2]:we+ -y|0;h=P;return D}}while(0);if(779==T){var nc=0>(y|0)?a[Q+8>>2]:Q+ -y|0,gc=a[w+4];if(0!=(gc|0)&&0!=(i&2|0)){J[gc](b,nc,M)}if(0>(a[u]|0)){J[a[b+12>>2]](b,Q,0,M)}var $c=a[A]+16|0,zc=a[$c>>2]-1|0;a[$c>>2]=zc;0>(zc|0)&&(a[a[A]+16>>2]=-1);Mc=nc;id=La}for(var Cc=id;;){var Ic=Cc+4|0,vc=a[Ic>>2];if(0==(vc|0)){break}else{Cc=vc}}a[Ic>>2]=a[C];a[a[A]+4>>2]=a[C+1];D=0!=(i&2|0)?Mc:0;h=P;return D}function Ag(b,r){var i,g=a[a[b+16>>2]>>2];i=(b+8|0)>>2;var q=a[i],c=q|0,d=a[c>>2],f=d&4096;if(0==(r|0)){if(0==(f|0)){var n;return-1}q=a[q+4>>2]}else{if(0==(a[q+16>>2]|0)){f=0,q=r}else{return-1}}a[c>>2]=d&-4097;d=a[i];c=a[d>>2];if(0==(c&3|0)){n=d+4|0;0==(c&12|0)?(a[n>>2]=0,a[a[i]+8>>2]=q|0):a[n>>2]=q;if(0!=(f|0)){return 0}a[a[i]+16>>2]=-1;return 0}a[d+4>>2]=0;i=a[i]>>2;if(0==(f|0)){a[i+4]=0;if(0==(q|0)){return 0}for(;;){if(i=a[q>>2],J[g](b,q,32),0==(i|0)){n=0;break}else{q=i}}return n}f=a[i+2];i=a[i+3];g=(i<<2)+f|0;if(0<(i|0)){i=f}else{return 0}for(;;){if(f=a[i>>2],0!=(f|0)&&(a[i>>2]=q,q=f|0,f=a[q>>2],a[q>>2]=0,q=f),i=i+4|0,i>>>0>=g>>>0){n=0;break}}return n}function yC(b,r){var i,g=b>>2;0!=(a[a[g+2]>>2]&4096|0)&&Ag(b,0);var q=0!=(r|0);if(q){if(0!=(a[a[r+8>>2]>>2]&4096|0)&&Ag(r,0),(a[r+16>>2]|0)==(a[g+4]|0)){var c=r}else{var d;return 0}}else{c=0}for(;0!=(c|0);){if((c|0)==(b|0)){d=0;i=896;break}c=a[c+28>>2]}if(896==i){return d}i=(b+28|0)>>2;c=a[i];0!=(c|0)&&(d=c+24|0,a[d>>2]=a[d>>2]-1|0);a[g+8]=0;a[i]=0;q?(a[i]=r,a[g]=372,g=r+24|0,a[g>>2]=a[g>>2]+1|0,d=r):(a[g]=a[a[g+4]>>2],d=c);return d}function JC(b,r,i){var g,q,c;if(0!=(i&99|0)){var d=J[a[a[b+16>>2]>>2]](b,r,i);return d}q=0==(i&516|0);a:do{if(q){var f=a[b+16>>2],n=0==(a[f+4>>2]&12|0);do{if(0==(i&384|0)){if(n){if(0==(i&24|0)){return d=0}q=(b+32|0)>>2;var h=a[q];if(0==(h|0)){var e=b;c=931}else{var s=a[a[h+4>>2]+8>>2];g=a[a[h+8>>2]+4>>2];if(((0>(s|0)?a[g+8>>2]:g+ -s|0)|0)==(r|0)){var j=r,m=h}else{e=b,c=931}}do{if(931==c){for(;;){c=0;if(0==(e|0)){break}var u=J[a[a[e+16>>2]>>2]](e,r,4);if(0!=(u|0)){c=933;break}e=a[e+28>>2]}if(933==c){a[q]=e,j=u,m=e}else{return d=a[q]=0}}}while(0);var h=0==(i&8|0),w=J[a[a[m+16>>2]>>2]](m,j,i),s=m;b:for(;;){for(g=s+16|0;0!=(w|0);){var A=b;for(;;){if((A|0)==(s|0)){d=w;c=949;break b}if(0!=(J[a[a[A+16>>2]>>2]](A,w,4)|0)){break}A=a[A+28>>2]}w=J[a[a[g>>2]>>2]](s,w,i)}s=a[s+28>>2];a[q]=s;if(0==(s|0)){d=0;c=955;break}g=a[a[s+16>>2]>>2];w=h?J[g](s,0,256):J[g](s,0,128)}if(955==c||949==c){return d}}}else{if(n){f=b;break a}}}while(0);if(0==(i&408|0)){return d=0}var B=0==(b|0);b:do{if(B){var C=0,P=0}else{c=0!=(i&136|0);d=0!=(i&272|0);e=0;j=b;u=m=0;for(q=f;;){q=J[a[q>>2]](j,r,i);do{if(0==(q|0)){n=u,h=m,s=e}else{n=a[j+4>>2];g=n>>2;h=a[g+1];s=a[g+5];g=q+a[g]|0;g=0>(h|0)?a[g>>2]:g;if(0!=(m|0)&&(n=0==(s|0)?1>(h|0)?ka(g,u):Ve(g,u,h):J[s](j,g,u,n),!(c&0>(n|0)|d&0<(n|0)))){n=u;h=m;s=e;break}n=g;h=q;s=j}}while(0);q=a[j+28>>2];if(0==(q|0)){C=s;P=h;break b}e=s;j=q;m=h;u=n;q=a[q+16>>2]}}}while(0);a[b+32>>2]=C;return d=P}f=b}while(0);for(;;){if(0==(f|0)){B=0;break}C=J[a[a[f+16>>2]>>2]](f,r,i);if(0!=(C|0)){B=C;break}f=a[f+28>>2]}a[b+32>>2]=f;return B}function Gn(b,r){for(var i=b|0,g=b+32|0,q=J[a[i>>2]](b,0,128);0!=(q|0);){var c=a[g>>2],d=J[a[i>>2]](b,q,8);if(0>(J[r](0==(c|0)?b:c,q,0)|0)){break}else{q=d}}}function tk(b,r,i){var g,q=r>>2,c=h;h+=8;var d=c+4;a[q]=0;var f=b+16|0,n=a[a[a[f>>2]+20>>2]>>2]>>>4&1;a[i>>2]=n;var e=a[Hr>>2],p=0==(e|0);a:do{if(p){g=n}else{var s=mb(b|0,a[e+8>>2]),j=m[s];if(0==j<<24>>24){g=n}else{var t=Ai|0;for(g=t>>2;;){var u=a[g];if(0==(u|0)){g=n;break a}if(j<<24>>24==m[u]<<24>>24&&0==(ka(s,u)|0)){break}t=t+12|0;g=t>>2}a[q]=a[g+1];g=a[g+2];a[i>>2]=g}}}while(0);n=a[Ir>>2];0!=(n|0)&1==(g|0)&&(n=mb(b|0,a[n+8>>2]),0!=m[n]<<24>>24&&KC(n,i));n=a[Jr>>2];0!=(n|0)&&1==(a[q]|0)&&(n=mb(b|0,a[n+8>>2]),0!=m[n]<<24>>24&&KC(n,r));0!=m[b+161|0]<<24>>24&&(b=a[b+12>>2],tk(Kr(a[b+20>>2],b,a[f>>2]),c,d),a[i>>2]|=a[c>>2],a[q]|=a[d>>2]);h=c}function KC(b,r){var i=h;h+=4;a[r>>2]=0;if(0!=m[b]<<24>>24){for(var g=b,q=0;;){a[i>>2]=0;var c=g,g=i,d=cc,f=h;h+=4;d=f>>2;a[d]=0;var n=Lr(c,Mr|0,f);if((n|0)==(c|0)){for(;!(n=Lr(c,gh|0,f),(c|0)==(n|0));){c=n}c=Lr(c,xe|0,f)}else{c=n}n=a[d];0!=(n|0)&0==(n&7|0)&&(n|=1,a[d]=n);d=n;n=a[g>>2];d|=n;a[g>>2]=d;h=f;g=c;a[r>>2]|=a[i>>2]<<(q<<3);q=q+1|0;if(!(0!=m[g]<<24>>24&4>(q|0))){break}}}h=i}function Cg(x,r){for(var i,g=r&7,q=Bi|0;;){if(0==(a[q+12>>2]|0)){var c=0;break}if((g|0)==(a[q>>2]|0)){i=989;break}else{q=q+16|0}}989==i&&(c=q+4|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]));g=r>>>8&7;for(q=Bi|0;;){if(0==(a[q+12>>2]|0)){var d=c;break}if((g|0)==(a[q>>2]|0)){i=993;break}else{q=q+16|0}}993==i&&(d=q+4|0,d=c+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));c=r>>>16&7;for(g=Bi|0;;){if(0==(a[g+12>>2]|0)){var k=d;break}if((c|0)==(a[g>>2]|0)){i=997;break}else{g=g+16|0}}997==i&&(k=g+4|0,k=d+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));d=r>>>24&7;for(c=Bi|0;;){if(0==(a[c+12>>2]|0)){var n=k;i=1003;break}if((d|0)==(a[c>>2]|0)){break}else{c=c+16|0}}if(1003==i){return i=10*n,k=a[uk>>2],k=Xb(x|0,k,1,0),i*k}i=c+4|0;n=k+(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=10*n;k=a[uk>>2];k=Xb(x|0,k,1,0);return i*k}function Hn(x,r,i,g,q,c){var d,k,n,e,p=h;h+=80;d=p+8;var s=p+72,x=Cg(x,c),x=x*x;f[0]=x;a[s>>2]=b[0];a[s+4>>2]=b[1];a[q+12>>2]=c;c=g+3|0;k=(c<<4)+r|0;q=(q+32|0)>>2;n=k>>2;a[q]=a[n];a[q+1]=a[n+1];a[q+2]=a[n+2];a[q+3]=a[n+3];(g|0)>(i|0)&&(i=(g<<4)+r|0,k|=0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=(g<<4)+r+8|0,c=(c<<4)+r+8|0,c=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])-(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=i*i+c*c>2;n=((g<<4)+r|0)>>2;a[e]=a[n];a[e+1]=a[n+1];a[e+2]=a[n+2];a[e+3]=a[n+3];k=(d+32|0)>>2;i=((g+1<<4)+r|0)>>2;a[k]=a[i];a[k+1]=a[i+1];a[k+2]=a[i+2];a[k+3]=a[i+3];c=(d+16|0)>>2;x=((g+2<<4)+r|0)>>2;a[c]=a[x];a[c+1]=a[x+1];a[c+2]=a[x+2];a[c+3]=a[x+3];var j=d|0;d>>=2;a[d]=a[q];a[d+1]=a[q+1];a[d+2]=a[q+2];a[d+3]=a[q+3];a[p>>2]=j;a[p+4>>2]=s;vk(p,338,j,1);a[n]=a[e];a[n+1]=a[e+1];a[n+2]=a[e+2];a[n+3]=a[e+3];a[i]=a[k];a[i+1]=a[k+1];a[i+2]=a[k+2];a[i+3]=a[k+3];a[x]=a[c];a[x+1]=a[c+1];a[x+2]=a[c+2];a[x+3]=a[c+3];r=((g+3<<4)+r|0)>>2;a[r]=a[d];a[r+1]=a[d+1];a[r+2]=a[d+2];a[r+3]=a[d+3];h=p;return g}function In(x,r,i,g,q,c){var d,k,n,e=h;h+=80;var p=e+8,s=e+72,x=Cg(x,c),x=x*x;f[0]=x;a[s>>2]=b[0];a[s+4>>2]=b[1];a[q+8>>2]=c;c=(i<<4)+r|0;q=(q+16|0)>>2;d=c>>2;a[q]=a[d];a[q+1]=a[d+1];a[q+2]=a[d+2];a[q+3]=a[d+3];if((g|0)>(i|0)){c|=0;g=i+3|0;d=(g<<4)+r|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=(i<<4)+r+8|0;k=(g<<4)+r+8|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);var j=c*c+d*d>2;k=((j+3<<4)+r|0)>>2;a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];d=(p+16|0)>>2;c=((j+2<<4)+r|0)>>2;a[d]=a[c];a[d+1]=a[c+1];a[d+2]=a[c+2];a[d+3]=a[c+3];g=(p+32|0)>>2;x=((j+1<<4)+r|0)>>2;a[g]=a[x];a[g+1]=a[x+1];a[g+2]=a[x+2];a[g+3]=a[x+3];var m=p+48|0,i=m>>2;a[i]=a[q];a[i+1]=a[q+1];a[i+2]=a[q+2];a[i+3]=a[q+3];a[e>>2]=m;a[e+4>>2]=s;vk(e,338,p|0,0);r=((j<<4)+r|0)>>2;a[r]=a[i];a[r+1]=a[i+1];a[r+2]=a[i+2];a[r+3]=a[i+3];a[x]=a[g];a[x+1]=a[g+1];a[x+2]=a[g+2];a[x+3]=a[g+3];a[c]=a[d];a[c+1]=a[d+1];a[c+2]=a[d+2];a[c+3]=a[d+3];a[k]=a[n];a[k+1]=a[n+1];a[k+2]=a[n+2];a[k+3]=a[n+3];h=e;return j}function LC(x,r,i,g,q,c,d){var k,n,h,e,s,j,m;n=0!=(c|0);m=0==(d|0);if(n&(m^1)&(g|0)==(i|0)){h=(g<<4)+r|0;var i=h|0,u=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=(g<<4)+r+8|0;j=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);n=g+3|0;k=(n<<4)+r|0;m=(k|0)>>2;i=(b[0]=a[m],b[1]=a[m+1],f[0]);s=((n<<4)+r+8|0)>>2;n=(b[0]=a[s],b[1]=a[s+1],f[0]);e=Cg(x,c);var x=Cg(x,d),w=u-i,A=j-n,w=$c(w*w+A*A);x+e>2]=b[0];a[B+4>>2]=b[1];e=(A<<4)+r+8|0;f[0]=w;a[e>>2]=b[0];a[e+4>>2]=b[1];h>>=2;j>>=2;a[h]=a[j];a[h+1]=a[j+1];a[h+2]=a[j+2];a[h+3]=a[j+3];f[0]=x;a[m]=b[0];a[m+1]=b[1];f[0]=u;a[s]=b[0];a[s+1]=b[1];r=((g+2<<4)+r|0)>>2;g=k>>2;a[r]=a[g];a[r+1]=a[g+1];a[r+2]=a[g+2];a[r+3]=a[g+3];a[q+12>>2]=d;r=q+32|0;d=q+40|0;a[q+8>>2]=c;f[0]=i;a[r>>2]=b[0];a[r+4>>2]=b[1];f[0]=n;a[d>>2]=b[0];a[d+4>>2]=b[1]}else{if(!m){w=Cg(x,d);k=(g<<4)+r|0;u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=(g<<4)+r+8|0;j=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);m=g+3|0;h=(m<<4)+r|0;s=(h|0)>>2;k=(b[0]=a[s],b[1]=a[s+1],f[0]);e=((m<<4)+r+8|0)>>2;m=(b[0]=a[e],b[1]=a[e+1],f[0]);A=u-k;B=j-m;A=.9*$c(A*A+B*B);w=w>2]=b[0];a[P+4>>2]=b[1];u=(C<<4)+r+8|0;f[0]=j;a[u>>2]=b[0];a[u+4>>2]=b[1];f[0]=A;a[s]=b[0];a[s+1]=b[1];f[0]=B;a[e]=b[0];a[e+1]=b[1];g=((g+2<<4)+r|0)>>2;h>>=2;a[g]=a[h];a[g+1]=a[h+1];a[g+2]=a[h+2];a[g+3]=a[h+3];a[q+12>>2]=d;d=q+32|0;f[0]=k;a[d>>2]=b[0];a[d+4>>2]=b[1];d=q+40|0;f[0]=m;a[d>>2]=b[0];a[d+4>>2]=b[1];k=w}n&&(h=Cg(x,c),n=(i<<4)+r|0,d=n|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),g=(i<<4)+r+8|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),m=i+3|0,x=(m<<4)+r|0,x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]),m=(m<<4)+r+8|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),s=d-x,u=g-m,s=.9*$c(s*s+u*u),g==m?(h=d>2]=b[0],a[j+4>>2]=b[1],h=(u<<4)+r+8|0,f[0]=s,a[h>>2]=b[0],a[h+4>>2]=b[1],n>>=2,k>>=2,a[n]=a[k],a[n+1]=a[k+1],a[n+2]=a[k+2],a[n+3]=a[k+3],i=i+2|0,n=(i<<4)+r|0,f[0]=x,a[n>>2]=b[0],a[n+4>>2]=b[1],r=(i<<4)+r+8|0,f[0]=m,a[r>>2]=b[0],a[r+4>>2]=b[1],a[q+8>>2]=c,c=q+16|0,f[0]=d,a[c>>2]=b[0],a[c+4>>2]=b[1],q=q+24|0,f[0]=g,a[q>>2]=b[0],a[q+4>>2]=b[1])}}function hh(x,r,i,g,q,c){var g=g-r,q=q-i,c=10*c/($c(g*g+q*q)+1e-4),d=(g+(0<=g?1e-4:-1e-4))*c,k=(q+(0<=q?1e-4:-1e-4))*c,n=.5*d,q=.5*k,g=r-q,c=i-n,q=q+r,n=n+i,h=g+d,e=c+k,s=q+d,d=n+k,i=h>s?h:s,i=q>i?q:i,r=e>d?e:d,r=n>r?n:r,h=h>2]=b[0];a[e+4>>2]=b[1];q=x+8|0;f[0]=c>2]=b[0];a[q+4>>2]=b[1];q=x+16|0;f[0]=g>i?g:i;a[q>>2]=b[0];a[q+4>>2]=b[1];x=x+24|0;f[0]=c>r?c:r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Ci(x,r,i,g,q,c,d,k,n){var e,p=h;h+=16;var s;e=(a[x+16>>2]+12|0)>>2;var j=a[e];a[e]=r;Ke(x,a[a[x>>2]+296>>2]);for(var r=q-i,q=c-g,m=10/($c(r*r+q*q)+1e-4),c=(r+(0<=r?1e-4:-1e-4))*m,r=(q+(0<=q?1e-4:-1e-4))*m,q=p|0,m=p+8|0,u=0,w=i,A=g;;){if(4<=(u|0)){s=1054;break}var B=n>>(u<<3)&255;if(0==(B|0)){s=1053;break}for(var g=p,i=x,C=c,P=r,T=d,gb=k,$e=cc,M=B&7,y=Bi|0;;){var O=a[y>>2];if(0==(O|0)){var D=w,Da=A;break}if((M|0)==(O|0)){$e=1058;break}else{y=y+16|0}}1058==$e&&(D=y+4|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])*T,Da=D*C,P*=D,J[a[y+12>>2]](i,w,A,Da,P,T,gb,B),D=Da+w,Da=P+A);i=g|0;f[0]=D;a[i>>2]=b[0];a[i+4>>2]=b[1];g=g+8|0;f[0]=Da;a[g>>2]=b[0];a[g+4>>2]=b[1];u=u+1|0;w=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);A=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])}1053==s?(a[e]=j,h=p):1054==s&&(a[e]=j,h=p)}function MC(x,r,i,g,q,c,d,k){var n,e,c=h;h+=80;var d=4>2;0==(k&16|0)?(f[0]=g,a[e]=b[0],a[e+1]=b[1],e=c+72|0,f[0]=q,a[e>>2]=b[0],a[e+4>>2]=b[1],e=c>>2,n>>=2,a[e]=a[n],a[e+1]=a[n+1],a[e+2]=a[n+2],a[e+3]=a[n+3],n=c+16|0,f[0]=g-p,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+24|0,f[0]=q-d,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+32|0,f[0]=r,a[n>>2]=b[0],a[n+4>>2]=b[1],r=c+40|0,f[0]=i,a[r>>2]=b[0],a[r+4>>2]=b[1],i=c+48|0,f[0]=g+p,a[i>>2]=b[0],a[i+4>>2]=b[1],i=c+56|0,f[0]=q+d,a[i>>2]=b[0],a[i+4>>2]=b[1]):(f[0]=r,a[e]=b[0],a[e+1]=b[1],e=c+72|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=c>>2,n>>=2,a[e]=a[n],a[e+1]=a[n+1],a[e+2]=a[n+2],a[e+3]=a[n+3],n=c+16|0,f[0]=r-p,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+24|0,f[0]=i-d,a[n>>2]=b[0],a[n+4>>2]=b[1],n=c+32|0,f[0]=g,a[n>>2]=b[0],a[n+4>>2]=b[1],g=c+40|0,f[0]=q,a[g>>2]=b[0],a[g+4>>2]=b[1],q=c+48|0,f[0]=p+r,a[q>>2]=b[0],a[q+4>>2]=b[1],r=c+56|0,f[0]=d+i,a[r>>2]=b[0],a[r+4>>2]=b[1]);0!=(k&32|0)?zc(x,c|0,3,(k>>>3&1^1)&255):0==(k&64|0)?zc(x,c+16|0,3,(k>>>3&1^1)&255):zc(x,c+32|0,3,(k>>>3&1^1)&255);h=c}function NC(x,r,i,g,q,c,d,k){var n,e,p,s=h;h+=144;var j=4*c,m=k&16,j=j>=d|0==(m|0)?.45:.45*(d/j);if(1>2;0==(u|0)?(f[0]=n,a[p]=b[0],a[p+1]=b[1],n=s+136|0,f[0]=e,a[n>>2]=b[0],a[n+4>>2]=b[1],e=s>>2,n=A>>2,a[e]=a[n],a[e+1]=a[n+1],a[e+2]=a[n+2],a[e+3]=a[n+3],e=s+16|0,f[0]=r-m,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+24|0,f[0]=i-j,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+32|0,f[0]=w-d,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+40|0,f[0]=g-c,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+48|0,f[0]=r,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+56|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+64|0,f[0]=r,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+72|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+80|0,f[0]=r,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+88|0,f[0]=i,a[e>>2]=b[0],a[e+4>>2]=b[1],e=s+96|0,f[0]=w+d,a[e>>2]=b[0],a[e+4>>2]=b[1],d=s+104|0,f[0]=g+c,a[d>>2]=b[0],a[d+4>>2]=b[1],c=s+112|0,f[0]=m+r,a[c>>2]=b[0],a[c+4>>2]=b[1],m=s+120|0,f[0]=j+i):(f[0]=r,a[p]=b[0],a[p+1]=b[1],r=s+136|0,f[0]=i,a[r>>2]=b[0],a[r+4>>2]=b[1],i=s>>2,r=A>>2,a[i]=a[r],a[i+1]=a[r+1],a[i+2]=a[r+2],a[i+3]=a[r+3],i=s+16|0,f[0]=n-m,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+24|0,f[0]=e-j,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+32|0,f[0]=w-d,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+40|0,f[0]=g-c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+48|0,f[0]=n-d,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+56|0,f[0]=e-c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+64|0,f[0]=n,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+72|0,f[0]=e,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+80|0,f[0]=n+d,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+88|0,f[0]=e+c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=s+96|0,f[0]=w+d,a[i>>2]=b[0],a[i+4>>2]=b[1],d=s+104|0,f[0]=g+c,a[d>>2]=b[0],a[d+4>>2]=b[1],c=s+112|0,f[0]=n+m,a[c>>2]=b[0],a[c+4>>2]=b[1],m=s+120|0,f[0]=e+j);a[m>>2]=b[0];a[m+4>>2]=b[1];0!=(k&32|0)?zc(x,q,6,1):0==(k&64|0)?zc(x,q,9,1):zc(x,s+48|0,6,1);h=s}function OC(x,r,i,g,q,c,d,k){var n,e,p,s,j,m=h;h+=64;var u=r+g,w=i+q,A=.2*g+r,B=.2*q+i,C=.6*g+r,P=.6*q+i,T=m|0;j=(m|0)>>2;f[0]=A-q;a[j]=b[0];a[j+1]=b[1];s=(m+8|0)>>2;f[0]=B+g;a[s]=b[0];a[s+1]=b[1];p=(m+16|0)>>2;f[0]=A+q;a[p]=b[0];a[p+1]=b[1];e=(m+24|0)>>2;f[0]=B-g;a[e]=b[0];a[e+1]=b[1];n=(m+32|0)>>2;f[0]=C+q;a[n]=b[0];a[n+1]=b[1];d=(m+40|0)>>2;f[0]=P-g;a[d]=b[0];a[d+1]=b[1];c=(m+48|0)>>2;f[0]=C-q;a[c]=b[0];a[c+1]=b[1];q=(m+56|0)>>2;f[0]=P+g;a[q]=b[0];a[q+1]=b[1];0==(k&32|0)?0!=(k&64|0)&&(f[0]=A,a[p]=b[0],a[p+1]=b[1],f[0]=B,a[e]=b[0],a[e+1]=b[1],f[0]=C,a[n]=b[0],a[n+1]=b[1],f[0]=P,a[d]=b[0],a[d+1]=b[1]):(f[0]=A,a[j]=b[0],a[j+1]=b[1],f[0]=B,a[s]=b[0],a[s+1]=b[1],f[0]=C,a[c]=b[0],a[c+1]=b[1],f[0]=P,a[q]=b[0],a[q+1]=b[1]);zc(x,T,4,1);f[0]=r;a[j]=b[0];a[j+1]=b[1];f[0]=i;a[s]=b[0];a[s+1]=b[1];f[0]=u;a[p]=b[0];a[p+1]=b[1];f[0]=w;a[e]=b[0];a[e+1]=b[1];Gd(x,T,2);h=m}function PC(x,r,i,g,q,c,d,k){var n,e,p,s,j,m,u,c=h;h+=64;n=-.4*q;var d=.4*g,w=.8*g+r,A=.8*q+i,g=r+g,B=i+q,C=c|0;u=(c|0)>>2;f[0]=n+r;a[u]=b[0];a[u+1]=b[1];m=(c+8|0)>>2;f[0]=d+i;a[m]=b[0];a[m+1]=b[1];j=(c+16|0)>>2;f[0]=r-n;a[j]=b[0];a[j+1]=b[1];s=(c+24|0)>>2;f[0]=i-d;a[s]=b[0];a[s+1]=b[1];p=(c+32|0)>>2;f[0]=w-n;a[p]=b[0];a[p+1]=b[1];e=(c+40|0)>>2;f[0]=A-d;a[e]=b[0];a[e+1]=b[1];q=(c+48|0)>>2;f[0]=w+n;a[q]=b[0];a[q+1]=b[1];n=(c+56|0)>>2;f[0]=A+d;a[n]=b[0];a[n+1]=b[1];0==(k&32|0)?0!=(k&64|0)&&(f[0]=r,a[j]=b[0],a[j+1]=b[1],f[0]=i,a[s]=b[0],a[s+1]=b[1],f[0]=w,a[p]=b[0],a[p+1]=b[1],f[0]=A,a[e]=b[0],a[e+1]=b[1]):(f[0]=r,a[u]=b[0],a[u+1]=b[1],f[0]=i,a[m]=b[0],a[m+1]=b[1],f[0]=w,a[q]=b[0],a[q+1]=b[1],f[0]=A,a[n]=b[0],a[n+1]=b[1]);zc(x,C,4,(k>>>3&1^1)&255);f[0]=w;a[u]=b[0];a[u+1]=b[1];f[0]=A;a[m]=b[0];a[m+1]=b[1];f[0]=g;a[j]=b[0];a[j+1]=b[1];f[0]=B;a[s]=b[0];a[s+1]=b[1];Gd(x,C,2);h=c}function QC(x,r,i,g,q,c,d,k){c=h;h+=80;var n=-q/3,e=g/3,p=.5*g+r,s=.5*q+i,d=c|0,j=c+64|0,m=j|0;f[0]=r+g;a[m>>2]=b[0];a[m+4>>2]=b[1];g=c+72|0;f[0]=i+q;a[g>>2]=b[0];a[g+4>>2]=b[1];q=c>>2;g=j>>2;a[q]=a[g];a[q+1]=a[g+1];a[q+2]=a[g+2];a[q+3]=a[g+3];q=c+16|0;f[0]=p+n;a[q>>2]=b[0];a[q+4>>2]=b[1];q=c+24|0;f[0]=s+e;a[q>>2]=b[0];a[q+4>>2]=b[1];q=c+32|0;g=q|0;f[0]=r;a[g>>2]=b[0];a[g+4>>2]=b[1];r=c+40|0;f[0]=i;a[r>>2]=b[0];a[r+4>>2]=b[1];i=c+48|0;f[0]=p-n;a[i>>2]=b[0];a[i+4>>2]=b[1];i=c+56|0;f[0]=s-e;a[i>>2]=b[0];a[i+4>>2]=b[1];0!=(k&32|0)?zc(x,q,3,(k>>>3&1^1)&255):(i=(k>>>3&1^1)&255,0==(k&64|0)?zc(x,d,4,i):zc(x,d,3,i));h=c}function Lr(b,r,i){for(var g;;){var q=a[r>>2];if(0==(q|0)){var c=b;g=1124;break}var d=Ba(q);if(0==(td(b,q,d)|0)){break}else{r=r+8|0}}if(1124==g){return c}a[i>>2]|=a[r+4>>2];return b+d|0}function RC(x){var r,i=h;h+=52;r=i>>2;var g=V(x|0,Di|0);if(0==(g|0)||0==m[g]<<24>>24){return h=i,0}0!=m[ld]<<24>>24&&mk(ih);var q=DQa(g,0,80);0==(q|0)&&(la(0,SC|0,(j=h,h+=4,a[j>>2]=a[x+12>>2],j)),la(3,TC|0,(j=h,h+=4,a[j>>2]=g,j)));if(0==m[ld]<<24>>24){return r=q,h=i,r}x=Jn();EQa(q,i);Va(a[oa>>2],UC|0,(j=h,h+=12,a[j>>2]=a[r],f[0]=x,a[j+4>>2]=b[0],a[j+8>>2]=b[1],j));x=a[r+3];Va(a[oa>>2],VC|0,(j=h,h+=8,a[j>>2]=a[r+2],a[j+4>>2]=x,j));x=a[r+5];Va(a[oa>>2],WC|0,(j=h,h+=8,a[j>>2]=a[r+4],a[j+4>>2]=x,j));x=a[r+7];Va(a[oa>>2],XC|0,(j=h,h+=8,a[j>>2]=a[r+6],a[j+4>>2]=x,j));Va(a[oa>>2],YC|0,(j=h,h+=4,a[j>>2]=a[r+1],j));Va(a[oa>>2],ZC|0,(j=h,h+=4,a[j>>2]=a[r+8],j));r=q;h=i;return r}function wk(x){var r,i=h,g=fa(244);r=g>>2;0==(g|0)&&la(1,$C|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));var q=x+16|0,x=a[q>>2];a[r]=x;a[q>>2]=g;if(0==(x|0)){a[r+22]=3,a[r+23]=0,r=g+96|0,f[0]=1,a[r>>2]=b[0],a[r+4>>2]=b[1]}else{for(var q=(x+16|0)>>2,c=(g+16|0)>>2,d=q+9;q>2;c=(g+52|0)>>2;for(d=q+9;q>2];a[r+23]=a[x+92>>2];r=x+96|0;r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);x=g+96|0;f[0]=r;a[x>>2]=b[0];a[x+4>>2]=b[1]}h=i;return g}function Ei(b){var r=b+16|0,i=a[r>>2],b=i>>2;0==(i|0)&&sa(Fi|0,110,aD|0,Nr|0);G(a[b+38]);G(a[b+37]);G(a[b+39]);G(a[b+40]);G(a[b+41]);G(a[b+42]);G(a[b+43]);G(a[b+44]);G(a[b+45]);G(a[b+46]);G(a[b+47]);G(a[b+48]);G(a[b+49]);G(a[b+53]);G(a[b+56]);G(a[b+55]);a[r>>2]=a[b];G(i)}function Or(b,r,i,g,q,c,d){var f,n=a[b+16>>2];f=n>>2;b=a[b+148>>2];0==(b&32768|0)|0==(r|0)||(a[f+33]=r);0==(b&65536|0)?r=0:(a[f+38]=ec(c,d),0==(i|0)?r=0:0==m[i]<<24>>24?r=0:(a[f+37]=ec(i,d),r=1));i=0==(b&4194304|0);a:do{if(i){c=r}else{do{if(0!=(g|0)&&0!=m[g]<<24>>24){a[f+42]=ec(g,d);g=n+200|0;a[g>>2]|=1;c=1;break a}}while(0);c=a[f+33];0==(c|0)?c=r:(a[f+42]=Hb(c),c=1)}}while(0);if(0==(b&8388608|0)|0==(q|0)||0==m[q]<<24>>24){return c}a[f+46]=ec(q,d);return 1}function Kn(b,r,i){var g=h;h+=32;var b=a[a[a[a[b>>2]+128>>2]+44>>2]+92>>2],q=V(r,Pr|0);if(0!=(q|0)&&0!=m[q]<<24>>24){return h=g,q}q=a[r>>2]<<28>>28;if(1==(q|0)){var c=jh|0,d=a[r+16>>2]}else{2==(q|0)?(c=Dg|0,d=a[r+20>>2]):3==(q|0)&&(c=Yf|0,d=a[a[r+36>>2]+16>>2])}if(0==(b|0)){r=(i+4|0)>>2,b=i+8|0}else{db(i,b);var q=i+4|0,r=q>>2,f=a[r],b=i+8|0;f>>>0>2]>>>0||(na(i,1),f=a[r]);a[r]=f+1|0;m[f]=95;r=q>>2}db(i,c);c=g|0;Ma(c,bD|0,(j=h,h+=4,a[j>>2]=d,j));db(i,c);d=a[r];d>>>0>2]>>>0||(na(i,1),d=a[r]);m[d]=0;i=a[i>>2];a[r]=i;h=g;return i}function Ln(b,r){var i,g,q,c,d=h;c=r>>2;r=h;h+=32;a[r>>2]=a[c];a[r+4>>2]=a[c+1];a[r+8>>2]=a[c+2];a[r+12>>2]=a[c+3];a[r+16>>2]=a[c+4];a[r+20>>2]=a[c+5];a[r+24>>2]=a[c+6];a[r+28>>2]=a[c+7];i=a[b+16>>2];q=i>>2;c=a[b+148>>2];if(0!=(c&4259840|0)){var f=0!=(c&131072|0);g=i+204|0;f?(a[g>>2]=0,a[q+52]=2):(a[g>>2]=2,a[q+52]=4);g=i+212|0;G(a[g>>2]);q=fa(a[q+52]<<4);i=q>>2;a[g>>2]=q;g=r>>2;a[i]=a[g];a[i+1]=a[g+1];a[i+2]=a[g+2];a[i+3]=a[g+3];g=(q+16|0)>>2;i=(r+16|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];0==(c&8192|0)&&Re(b,q,q,2);f||Mn(q)}h=d}function xk(x,r){var i,g,q,c,d=h;h+=144;q=d+64;g=d+128;c=r|0;var k=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);c=(x+16|0)>>2;var n=(b[0]=a[c],b[1]=a[c+1],f[0]),e=k>n;if(!e&&(i=x|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),k>=i)){var p=r+8|0,s=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+24|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);if(s<=p){var j=x+8|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);if(s>=j&&(s=r+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),!(s>n|s>2],b[1]=a[s+4>>2],f[0]),!(s>p|s>2],b[1]=a[s+4>>2],f[0]),!(s>n|s>2],b[1]=a[s+4>>2],f[0]),!(s>p|s>2],b[1]=a[s+4>>2],f[0]),!(s>n|s>2],b[1]=a[i+4>>2],f[0]),!(i>p|i>2;g=(x+8|0)>>2;i=(x|0)>>2;if(e){f[0]=k,a[c]=b[0],a[c+1]=b[1]}else{if(k<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=k,a[i]=b[0],a[i+1]=b[1]}k=n}n=r+8|0;n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);e=(b[0]=a[q],b[1]=a[q+1],f[0]);if(n>e){f[0]=n,a[q]=b[0],a[q+1]=b[1]}else{if(n<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=n,a[g]=b[0],a[g+1]=b[1]}n=e}e=r+16|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>k){f[0]=e,a[c]=b[0],a[c+1]=b[1],k=e}else{if(e<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=e,a[i]=b[0],a[i+1]=b[1]}}e=r+24|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>n){f[0]=e,a[q]=b[0],a[q+1]=b[1],n=e}else{if(e<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=e,a[g]=b[0],a[g+1]=b[1]}}e=r+32|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>k){f[0]=e,a[c]=b[0],a[c+1]=b[1],k=e}else{if(e<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=e,a[i]=b[0],a[i+1]=b[1]}}e=r+40|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>n){f[0]=e,a[q]=b[0],a[q+1]=b[1],n=e}else{if(e<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=e,a[g]=b[0],a[g+1]=b[1]}}e=r+48|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(e>k){f[0]=e,a[c]=b[0],a[c+1]=b[1]}else{if(e<(b[0]=a[i],b[1]=a[i+1],f[0])){f[0]=e,a[i]=b[0],a[i+1]=b[1]}}c=r+56|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);if(c>n){f[0]=c,a[q]=b[0],a[q+1]=b[1]}else{if(c<(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=c,a[g]=b[0],a[g+1]=b[1]}}}h=d}function cD(x){var r=x|0,r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]),i=x+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=x+48|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q=x+56|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),c=x+16|0,d=x+24|0,c=dD(r,i,g,q,(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),d=x+32|0,x=x+40|0;return 4>c&4>dD(r,i,g,q,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]))&1}function Qr(b){var r=a[b+192>>2];-1<(r|0)?(r|0)<(a[b+160>>2]|0)?(r=a[b+196>>2],b=-1<(r|0)?(r|0)<(a[b+164>>2]|0):0):b=0:b=0;return b&1}function Rr(x,r){var i,g,q=x>>2;i=a[q+37];var c=x+348|0,d=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),c=x+424|0;g=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var c=d*g/72,k=x+480|0;f[0]=c;a[k>>2]=b[0];a[k+4>>2]=b[1];var k=x+432|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),d=d*k/72,n=x+488|0;f[0]=d;a[n>>2]=b[0];a[n+4>>2]=b[1];n=x+512|0;f[0]=g/72;a[n>>2]=b[0];a[n+4>>2]=b[1];k/=72;g=(x+520|0)>>2;f[0]=k;a[g]=b[0];a[g+1]=b[1];0!=(i&4096|a[Ic>>2]|0)&&(f[0]=-1*k,a[g]=b[0],a[g+1]=b[1]);g=a[q+110]>>>0;0==(a[q+89]|0)?(k=x+360|0,f[0]=g/c,a[k>>2]=b[0],a[k+4>>2]=b[1],c=x+368|0,f[0]=(a[q+111]>>>0)/d,a[c>>2]=b[0],a[c+4>>2]=b[1]):(k=x+368|0,f[0]=g/d,a[k>>2]=b[0],a[k+4>>2]=b[1],d=x+360|0,f[0]=(a[q+111]>>>0)/c,a[d>>2]=b[0],a[d+4>>2]=b[1]);q=r|0;yk(x,jc(q,$(q,Nn|0),Y|0));q=wk(x)>>2;a[q+1]=0;a[q+2]=r;a[q+3]=0;Sr(x,a[r+48>>2],r|0);c=a[x>>2];q=a[x+60>>2];if(0!=(q|0)){d=a[q+8>>2];if(0!=(d|0)){J[d](x)}d=V(r|0,zk|0);if(0!=(d|0)&&0!=m[d]<<24>>24&&(c=c+300|0,Tr(a[x+68>>2],d,c),q=a[q+92>>2],0!=(q|0))){J[q](x,c)}}0!=(i&2|0)&&eD(x,r);i=ra(r);q=0==(i|0);a:do{if(!q){for(c=i;;){if(m[c+132|0]=0,c=ba(r,c),0==(c|0)){break a}}}}while(0);i=h;q=a[a[x>>2]+280>>2];c=x+152|0;a[c>>2]=q;1<(q|0)&&0==(a[x+148>>2]&64|0)&&(la(0,fD|0,(j=h,h+=4,a[j>>2]=a[x+52>>2],j)),a[c>>2]=1);a[x+156>>2]=1;h=i;i=(x+152|0)>>2;c=a[i];q=x+156|0;if(0!=((a[q>>2]|0)<=(c|0)&1)<<24>>24){for(;;){1<(c|0)&&(c=a[x+60>>2],0!=(c|0)&&(c=a[c+16>>2],0!=(c|0)&&(d=a[x+156>>2],J[c](x,a[a[a[x>>2]+276>>2]+(d<<2)>>2],d,a[x+152>>2]))));c=x+168|0;d=x+192|0;g=a[c+4>>2];a[d>>2]=a[c>>2];a[d+4>>2]=g;c=0==Qr(x)<<24>>24;a:do{if(!c){for(;;){if(gD(x,r),hD(x),0==Qr(x)<<24>>24){break a}}}}while(0);if(1<(a[i]|0)&&(c=a[x+60>>2],0!=(c|0)&&(c=a[c+20>>2],0!=(c|0)))){J[c](x)}c=x+156|0;a[c>>2]=a[c>>2]+1|0;c=a[i];if(0==((a[q>>2]|0)<=(c|0)&1)<<24>>24){break}}}i=a[x+60>>2];if(0!=(i|0)&&(i=a[i+12>>2],0!=(i|0))){J[i](x)}i=a[x+76>>2];if(0!=(i|0)&&(i=a[i+4>>2],0!=(i|0))){J[i](x)}iD(x);Ei(x)}function eD(a,b){$b(a,qe|0);var i=b|0,g=V(i,zk|0);0!=(g|0)&&0!=m[g]<<24>>24&&$b(a,g);i=V(i,Eg|0);0!=(i|0)&&0!=m[i]<<24>>24&&Pa(a,i);jD(a,b);i=ra(b);if(0!=(i|0)){for(;;){var g=i|0,q=V(g,kh|0);0!=(q|0)&&0!=m[q]<<24>>24&&Pa(a,q);q=V(g,Ak|0);0!=(q|0)&&0!=m[q]<<24>>24&&$b(a,q);g=V(g,Eg|0);0!=(g|0)&&0!=m[g]<<24>>24&&Pa(a,g);g=Ib(b,i);q=0==(g|0);a:do{if(!q){for(var c=g;;){var d=c|0,f=V(d,kh|0);do{if(0!=(f|0)&&0!=m[f]<<24>>24){if(0==(Jc(f,58)|0)){Pa(a,f)}else{var n=Hb(f),h=he(n,zf|0),e=0==(h|0);b:do{if(!e){for(var j=h;;){if(0!=m[j]<<24>>24&&Pa(a,j),j=he(0,zf|0),0==(j|0)){break b}}}}while(0);G(n)}}}while(0);d=V(d,Eg|0);0!=(d|0)&&0!=m[d]<<24>>24&&Pa(a,d);c=yb(b,c);if(0==(c|0)){break a}}}}while(0);i=ba(b,i);if(0==(i|0)){break}}}}function gD(b,r){var i,g,q,c=a[b+16>>2];q=c>>2;var d=a[b+148>>2];Bk(V(r|0,lh|0));kD(b);var f=a[b+60>>2];if(0!=(f|0)&&(f=a[f+24>>2],0!=(f|0))){J[f](b)}Pa(b,Ac|0);$b(b,qe|0);if(0!=(d&4259840|0)&&!(0==(a[q+37]|0)&&0==(a[q+50]&1|0))){if(0==(d&655360|0)){var n=0,f=0}else{var n=d&131072,h=n>>>16^2,f=h+2|0;a[q+51]=h;h=fa(f<<4);g=h>>2;i=(b+284|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];g=(h+16|0)>>2;i=(b+300|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];0==(n|0)&&Mn(h);n=h}0==(d&8192|0)&&Re(b,n,n,f);a[q+53]=n;a[q+52]=f}0!=(d&32768|0)&&(f=a[r+48>>2],0!=(f|0)&&(a[q+33]=a[f>>2]));f=0!=(d&4|0);f||(c=c+148|0,0==(a[c>>2]|0)&&0==(a[q+50]&1|0)||(Ln(b,b+252|0),ad(b,a[c>>2],a[q+42],a[q+46],a[q+38])));if(1==(a[b+152>>2]|0)){var e,n=V(r|0,zk|0);0==(n|0)?(c=1,n=hf|0):(h=0==m[n]<<24>>24,c=h&1,n=h?hf|0:n);h=a[b+148>>2];i=116==m[n]<<24>>24;if(0==(h&256|0)){var j=i?0==(ka(n,On|0)|0)?hf|0:n:n;e=2410}else{i?0!=(ka(n,On|0)|0)&&(j=n,e=2410):(j=n,e=2410)}2410==e&&0==(h&33554432|0)|0==(c|0)&&($b(b,j),Pa(b,j),mh(b,b+252|0,1));e=a[a[r+44>>2]+88>>2];0!=(e|0)&&lD(b,e)}e=a[r+48>>2];0!=(e|0)&&Fg(b,4,e);if(!f){if(0==(a[q+37]|0)&&0==(a[q+50]&1|0)){Ur(b,r,d);mD(b);return}Se(b)}Ur(b,r,d);mD(b)}function hD(b){var r,i=b>>2,g=h;h+=16;var q=g+8;r=b+192|0;var c=r|0,d=b+196|0,f=a[d>>2],n=a[i+47];a[g>>2]=a[i+46]+a[c>>2]|0;a[g+4>>2]=n+f|0;r>>=2;n=a[g>>2];f=a[g+4>>2];a[r]=n;a[r+1]=f;0==Qr(b)<<24>>24&&(b=a[i+45],0==(b|0)?(c=a[i+43],a[d>>2]=c,d=n):(d=a[i+42],a[c>>2]=d,c=f),a[q>>2]=a[i+44]+d|0,a[q+4>>2]=b+c|0,i=a[q+4>>2],a[r]=a[q>>2],a[r+1]=i);h=g}function nD(b){var r=a[yi>>2];0==(r|0)&&(r=Nc(oD,a[Pn>>2]),a[yi>>2]=r);if(0!=(J[a[r>>2]](r,b,4)|0)){return 0}var r=a[yi>>2],i=a[r>>2],b=Dc(b);J[i](r,b,1);return 1}function Ck(x,r,i){var g,q,c,d,k,n=h;h+=68;k=n>>2;var e=n+4,p=r+208|0;if(1<=(a[p>>2]|0)){var j=r+212|0,v=0!=(i&4|0),t=x+16|0,u=0==(i&8|0),w=e|0;d=e>>2;for(var A=e+32|0,r=A>>2,A=A|0,B=e+16|0,C=e+8|0,P=e+24|0,T=e|0,gb=e+48|0,$e=e+40|0,e=e+56|0,M=1;;){var y=a[a[j>>2]+(M<<2)>>2];do{c=x;q=y;var O=2>(a[c+152>>2]|0);a:do{if(O){var D=1}else{if(g=q|0,g=jc(g,$(g,Qn|0),Y|0),0!=Gi(c,g)<<24>>24){D=1}else{if(0!=m[g]<<24>>24){D=0}else{g=q;for(var Da=ra(g);;){if(0==(Da|0)){D=0;break a}if(0!=pD(c,q,Da)<<24>>24){D=1;break a}Da=ba(g,Da)}}}}}while(0);if(0!=D<<24>>24){v&&Ck(x,y,i);c=x;q=y;O=cc;O=wk(c)>>2;a[O+1]=1;a[O+2]=q;a[O+3]=1;Sr(c,a[q+48>>2],q|0);q=a[c+60>>2];if(0!=(q|0)&&(q=a[q+32>>2],0!=(q|0))){J[q](c)}q=a[t>>2];c=q>>2;q=(q+148|0)>>2;O=0==(a[q]|0)?0!=(a[c+50]&1|0):1;g=y|0;Bk(V(g,lh|0));v|O^1||(Ln(x,y+52|0),ad(x,a[q],a[c+42],a[c+46],a[c+38]));a[k]=0;var Da=n,ia=cc,Je=V(y|0,Rn|0),F=0==(Je|0);a:do{if(F){var E=0,sc=0}else{if(0==m[Je]<<24>>24){sc=E=0}else{nh(Je);for(var G=Cc|0,lf=0;;){for(;;){var H=a[G>>2];if(0==(H|0)){E=lf;sc=Cc|0;break a}if(0==(ka(H,Hi|0)|0)){ia=1489;break}if(0==(ka(H,Vr|0)|0)){var hc=G;break}else{G=G+4|0}}if(1489==ia){ia=0,G=G+4|0,lf|=1}else{for(;;){var H=hc+4|0,ca=a[H>>2];a[hc>>2]=ca;if(0==(ca|0)){break}else{hc=H}}lf|=2}}}}}while(0);a[Da>>2]=E;Da=sc;0==(Da|0)?Da=0:(Ke(x,Da),Da=a[k]&1);ia=m[y+148|0]&255;0==(ia&1|0)?0!=(ia&2|0)?(ia=Aa(g,a[Wr>>2],Dk|0),Je=1,F=Aa(g,a[Xr>>2],Ek|0)):0!=(ia&8|0)?(ia=Aa(g,a[qD>>2],Fk|0),Je=1,F=Aa(g,a[rD>>2],Gk|0)):0!=(ia&4|0)?(ia=Aa(g,a[sD>>2],Hk|0),Je=1,F=Aa(g,a[tD>>2],Ik|0)):(ia=V(g,kh|0),Je=0==(ia|0)?0:0==m[ia]<<24>>24?0:ia,ia=V(g,uD|0),ia=0==(ia|0)?Je:0==m[ia]<<24>>24?Je:ia,F=V(g,Ak|0),F=0==(F|0)?Je:0==m[F]<<24>>24?Je:F,0!=(Da|0)?Je=Da:(Da=V(g,zk|0),0==(Da|0)?Je=0:(lf=0==m[Da]<<24>>24,Je=lf&1^1,F=lf?F:Da))):(ia=Aa(g,a[Wr>>2],Jk|0),Je=1,F=Aa(g,a[Xr>>2],Kk|0));Da=0==(ia|0)?Ac|0:ia;ia=0==(F|0)?qe|0:F;F=a[Yr>>2];0!=(F|0)&&(lf=mb(g,a[F+8>>2]),0!=(lf|0)&&0!=m[lf]<<24>>24&&Zr(x,Xb(g,F,1,0)));F=a[k];0==(F&2|0)?(Pa(x,Da),$b(x,ia),0!=(Zf(g,a[Sn>>2],1)|0)?mh(x,y+52|0,Je&255):0!=(Je|0)&&((ia|0)!=(Da|0)&&Pa(x,ia),mh(x,y+52|0,Je&255))):0!=(Zf(g,a[Sn>>2],1)|Je|0)&&(g=(y+52|0)>>2,a[d]=a[g],a[d+1]=a[g+1],a[d+2]=a[g+2],a[d+3]=a[g+3],g=(y+68|0)>>2,a[r]=a[g],a[r+1]=a[g+1],a[r+2]=a[g+2],a[r+3]=a[g+3],g=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),f[0]=g,a[B>>2]=b[0],a[B+4>>2]=b[1],g=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),f[0]=g,a[P>>2]=b[0],a[P+4>>2]=b[1],g=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),f[0]=g,a[gb>>2]=b[0],a[gb+4>>2]=b[1],g=(b[0]=a[$e>>2],b[1]=a[$e+4>>2],f[0]),f[0]=g,a[e>>2]=b[0],a[e+4>>2]=b[1],Ii(x,ia,Da,w,4,F,F&1));g=a[y+48>>2];0!=(g|0)&&Fg(x,5,g);O&&(v&&(Ln(x,y+52|0),ad(x,a[q],a[c+42],a[c+46],a[c+38])),Se(x));a:do{if(!u&&(c=y,q=ra(c),0!=(q|0))){for(;;){oh(x,q);O=Ib(c,q);g=0==(O|0);b:do{if(!g){for(Da=O;;){if(Ji(x,Da),Da=yb(c,Da),0==(Da|0)){break b}}}}while(0);q=ba(c,q);if(0==(q|0)){break a}}}}while(0);c=x;q=a[c+60>>2];if(0!=(q|0)&&(q=a[q+36>>2],0!=(q|0))){J[q](c)}Ei(c);v||Ck(x,y,i)}}while(0);M=M+1|0;if((M|0)>(a[p>>2]|0)){break}}}h=n}function oh(b,r){var i=a[b>>2],g=r+24|0,q;if(q=0!=(a[g>>2]|0)){if(q=0!=pD(b,a[r+20>>2],r)<<24>>24){var c,d;q=h;d=(b+252|0)>>2;c=h;h+=32;a[c>>2]=a[d];a[c+4>>2]=a[d+1];a[c+8>>2]=a[d+2];a[c+12>>2]=a[d+3];a[c+16>>2]=a[d+4];a[c+20>>2]=a[d+5];a[c+24>>2]=a[d+6];a[c+28>>2]=a[d+7];c=ph(r+64|0,c)&255;h=q;q=0!=c<<24>>24}}if(q&&(q=r+132|0,i=a[i+28>>2],(m[q]<<24>>24|0)!=(i|0))){m[q]=i&255;yk(b,a[r+12>>2]);i=r|0;q=jc(i,a[$r>>2],Y|0);0!=m[q]<<24>>24&&yk(b,q);i=jc(i,a[Ki>>2],Y|0);q=0==m[i]<<24>>24;a:do{if(!q){nh(i);for(q=Cc|0;;){i=q+4|0;q=a[q>>2];if(0==(q|0)){break a}if(105!=m[q]<<24>>24){q=i}else{if(0==(ka(q,qh|0)|0)){break}else{q=i}}}return}}while(0);vD(b,r);J[a[a[a[g>>2]+4>>2]+20>>2]](b,r);g=a[r+124>>2];0!=(g|0)&&Fg(b,10,g);g=a[b+60>>2];if(0!=(g|0)&&(g=a[g+60>>2],0!=(g|0))){J[g](b)}Ei(b)}}function Ji(b,r){var i,g,q=h;g=(b+252|0)>>2;i=h;h+=32;a[i>>2]=a[g];a[i+4>>2]=a[g+1];a[i+8>>2]=a[g+2];a[i+12>>2]=a[g+3];a[i+16>>2]=a[g+4];a[i+20>>2]=a[g+5];a[i+24>>2]=a[g+6];a[i+28>>2]=a[g+7];var c;g=a[r+24>>2];if(0==(g|0)){c=1823}else{if(0==(ph(g+8|0,i)|0)){c=1823}else{var d=1}}1823==c&&(c=a[r+108>>2],0!=(c|0)&&0!=as(c,i)<<24>>24?d=1:(c=a[r+120>>2],d=0!=(c|0)&&0!=as(c,i)<<24>>24?1:0));h=q;if(0!=d<<24>>24){i=(r+12|0)>>2;q=2>(a[b+152>>2]|0);a:do{if(q){var f=1}else{if(c=jc(r|0,a[Tn>>2],Y|0),0!=Gi(b,c)<<24>>24){f=1}else{if(0!=m[c]<<24>>24){f=0}else{c=r+16|0;d=r+12|0;for(g=0;;){if(2<=(g|0)){f=0;break a}var n=jc(a[(1>(g|0)?c:d)>>2]|0,a[Un>>2],Y|0);if(0==m[n]<<24>>24){f=1;break a}if(0==Gi(b,n)<<24>>24){g=g+1|0}else{f=1;break a}}}}}}while(0);if(0!=f<<24>>24){q=r+16|0;f=Gb(Ba(a[a[q>>2]+12>>2])+Ba(a[a[i]+12>>2])+3|0);Rf(f,a[a[q>>2]+12>>2]);q=f+Ba(f)|0;0==(a[a[a[i]+20>>2]>>2]&16|0)?(m[q]=m[Af|0],m[q+1]=m[(Af|0)+1],m[q+2]=m[(Af|0)+2]):(m[q]=m[Bf|0],m[q+1]=m[(Bf|0)+1],m[q+2]=m[(Bf|0)+2]);uf(f,a[a[i]+12>>2]);yk(b,f);G(f);f=r|0;i=jc(f,a[bs>>2],Y|0);0!=m[i]<<24>>24&&yk(b,i);f=jc(f,a[Vn>>2],Y|0);i=0==m[f]<<24>>24;a:do{if(i){q=0}else{nh(f);for(i=Cc|0;;){f=i+4|0;i=a[i>>2];if(0==(i|0)){q=Cc|0;break a}if(105!=m[i]<<24>>24){i=f}else{if(0==(ka(i,qh|0)|0)){break}else{i=f}}}return}}while(0);wD(b,r,q);xD(b,r,q);yD(b)}}}function nh(b){var r,i=h;h+=148;var g,q=i+128,c=i+132;m[cs]||(fc(Ec,128,zD|0),m[cs]=1);fc(c,128,i|0);a[q>>2]=b;r=(c+4|0)>>2;var d=c+8|0,f=c|0,n=0,e=0;a:for(;;){for(var p=n;;){for(var n=q,s=c,v=cc,t=a[n>>2];;){v=m[t];if(0==v<<24>>24){var u=0;break}if(0==(ah(v<<24>>24)|0)&&(v=m[t],44!=v<<24>>24)){u=v;break}t=t+1|0}var w=u<<24>>24;b:do{if(40==(w|0)||41==(w|0)){var A=w,B=t+1|0}else{if(0==(w|0)){A=0,B=t}else{if(0!=AD(w)<<24>>24){A=1,B=t}else{for(var v=(s+4|0)>>2,C=s+8|0,P=t,T=u;;){var gb=a[v];gb>>>0>2]>>>0||(na(s,1),gb=a[v]);a[v]=gb+1|0;m[gb]=T;P=P+1|0;T=m[P];if(0!=AD(T<<24>>24)<<24>>24){A=1;B=P;break b}}}}}}while(0);a[n>>2]=B;n=A;if(0==(n|0)){g=1553;break a}else{if(41==(n|0)){if(0==p<<24>>24){g=1541;break a}else{p=0}}else{if(40==(n|0)){if(0==p<<24>>24){p=1}else{g=1539;break a}}else{break}}}}if(0==p<<24>>24){if(63==(e|0)){g=1544;break}n=a[Ec+4>>2];n>>>0>2]>>>0||(na(Ec,1),n=a[Ec+4>>2]);a[Ec+4>>2]=n+1|0;m[n]=0;a[Cc+(e<<2)>>2]=a[Ec+4>>2];e=e+1|0}n=a[r];n>>>0>2]>>>0||(na(c,1),n=a[r]);m[n]=0;n=a[f>>2];a[r]=n;db(Ec,n);n=a[Ec+4>>2];n>>>0>2]>>>0||(na(Ec,1),n=a[Ec+4>>2]);a[Ec+4>>2]=n+1|0;m[n]=0;n=p}if(1544==g){return la(0,BD|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc+252>>2]=0,uc(c),h=i,Cc|0}if(1539==g){return la(1,CD|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc>>2]=0,uc(c),h=i,Cc|0}if(1553==g){if(0!=p<<24>>24){return la(1,DD|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc>>2]=0,uc(c),h=i,Cc|0}a[Cc+(e<<2)>>2]=0;uc(c);b=a[Ec+4>>2];b>>>0>2]>>>0||(na(Ec,1),b=a[Ec+4>>2]);m[b]=0;a[Ec+4>>2]=a[Ec>>2];h=i;return Cc|0}if(1541==g){return la(1,ED|0,(j=h,h+=4,a[j>>2]=b,j)),a[Cc>>2]=0,uc(c),h=i,Cc|0}}function Gg(b){var r=a[Wn>>2];0!=(b|0)?(a[Wn>>2]=r+1|0,0==(r|0)&&(b=Hb(mi()),a[ds>>2]=b,mi())):0<(r|0)&&(b=r-1|0,a[Wn>>2]=b,0==(b|0)&&(mi(),G(a[ds>>2])))}function Br(x,r){var i,g,q,c,d=h,k;c=(r+44|0)>>2;if(0==(a[c]|0)){return la(1,FD|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),h=d,-1}q=ra(r);if(0!=(q|0)){for(;;){var n=r,e=q,p=e+32|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s=e+104|0,s=p-(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);g=e+64|0;f[0]=s;a[g>>2]=b[0];a[g+4>>2]=b[1];s=e+40|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);g=e+96|0;g=.5*(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var v=e+72|0;f[0]=s-g;a[v>>2]=b[0];a[v+4>>2]=b[1];v=e+112|0;p+=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);v=e+80|0;f[0]=p;a[v>>2]=b[0];a[v+4>>2]=b[1];p=e+88|0;f[0]=s+g;a[p>>2]=b[0];a[p+4>>2]=b[1];e=Ib(n,e);if(0!=(e|0)){for(;!(p=a[e+24>>2],0!=(p|0)&&GD(p),e=yb(n,e),0==(e|0));){}}q=ba(r,q);if(0==(q|0)){break}}}HD(x,r);q=x+272|0;n=a[q>>2];0!=(n|0)&&(G(n),a[q>>2]=0);q=(x+276|0)>>2;n=a[q];0!=(n|0)&&(G(n),a[q]=0);n=V(r|0,ID|0);0==(n|0)?(a[q]=0,a[x+280>>2]=1):a[x+280>>2]=JD(x,r,n);a[x+104>>2]=Oc|0;a[x+108>>2]=a[KD>>2];Gg(1);n=x+56|0;e=x|0;p=x+156|0;q=(x+164|0)>>2;s=x+28|0;g=a[x+120>>2];v=a[x+124>>2]=g;for(g=v>>2;;){if(0==(v|0)){k=1616;break}k=a[n>>2];0==(k|0)?(a[g+5]=0,a[g+6]=0):(a[g+5]=a[k+8>>2],a[g+6]=a[a[n>>2]+12>>2]);var t=v+12|0;a[t>>2]=e;a[g+7]=a[p>>2];if(0==(a[c]|0)){k=1597;break}i=(v+52|0)>>2;k=Bn(v,a[i]);a[g+14]=k;if(21==(k|0)){k=v+148|0,a[k>>2]|=1}else{if(24==(k|0)){k=v+148|0,a[k>>2]|=520}else{if(999==(k|0)){k=1599;break}else{k=v+148|0;var u=a,w=k>>2,A;a:{A=V(r|0,LD|0);if(0!=(A|0)){var B=m[A];if(110==B<<24>>24){if(0==(ka(A+1|0,MD|0)|0)){A=1;break a}}else{if(101==B<<24>>24&&0==(ka(A+1|0,ND|0)|0)){A=16;break a}}}A=0}u[w]=A|a[k>>2]}}}u=a[q];w=0==(u|0);a:do{if(!w){do{if(0!=(a[u+148>>2]&32|0)&&0==(ka(a[i],a[u+52>>2])|0)){k=a[Xn>>2];if(0==(k|0)){k=1610;break a}a[k+8>>2]=v;a[g+9]=a[k+36>>2];k=1612;break a}}while(0);Cr(u);a[q]=0;a[s>>2]=0}a[Xn>>2]=0;k=1610}while(0);if(1610==k){k=0;u=v;w=a[u+60>>2];if(0==(OD(u)|0)){if(0!=(w|0)&&(w=a[w>>2],0!=(w|0))){J[w](u)}u=0}else{u=1}0==(u|0)&&(a[q]=v,k=1612)}1612==k&&(k=0,a[g+2]=0,a[g+26]=PD,u=v,w=A=cc,A=a[u>>2],0!=m[A+264|0]<<24>>24?(w=(u+236|0)>>2,A=(A+188|0)>>2,a[w]=a[A],a[w+1]=a[A+1],a[w+2]=a[A+2],a[w+3]=a[A+3]):(300==(a[u+56>>2]|0)?(w=a[u+68>>2]+4|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=u+244|0,f[0]=w,a[A>>2]=b[0],a[A+4>>2]=b[1],u=u+236|0,f[0]=w):(w=u+244|0,f[0]=4,a[w>>2]=b[0],a[w+4>>2]=b[1],u=u+236|0,f[0]=4),a[u>>2]=b[0],a[u+4>>2]=b[1]),u=v,w=A=A=w=w=cc,A=a[u>>2],0!=m[A+265|0]<<24>>24?(w=(u+408|0)>>2,A=(A+172|0)>>2,a[w]=a[A],a[w+1]=a[A+1],a[w+2]=a[A+2],a[w+3]=a[A+3]):(w=a[u+56>>2],300==(w|0)?(A=(u+408|0)>>2,w=(a[u+84>>2]+4|0)>>2,a[A]=a[w],a[A+1]=a[w+1],a[A+2]=a[w+2],a[A+3]=a[w+3]):2==(w|0)||3==(w|0)||4==(w|0)||22==(w|0)||21==(w|0)||30==(w|0)?(w=u+416|0,f[0]=36,a[w>>2]=b[0],a[w+4>>2]=b[1],u=u+408|0,f[0]=36,a[u>>2]=b[0],a[u+4>>2]=b[1]):(w=(u+408|0)>>2,a[w]=0,a[w+1]=0,a[w+2]=0,a[w+3]=0)),w=a[c]+24|0,u=v,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=B=B=A=cc,B=a[a[u>>2]+164>>2],0!=w?(A=u+432|0,f[0]=w,a[A>>2]=b[0],a[A+4>>2]=b[1],u=u+424|0,f[0]=w,a[u>>2]=b[0],a[u+4>>2]=b[1]):0!=(B|0)&&0!=m[B+124|0]<<24>>24?(A=(u+424|0)>>2,B=(B+108|0)>>2,a[A]=a[B],a[A+1]=a[B+1],a[A+2]=a[B+2],a[A+3]=a[B+3]):(w=u+424|0,300==(a[u+56>>2]|0)?(B=w>>2,A=(a[u+84>>2]+36|0)>>2,a[B]=a[A],a[B+1]=a[A+1],a[B+2]=a[A+2],a[B+3]=a[A+3]):(u=u+432|0,f[0]=96,a[u>>2]=b[0],a[u+4>>2]=b[1],u=w|0,f[0]=96,a[u>>2]=b[0],a[u+4>>2]=b[1])),QD(v,r),RD(v,r),0==(a[g+37]&128|0)&&(a[a[t>>2]+20>>2]=a[Yn>>2],Rr(v,r)),a[Xn>>2]=v);g=cc;g=(x+124|0)>>2;v=a[g];t=a[v+4>>2];0!=(t|0)&&(u=t+52|0,0==(a[u>>2]|0)&&(a[u>>2]=a[v+52>>2]));v=a[g]=t;g=v>>2}if(1597==k){return la(1,SD|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Gg(0),h=d,-1}if(1599==k){return la(1,TD|0,(j=h,h+=4,a[j>>2]=a[i],j)),Gg(0),h=d,-1}if(1616==k){return Gg(0),h=d,0}}function HD(x,r){var i,g,q,c,d,k,n=x>>2,e=h;h+=16;d=e>>2;q=e+8;g=q>>2;a[n+32]=r;c=x+265|0;m[c]=0;i=r|0;k=V(i,Zn|0);if(0!=(k|0)){var p=Cd(k,Lk|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=q,j));if(0<(p|0)){var s=72*(b[0]=a[d],b[1]=a[d+1],f[0]);k=(x+180|0)>>2;f[0]=s;a[k]=b[0];a[k+1]=b[1];var v=x+172|0;f[0]=s;a[v>>2]=b[0];a[v+4>>2]=b[1];1<(p|0)&&(p=72*(b[0]=a[g],b[1]=a[g+1],f[0]),f[0]=p,a[k]=b[0],a[k+1]=b[1]);m[c]=1}}c=x+264|0;m[c]=0;k=V(i,UD|0);0!=(k|0)&&(q=Cd(k,Lk|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=q,j)),0<(q|0)&&(k=72*(b[0]=a[d],b[1]=a[d+1],f[0]),d=(x+196|0)>>2,f[0]=k,a[d]=b[0],a[d+1]=b[1],p=x+188|0,f[0]=k,a[p>>2]=b[0],a[p+4>>2]=b[1],1<(q|0)&&(g=72*(b[0]=a[g],b[1]=a[g+1],f[0]),f[0]=g,a[d]=b[0],a[d+1]=b[1]),m[c]=1));d=x+266|0;m[d]=0;g=(r+44|0)>>2;c=(x+204|0)>>2;q=(a[g]+48|0)>>2;a[c]=a[q];a[c+1]=a[q+1];a[c+2]=a[q+2];a[c+3]=a[q+3];q=a[g];c=q+48|0;.001<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])?(c=q+56|0,.001<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])?(m[d]=1,g=a[g]):g=q):g=q;a[n+65]=0==m[g+81|0]<<24>>24?0:90;g=x+168|0;a[g>>2]=VD|0;i=V(i,WD|0);0!=(i|0)&&0!=m[i]<<24>>24&&(a[g>>2]=i);g=(x+228|0)>>2;i=(r+52|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];a[g+4]=a[i+4];a[g+5]=a[i+5];a[g+6]=a[i+6];a[g+7]=a[i+7];i=r+32|0;g=$(a[i>>2]|0,es|0);a[Sn>>2]=g;i=$(a[i>>2]|0,$n|0);a[Yr>>2]=i;i=r+40|0;a[n+71]=Aa(a[a[i>>2]>>2]|0,a[ao>>2],Li|0);i=Xb(a[a[i>>2]>>2]|0,a[bo>>2],14,1);g=x+288|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];a[n+74]=co|0;a[n+40]=a[r+12>>2];h=e}function QD(x,r){var i,g,q,c,d,k=h;h+=40;d=k>>2;var n=k+8;c=n>>2;var e=k+16;q=e>>2;var p=k+24;i=p>>2;var s=k+32;g=s>>2;var v=a[x>>2],t=v+244|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),u=v+252|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),w=v+228|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=v+236|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=x+236|0,C=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=w-C,P=x+204|0;f[0]=B;a[P>>2]=b[0];a[P+4>>2]=b[1];var P=x+244|0,T=(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),P=A-T,gb=x+212|0;f[0]=P;a[gb>>2]=b[0];a[gb+4>>2]=b[1];C=t+C;gb=x+220|0;f[0]=C;a[gb>>2]=b[0];a[gb+4>>2]=b[1];T=u+T;gb=x+228|0;f[0]=T;a[gb>>2]=b[0];a[gb+4>>2]=b[1];B=C-B;P=T-P;f[0]=1;a[q]=b[0];a[q+1]=b[1];C=a[r+44>>2];T=C+64|0;T=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]);.001>2],b[1]=a[gb+4>>2],f[0]),.001>24&T>B&gb>P)?C=1:(C=T/B,T=gb/P,C=C>2]=a[v+260>>2];v=B*C;f[0]=v;a[d]=b[0];a[d+1]=b[1];w=P*C;f[0]=w;a[c]=b[0];a[c+1]=b[1];A=V(r|0,XD|0);0==(A|0)?(g=u,i=(x+360|0)>>2,f[0]=v,a[i]=b[0],a[i+1]=b[1],i=(x+368|0)>>2,f[0]=w,a[i]=b[0],a[i+1]=b[1],i=(x+348|0)>>2,f[0]=C,a[i]=b[0],a[i+1]=b[1],i=(x+332|0)>>2,f[0]=t):(v=Gb(Ba(A)+1|0),t=Gb(Ba(A)+1|0),4==(Cd(A,YD|0,(j=h,h+=16,a[j>>2]=k,a[j+4>>2]=n,a[j+8>>2]=e,a[j+12>>2]=v,j))|0)?(n=Mi(a[r+32>>2],v),0!=(n|0)&&(n=n+24|0,e=n+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),f[0]=e,a[i]=b[0],a[i+1]=b[1],n=n+16|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),f[0]=n,a[g]=b[0],a[g+1]=b[1])):4!=(Cd(A,ZD|0,(j=h,h+=20,a[j>>2]=k,a[j+4>>2]=n,a[j+8>>2]=e,a[j+12>>2]=v,a[j+16>>2]=t,j))|0)?Cd(A,$D|0,(j=h,h+=20,a[j>>2]=k,a[j+4>>2]=n,a[j+8>>2]=e,a[j+12>>2]=p,a[j+16>>2]=s,j)):(n=Mi(a[r+32>>2],v),0!=(n|0)&&(n=n+24|0,e=n+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),f[0]=e,a[i]=b[0],a[i+1]=b[1],n=n+16|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),f[0]=n,a[g]=b[0],a[g+1]=b[1])),G(v),G(t),d=(b[0]=a[d],b[1]=a[d+1],f[0]),c=(b[0]=a[c],b[1]=a[c+1],f[0]),n=(b[0]=a[q],b[1]=a[q+1],f[0]),q=(b[0]=a[i],b[1]=a[i+1],f[0]),g=(b[0]=a[g],b[1]=a[g+1],f[0]),i=(x+360|0)>>2,f[0]=d,a[i]=b[0],a[i+1]=b[1],i=(x+368|0)>>2,f[0]=c,a[i]=b[0],a[i+1]=b[1],i=(x+348|0)>>2,f[0]=n,a[i]=b[0],a[i+1]=b[1],i=(x+332|0)>>2,f[0]=q);a[i]=b[0];a[i+1]=b[1];i=x+340|0;i>>=2;f[0]=g;a[i]=b[0];a[i+1]=b[1];h=k}function AD(a){return 40==(a|0)||41==(a|0)||44==(a|0)||0==(a|0)?1:0}function Mk(x,r,i){var g=x|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function eo(b,r,i){i=i<<24>>24;66==(i|0)?(r=0,i=1):82==(i|0)?(a[r+168>>2]=a[r+160>>2]-1|0,r=-1,i=0):84==(i|0)?(a[r+172>>2]=a[r+164>>2]-1|0,r=0,i=-1):(r=76==(i|0)?1:0,i=0);a[b>>2]=r;a[b+4>>2]=i}function fo(b,r,i){a[b>>2]=i;a[b+4>>2]=r}function RD(x,r){var i,g,q,c,d,k,n,e=x>>2,p=h;h+=128;var s,v=p+16,t=p+24,u=p+32,w=p+40,A=p+48,B=p+64,C=p+80,P=p+96,T=p+112,gb=p+120,y=a[e],M=x+360|0,X=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]),O=x+368|0,D=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);n=(x+356|0)>>2;if(0==(a[n]|0)){var Da=X,ia=D}else{Mk(p,X,D);var F=p|0,E=p+8|0,Da=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),ia=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0])}var G=x+408|0,sc=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]),J=x+416|0,H=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0]);if(0==m[y+266|0]<<24>>24){s=1737}else{if(0==(a[e+37]&32|0)){s=1737}else{var I=y+204|0,hc=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0])-2*sc,ca=y+212|0,K=(b[0]=a[ca>>2],b[1]=a[ca+4>>2],f[0])-2*H;if(1e-4>hc){var L=a[e+40]=1}else{var zb=Da/hc&-1,ja=x+160|0;a[ja>>2]=zb;if(1e-4>2]=aa}else{L=zb}}if(1e-4>K){var da=a[e+41]=1}else{var ea=ia/K&-1,xa=x+164|0;a[xa>>2]=ea;if(1e-4>2]=N}else{da=ea}}a[e+50]=da*L|0;var Od=hc,ha=K,ga=Da>2],b[1]=a[ya+4>>2],f[0])-2*sc,wa=0>Uf?0:Uf,Ab=tb+28|0,Fa=(b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0])-2*H;0>Fa?(Rb=wa,Xe=0):(Rb=wa,Xe=Fa)}a[e+50]=1;a[e+41]=1;a[e+40]=1;var Ga=Rb>2;var Bg=(Od+2*sc)*(b[0]=a[k],b[1]=a[k+1],f[0])/72;a[e+110]=(0>Bg?Bg-.5:Bg+.5)&-1;d=(x+432|0)>>2;var ta=(ha+2*H)*(b[0]=a[d],b[1]=a[d+1],f[0])/72;a[e+111]=(0>ta?ta-.5:ta+.5)&-1;var Ka=x+176|0;c=(y+168|0)>>2;q=(x+168|0)>>2;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;a[q+4]=0;a[q+5]=0;eo(v,x,m[a[c]]);var za=v|0;g=za>>2;var ma=v+4|0;i=ma>>2;var pa=a[i],Q=Ka|0;a[Q>>2]=a[g];var Ha=Ka+4|0;a[Ha>>2]=pa;eo(t,x,m[a[c]+1|0]);var Ra=x+184|0,W=a[t>>2],V=a[t+4>>2];a[Ra>>2]=W;a[Ra+4>>2]=V;var La=W+a[Ka>>2]|0;if(1==((-1<(La|0)?La:-La|0)|0)){var S=V+a[e+45]|0;if(1!=((-1<(S|0)?S:-S|0)|0)){s=1750}}else{s=1750}if(1750==s){eo(u,x,66);var Ya=a[u+4>>2];a[Ka>>2]=a[u>>2];a[Ka+4>>2]=Ya;eo(w,x,76);var Y=a[w+4>>2],za=Ra|0;g=za>>2;a[g]=a[w>>2];ma=Ra+4|0;i=ma>>2;a[i]=Y;la(0,aE|0,(j=h,h+=4,a[j>>2]=a[c],j))}if(0==m[a[r+44>>2]+82|0]<<24>>24){var Za=0,U=0}else{var ab=Od>ga?.5*(Od-ga):0;ha>Zd?(Za=ab,U=.5*(ha-Zd)):(Za=ab,U=0)}if(0==(a[n]|0)){var $a=ga,jb=Zd,Ca=sc,Ia=H,eb=Za,ub=U}else{Mk(A,ga,Zd);var Sa=A|0,R=(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),ua=A+8|0,Oa=(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]);Mk(B,Od,ha);Mk(C,sc,H);var Wa=C|0,pb=(b[0]=a[Wa>>2],b[1]=a[Wa+4>>2],f[0]),ob=C+8|0,bb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0]);Mk(P,Za,U);var qb=P|0,$=P+8|0,$a=R,jb=Oa,Ca=pb,Ia=bb,eb=(b[0]=a[qb>>2],b[1]=a[qb+4>>2],f[0]),ub=(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0])}var kb=Ca+eb,fa=x+376|0;f[0]=kb;a[fa>>2]=b[0];a[fa+4>>2]=b[1];var vb=Ia+ub,xb=x+384|0;f[0]=vb;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var Z=kb+$a,nb=x+392|0;f[0]=Z;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=vb+jb,lb=x+400|0;f[0]=rb;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=x+348|0,cb=(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0]),fb=x+316|0;f[0]=$a/cb;a[fb>>2]=b[0];a[fb+4>>2]=b[1];var Ua=x+324|0;f[0]=jb/cb;a[Ua>>2]=b[0];a[Ua+4>>2]=b[1];var sb=(b[0]=a[k],b[1]=a[k+1],f[0]),Na=kb*sb/72,Fb=(0>Na?Na-.5:Na+.5)&-1,Db=x+448|0;a[Db>>2]=Fb;var Ob=(b[0]=a[d],b[1]=a[d+1],f[0]),Eb=vb*Ob/72,ka=(0>Eb?Eb-.5:Eb+.5)&-1;a[e+113]=ka;var Bb=Z*sb/72,Ja=x+456|0,sa=Ja|0;a[sa>>2]=(0>Bb?Bb-.5:Bb+.5)&-1;var ra=rb*Ob/72,xf=x+460|0;a[xf>>2]=(0>ra?ra-.5:ra+.5)&-1;if(0!=(a[n]|0)){fo(T,Fb,ka);var qa=a[T+4>>2];a[Db>>2]=a[T>>2];a[Db+4>>2]=qa;fo(gb,a[sa>>2],a[xf>>2]);za=gb|0;g=za>>2;ma=gb+4|0;i=ma>>2;var ba=a[i],Q=Ja|0;a[Q>>2]=a[g];Ha=Ja+4|0;a[Ha>>2]=ba}h=p}function JD(b,r,i){var g=V(r|0,bE|0),r=(b+268|0)>>2;a[r]=0==(g|0)?cE|0:g;i=Hb(i);a[b+272>>2]=i;g=he(i,a[r]);if(0==(g|0)){return 0}for(var b=(b+276|0)>>2,q=i=0;;){var c=i+1|0;if((c|0)>(q|0)){var q=q+128|0,d=a[b],d=0==(d|0)?Cb(q<<2):wb(d,q<<2);a[b]=d}else{d=a[b]}a[d+(c<<2)>>2]=g;g=he(0,a[r]);if(0==(g|0)){break}else{i=c}}if(0==(c|0)){return 0}r=wb(a[b],(c<<2)+8|0);a[b]=r;a[r>>2]=0;a[a[b]+(i+2<<2)>>2]=0;return c}function GD(x){var r,i,g,q,c,d,k,n=h;h+=128;var e=n+32,p=n+64,j=n+96;k=(x+4|0)>>2;0<(a[k]|0)||sa(Fi|0,3408,dE|0,eE|0);var m=x|0,t=a[m>>2];d=t>>2;var u=a[d],w=a[d+1],A=a[d+2],B=a[d+3],C=t+16|0,P=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),T=t+24|0,gb=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),y=t+32|0,M=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),X=t+40|0,O=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]);fs(n,t);var D=n|0,Da=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),ia=n+8|0,F=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0]),E=n+16|0,G=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]),sc=n+24|0,J=(b[0]=a[sc>>2],b[1]=a[sc+4>>2],f[0]);if(0<(a[k]|0)){for(var H=e|0,I=e+8|0,hc=e+16|0,ca=e+24|0,K=j|0,L=j+8|0,zb=j+16|0,ja=j+24|0,aa=p|0,da=p+8|0,ea=p+16|0,xa=p+24|0,N=J,Od=G,ha=F,ga=Da,Zd=0,Rb=u,Xe=w,tb=A,ya=B,Q=P,wa=gb,Ab=M,Fa=O;;){if(0<(Zd|0)){var Ga=a[m>>2];r=Ga>>2;var W=Ga+48*Zd|0,ta=a[W>>2],Ka=a[r+(12*Zd|0)+1],za=a[r+(12*Zd|0)+2],ma=a[r+(12*Zd|0)+3],pa=Ga+48*Zd+16|0,S=(b[0]=a[pa>>2],b[1]=a[pa+4>>2],f[0]),Ha=Ga+48*Zd+24|0,Ra=(b[0]=a[Ha>>2],b[1]=a[Ha+4>>2],f[0]),V=Ga+48*Zd+32|0,U=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),La=Ga+48*Zd+40|0,Y=(b[0]=a[La>>2],b[1]=a[La+4>>2],f[0]);fs(e,W);var Ya=(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),R=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]),Za=(b[0]=a[hc>>2],b[1]=a[hc+4>>2],f[0]),la=(b[0]=a[ca>>2],b[1]=a[ca+4>>2],f[0]),ab=gaZa?Od:Za,Ca=N>la?N:la,Ia=ta,eb=Ka,ub=za,Sa=ma,$=S,ua=Ra,Oa=U,Wa=Y}else{ab=ga,$a=ha,jb=Od,Ca=N,Ia=Rb,eb=Xe,ub=tb,Sa=ya,$=Q,ua=wa,Oa=Ab,Wa=Fa}if(0==(ub|0)){var pb=ab,ob=$a,bb=jb,qb=Ca}else{var fa=Ia|0,kb=Ia+8|0;hh(p,$,ua,(b[0]=a[fa>>2],b[1]=a[fa+4>>2],f[0]),(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0]),1);var Z=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),vb=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),xb=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),ka=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),pb=abxb?jb:xb,qb=Ca>ka?Ca:ka}if(0==(Sa|0)){var nb=pb,rb=ob,lb=bb,Ta=qb}else{var cb=eb-1|0,fb=(cb<<4)+Ia|0,Ua=(cb<<4)+Ia+8|0;hh(j,Oa,Wa,(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]),(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),1);var sb=(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),Na=(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0]),Fb=(b[0]=a[zb>>2],b[1]=a[zb+4>>2],f[0]),Db=(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),nb=pbFb?bb:Fb,Ta=qb>Db?qb:Db}var Ob=Zd+1|0;if((Ob|0)<(a[k]|0)){N=Ta,Od=lb,ha=rb,ga=nb,Zd=Ob,Rb=Ia,Xe=eb,tb=ub,ya=Sa,Q=$,wa=ua,Ab=Oa,Fa=Wa}else{Eb=Ta;ne=lb;Bb=rb;Ja=nb;break}}ra=x+8|0;c=ra>>2;f[0]=Ja;a[c]=b[0];a[c+1]=b[1];qa=x+16|0;q=qa>>2;f[0]=Bb;a[q]=b[0];a[q+1]=b[1];ba=x+24|0;g=ba>>2;f[0]=ne;a[g]=b[0];a[g+1]=b[1];na=x+32|0}else{var Eb=J,ne=G,Bb=F,Ja=Da,ra=x+8|0;c=ra>>2;f[0]=Ja;a[c]=b[0];a[c+1]=b[1];var qa=x+16|0;q=qa>>2;f[0]=Bb;a[q]=b[0];a[q+1]=b[1];var ba=x+24|0;g=ba>>2;f[0]=ne;a[g]=b[0];a[g+1]=b[1];var na=x+32|0}i=na>>2;f[0]=Eb;a[i]=b[0];a[i+1]=b[1];h=n}function fs(x,r){var i=h,g=r,r=h;h+=48;for(var g=g>>2,q=r>>2,c=g+12;g>2];0<(g|0)||sa(Fi|0,3382,gs|0,fE|0);1!=(g%3|0)&&sa(Fi|0,3383,gs|0,gE|0);var q=a[r>>2],c=q|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=q+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),k=1<(g|0);a:do{if(k){for(var n=c,e=d,p=c,j=d,m=1;;){var t=(m<<4)+q|0,u=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),t=(m<<4)+q+8|0,w=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),t=m+1|0,A=(t<<4)+q|0,B=(t<<4)+q+8|0,t=m+2|0,u=.5*(u+(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])),w=.5*(w+(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])),n=nu?p:u,j=j>w?j:w,u=(t<<4)+q|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),t=(t<<4)+q+8|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),n=nu?p:u,j=j>t?j:t,m=m+3|0;if((m|0)>=(g|0)){var C=n,P=e,T=p,gb=j;break a}}}else{C=c,P=d,T=c,gb=d}}while(0);g=x|0;f[0]=C;a[g>>2]=b[0];a[g+4>>2]=b[1];C=x+8|0;f[0]=P;a[C>>2]=b[0];a[C+4>>2]=b[1];P=x+16|0;f[0]=T;a[P>>2]=b[0];a[P+4>>2]=b[1];T=x+24|0;f[0]=gb;a[T>>2]=b[0];a[T+4>>2]=b[1];h=i}function wD(x,r,i){var g,q,c,d=r>>2,k=h;h+=156;var n;c=k>>2;var e=k+4,p=k+8,j=k+12,v=k+28,t=a[x+148>>2];a[c]=0;a[e>>2]=0;a[p>>2]=0;var u=wk(x);q=u>>2;a[q+1]=3;a[q+2]=r;a[q+3]=9;0!=(i|0)&&0!=(a[d+6]|0)&&Ke(x,i);var w=a[hs>>2];if(0!=(w|0)){var A=r|0,B=mb(A,a[w+8>>2]);0!=(B|0)&&0!=m[B]<<24>>24&&Zr(x,Xb(A,w,1,0))}if(0!=(t&16777216|0)){var C=a[d+4];if(2<(D[a[C+20>>2]+206>>1]&65535)){var P=a[C+148>>2]+16|0,T=72*(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),gb=u+116|0;f[0]=(0>T?T-.5:T+.5)&-1|0;a[gb>>2]=b[0];a[gb+4>>2]=b[1];var y=a[a[d+3]+148>>2]+16|0,M=72*(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),X=u+124|0;f[0]=(0>M?M-.5:M+.5)&-1|0;a[X>>2]=b[0];a[X+4>>2]=b[1]}else{g=(u+116|0)>>2,a[g]=0,a[g+1]=0,a[g+2]=0,a[g+3]=0}}if(0!=(t&32768|0)){var O=a[d+27];if(0==(O|0)){var Dn=a[q+33]}else{var Da=a[O>>2],Dn=a[q+33]=Da}var ia=u+136|0;a[ia>>2]=Dn;var F=u+144|0;a[F>>2]=Dn;var E=u+140|0;a[E>>2]=Dn;var Tf=a[d+30];0!=(Tf|0)&&(a[ia>>2]=a[Tf>>2]);var sc=a[d+29];0!=(sc|0)&&(a[E>>2]=a[sc>>2]);var AC=a[d+28];0!=(AC|0)&&(a[F>>2]=a[AC>>2])}var H=0==(t&65536|0);a:do{if(H){var I=0}else{fc(j,128,v|0);var hc=r|0;a[q+38]=ec(Kn(x,hc,j),hc);uc(j);var ca=V(hc,Ni|0);if(0==(ca|0)){n=1867}else{if(0==m[ca]<<24>>24){n=1867}else{var K=ca;n=1869}}if(1867==n){var L=V(hc,Oi|0);if(0==(L|0)){var zb=0}else{0==m[L]<<24>>24?zb=0:(K=L,n=1869)}}1869==n&&(zb=ec(K,hc));var ja=V(hc,hE|0);if(0==(ja|0)){n=1872}else{if(0==m[ja]<<24>>24){n=1872}else{var aa=ja;n=1874}}if(1872==n){var da=V(hc,iE|0);0!=(da|0)&&0!=m[da]<<24>>24?(aa=da,n=1874):0!=(zb|0)&&(a[q+37]=Hb(zb))}1874==n&&(a[q+37]=ec(aa,hc));var ea=V(hc,jE|0);if(0==(ea|0)){n=1879}else{if(0==m[ea]<<24>>24){n=1879}else{var xa=ea;n=1881}}if(1879==n){var N=V(hc,kE|0);0!=(N|0)&&0!=m[N]<<24>>24?(xa=N,n=1881):0!=(zb|0)&&(a[q+39]=Hb(zb))}1881==n&&(a[q+39]=ec(xa,hc));var Od=V(hc,lE|0);if(0==(Od|0)){n=1886}else{if(0==m[Od]<<24>>24){n=1886}else{var ha=Od;n=1888}}if(1886==n){var ga=V(hc,mE|0);0!=(ga|0)&&0!=m[ga]<<24>>24?(ha=ga,n=1888):0!=(zb|0)&&(a[q+40]=Hb(zb))}if(1888==n){a[q+40]=ec(ha,hc);var Zd=u+200|0;a[Zd>>2]|=128}var Rb=V(hc,nE|0);if(0==(Rb|0)){n=1893}else{if(0==m[Rb]<<24>>24){n=1893}else{var Q=Rb}}do{if(1893==n){var tb=V(hc,oE|0);if(0!=(tb|0)&&0!=m[tb]<<24>>24){Q=tb}else{if(0==(zb|0)){I=0;break a}a[q+41]=Hb(zb);I=zb;break a}}}while(0);a[q+41]=ec(Q,hc);var ya=u+200|0;a[ya>>2]|=256;I=zb}}while(0);var W=0==(t&8388608|0);a:do{if(W){var wa=0}else{var Ab=r|0,Fa=V(Ab,is|0),Ga=0==(Fa|0)?0:0==m[Fa]<<24>>24?0:ec(Fa,Ab),S=V(Ab,pE|0);if(0==(S|0)){n=1905}else{if(0==m[S]<<24>>24){n=1905}else{var ta=u+200|0;a[ta>>2]|=64;a[q+46]=ec(S,Ab)}}1905==n&&0!=(Ga|0)&&(a[q+46]=Hb(Ga));var Ka=V(Ab,qE|0);0==(Ka|0)?n=1910:0==m[Ka]<<24>>24?n=1910:a[q+47]=ec(Ka,Ab);1910==n&&0!=(Ga|0)&&(a[q+47]=Hb(Ga));var za=V(Ab,rE|0);if(0==(za|0)){n=1915}else{if(0==m[za]<<24>>24){n=1915}else{a[q+48]=ec(za,Ab);var ma=u+200|0;a[ma>>2]|=16}}1915==n&&0!=(Ga|0)&&(a[q+48]=Hb(Ga));var pa=V(Ab,sE|0);do{if(0!=(pa|0)&&0!=m[pa]<<24>>24){var U=u+200|0;a[U>>2]|=32;a[q+49]=ec(pa,Ab);wa=Ga;break a}}while(0);0==(Ga|0)?wa=0:(a[q+49]=Hb(Ga),wa=Ga)}}while(0);var Ha=0==(t&4194304|0);a:do{if(!Ha){var Ra=r|0,Y=V(Ra,Pi|0);if(0==(Y|0)){n=1925}else{if(0==m[Y]<<24>>24){n=1925}else{var R=Y;n=1927}}if(1925==n){var La=V(Ra,tE|0);if(0!=(La|0)&&0!=m[La]<<24>>24){R=La,n=1927}else{var la=a[q+33];0!=(la|0)&&(a[q+42]=Hb(la))}}if(1927==n){a[q+42]=ec(R,Ra);var Ya=u+200|0;a[Ya>>2]|=1}var $=V(Ra,uE|0);if(0==($|0)){n=1933}else{if(0==m[$]<<24>>24){n=1933}else{a[q+43]=ec($,Ra);var Za=u+200|0;a[Za>>2]|=8}}if(1933==n){var fa=a[q+33];0!=(fa|0)&&(a[q+43]=Hb(fa))}var ab=V(Ra,vE|0);if(0==(ab|0)){n=1938}else{if(0==m[ab]<<24>>24){n=1938}else{a[q+44]=ec(ab,Ra);var $a=u+200|0;a[$a>>2]|=2}}if(1938==n){var jb=a[q+35];0!=(jb|0)&&(a[q+44]=Hb(jb))}var Ca=V(Ra,wE|0);do{if(0!=(Ca|0)&&0!=m[Ca]<<24>>24){a[q+45]=ec(Ca,Ra);var Ia=u+200|0;a[Ia>>2]|=4;break a}}while(0);var eb=a[q+36];0!=(eb|0)&&(a[q+45]=Hb(eb))}}while(0);G(I);G(wa);do{if(0!=(t&4259840|0)){var ub=a[d+6];if(0!=(ub|0)&&!(0==(a[q+37]|0)&&0==(a[q+42]|0))&&0!=(t&524288|0)){var Sa=a[x+16>>2]+96|0,Z=.5*(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),ua=2>2];if(0<(Oa|0)){for(var Wa=ub|0,pb=0;;){xE(k,e,p,a[Wa>>2]+48*pb|0,ua);var ob=pb+1|0;if((ob|0)==(Oa|0)){break}else{pb=ob}}var bb=a[p>>2],qb=a[e>>2]}else{qb=bb=0}a[q+54]=bb;a[q+55]=qb;if(0==(t&8192|0)){var ka=0<(bb|0);a:do{if(ka){for(var kb=0,sa=0;;){var vb=a[qb+(kb<<2)>>2]+sa|0,xb=kb+1|0;if((xb|0)<(bb|0)){kb=xb,sa=vb}else{var hd=vb;break a}}}else{hd=0}}while(0);var nb=a[c];Re(x,nb,nb,hd);var rb=nb}else{rb=a[c]}a[q+56]=rb;a[q+51]=2;a[q+53]=rb;a[q+52]=a[qb>>2]}}}while(0);var lb=a[x+60>>2];if(0!=(lb|0)){var Ta=a[lb+64>>2];if(0!=(Ta|0)){J[Ta](x)}}var cb=a[q+37];0==(cb|0)&&0==(a[q+50]&1|0)||ad(x,cb,a[q+42],a[q+46],a[q+38]);h=k}function xD(x,r,i){var g,q,c,d,k,n,e,p,j,v,t,u,w,A,B,C,P=h;h+=64;var T,gb=P+16,y=P+32,M=P+48,X=a[x+16>>2]+96|0,O=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),D=r|0;Bk(V(D,lh|0));C=(r+24|0)>>2;if(0!=(a[C]|0)){for(var Da=Xb(D,a[uk>>2],1,0),ia=jc(D,a[go>>2],Y|0),F=ia,E=0,J=0;;){var sc=m[F];if(58==sc<<24>>24){var H=E+1|0,I=J}else{if(44==sc<<24>>24){H=E,I=J+1|0}else{if(0==sc<<24>>24){break}else{H=E,I=J}}}F=F+1|0;E=H;J=I}var K=0==(E|0);if(0==(J|0)|K){var hc=ia}else{if(0!=(yE(x,r,i,ia,E+1|0,Da,O)|0)){hc=Ac|0}else{h=P;return}}var ca=r+127|0,L=m[ca]&255;if(0==(L&1|0)){if(0!=(L&2|0)){var N=Aa(D,a[zE>>2],ho(hc,Dk|0)),zb=Aa(D,a[AE>>2],Ek|0);T=1982}else{if(0!=(L&8|0)){N=Aa(D,a[BE>>2],ho(hc,Fk|0)),zb=Aa(D,a[CE>>2],Gk|0),T=1982}else{if(0==(L&4|0)){var ja=hc}else{N=Aa(D,a[DE>>2],ho(hc,Hk|0)),zb=Aa(D,a[EE>>2],Ik|0),T=1982}}}}else{N=Aa(D,a[FE>>2],ho(hc,Jk|0)),zb=Aa(D,a[GE>>2],Kk|0),T=1982}1982==T&&((N|0)!=(hc|0)&&Pa(x,N),(zb|0)!=(hc|0)&&$b(x,zb),ja=N);if(K){0==(m[ca]&3)<<24>>24&&(0==m[ja]<<24>>24?(Pa(x,Ac|0),$b(x,Ac|0)):(Pa(x,ja),$b(x,ja)));var aa=a[C];if(0<(a[aa+4>>2]|0)){for(var da=x+148|0,ea=0==(i|0),xa=0,Q=aa;;){var Od=a[Q>>2];B=Od>>2;var ha=a[B+(12*xa|0)],ga=a[B+(12*xa|0)+1],Zd=a[B+(12*xa|0)+2],Rb=a[B+(12*xa|0)+3],W=Od+48*xa+16|0,tb=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),ya=Od+48*xa+24|0,S=(b[0]=a[ya>>2],b[1]=a[ya+4>>2],f[0]),wa=Od+48*xa+32|0,Ab=(b[0]=a[wa>>2],b[1]=a[wa+4>>2],f[0]),Fa=Od+48*xa+40|0,Ga=(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0]);if(0==(a[da>>2]&16384|0)){$f(x,ha,ga,0,0,0);if(0!=(Zd|0)){var U=ha|0,ta=ha+8|0;Ci(x,2,tb,S,(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]),(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0]),Da,O,Zd)}if(0!=(Rb|0)){var Ka=ga-1|0,za=(Ka<<4)+ha|0,ma=(Ka<<4)+ha+8|0;Ci(x,3,Ab,Ga,(b[0]=a[za>>2],b[1]=a[za+4>>2],f[0]),(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),Da,O,Rb)}1<(a[a[C]+4>>2]|0)&&(0==(Rb|Zd|0)|ea||Ke(x,i))}else{$f(x,ha,ga,Zd,Rb,0)}var pa=xa+1|0,R=a[C];if((pa|0)<(a[R+4>>2]|0)){xa=pa,Q=R}else{break}}}}else{var Ha=a[a[C]+4>>2],Ra=48*Ha|0,la=Gb(Ra);A=la>>2;var $=Gb(Ra);w=$>>2;var La=.5*(E+2|0),fa=0<(Ha|0);a:do{if(fa){u=M>>2;t=P>>2;v=y>>2;j=gb>>2;for(var Ya=0,Z=0,Za=0;;){var ka=a[a[C]>>2];p=ka>>2;var ab=a[p+(12*Za|0)],$a=a[p+(12*Za|0)+1],jb=a[p+(12*Za|0)+2],Ca=a[p+(12*Za|0)+3],Ia=ka+48*Za+16|0,eb=(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]),ub=ka+48*Za+24|0,Sa=(b[0]=a[ub>>2],b[1]=a[ub+4>>2],f[0]),sa=ka+48*Za+32|0,ua=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0]),Oa=ka+48*Za+40|0,Wa=(b[0]=a[Oa>>2],b[1]=a[Oa+4>>2],f[0]);a[A+(12*Za|0)+1]=$a;a[w+(12*Za|0)+1]=$a;var pb=$a<<4,ob=Gb(pb);a[A+(12*Za|0)]=ob;var bb=Gb(pb);a[w+(12*Za|0)]=bb;var qb=ab|0,ra=(b[0]=a[qb>>2],b[1]=a[qb+4>>2],f[0]),kb=ab+8|0,ie=(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0]),vb=$a-1|0,xb=0<(vb|0);b:do{if(xb){for(var hd=Ya,nb=Z,rb=ra,lb=ie,Ta=0;;){var cb=Ta+1|0,fb=(cb<<4)+ab|0,Ua=(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]),sb=(cb<<4)+ab+8|0,Na=(b[0]=a[sb>>2],b[1]=a[sb+4>>2],f[0]),Fb=(Ta<<4)+ob|0;0==(Ta|0)?(js(P,rb,lb,Ua,Na),e=Fb>>2,a[e]=a[t],a[e+1]=a[t+1],a[e+2]=a[t+2],a[e+3]=a[t+3]):(js(gb,hd,nb,Ua,Na),n=Fb>>2,a[n]=a[j],a[n+1]=a[j+1],a[n+2]=a[j+2],a[n+3]=a[j+3]);var Db=Ta+2|0,Ob=(Db<<4)+ab|0,Eb=(b[0]=a[Ob>>2],b[1]=a[Ob+4>>2],f[0]),ne=(Db<<4)+ab+8|0,Bb=(b[0]=a[ne>>2],b[1]=a[ne+4>>2],f[0]),Ja=Ta+3|0,qa=(Ja<<4)+ab|0,ba=(b[0]=a[qa>>2],b[1]=a[qa+4>>2],f[0]),na=(Ja<<4)+ab+8|0,oa=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),Ba=(cb<<4)+ob|0,Wf=(Db<<4)+ob|0,ic=y,Ea=rb,va=lb,Cb=ba,Ma=oa,wb=Ua-Eb,pc=Na-Bb,Wc=$c(wb*wb+pc*pc);if(1e-4>Wc){var Vb=Ea-Cb,Xd=va-Ma,Qa=$c(Vb*Vb+Xd*Xd+1e-4),Va=Vb,hb=Xd}else{Qa=Wc,Va=wb,hb=pc}var ib=2/Qa,Ib=ib*-Va,lc=ic|0;f[0]=hb*ib;a[lc>>2]=b[0];a[lc+4>>2]=b[1];var yb=ic+8|0;f[0]=Ib;a[yb>>2]=b[0];a[yb+4>>2]=b[1];k=Wf>>2;a[k]=a[v];a[k+1]=a[v+1];a[k+2]=a[v+2];a[k+3]=a[v+3];d=Ba>>2;a[d]=a[v];a[d+1]=a[v+1];a[d+2]=a[v+2];a[d+3]=a[v+3];var Jd=Fb|0,Nb=rb-La*(b[0]=a[Jd>>2],b[1]=a[Jd+4>>2],f[0]),Hc=(Ta<<4)+bb|0;f[0]=Nb;a[Hc>>2]=b[0];a[Hc+4>>2]=b[1];var mb=(Ta<<4)+ob+8|0,oe=lb-La*(b[0]=a[mb>>2],b[1]=a[mb+4>>2],f[0]),db=(Ta<<4)+bb+8|0;f[0]=oe;a[db>>2]=b[0];a[db+4>>2]=b[1];var Qb=Ba|0,tc=Ua-La*(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),Sc=(cb<<4)+bb|0;f[0]=tc;a[Sc>>2]=b[0];a[Sc+4>>2]=b[1];var Lb=(cb<<4)+ob+8|0,Pb=Na-La*(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),Jb=(cb<<4)+bb+8|0;f[0]=Pb;a[Jb>>2]=b[0];a[Jb+4>>2]=b[1];var rd=Wf|0,oc=Eb-La*(b[0]=a[rd>>2],b[1]=a[rd+4>>2],f[0]),EC=(Db<<4)+bb|0;f[0]=oc;a[EC>>2]=b[0];a[EC+4>>2]=b[1];var qk=(Db<<4)+ob+8|0,ve=Bb-La*(b[0]=a[qk>>2],b[1]=a[qk+4>>2],f[0]),Rd=(Db<<4)+bb+8|0;f[0]=ve;a[Rd>>2]=b[0];a[Rd+4>>2]=b[1];if((Ja|0)<(vb|0)){hd=Eb,nb=Bb,rb=ba,lb=oa,Ta=Ja}else{var Bc=Eb,Sd=Bb,fd=ba,Kb=oa,yc=Ja;break b}}}else{Bc=Ya,Sd=Z,fd=ra,Kb=ie,yc=0}}while(0);var Yb=(yc<<4)+ob|0;js(M,Bc,Sd,fd,Kb);c=Yb>>2;a[c]=a[u];a[c+1]=a[u+1];a[c+2]=a[u+2];a[c+3]=a[u+3];var Mb=Yb|0,Tc=fd-La*(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]),Wb=(yc<<4)+bb|0;f[0]=Tc;a[Wb>>2]=b[0];a[Wb+4>>2]=b[1];var Mc=(yc<<4)+ob+8|0,id=Kb-La*(b[0]=a[Mc>>2],b[1]=a[Mc+4>>2],f[0]),Tb=(yc<<4)+bb+8|0;f[0]=id;a[Tb>>2]=b[0];a[Tb+4>>2]=b[1];var Sb=Za+1|0;if((Sb|0)==(Ha|0)){var uc=Wa,mf=ua,nf=Sa,ec=eb,af=Ca,yf=jb,Td=vb,Fe=ab;break a}else{Ya=Bc,Z=Sd,Za=Sb}}}}while(0);var gf=Hb(ja),fe=he(gf,zf|0),fh=0==(fe|0);a:do{if(fh){var df=ja,jd=ja}else{for(var md=ja,je=ja,Qe=ja,Xf=fe,Uc=0;;){var bf=0==m[Xf]<<24>>24?Ac|0:Xf;if((bf|0)==(md|0)){var rk=md}else{0==(m[ca]&3)<<24>>24&&(Pa(x,bf),$b(x,bf)),rk=bf}var Zb=0==(Uc|0),mc=Zb?bf:Qe,ef=1==(Uc|0)?bf:Zb?bf:je;b:do{if(fa){for(var kd=0;;){var qc=a[w+(12*kd|0)],En=a[A+(12*kd|0)],sk=$+48*kd+4|0,kc=a[sk>>2],bc=0<(kc|0);c:do{if(bc){for(var nd=0;;){var zd=(nd<<4)+En|0;q=((nd<<4)+qc|0)>>2;var cf=(b[0]=a[zd>>2],b[1]=a[zd+4>>2],f[0])+(b[0]=a[q],b[1]=a[q+1],f[0]);f[0]=cf;a[q]=b[0];a[q+1]=b[1];var rc=(nd<<4)+En+8|0;g=((nd<<4)+qc+8|0)>>2;var fc=(b[0]=a[rc>>2],b[1]=a[rc+4>>2],f[0])+(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=fc;a[g]=b[0];a[g+1]=b[1];var zi=nd+1|0,we=a[sk>>2];if((zi|0)<(we|0)){nd=zi}else{var pe=we;break c}}}else{pe=kc}}while(0);$f(x,qc,pe,0,0,0);var ac=kd+1|0;if((ac|0)==(Ha|0)){break b}else{kd=ac}}}}while(0);var Kd=he(0,zf|0);if(0==(Kd|0)){df=ef;jd=mc;break a}else{md=rk,je=ef,Qe=mc,Xf=Kd,Uc=Uc+1|0}}}}while(0);if(0==(yf|0)){var Dd=0}else{if(0==(df|0)){var dc=0}else{0==(m[ca]&3)<<24>>24&&(Pa(x,df),$b(x,df)),dc=df}var nc=Fe|0,Ye=Fe+8|0;Ci(x,2,ec,nf,(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0]),(b[0]=a[Ye>>2],b[1]=a[Ye+4>>2],f[0]),Da,O,yf);Dd=dc}if(0!=(af|0)){(Dd|0)!=(jd|0)&&0==(m[ca]&3)<<24>>24&&(Pa(x,jd),$b(x,jd));var Ad=(Td<<4)+Fe|0,Ud=(Td<<4)+Fe+8|0;Ci(x,3,mf,uc,(b[0]=a[Ad>>2],b[1]=a[Ad+4>>2],f[0]),(b[0]=a[Ud>>2],b[1]=a[Ud+4>>2],f[0]),Da,O,af)}G(gf);a:do{if(fa){for(var Vd=0;;){G(a[A+(12*Vd|0)]);G(a[w+(12*Vd|0)]);var gc=Vd+1|0;if((gc|0)==(Ha|0)){break a}else{Vd=gc}}}}while(0);G(la);G($)}}h=P}function yD(x){var r,i,g,q,c=a[x+16>>2];r=c>>2;var d=a[r+2];g=c+148|0;0==(a[g>>2]|0)?0!=(a[r+50]&1|0)&&(q=2041):q=2041;a:do{if(2041==q){Se(x);i=c+216|0;var k=a[i>>2];if(0!=(k|0)){var n=c+220|0;if(1<(k|0)){for(var e=a[n>>2],k=c+208|0,h=c+224|0,j=c+212|0,m=c+168|0,t=c+184|0,u=c+152|0,w=1,A=a[e>>2];;){if(a[k>>2]=a[e+(w<<2)>>2],a[j>>2]=(A<<4)+a[h>>2]|0,ad(x,a[g>>2],a[m>>2],a[t>>2],a[u>>2]),Se(x),e=a[n>>2],A=a[e+(w<<2)>>2]+A|0,w=w+1|0,(w|0)>=(a[i>>2]|0)){break a}}}}}}while(0);a[r+52]=0;a[r+53]=0;q=(d+24|0)>>2;g=a[q];0==(g|0)?r=c+200|0:(g=a[g>>2],n=a[g>>2],0==(a[g+8>>2]|0)?(i=n|0,n=n+8|0):(i=g+16|0,n=g+24|0),g=c+200|0,k=a[g>>2],HE(x,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k<<24>>31&255,a[r+40],k<<30>>31&255),i=a[q],n=a[i+4>>2]-1|0,k=a[i>>2],i=k>>2,0==(a[i+(12*n|0)+3]|0)?(k=a[i+(12*n|0)],n=a[i+(12*n|0)+1]-1|0,i=(n<<4)+k|0,n=(n<<4)+k+8|0):(i=k+48*n+32|0,n=k+48*n+40|0),k=a[g>>2],HE(x,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k<<23>>31&255,a[r+41],k<<29>>31&255),r=g);g=r>>2;j=a[d+108>>2];m=a[g]<<28>>31;h=c+156|0;t=a[h>>2];k=c+172|0;u=a[k>>2];n=c+188|0;w=a[n>>2];r=(c+152|0)>>2;A=a[r];i=d|0;e=0==re(jc(i,a[io>>2],Ze|0))<<24>>24?0:a[q];Qi(x,j,11,m,t,u,w,A,e);j=a[d+120>>2];m=a[g]<<28>>31;h=a[h>>2];k=a[k>>2];n=a[n>>2];t=a[r];0==re(jc(i,a[io>>2],Ze|0))<<24>>24?Qi(x,j,11,m,h,k,n,t,0):(q=a[q],Qi(x,j,11,m,h,k,n,t,q));q=a[(d+112|0)>>2];i=a[g];i=i<<29>>31;n=a[(c+164|0)>>2];k=a[(c+180|0)>>2];h=a[(c+196|0)>>2];j=a[r];Qi(x,q,7,i,n,k,h,j,0);d=a[(d+116|0)>>2];q=a[g];q=q<<30>>31;g=a[(c+160|0)>>2];i=a[(c+176|0)>>2];c=a[(c+192|0)>>2];r=a[r];Qi(x,d,6,q,g,i,c,r,0);c=a[x+60>>2];if(0!=(c|0)&&(c=a[c+68>>2],0!=(c|0))){J[c](x)}Ei(x)}function HE(b,r,i,g,q,c){var d=a[b+16>>2],g=0==g<<24>>24?a[d+148>>2]:q;0==c<<24>>24&&0==(g|0)&0==(a[d+200>>2]&1|0)||IE(b,r,i)}function Qi(b,r,i,g,q,c,d,f,n){var e=h,p=a[b+148>>2];if(0!=(r|0)){if(0==(f|0)){f=0}else{var s=fa(Ba(f)+11|0);if(11==(i|0)){var m=dh|0}else{7==(i|0)?m=ks|0:6==(i|0)?m=ls|0:sa(Fi|0,2201,JE|0,vd|0)}Ma(s,KE|0,(j=h,h+=8,a[j>>2]=f,a[j+4>>2]=m,j));f=s}var s=b+16|0,t=a[s>>2]+12|0,m=a[t>>2];a[t>>2]=i;g=0==(q|0)&0==(g|0);!g&&0==(p&4|0)&&(ms(b,r),ad(b,q,c,d,f));Fg(b,i,r);0!=(n|0)&&LE(b,r,n);g||(0!=(p&4|0)&&(ms(b,r),ad(b,q,c,d,f)),Se(b));0!=(f|0)&&G(f);a[a[s>>2]+12>>2]=m}h=e}function ME(x,r,i){var g=x|0;f[0]=r;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=i;a[x>>2]=b[0];a[x+4>>2]=b[1]}function ms(x,r){var i,g,q,c,d;i=a[x+16>>2];d=i>>2;var k=a[x+148>>2];if(0!=(k&4259840|0)){var n=0!=(k&131072|0);g=i+204|0;n?(a[g>>2]=0,a[d+52]=2):(a[g>>2]=2,a[d+52]=4);i=i+212|0;G(a[i>>2]);d=fa(a[d+52]<<4);a[i>>2]=d;c=(r+56|0)>>2;q=(r+24|0)>>2;i=(b[0]=a[c],b[1]=a[c+1],f[0])-.5*(b[0]=a[q],b[1]=a[q+1],f[0]);f[0]=i;a[d>>2]=b[0];a[d+4>>2]=b[1];g=(r+64|0)>>2;i=(r+32|0)>>2;var e=(b[0]=a[g],b[1]=a[g+1],f[0])-.5*(b[0]=a[i],b[1]=a[i+1],f[0]),h=d+8|0;f[0]=e;a[h>>2]=b[0];a[h+4>>2]=b[1];q=(b[0]=a[c],b[1]=a[c+1],f[0])+.5*(b[0]=a[q],b[1]=a[q+1],f[0]);c=d+16|0;f[0]=q;a[c>>2]=b[0];a[c+4>>2]=b[1];i=(b[0]=a[g],b[1]=a[g+1],f[0])+.5*(b[0]=a[i],b[1]=a[i+1],f[0]);g=d+24|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];0==(k&8192|0)&&Re(x,d,d,2);n||Mn(d)}}function LE(x,r,i){var g,q,c,d,k,n,e=h;h+=96;c=e+48;q=e+64;g=e+80;for(n=a[r>>2];;){var p=m[n];if(0==p<<24>>24){k=2112;break}if(0==(ah(p&255)|0)){break}else{n=n+1|0}}2112!=k&&0!=m[n]<<24>>24&&(k=r+24|0,p=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=r+32|0,d=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=(r+56|0)>>2,k=(r+64|0)>>2,ME(c,(b[0]=a[n],b[1]=a[n+1],f[0])+.5*p,(b[0]=a[k],b[1]=a[k+1],f[0])-.5*d),d=e>>2,c>>=2,a[d]=a[c],a[d+1]=a[c+1],a[d+2]=a[c+2],a[d+3]=a[c+3],c=e|0,d=e+8|0,ME(q,(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-p,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),c=(e+16|0)>>2,q>>=2,a[c]=a[q],a[c+1]=a[q+1],a[c+2]=a[q+2],a[c+3]=a[q+3],NE(g,i,(b[0]=a[n],b[1]=a[n+1],f[0]),(b[0]=a[k],b[1]=a[k+1],f[0])),i=(e+32|0)>>2,g>>=2,a[i]=a[g],a[i+1]=a[g+1],a[i+2]=a[g+2],a[i+3]=a[g+3],Ke(x,a[a[x>>2]+296>>2]),Pa(x,a[r+8>>2]),Gd(x,e|0,3));h=e}function IE(x,r,i){var g,q=a[x+16>>2];g=q>>2;var c=a[x+148>>2];if(0!=(c&4259840|0)){var d=0!=(c&131072|0),k=q+204|0;d?(a[k>>2]=0,a[g+52]=2):(a[k>>2]=2,a[g+52]=4);q=q+212|0;G(a[q>>2]);g=fa(a[g+52]<<4);a[q>>2]=g;f[0]=r-3;a[g>>2]=b[0];a[g+4>>2]=b[1];q=g+8|0;f[0]=i-3;a[q>>2]=b[0];a[q+4>>2]=b[1];q=g+16|0;f[0]=r+3;a[q>>2]=b[0];a[q+4>>2]=b[1];r=g+24|0;f[0]=i+3;a[r>>2]=b[0];a[r+4>>2]=b[1];0==(c&8192|0)&&Re(x,g,g,2);d||Mn(g)}}function yE(x,r,i,g,q,c,d){var k=h;h+=196;var n=k+48,e=k+96,p=k+144,s=k+192,g=OE(g,q,s);if(1<(g|0)){var q=a[r+16>>2],m=0!=(a[a[q+20>>2]>>2]&16|0)?ns|0:os|0,t=a[a[r+12>>2]+12>>2];la(3,PE|0,(j=h,h+=12,a[j>>2]=a[q+12>>2],a[j+4>>2]=m,a[j+8>>2]=t,j));if(2==(g|0)){return h=k,1}}else{if(1==(g|0)){return h=k,1}}g=(r+24|0)>>2;q=a[g];m=0<(a[q+4>>2]|0);a:do{if(m){for(var t=k,u=k+8|0,w=k+12|0,A=0==(i|0),B=k+4|0,C=k|0,P=k+32|0,T=k+40|0,gb=k+16|0,y=k+24|0,M=e|0,X=e+4|0,O=n,D=p,Da=n|0,ia=p|0,F=p+4|0,E=a[s>>2],r=(E+4|0)>>2,J=0,sc=q;;){for(var H,I=(a[sc>>2]+48*J|0)>>2,K=t>>2,hc=I+12;I>2],L=0==(ca|0);b:do{if(L){var N=H}else{for(var zb=H,ja=sc,aa=ca;;){Pa(x,aa);aa=ja+4|0;I=ib[aa>>2];if((ja|0)==(a[r]|0)){ps(k,I,e,p),aa=a[M>>2],$f(x,aa,a[X>>2],0,0,0)}else{if(1>I){I=D>>2;K=O>>2;for(hc=I+12;I>2],e,p);G(a[Da>>2]);aa=a[M>>2];$f(x,aa,a[X>>2],0,0,0)}else{zb=a[ja>>2],aa=a[ia>>2],$f(x,aa,a[F>>2],0,0,0)}}G(aa);ja=ja+8|0;aa=a[ja>>2];if(0==(aa|0)){N=zb;break b}}}}while(0);sc=a[u>>2];H=0==(sc|0);H||(Pa(x,a[a[r]>>2]),$b(x,a[a[r]>>2]),zb=a[C>>2],ca=(b[0]=a[gb>>2],b[1]=a[gb+4>>2],f[0]),L=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),ja=zb|0,zb=zb+8|0,Ci(x,2,ca,L,(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),(b[0]=a[zb>>2],b[1]=a[zb+4>>2],f[0]),c,d,sc));sc=a[w>>2];0==(sc|0)?ca=0:(Pa(x,N),$b(x,N),zb=a[B>>2]-1|0,aa=a[C>>2],ca=(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),L=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),ja=(zb<<4)+aa|0,zb=(zb<<4)+aa+8|0,Ci(x,3,ca,L,(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),(b[0]=a[zb>>2],b[1]=a[zb+4>>2],f[0]),c,d,sc),ca=sc);L=a[g];ja=a[L+4>>2];do{if(1<(ja|0)){if(H){if(0==(ca|0)|A){sc=L;zb=ja;break}}else{if(A){sc=L;zb=ja;break}}Ke(x,i);sc=zb=a[g];zb=a[zb+4>>2]}else{sc=L,zb=ja}}while(0);J=J+1|0;if((J|0)<(zb|0)){H=N}else{var da=E;break a}}}else{da=a[s>>2]}}while(0);G(da);h=k;return 0}function ho(b,r){for(var i=1,g=b;;){var q=m[g];if(0==q<<24>>24){break}else{i=58==q<<24>>24?i+1|0:i}g=g+1|0}g=(Ba(r)+1)*i|0;(a[qs>>2]|0)<(g|0)&&(g=g+10|0,a[qs>>2]=g,g=mc(a[Ri>>2],g),a[Ri>>2]=g);Rf(a[Ri>>2],r);i=i-1|0;g=a[Ri>>2];if(0==(i|0)){var c;return g}for(;;){if(q=g+Ba(g)|0,Pb=58,m[q]=Pb&255,Pb>>=8,m[q+1]=Pb&255,uf(g,r),i=i-1|0,g=a[Ri>>2],0==(i|0)){c=g;break}}return c}function js(x,r,i,g,q){r-=g;q=i-q;i=2/$c(r*r+q*q+1e-4);g=x|0;f[0]=q*i;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=i*-r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function OE(b,r,i){var g,q=h,c,d=fa(8);g=(r<<3)+8|0;fa(g);var f=Hb(b);a[d>>2]=f;var n=fa(g);g=n>>2;a[d+4>>2]=n;var e=n=0,p=0,f=he(f,zf|0);a:for(;0!=(f|0);){var s=r-1|0;do{if((p|0)==(s|0)){if(1>e){var v=Jc(f,44);0!=(v|0)&&(m[v]=0);a[(p<<3>>2)+g]=f;ib[((p<<3)+4>>2)+g]=1;v=n;t=r;u=e;w=p+1|0}else{var v=n,t=r,u=e,w=p}}else{w=f;t=e;v=h;h+=4;u=Jc(w,44);0==(u|0)?(la(1,QE|0,(j=h,h+=4,a[j>>2]=w,j)),t=-1):(w=u+1|0,m[u]=0,u=wg(w,v),t=(a[v>>2]|0)!=(w|0)&&u>=t&1>=u?u:-1);h=v;u=t;if(0>u){c=2180;break a}e>2)+g]=f,ib[((p<<3)+4>>2)+g]=(u-e)/(1-e),v=n,t=r,w=p+1|0):(m[Nk]?v=n:(la(0,RE|0,(j=h,h+=4,a[j>>2]=b,j)),m[Nk]=1,v=3),t=s,u=e,w=p)}}while(0);n=v;r=t;e=u;p=w;f=he(0,zf|0)}if(2180==c){return m[Nk]?b=1:(la(1,SE|0,(j=h,h+=4,a[j>>2]=b,j)),m[Nk]=1,b=2),TE(d),h=q,b}0==(p|0)?(TE(d),d=1):(a[i>>2]=d,d=n);h=q;return d}function ps(x,r,i,g){var q,c,d,k,n,e=h;h+=32;var p=e+16,j=a[x+4>>2],m=j-1|0;k=(m|0)/3&-1;if(3>(j-4|0)>>>0){a[i+4>>2]=4;p=i|0;a[p>>2]=fa(64);a[g+4>>2]=4;var t=fa(64);a[g>>2]=t;Ld(e,a[x>>2],3,r,a[p>>2],t)}else{j=fa(k<<3);x=(x|0)>>2;m=2<(m|0);a:do{if(m){var u=0;d=0;for(n=a[x];;){q=n;c=q|0;var w=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);c=q+16|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var A=w-c,w=q+8|0,B=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),w=q+24|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),B=B-w,B=$c(A*A+B*B),A=q+32|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),C=c-A;c=q+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);w-=c;w=B+$c(C*C+w*w);B=q+48|0;A-=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);q=q+56|0;q=c-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);q=w+$c(A*A+q*q);c=(u<<3)+j|0;f[0]=q;a[c>>2]=b[0];a[c+4>>2]=b[1];d+=q;u=u+1|0;if((u|0)<(k|0)){n=n+48|0}else{var P=d;break a}}}else{P=0}}while(0);r*=P;for(P=m=0;;){if((P|0)>=(k|0)){t=m;break}n=(P<<3)+j|0;m+=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);if(m>2;a[n]=u;i=(i|0)>>2;a[i]=fa(u<<4);u=3*(k-P)+1|0;k=(g+4|0)>>2;a[k]=u;g=(g|0)>>2;a[g]=fa(u<<4);if(0<(a[n]|0)){for(u=0;;){if(q=((u<<4)+a[i]|0)>>2,d=((u<<4)+a[x]|0)>>2,a[q]=a[d],a[q+1]=a[d+1],a[q+2]=a[d+2],a[q+3]=a[d+3],d=u+1|0,(d|0)<(a[n]|0)){u=d}else{break}}n=u-3|0}else{n=-4}u=0<(a[k]|0);a:do{if(u){w=0;for(d=n;;){c=((w<<4)+a[g]|0)>>2;q=((d<<4)+a[x]|0)>>2;a[c]=a[q];a[c+1]=a[q+1];a[c+2]=a[q+2];a[c+3]=a[q+3];q=w+1|0;if((q|0)>=(a[k]|0)){break a}w=q;d=d+1|0}}}while(0);k=(P<<3)+j|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);Ld(p,(m<<4)+a[x]|0,3,(r-(t-k))/k,(m<<4)+a[i]|0,a[g]);G(j)}h=e}function TE(b){G(a[b>>2]);G(a[b+4>>2]);G(b)}function ph(x,r){var i,g=h;i=x>>2;x=h;h+=32;a[x>>2]=a[i];a[x+4>>2]=a[i+1];a[x+8>>2]=a[i+2];a[x+12>>2]=a[i+3];a[x+16>>2]=a[i+4];a[x+20>>2]=a[i+5];a[x+24>>2]=a[i+6];a[x+28>>2]=a[i+7];i=r>>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];i=x+16|0;var c=r|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+16|0;c=x|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=x+24|0;c=r+8|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+24|0;c=x+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=g;return i&1}function xE(x,r,i,g,c){var d,l,k,n,e,p,j,m,t,u=h;h+=1664;var w=u+64,A=u+864,B=Cb(20);a[B+16>>2]=1;p=a[g+4>>2]-1|0;k=(p|0)/3&-1;d=2<(p|0);a:do{if(d){l=g|0;var C=u|0;t=u>>2;m=(u+16|0)>>2;j=(u+32|0)>>2;p=(u+48|0)>>2;for(var P=B,T=0;;){n=3*T|0;var gb=a[l>>2];e=((n<<4)+gb|0)>>2;a[t]=a[e];a[t+1]=a[e+1];a[t+2]=a[e+2];a[t+3]=a[e+3];e=((n+1<<4)+gb|0)>>2;a[m]=a[e];a[m+1]=a[e+1];a[m+2]=a[e+2];a[m+3]=a[e+3];e=((n+2<<4)+gb|0)>>2;a[j]=a[e];a[j+1]=a[e+1];a[j+2]=a[e+2];a[j+3]=a[e+3];n=((n+3<<4)+gb|0)>>2;a[p]=a[n];a[p+1]=a[n+1];a[p+2]=a[n+2];a[p+3]=a[n+3];T=T+1|0;if((T|0)<(k|0)){P=rs(C,P)}else{break a}}}}while(0);if(0!=(B|0)){p=A|0;j=w|0;k=w>>2;g=A>>2;m=B;for(C=P=0;;){t=a[m+16>>2];l=(C<<4)+w|0;d=(C<<4)+A|0;n=m|0;var T=m+8|0,y=P,P=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);n=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]);var M=t,gb=l,T=d;e=c;if(0==(y|0)){var y=M|0,X=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),M=M+8|0,O=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]),M=O,y=X,X=2*P-X,O=2*n-O}else{X=y|0,X=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),y=y+8|0,O=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),0==(M|0)?(M=2*n-O,y=2*P-X):(y=M|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),M=M+8|0,M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]))}var D=P,Da=n,M=Cf(M-Da,y-D),y=Cf(O-Da,X-D),M=M-y,y=y+.5*(0>2]=b[0];a[X+4>>2]=b[1];gb=gb+8|0;f[0]=y;a[gb>>2]=b[0];a[gb+4>>2]=b[1];n-=e;gb=T|0;f[0]=P-M;a[gb>>2]=b[0];a[gb+4>>2]=b[1];P=T+8|0;f[0]=n;a[P>>2]=b[0];a[P+4>>2]=b[1];P=C+1|0;C=0==(t|0);C|50==(P|0)?(UE(x,r,i,P,j,p),l>>=2,a[k]=a[l],a[k+1]=a[l+1],a[k+2]=a[l+2],a[k+3]=a[l+3],d>>=2,a[g]=a[d],a[g+1]=a[d+1],a[g+2]=a[d+2],a[g+3]=a[d+3],d=1):d=P;if(C){var ia=B;break}else{P=m,m=t,C=d}}for(;!(x=a[ia+16>>2],G(ia),0==(x|0));){ia=x}}h=u}function rs(x,r){var i,g,c=h;h+=144;if(0==(cD(x)|0)){return i=c|0,g=c+64|0,Ld(c+128,x,3,.5,i,g),i=rs(g,rs(i,r)),h=c,i}i=r+16|0;1==(a[i>>2]|0)&&(a[i>>2]=0,g=r>>2,i=x>>2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3]);i=x+48|0;g=x+56|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var d=Cb(20);a[d+16>>2]=0;f[0]=i;a[d>>2]=b[0];a[d+4>>2]=b[1];i=d+8|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];a[r+16>>2]=d;h=c;return d}function UE(b,r,i,g,c,d){var f,k=g<<1;f=a[i>>2];if(0<(f|0)){for(var n=a[r>>2],e=0,h=0;;){var j=a[n+(e<<2)>>2]+h|0,e=e+1|0;if((e|0)<(f|0)){h=j}else{break}}n=1<(f|0)?f:1}else{j=n=0}f=f+1|0;a[i>>2]=f;i=wb(a[r>>2],f<<2);a[r>>2]=i;a[i+(n<<2)>>2]=k;i=wb(a[b>>2],j+k<<4);a[b>>2]=i;if(0<(g|0)){k=k-1+j|0;for(r=0;;){f=((r+j<<4)+i|0)>>2;i=((r<<4)+c|0)>>2;a[f]=a[i];a[f+1]=a[i+1];a[f+2]=a[i+2];a[f+3]=a[i+3];f=((k-r<<4)+a[b>>2]|0)>>2;i=((r<<4)+d|0)>>2;a[f]=a[i];a[f+1]=a[i+1];a[f+2]=a[i+2];a[f+3]=a[i+3];r=r+1|0;if((r|0)==(g|0)){break}i=a[b>>2]}}}function Gi(b,r){var i,g=h;h+=144;var c=g+128,d=a[b>>2];fc(c,128,g|0);db(c,r);i=(c+4|0)>>2;var f=a[i];f>>>0>2]>>>0||(na(c,1),f=a[i]);m[f]=0;var k=a[c>>2];a[i]=k;f=d+268|0;i=he(k,a[f>>2]);f=(k=0!=(i|0))?he(0,a[f>>2]):0;k=(0!=(f|0)&1)+(k&1)|0;1==(k|0)?(f=a[b+156>>2],d=(ss(d,i,f)|0)==(f|0)&1):2==(k|0)?(i=ss(d,i,0),d=ss(d,f,a[b+152>>2]),f=-1<(d|i|0)&(i|0)>(d|0),k=a[b+156>>2],d=(k|0)<=((f?i:d)|0)&((f?d:i)|0)<=(k|0)&1):d=0;uc(c);h=g;return d}function ss(b,r,i){var g,c=a[b+124>>2],d=m[r];if(97==d<<24>>24&&0==(ka(r,VE|0)|0)){var f;return i}for(var k,i=r;;){var n=m[i];if(0==n<<24>>24){var e=1;k=2222;break}if(10>((n&255)-48|0)>>>0){i=i+1|0}else{e=0;k=2221;break}}if(0!=(2221==k||2222==k?e:cc)<<24>>24){return f=bh(r)}b=a[b+276>>2];if(0==(b|0)){return-1}c=a[c+152>>2];for(k=1;;){if((k|0)>(c|0)){f=-1;g=2297;break}e=a[b+(k<<2)>>2];if(d<<24>>24==m[e]<<24>>24&&0==(ka(r,e)|0)){f=k;g=2298;break}k=k+1|0}if(2298==g||2297==g){return f}}function pD(b,r,i){var g=2>(a[b+152>>2]|0);a:do{if(g){var c=1}else{var d=jc(i|0,a[Un>>2],Y|0);if(0!=Gi(b,d)<<24>>24){c=1}else{if(0!=m[d]<<24>>24){c=0}else{var d=r,f=i;if(0==(Ok(d,f)|0)){c=1}else{for(var k=Ok(d,f);;){if(0==(k|0)){c=0;break a}var n=jc(k|0,a[Tn>>2],Y|0);if(0==m[n]<<24>>24){c=1;break a}if(0!=Gi(b,n)<<24>>24){c=1;break a}k=Pk(d,k,f)}}}}}}while(0);return c}function vD(x,r){var i,g,c,d,l,k,n,e,h,j=a[x+148>>2],v=wk(x);e=v>>2;a[e+1]=2;a[e+2]=r;a[e+3]=8;if(0!=(j&16777216|0)){if(2<(D[a[r+20>>2]+206>>1]&65535)){var t=a[r+148>>2]+16|0,u=72*(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),w=v+108|0;f[0]=(0>u?u-.5:u+.5)&-1|0;a[w>>2]=b[0];a[w+4>>2]=b[1]}else{var A=v+108|0;f[0]=0;a[A>>2]=b[0];a[A+4>>2]=b[1]}}var B=r|0;Sr(x,a[r+120>>2],B);if(0==(j&4259840|0)){var C=V(B,lh|0)}else{if(0==(a[e+37]|0)&&0==(a[e+50]&1|0)){C=V(B,lh|0);Bk(C);WE(x);return}var P=ts(r),T=r+32|0,gb=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),y=r+40|0,M=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),X;var O=Aa(r|0,a[Ki>>2],Y|0);if(0==m[O]<<24>>24){var F=0}else{nh(O);var Da=a[Cc>>2];if(0==(Da|0)){F=0}else{for(var ia=Cc|0,E=0,G=Da;;){var J=0==(ka(G,Hi|0)|0)?1:E,sc=ia+4|0,H=a[sc>>2];if(0==(H|0)){F=J;break}else{ia=sc,E=J,G=H}}}}X=F;a:do{if(3==(P|0)||1==(P|0)){var I=a[r+28>>2];n=I>>2;var K=0==FQa(I)<<24>>24?1:0==(a[n+1]|X|0);if(0!=(I|0)&K){if(0==(j&524288|0)){h=2342}else{k=(I+8|0)>>2;var hc=a[k],ca=3>(hc|0)?1:hc,L=I+4|0,N=a[L>>2],zb=1<(N|0)?N:1,ja=a[n+10],aa=V(B,us|0),da=0==(aa|0)?0:bh(aa),ea=56<(da-4|0)>>>0?20:da;if(0==(a[L>>2]|X|0)){a[e+51]=0;var xa=fa(32),Q=xa;l=(r+104|0)>>2;var Od=gb-(b[0]=a[l],b[1]=a[l+1],f[0]),ha=xa;f[0]=Od;a[ha>>2]=b[0];a[ha+4>>2]=b[1];d=(r+96|0)>>2;var ga=M-.5*(b[0]=a[d],b[1]=a[d+1],f[0]),W=xa+8|0;f[0]=ga;a[W>>2]=b[0];a[W+4>>2]=b[1];var Rb=gb+(b[0]=a[l],b[1]=a[l+1],f[0]),S=xa+16|0;f[0]=Rb;a[S>>2]=b[0];a[S+4>>2]=b[1];var tb=M+.5*(b[0]=a[d],b[1]=a[d+1],f[0]),ya=xa+24|0;f[0]=tb;a[ya>>2]=b[0];a[ya+4>>2]=b[1];var U=Q,wa=2}else{var Ab=a[k];do{if(3>(Ab|0)){var Fa=I+28|0;if(0==(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0])){var Ga=I+20|0;if(0==(b[0]=a[Ga>>2],b[1]=a[Ga+4>>2],f[0])){var R=v+204|0;if(0!=(a[n]|0)){a[R>>2]=1;var ta=fa(32),Ka=ta,za=ta;f[0]=gb;a[za>>2]=b[0];a[za+4>>2]=b[1];var ma=ta+8|0;f[0]=M;a[ma>>2]=b[0];a[ma+4>>2]=b[1];var pa=(zb<<1)-1|0,la=(pa<<4)+ja|0,Ha=gb+(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0]),Ra=ta+16|0;f[0]=Ha;a[Ra>>2]=b[0];a[Ra+4>>2]=b[1];var $=(pa<<4)+ja+8|0,Z=M+(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),La=ta+24|0;f[0]=Z;a[La>>2]=b[0];a[La+4>>2]=b[1];U=Ka;wa=2;break a}a[R>>2]=2;var Vf=(zb<<1)-1|0,Ya=(Vf<<4)+ja|0,sa=(Vf<<4)+ja+8|0,Za;var ra=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),ab=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0]),$a=ea,jb=6.283185307179586/($a|0),Ca=fa($a<<4);if(0<($a|0)){for(var Ia=0,eb=0;;){var ub=se(Ia)*ra,Sa=(eb<<4)+Ca|0;f[0]=ub;a[Sa>>2]=b[0];a[Sa+4>>2]=b[1];var CQa=Ce(Ia)*ab,ua=(eb<<4)+Ca+8|0;f[0]=CQa;a[ua>>2]=b[0];a[ua+4>>2]=b[1];var Oa=eb+1|0;if((Oa|0)==($a|0)){break}else{Ia+=jb,eb=Oa}}}Za=Ca;if(0<(ea|0)){var Wa=0}else{U=Za;wa=ea;break a}for(;;){c=((Wa<<4)+Za|0)>>2;var pb=(b[0]=a[c],b[1]=a[c+1],f[0])+gb;f[0]=pb;a[c]=b[0];a[c+1]=b[1];g=((Wa<<4)+Za+8|0)>>2;var ob=(b[0]=a[g],b[1]=a[g+1],f[0])+M;f[0]=ob;a[g]=b[0];a[g+1]=b[1];var bb=Wa+1|0;if((bb|0)==(ea|0)){U=Za;wa=ea;break a}else{Wa=bb}}}}}}while(0);var qb=Ab*(zb-1)|0;a[e+51]=2;var ba=a[k];if((ba|0)<(ea|0)){var kb=fa(ca<<4);if(0<(ca|0)){for(var ie=0;;){var vb=ie+qb|0,xb=(vb<<4)+ja|0,hd=gb+(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0]),nb=(ie<<4)+kb|0;f[0]=hd;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=(vb<<4)+ja+8|0,lb=M+(b[0]=a[rb>>2],b[1]=a[rb+4>>2],f[0]),Ta=(ie<<4)+kb+8|0;f[0]=lb;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];var cb=ie+1|0;if((cb|0)==(ca|0)){U=kb;wa=ca;break a}else{ie=cb}}}else{U=kb,wa=ca}}else{var fb=(ba|0)/(ea|0)&-1,Ua=fa(ea<<4);if(0<(ea|0)){for(var sb=0,Na=0;;){var Fb=Na+qb|0,Db=(Fb<<4)+ja|0,Ob=gb+(b[0]=a[Db>>2],b[1]=a[Db+4>>2],f[0]),Eb=(sb<<4)+Ua|0;f[0]=Ob;a[Eb>>2]=b[0];a[Eb+4>>2]=b[1];var ne=(Fb<<4)+ja+8|0,Bb=M+(b[0]=a[ne>>2],b[1]=a[ne+4>>2],f[0]),Ja=(sb<<4)+Ua+8|0;f[0]=Bb;a[Ja>>2]=b[0];a[Ja+4>>2]=b[1];var qa=sb+1|0;if((qa|0)==(ea|0)){U=Ua;wa=ea;break a}else{sb=qa,Na=Na+fb|0}}}else{U=Ua,wa=ea}}}}}else{h=2342}}else{h=2342}}while(0);if(2342==h){a[e+51]=0;var na=fa(32),oa=r+104|0,Ba=gb-(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]);f[0]=Ba;a[na>>2]=b[0];a[na+4>>2]=b[1];i=(r+96|0)>>2;var Ea=M-.5*(b[0]=a[i],b[1]=a[i+1],f[0]),Wf=na+8|0;f[0]=Ea;a[Wf>>2]=b[0];a[Wf+4>>2]=b[1];var ic=r+112|0,va=gb+(b[0]=a[ic>>2],b[1]=a[ic+4>>2],f[0]),Cb=na+16|0;f[0]=va;a[Cb>>2]=b[0];a[Cb+4>>2]=b[1];var Ma=M+.5*(b[0]=a[i],b[1]=a[i+1],f[0]),wb=na+24|0;f[0]=Ma;a[wb>>2]=b[0];a[wb+4>>2]=b[1];U=na;wa=2}0==(j&8192|0)&&Re(x,U,U,wa);a[e+53]=U;a[e+52]=wa;C=V(B,lh|0)}Bk(C);WE(x)}function FQa(x){if(4!=(a[x+8>>2]|0)){return 0}var r=x+12|0,r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);if(0!=(((0>r?r-.5:r+.5)&-1)%90|0)){return 0}r=x+20|0;if(0!=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0])){return 0}x=x+28|0;x=0==(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]);return x&1}function Sr(b,r,i){var g=h;h+=144;var c,d=g+128,f=V(i,Ni|0),k=V(i,Pi|0),n=V(i,is|0);fc(d,128,g|0);r=0==(r|0)?0:a[r>>2];if(0==(f|0)){c=2368}else{if(0==m[f]<<24>>24){c=2368}else{var e=f}}2368==c&&(e=V(i,Oi|0));Or(b,r,e,k,n,Kn(b,i,d),i);uc(d);h=g}function kD(x){var r,i,g=x>>2,c=h;h+=16;var d=c+8,l=a[g+48],k=a[g+49],n=a[g+40],e=a[g+41],p=x+356|0;0==(a[p>>2]|0)?d=e:(fo(c,l,k),l=a[c>>2],k=a[c+4>>2],fo(d,n,e),n=a[d>>2],d=a[d+4>>2]);var l=l|0,e=x+316|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),j=x+236|0;r=l*e-(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=x+284|0;f[0]=r;a[j>>2]=b[0];a[j+4>>2]=b[1];j=k|0;k=x+324|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);i=x+244|0;i=j*k-(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);var m=x+292|0;f[0]=i;a[m>>2]=b[0];a[m+4>>2]=b[1];m=x+300|0;f[0]=r+e;a[m>>2]=b[0];a[m+4>>2]=b[1];r=x+308|0;f[0]=i+k;a[r>>2]=b[0];a[r+4>>2]=b[1];r=x+464|0;0==(a[a[g+3]+28>>2]|0)?(i=r>>2,r=(x+448|0)>>2,a[i]=a[r],a[i+1]=a[r+1],a[i+2]=a[r+2],a[i+3]=a[r+3]):(r|=0,i=a[r>>2],m=a[g+112],a[r>>2]=(i|0)<(m|0)?i:m,r=x+468|0,i=a[r>>2],m=a[g+113],a[r>>2]=(i|0)<(m|0)?i:m,r=x+472|0,i=a[r>>2],m=a[g+114],a[r>>2]=(i|0)>(m|0)?i:m,r=x+476|0,i=a[r>>2],m=a[g+115],a[r>>2]=(i|0)>(m|0)?i:m);g=a[g+37];r=x+332|0;r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);0==(g&128|0)?(n=r+e*(l-.5*(n|0)),l=x+252|0,f[0]=n,a[l>>2]=b[0],a[l+4>>2]=b[1],l=x+340|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+k*(j-.5*(d|0))-1,d=x+260|0,f[0]=l,a[d>>2]=b[0],a[d+4>>2]=b[1],j=n+(e+1),d=x+268|0,f[0]=j,a[d>>2]=b[0],a[d+4>>2]=b[1],e=l+(k+1),d=x+276|0,f[0]=e,a[d>>2]=b[0],a[d+4>>2]=b[1],d=n,n=l,k=j):(d=x+360|0,n=.5*(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),d=r-n,e=x+252|0,f[0]=d,a[e>>2]=b[0],a[e+4>>2]=b[1],e=x+340|0,l=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=x+368|0,j=.5*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=l-j,k=x+260|0,f[0]=e,a[k>>2]=b[0],a[k+4>>2]=b[1],k=r+n,n=x+268|0,f[0]=k,a[n>>2]=b[0],a[n+4>>2]=b[1],l+=j,n=x+276|0,f[0]=l,a[n>>2]=b[0],a[n+4>>2]=b[1],n=e,e=l);0==(a[p>>2]|0)?(p=x+376|0,k=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+348|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),l=x+496|0,f[0]=k/p-d,a[l>>2]=b[0],a[l+4>>2]=b[1],0==(g&4096|a[Ic>>2]|0)?(g=x+384|0,p=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])/p-n):(g=x+384|0,p=-e-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])/p),x=x+504|0,f[0]=p,a[x>>2]=b[0],a[x+4>>2]=b[1]):(n=x+376|0,p=x+384|0,j=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+348|0,l=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),p=x+496|0,x=x+504|0,f[0]=-e-j/l,a[x>>2]=b[0],a[x+4>>2]=b[1],0==(g&4096|a[Ic>>2]|0)?(x=n|0,x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])/l-d):(x=n|0,x=-k-(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])/l),p|=0,f[0]=x,a[p>>2]=b[0],a[p+4>>2]=b[1]);h=c}function Ur(b,r,i){var g=a[b>>2]+28|0;a[g>>2]=a[g>>2]+1|0;(g=0!=(i&4|0))||Ck(b,r,i);var c=0==(i&1|0);a:do{if(c){if(0!=(i&16|0)){vs(b);var d=r,f=ra(d),k=0==(f|0);b:do{if(!k){for(var n=f;;){var e=Ib(d,n),h=0==(e|0);c:do{if(!h){for(var j=e;;){if(Ji(b,j),j=yb(d,j),0==(j|0)){break c}}}}while(0);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ws(b);xs(b);f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){if(oh(b,n),n=ba(d,n),0==(n|0)){break b}}}}while(0);ys(b)}else{if(0==(i&8|0)){d=r;f=ra(d);if(0==(f|0)){break}for(;;){oh(b,f);k=Ib(d,f);n=0==(k|0);b:do{if(!n){for(e=k;;){if(oh(b,a[e+12>>2]),Ji(b,e),e=yb(d,e),0==(e|0)){break b}}}}while(0);f=ba(d,f);if(0==(f|0)){break a}}}xs(b);d=r;f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){e=n;for(var h=cc,j=r+212|0,m=r+208|0,t=e|0,u=1;;){if((u|0)>(a[m>>2]|0)){var w=1,h=2460;break}if(0==(Ed(a[a[j>>2]+(u<<2)>>2],t)|0)){u=u+1|0}else{w=0;h=2461;break}}h=2461==h||2460==h?w:cc;0!=h<<24>>24&&oh(b,e);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ys(b);vs(b);f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){e=Ib(d,n);h=0==(e|0);c:do{if(!h){for(j=e;;){m=j;for(var t=cc,u=r+212|0,A=r+208|0,B=m|0,C=1;;){if((C|0)>(a[A>>2]|0)){var P=1,t=2466;break}if(0==(Ed(a[a[u>>2]+(C<<2)>>2],B)|0)){C=C+1|0}else{P=0;t=2467;break}}t=2466==t||2467==t?P:cc;0!=t<<24>>24&&Ji(b,m);j=yb(d,j);if(0==(j|0)){break c}}}}while(0);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ws(b)}}else{xs(b);d=r;f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){if(oh(b,n),n=ba(d,n),0==(n|0)){break b}}}}while(0);ys(b);vs(b);f=ra(d);k=0==(f|0);b:do{if(!k){for(n=f;;){e=Ib(d,n);h=0==(e|0);c:do{if(!h){for(j=e;;){if(Ji(b,j),j=yb(d,j),0==(j|0)){break c}}}}while(0);n=ba(d,n);if(0==(n|0)){break b}}}}while(0);ws(b)}}while(0);g&&Ck(b,r,i)}function lD(x,r){var i,g,c,d=h;h+=4;a[d>>2]=1e3;var l=Cb(16e3),k=r|0;if(0<(a[k>>2]|0)){var n=x+252|0,e=a[r+8>>2];g=e>>2;for(var p=l,l=1,s=0,m=0;;){c=(e|0)>>2;i=a[c];if(0==(i|0)||1==(i|0)){if(0!=(ph(e+44|0,n)|0)){i=e+4|0;g=(e+20|0)>>2;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(b[0]=a[g],b[1]=a[g+1],f[0]);var t=p|0;f[0]=i;a[t>>2]=b[0];a[t+4>>2]=b[1];t=e+12|0;i=(e+28|0)>>2;var t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])-(b[0]=a[i],b[1]=a[i+1],f[0]),u=p+8|0;f[0]=t;a[u>>2]=b[0];a[u+4>>2]=b[1];g=(b[0]=a[g],b[1]=a[g+1],f[0]);t=p+16|0;f[0]=g;a[t>>2]=b[0];a[t+4>>2]=b[1];g=(b[0]=a[i],b[1]=a[i+1],f[0]);i=p+24|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];Qk(x,p,0==(a[c]|0)&1)}c=m}else{if(11==(i|0)){nh(a[g+1]),Ke(x,Cc|0),c=Cc|0}else{if(6==(i|0)){0!=(ph(e+44|0,n)|0)&&(c=g=e+4|0,p=zs(p,d,a[g+4>>2],a[c>>2]),Gd(x,p,a[c>>2])),c=m}else{if(12==(i|0)){0!=(l|0)&&la(0,XE|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),c=m,l=0}else{if(2==(i|0)||3==(i|0)){0!=(ph(e+44|0,n)|0)&&(g=i=e+4|0,p=zs(p,d,a[i+4>>2],a[g>>2]),zc(x,p,a[g>>2],2==(a[c]|0)&1))}else{if(7==(i|0)){0!=(ph(e+44|0,n)|0)&&(c=e+4|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),i=p|0,f[0]=c,a[i>>2]=b[0],a[i+4>>2]=b[1],i=e+12|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),t=p+8|0,f[0]=i,a[t>>2]=b[0],a[t+4>>2]=b[1],As(x,c,i,a[g+19]))}else{if(9==(i|0)){Pa(x,a[g+1])}else{if(8==(i|0)){$b(x,a[g+1])}else{if((4==(i|0)||5==(i|0))&&0!=(ph(e+44|0,n)|0)){g=i=e+4|0,p=zs(p,d,a[i+4>>2],a[g>>2]),$f(x,p,a[g>>2],0,0,4==(a[c]|0)&1)}}}}}c=m}}}}i=p;s=s+1|0;if((s|0)<(a[k>>2]|0)){e=e+80|0,g=e>>2,p=i,m=c}else{break}}0!=(c|0)&&Ke(x,a[a[x>>2]+296>>2]);k=i}else{k=l}G(k);h=d}function Rk(b,r){var i;i=(b+12|0)>>2;var g=a[i];a[i]=g+4|0;a[g>>2]=r;a[i]>>>0>2]>>>0||(a[i]=a[b>>2])}function Sk(b){var r;r=(b+8|0)>>2;var i=a[r];if((i|0)==(a[b+12>>2]|0)){return 0}var g=i+4|0;a[r]=g;i=a[i>>2];if(g>>>0>2]>>>0){return i}a[r]=a[b>>2];return i}function Zb(b){var r,i=b+224|0,g=a[i>>2];if((g|0)!=(b|0)&0!=(g|0)){b=i,i=g}else{var c;return b}for(;;){g=a[i+224>>2];if(0==(g|0)){c=i;r=2510;break}a[b>>2]=g;b=g+224|0;i=a[b>>2];if(!((i|0)!=(g|0)&0!=(i|0))){c=g;r=2509;break}}if(2509==r||2510==r){return c}}function YE(b){a[b+220>>2]=1;a[b+224>>2]=0;m[b+165|0]=0}function zs(x,r,i,g){var c=a[r>>2];(c|0)<(g|0)&&(c<<=1,c=(c|0)>(g|0)?c:g,x=wb(x,c<<4),a[r>>2]=c);r=x;if(0<(g|0)){x=0}else{return r}for(;;){var c=i+24*x|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=(x<<4)+r|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];c=i+24*x+8|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);d=(x<<4)+r+8|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+1|0;if((x|0)==(g|0)){break}}return r}function jD(b,r){var i=r+208|0;if(1<=(a[i>>2]|0)){for(var g=r+212|0,c=1;;){var d=a[a[g>>2]+(c<<2)>>2];jD(b,d);var d=d|0,f=V(d,kh|0);0!=(f|0)&&0!=m[f]<<24>>24&&Pa(b,f);f=V(d,Ak|0);0!=(f|0)&&0!=m[f]<<24>>24&&$b(b,f);d=V(d,Eg|0);0!=(d|0)&&0!=m[d]<<24>>24&&Pa(b,d);c=c+1|0;if((c|0)>(a[i>>2]|0)){break}}}}function ZE(b){var r,i=fa(16);r=i>>2;var b=2>(b|0)?2:b,g=fa(b<<2);a[r]=g;a[r+3]=g;a[r+2]=g;a[r+1]=(b<<2)+g|0;return i}function Zf(b,r,i){0!=(r|0)&&(b=mb(b,a[r+8>>2]),0!=(b|0)&&0!=m[b]<<24>>24&&(i=bh(b),i=0>(i|0)?0:i));return i}function Xb(b,r,i,g){0==(r|0)|0==(b|0)?g=i:(b=mb(b,a[r+8>>2]),0==(b|0)?g=i:0==m[b]<<24>>24?g=i:(i=wg(b,xc),g=i>2])}function Aa(a,b,i){a=jc(a,b,i);return 0!=(a|0)&&0!=m[a]<<24>>24?a:i}function jo(a){return re(a)}function Tk(b,r){var i,g;if((b|0)==(r|0)){return b}g=b+224|0;if(0==(a[g>>2]|0)){a[g>>2]=b;a[b+220>>2]=1;var c=b}else{c=Zb(b)}g=c>>2;i=r+224|0;if(0==(a[i>>2]|0)){a[i>>2]=r;a[r+220>>2]=1;var d=r}else{d=Zb(r)}i=d>>2;(a[g+4]|0)>(a[i+4]|0)?(a[g+56]=d,c=d+220|0,a[c>>2]=a[c>>2]+a[g+55]|0,g=d):(a[i+56]=c,g=c+220|0,a[g>>2]=a[g>>2]+a[i+55]|0,g=c);return g}function Ld(x,r,i,g,c,d){var l,k,n=h;h+=576;if(0<=(i|0)){for(var e=i+1|0,p=0;!(k=((p<<4)+n|0)>>2,l=((p<<4)+r|0)>>2,a[k]=a[l],a[k+1]=a[l+1],a[k+2]=a[l+2],a[k+3]=a[l+3],l=p+1|0,(l|0)==(e|0));){p=l}r=1>(i|0);a:do{if(!r){l=1-g;p=1;for(k=i;;){var j=0>(i-p|0);b:do{if(!j){for(var m=p-1|0,t=n+96*m|0,u=n+96*m+8|0,w=0,A=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]);;){var t=w+1|0,B=(t<<4)+n+96*m|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),C=(w<<4)+n+96*p|0;f[0]=l*A+B*g;a[C>>2]=b[0];a[C+4>>2]=b[1];A=(t<<4)+n+96*m+8|0;C=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]);w=(w<<4)+n+96*p+8|0;f[0]=l*u+C*g;a[w>>2]=b[0];a[w+4>>2]=b[1];if((t|0)==(k|0)){break b}else{w=t,A=B,u=C}}}}while(0);p=p+1|0;if((p|0)==(e|0)){break a}else{k=k-1|0}}}}while(0);g=0==(c|0);a:do{if(!g){for(k=0;;){if(l=((k<<4)+c|0)>>2,r=(n+96*k|0)>>2,a[l]=a[r],a[l+1]=a[r+1],a[l+2]=a[r+2],a[l+3]=a[r+3],r=k+1|0,(r|0)==(e|0)){break a}else{k=r}}}}while(0);if(0!=(d|0)){for(r=0;!(g=((r<<4)+d|0)>>2,c=((r<<4)+n+96*(i-r)|0)>>2,a[g]=a[c],a[g+1]=a[c+1],a[g+2]=a[c+2],a[g+3]=a[c+3],c=r+1|0,(c|0)==(e|0));){r=c}}}x>>=2;i=n+96*i|0;i>>=2;a[x]=a[i];a[x+1]=a[i+1];a[x+2]=a[i+2];a[x+3]=a[i+3];h=n}function $E(b){for(var r,i=0;;){var g=a[ko>>2];if(1024>(g-i|0)){g=g+1024|0;a[ko>>2]=g;var c=wb(a[Si>>2],g);a[Si>>2]=c;g=a[ko>>2]}else{c=a[Si>>2]}g=oi(c+i|0,g-i|0,b);if(0==(g|0)){break}g=Ba(g)+i|0;c=a[Si>>2];if(10==m[c+(g-1)|0]<<24>>24){var d=g,f=c;r=2612;break}else{i=g}}if(2612==r){return f=0<(d|0)?f:0}f=a[Si>>2];return f=(b=0<(i|0))?f:0}function Uk(b){var r=h,i;if(0==(b|0)){var g;h=r;return 0}if(0==m[b]<<24>>24){return h=r,0}var c=a[aF>>2];if(0==(c|0)){return h=r,b}var d=a[Bs>>2];if(0==(d|0)){if(m[Vk]){return h=r,0}la(0,bF|0,(j=h,h+=4,a[j>>2]=c,j));m[Vk]=1;h=r;return 0}if(!m[Cs]){var c=he(Hb(d),zf|0),d=0==(c|0),f=a[Wk>>2];a:do{if(d){var k=0,n=f}else{for(var e=0,p=c,s=f;;){var v=0==(s|0)?Cb((e<<2)+8|0):wb(s,(e<<2)+8|0);a[Wk>>2]=v;s=e+1|0;a[v+(e<<2)>>2]=p;e=a[lo>>2];p=Ba(p);a[lo>>2]=e>>>0>p>>>0?e:p;p=he(0,zf|0);v=a[Wk>>2];if(0==(p|0)){k=s;n=v;break a}else{e=s,s=v}}}}while(0);a[n+(k<<2)>>2]=0;m[Cs]=1}k=ik(b,47);k=0==(k|0)?b:k+1|0;n=ik(k,92);k=0==(n|0)?k:n+1|0;n=ik(k,58);k=0==(n|0)?k:n+1|0;m[Vk]|(k|0)==(b|0)||(n=a[Bs>>2],la(0,cF|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=n,j)),m[Vk]=1);b=mc(a[Ti>>2],a[lo>>2]+Ba(k)+2|0);a[Ti>>2]=b;for(b=a[Wk>>2];;){n=a[b>>2];if(0==(n|0)){g=0;i=2639;break}Ma(a[Ti>>2],dF|0,(j=h,h+=12,a[j>>2]=n,a[j+4>>2]=eF|0,a[j+8>>2]=k,j));if(0==(vQa(a[Ti>>2])|0)){break}else{b=b+4|0}}if(2639==i){return h=r,g}g=a[Ti>>2];h=r;return g}function Ds(b,r,i){var g=0==(b|0),c=0;a:for(;;){var d=a[r+(c<<2)>>2];if(0==(d|0)){break}do{if(!g&&m[b]<<24>>24==m[d]<<24>>24&&0==(ka(b,d)|0)){break a}}while(0);c=c+1|0}return a[i+(c<<2)>>2]}function re(a){return 0==(a|0)?0:0==m[a]<<24>>24?0:0==(Lb(a,Ze|0)|0)?0:0==(Lb(a,fF|0)|0)?0:0==(Lb(a,Es|0)|0)?1:0==(Lb(a,gF|0)|0)?1:10>((m[a]<<24>>24)-48|0)>>>0?bh(a)&255:0}function Lb(a,b){for(var i,g=a,c=b;;){var d=m[g];if(0==d<<24>>24){var f=0;break}if((vf(d&255)|0)!=(vf(m[c]&255)|0)){i=2659;break}g=g+1|0;c=c+1|0}2659==i&&(f=m[g]&255);return vf(f)-vf(m[c]&255)|0}function NE(x,r,i,g){var c=h;h+=80;var d,l=c+64,k=a[r+4>>2],n=0<(k|0),r=a[r>>2]>>2;a:do{if(n){for(var e=1e+38,p=-1,j=-1,m=0;;){var t=a[r+(12*m|0)],u=a[r+(12*m|0)+1],w=0<(u|0);b:do{if(w){for(var A=e,B=p,C=j,P=0;;){var T=(P<<4)+t|0,gb=(P<<4)+t+8|0,T=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0])-i,gb=(b[0]=a[gb>>2],b[1]=a[gb+4>>2],f[0])-g,T=T*T+gb*gb,A=(gb=-1==(B|0)|T=(k|0))<<31>>31)+O|0;k=(y<<4)+n|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);O=c|0;f[0]=k;a[O>>2]=b[0];a[O+4>>2]=b[1];O=(y<<4)+n+8|0;O=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);M=c+8|0;f[0]=O;a[M>>2]=b[0];a[M+4>>2]=b[1];M=y+1|0;X=(M<<4)+n|0;X=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]);D=c+16|0;f[0]=X;a[D>>2]=b[0];a[D+4>>2]=b[1];M=(M<<4)+n+8|0;M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]);X=c+24|0;f[0]=M;a[X>>2]=b[0];a[X+4>>2]=b[1];M=y+2|0;X=(M<<4)+n|0;X=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]);D=c+32|0;f[0]=X;a[D>>2]=b[0];a[D+4>>2]=b[1];M=(M<<4)+n+8|0;M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]);X=c+40|0;f[0]=M;a[X>>2]=b[0];a[X+4>>2]=b[1];M=y+3|0;y=(M<<4)+n|0;y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]);X=c+48|0;f[0]=y;a[X>>2]=b[0];a[X+4>>2]=b[1];n=(M<<4)+n+8|0;M=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);n=c+56|0;f[0]=M;a[n>>2]=b[0];a[n+4>>2]=b[1];n=c|0;X=k-i;D=O-g;r=y-i;e=M-g;k=l|0;O=l+8|0;y=1;M=0;X=X*X+D*D;for(D=r*r+e*e;;){r=.5*(M+y);Ld(l,n,3,r,0,0);var Da=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),ia=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);if(1>be(X-D)){d=2672;break}if(1e-5>be(y-M)){d=2673;break}e=X>2,f[0]=Da,a[i]=b[0],a[i+1]=b[1],x=(x+8|0)>>2,f[0]=ia,a[x]=b[0],a[x+1]=b[1],h=c):2672==d&&(i=(x|0)>>2,f[0]=Da,a[i]=b[0],a[i+1]=b[1],x=(x+8|0)>>2,f[0]=ia,a[x]=b[0],a[x+1]=b[1],h=c)}function hF(x){var r=x|0,i=Xb(r,a[rh>>2],.75,.01),g=x+48|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=Xb(r,a[sh>>2],.5,.02);g=x+56|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];var i=x+24|0,g=a,c=i>>2,d;a:{d=Aa(r,a[Fs>>2],Gs|0);var l;d=0==(Uk(V(x|0,Xk|0))|0)?d:101==m[d]<<24>>24&&0==(ka(d,Hs|0)|0)?d:th|0;var k=m[d];if(99==k<<24>>24){if(0!=(ka(d,th|0)|0)){var n=W;l=1910}}else{n=W,l=1910}b:do{if(1910==l){for(;;){l=0;var e=a[n>>2];if(0==(e|0)){break b}if(m[e]<<24>>24==k<<24>>24&&0==(ka(e,d)|0)){break}n=n+16|0}if(0!=(n|0)){d=n;break a}}}while(0);l=h;n=Is(d);0!=(n|0)?d=n:(n=a[mo>>2],k=n+1|0,a[mo>>2]=k,e=a[Yk>>2],k=0==(e|0)?Cb(k<<2):wb(e,k<<2),a[Yk>>2]=k,k=fa(16),e=k>>2,a[a[Yk>>2]+(n<<2)>>2]=k,a[e]=a[W>>2],a[e+1]=a[W+4>>2],a[e+2]=a[W+8>>2],a[e+3]=a[W+12>>2],n=Hb(d),a[e]=n,0==(a[iF>>2]|0)&&!(99==m[d]<<24>>24&&0==(ka(d,th|0)|0))?(d=a[W>>2],la(0,jF|0,(j=h,h+=8,a[j>>2]=d,a[j+4>>2]=n,j)),m[k+12|0]=0):m[k+12|0]=1,d=k);h=l}g[c]=d;l=mb(r,a[a[no>>2]+8>>2]);g=Xb(r,a[bo>>2],14,1);c=Aa(r,a[ao>>2],Li|0);d=Aa(r,a[Js>>2],Ac|0);a[x+120>>2]=ag(r,l,(0!=(bg(l)|0)?2:0)|(2==(ts(x)|0)?4:0),g,c,d);l=a[Ks>>2];0!=(l|0)&&(l=mb(r,a[l+8>>2]),0!=(l|0)&&0!=m[l]<<24>>24&&(a[x+124>>2]=ag(r,l,0!=(bg(l)|0)?2:0,g,c,d),g=a[x+20>>2]+149|0,m[g]|=16));m[x+160|0]=Zf(r,a[Ls>>2],0)&255;J[a[a[a[i>>2]+4>>2]>>2]](x)}function kF(x){var r,i,g,c=x>>2,d=h;h+=112;var l=d+16,k=d+32,n=d+72;g=(x+16|0)>>2;var e=a[a[g]+20>>2];i=(d+8|0)>>2;a[i]=0;r=(l+8|0)>>2;a[r]=0;var p=a[Ms>>2];if(0==(p|0)){var j=0,v=0}else{if(j=x|0,p=mb(j,a[p+8>>2]),0==(p|0)){v=j=0}else{if(0==m[p]<<24>>24){v=j=0}else{Ns(x,d);var t=0!=(bg(p)|0)?2:0,u=d|0,w=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),v=a[i],u=a[d+12>>2];a[c+27]=ag(j,p,t,w,v,u);p=e+149|0;m[p]|=1;m[x+126|0]=re(jc(j,a[Os>>2],Ze|0));j=1}}}t=a[Ps>>2];0!=(t|0)&&(p=x|0,t=mb(p,a[t+8>>2]),0!=(t|0)&&0!=m[t]<<24>>24&&(0==(v|0)?(Ns(x,d),u=d|0,w=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),i=a[i],u=a[d+12>>2]):i=v,a[c+30]=ag(p,t,0!=(bg(t)|0)?2:0,w,i,u),i=e+149|0,m[i]|=32));u=a[Zk>>2];i=x|0;if(0==(u|0)){u=0}else{if(u=mb(i,a[u+8>>2]),0==(u|0)){u=0}else{if(0==m[u]<<24>>24){u=0}else{lF(x,d,l);var w=0!=(bg(u)|0)?2:0,A=l|0,B=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),p=a[r],A=a[l+12>>2];a[c+28]=ag(i,u,w,B,p,A);u=e+149|0;m[u]|=2;u=p}}}w=a[$k>>2];0!=(w|0)&&(w=mb(i,a[w+8>>2]),0!=(w|0)&&0!=m[w]<<24>>24&&(0==(u|0)?(lF(x,d,l),A=l|0,B=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),r=a[r],l=a[l+12>>2]):(r=u,l=A),a[c+29]=ag(i,w,0!=(bg(w)|0)?2:0,B,r,l),e=e+149|0,m[e]|=4));e=V(i,vi|0);0!=(e|0)&&0!=m[e]<<24>>24&&(m[a[g]+161|0]=1);g=a[g];Qs(k,a[a[a[g+24>>2]+4>>2]+8>>2],g,e);k>>=2;g=(x+28|0)>>2;for(e=k+10;k>2])<<24>>24&&(m[x+58|0]=0);k=V(i,wi|0);0!=(k|0)&&0!=m[k]<<24>>24&&(m[a[c+3]+161|0]=1);c=a[c+3];Qs(n,a[a[a[c+24>>2]+4>>2]+8>>2],c,k);k=n>>2;g=(x+68|0)>>2;for(e=k+10;k>2])<<24>>24){return h=d,j}m[x+98|0]=0;h=d;return j}function Ns(x,r){var i=x|0,g=Xb(i,a[Ts>>2],14,1),c=r|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1];a[r+8>>2]=Aa(i,a[Us>>2],Li|0);a[r+12>>2]=Aa(i,a[Vs>>2],Ac|0)}function lF(x,r,i){var g=r+8|0;0==(a[g>>2]|0)&&Ns(x,r);var x=x|0,c=r|0,c=Xb(x,a[Ws>>2],(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),1),d=i|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];a[i+8>>2]=Aa(x,a[Xs>>2],a[g>>2]);a[i+12>>2]=Aa(x,a[Ys>>2],a[r+12>>2])}function Qs(b,r,i,g){var c,d=h;h+=80;var f=d+40,k=Jc(g,58);if(0==(k|0)){J[r](f,i,g,0);var r=f>>2,k=a[r+9],f=a[r+8],n=a[r+7],e=a[r+6],p=a[r+5],j=a[r+4],v=a[r+3],t=a[r+2],i=a[r+1],r=a[r]}else{m[k]=0;f=k+1|0;J[r](d,i,g,f);c=d>>2;var r=a[c],i=a[c+1],t=a[c+2],v=a[c+3],j=a[c+4],p=a[c+5],e=a[c+6],n=a[c+7],u=a[c+8];c=a[c+9];m[k]=58;k=c&0|f;f=u&-1|0;n=n&-1|0;e=e&-1|0;p=p&-1|0;j=j&-1|0;v=v&-1|0;t=t&-1|0;i=i&-1|0;r=r&-1|0}b>>=2;a[b]=r&-1|0;a[b+1]=i&-1|0;a[b+2]=t&-1|0;a[b+3]=v&-1|0;a[b+4]=j&-1|0;a[b+5]=p&-1|0;a[b+6]=e&-1|0;a[b+7]=n&-1|0;a[b+8]=f&-1|0;a[b+9]=k&0|g;h=d}function mF(b,r){if(0==(r|0)){var i=0}else{i=mb(b|0,a[r+8>>2]),i=0==(i|0)?0:0==m[i]<<24>>24?0:0==re(i)<<24>>24&1}return i}function al(x,r){var i,g,c=h;h+=32;i=x+52|0;var d,l=a[x+152>>2]&1,k,n,e,p;g=h;k=i>>2;d=h;h+=32;a[d>>2]=a[k];a[d+4>>2]=a[k+1];a[d+8>>2]=a[k+2];a[d+12>>2]=a[k+3];a[d+16>>2]=a[k+4];a[d+20>>2]=a[k+5];a[d+24>>2]=a[k+6];a[d+28>>2]=a[k+7];k=r+56|0;n=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=r+64|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);var l=0==l<<24>>24,j=r+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),m=r+32|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);p=.5*(l?j:m);e=n-p;n+=p;p=(d|0)>>2;if(e<(b[0]=a[p],b[1]=a[p+1],f[0])){f[0]=e,a[p]=b[0],a[p+1]=b[1]}e=(d+16|0)>>2;if(n>(b[0]=a[e],b[1]=a[e+1],f[0])){f[0]=n,a[e]=b[0],a[e+1]=b[1]}n=.5*(l?m:j);l=k-n;k+=n;n=(d+8|0)>>2;if(l<(b[0]=a[n],b[1]=a[n+1],f[0])){f[0]=l,a[n]=b[0],a[n+1]=b[1]}l=(d+24|0)>>2;if(k>(b[0]=a[l],b[1]=a[l+1],f[0])){f[0]=k,a[l]=b[0],a[l+1]=b[1]}k=c>>2;d>>=2;a[k]=a[d];a[k+1]=a[d+1];a[k+2]=a[d+2];a[k+3]=a[d+3];a[k+4]=a[d+4];a[k+5]=a[d+5];a[k+6]=a[d+6];a[k+7]=a[d+7];h=g;g=i>>2;i=c>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];a[g+4]=a[i+4];a[g+5]=a[i+5];a[g+6]=a[i+6];a[g+7]=a[i+7];h=c}function nF(x,r,i,g,c){var d=x|0;f[0]=r-g;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+8|0;f[0]=i-c;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Df(a,b,i){var g;if(0==(i|0)){var c;return 0}for(;;){var d=i-1|0;if(0==(i|0)){g=2817;break}if((vf(m[a]&255)|0)!=(vf(m[b]&255)|0)){g=2817;break}if(0==(d|0)){c=0;g=2819;break}if(0==m[a]<<24>>24){c=0;g=2822;break}if(0==m[b]<<24>>24){c=0;g=2820;break}a=a+1|0;b=b+1|0;i=d}if(2819==g||2822==g){return c}if(2817==g){return c=vf(m[a]&255)-vf(m[b]&255)|0}if(2820==g){return c}}function oF(b){var r=oo(b,pF|0),i=ra(b),g=0==(i|0);a:do{if(!g){for(var c=i;;){var d=Ib(b,c),f=0==(d|0);b:do{if(!f){for(var k=d;;){var n=r,e=a[k+16>>2],h=a[k+12>>2];if(!(0==m[e+134|0]<<24>>24&&0==m[h+134|0]<<24>>24)){var j=k,e=Zs(e,n),n=Zs(h,n),n=uh(a[e+20>>2],e,n);po(j|0,n|0)}k=yb(b,k);if(0==(k|0)){break b}}}}while(0);c=ba(b,c);if(0==(c|0)){break a}}}}while(0);i=ra(r);if(0!=(i|0)){for(;!(bl(b,i|0),i=ba(r,i),0==(i|0));){}}Sf(r)}function ac(a,b,i,g,c){b=$(b,i);return 0!=(b|0)?b:a=J[c](a,i,g)}function GQa(x,r){var i,g=h;i=x>>2;x=h;h+=32;a[x>>2]=a[i];a[x+4>>2]=a[i+1];a[x+8>>2]=a[i+2];a[x+12>>2]=a[i+3];a[x+16>>2]=a[i+4];a[x+20>>2]=a[i+5];a[x+24>>2]=a[i+6];a[x+28>>2]=a[i+7];i=r>>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];i=x+16|0;var c=r|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+16|0;c=x|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=x+24|0;c=r+8|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=g,0}i=r+24|0;c=x+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=g;return i&1}function $s(b){var r=h;h+=20;var i=r+8,g=a[b>>2],c=35==m[g]<<24>>24;a:do{if(c){var d=m[g+1|0],f=d&255;b:do{if(120==d<<24>>24||88==d<<24>>24){for(var k=0,e=2,z=f;;){if(8<=(e|0)){var p=k,j=e,v=z;break b}var z=m[g+e|0],t=z&255;do{if(6>(z-65&255)){var u=t-55|0}else{if(6>(z-97&255)){u=t-87|0}else{if(10<=(z-48&255)){p=k;j=e;v=t;break b}u=t-48|0}}}while(0);k=(k<<4)+u|0;e=e+1|0;z=u}}else{k=0;e=1;for(z=f;;){if(8<=(e|0)){p=k;j=e;v=z;break b}z=m[g+e|0];t=z&255;if(10<=(z-48&255)){p=k;j=e;v=t;break b}k=10*k-48+t|0;e=e+1|0;z=t}}}while(0);59!=(v|0)?(f=0,d=g):(f=p,d=j+(g+1)|0)}else{d=i|0;f=a[r>>2]=d;for(d=0;;){if(8<=(d|0)){f=0;d=g;break a}k=m[g+d|0];if(0==k<<24>>24){f=0;d=g;break a}else{if(59==k<<24>>24){break}}m[f]=k;f=f+1|0;d=d+1|0}m[f]=0;f=tn(r,F,252,8,110);0==(f|0)?(f=0,d=g):(f=a[f+4>>2],d=d+(g+1)|0)}}while(0);a[b>>2]=d;h=r;return f}function at(b){var r,i,g=h;h+=1044;i=g>>2;var c=g+4;fc(c,1024,g+20|0);a[i]=b+1|0;var d=m[b],f=0==d<<24>>24,b=(c+4|0)>>2;r=(c+8|0)>>2;a:do{if(!f){for(var k=d;;){38==k<<24>>24?(k=$s(g),k=0==(k|0)?38:k):k&=255;if(127>k>>>0){var e=a[b];e>>>0>>0||(na(c,1),e=a[b]);a[b]=e+1|0;m[e]=k&255}else{var z=a[b],e=a[r],p=z>>>0>=e>>>0;2047>k>>>0?(p&&(na(c,1),z=a[b],e=a[r]),p=z+1|0,a[b]=p,m[z]=(k>>>6|192)&255):(p&&(na(c,1),z=a[b],e=a[r]),p=z+1|0,a[b]=p,m[z]=(k>>>12|224)&255,p>>>0>>0?z=p:(na(c,1),z=a[b],e=a[r]),p=z+1|0,a[b]=p,m[z]=(k>>>6&63|128)&255);p>>>0>>0?e=p:(na(c,1),e=a[b]);a[b]=e+1|0;m[e]=(k&63|128)&255}k=a[i];a[i]=k+1|0;k=m[k];if(0==k<<24>>24){break a}}}}while(0);i=a[b];if(i>>>0>>0){return m[i]=0,r=a[(c|0)>>2],a[b]=r,b=Hb(r),uc(c),h=g,b}na(c,1);r=a[b];m[r]=0;r=a[(c|0)>>2];a[b]=r;b=Hb(r);uc(c);h=g;return b}function bt(b){var r,i=h;h+=1040;fc(i,1024,i+16|0);var g=m[b],c=0==g<<24>>24;r=(i+4|0)>>2;a:do{if(c){var d=a[r],f=i+8|0}else{for(var k=i+8|0,e=b,z=g;;){var p=e+1|0;if(127>(z&255)){e=a[r];if(e>>>0>2]>>>0){var j=e}else{na(i,1),j=a[r]}e=j+1|0;a[r]=e;m[j]=z;z=p}else{z=m[p]&63|z<<6,p=a[r],p>>>0>2]>>>0?j=p:(na(i,1),j=a[r]),p=j+1|0,a[r]=p,m[j]=z,z=e+2|0,e=p}p=m[z];if(0==p<<24>>24){d=e;f=k;break a}else{e=z,z=p}}}}while(0);if(d>>>0>2]>>>0){return m[d]=0,b=a[(i|0)>>2],a[r]=b,r=Hb(b),uc(i),h=i,r}na(i,1);b=a[r];m[b]=0;b=a[(i|0)>>2];a[r]=b;r=Hb(b);uc(i);h=i;return r}function qF(x,r){var i,g=h;h+=40;i=r>>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];var c=g+8;i=g+24;var d=r+16|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=x+64|0;if(d<(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){return h=g,0}var l=x+80|0,k=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=r|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(k>2],b[1]=a[k+4>>2],f[0]),e=x+72|0;if(k<(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){return h=g,0}var e=x+88|0,z=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=r+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(z>2]=b[0];a[z+4>>2]=b[1];d=c+8|0;f[0]=.5*(k+e);a[d>>2]=b[0];a[d+4>>2]=b[1];d=x+32|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);l=x+40|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);k=c|0;c=c+8|0;nF(i,d,l,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]));c=i|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);i=i+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);a[g>>2]=x;a[g+4>>2]=0;i=J[a[a[a[x+24>>2]+4>>2]+12>>2]](g,c,i);h=g;return i}function as(x,r){var i,g,c,d=h;h+=32;c=r>>2;r=h;h+=32;a[r>>2]=a[c];a[r+4>>2]=a[c+1];a[r+8>>2]=a[c+2];a[r+12>>2]=a[c+3];a[r+16>>2]=a[c+4];a[r+20>>2]=a[c+5];a[r+24>>2]=a[c+6];a[r+28>>2]=a[c+7];c=d+16;var l=x+24|0,k=.5*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=x+32|0,e=.5*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);g=(x+56|0)>>2;i=(x+64|0)>>2;nF(d,(b[0]=a[g],b[1]=a[g+1],f[0]),(b[0]=a[i],b[1]=a[i+1],f[0]),k,e);var l=d|0,z=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=d+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);g=(b[0]=a[g],b[1]=a[g+1],f[0]);i=(b[0]=a[i],b[1]=a[i+1],f[0])+e;e=c|0;f[0]=g+k;a[e>>2]=b[0];a[e+4>>2]=b[1];k=c+8|0;f[0]=i;a[k>>2]=b[0];a[k+4>>2]=b[1];k=c+8|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);i=r+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>2],b[1]=a[c+4>>2],f[0])<(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])){return h=d,0}c=r+24|0;if((b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=d;return c&1}function rF(x,r){var i,g=h;i=x>>2;x=h;h+=48;for(var c=x>>2,d=i+12;i>2;r=h;h+=32;a[r>>2]=a[i];a[r+4>>2]=a[i+1];a[r+8>>2]=a[i+2];a[r+12>>2]=a[i+3];a[r+16>>2]=a[i+4];a[r+20>>2]=a[i+5];a[r+24>>2]=a[i+6];a[r+28>>2]=a[i+7];var l,c=a[x+4>>2];0==(c|0)&&sa(qo|0,1634,sF|0,tF|0);i=a[x>>2];for(var d=i|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),k=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=1,z=k,p=d;(e|0)<(c|0);){var j=(e<<4)+i|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),m=(e<<4)+i+8|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);if(-1==(uF(j,m,p,z,r)|0)){e=e+1|0,z=m,p=j}else{var t=1;l=3034;break}}if(3034==l){return h=g,t}if(0!=(a[x+8>>2]|0)&&(l=x+16|0,t=x+24|0,0!=vF((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),d,k,r)<<24>>24)||0!=(a[x+12>>2]|0)&&(l=c-1|0,t=x+32|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),c=x+40|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=(l<<4)+i|0,i=(l<<4)+i+8|0,0!=vF(t,c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),r)<<24>>24)){return h=g,1}h=g;return 0}function ct(b){var r,i,g,c=h;h+=1044;var d;g=c>>2;var f=c+4;a[g]=b;fc(f,1024,c+20|0);i=(f+4|0)>>2;r=(f+8|0)>>2;a:for(;;){var k=b+1|0;a[g]=k;var e=m[b];if(0==e<<24>>24){d=3071;break}do{if(192>(e&255)){if(38!=e<<24>>24){var z=e}else{if(z=$s(c),0==(z|0)){z=38}else{if(127>z>>>0){z&=255}else{var p=a[i],s=a[r],v=p>>>0>=s>>>0;2047>z>>>0?(v?(na(f,1),s=a[i]):s=p,a[i]=s+1|0,m[s]=(z>>>6|192)&255):(v&&(na(f,1),p=a[i],s=a[r]),v=p+1|0,a[i]=v,m[p]=(z>>>12|224)&255,v>>>0>>0?s=v:(na(f,1),s=a[i]),a[i]=s+1|0,m[s]=(z>>>6&63|128)&255);z=(z&63|128)&255}}}}else{if(224>(e&255)){if(-128!=(m[k]&-64)<<24>>24){d=3057;break a}z=a[i];z>>>0>>0||(na(f,1),z=a[i]);a[i]=z+1|0;m[z]=e;a[g]=b+2|0;z=m[k]}else{if(240<=(e&255)){d=3067;break a}if(-128!=(m[k]&-64)<<24>>24){d=3074;break a}z=b+2|0;if(-128!=(m[z]&-64)<<24>>24){d=3075;break a}s=a[i];p=a[r];s>>>0

>>0||(na(f,1),s=a[i],p=a[r]);v=s+1|0;a[i]=v;m[s]=e;a[g]=z;s=m[k];v>>>0

>>0?p=v:(na(f,1),p=a[i]);a[i]=p+1|0;m[p]=s;a[g]=b+3|0;z=m[z]}}}while(0);b=a[i];b>>>0>>0||(na(f,1),b=a[i]);a[i]=b+1|0;m[b]=z;b=a[g]}if(3067==d){la(1,wF|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{if(3074==d){la(1,dt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{if(3075==d){la(1,dt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{if(3071==d){g=a[i];if(g>>>0>>0){return m[g]=0,r=a[(f|0)>>2],a[i]=r,i=Hb(r),uc(f),h=c,i}na(f,1);r=a[i];m[r]=0;r=a[(f|0)>>2];a[i]=r;i=Hb(r);uc(f);h=c;return i}3057==d&&(la(1,xF|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe())}}}}function et(x,r){if(0==r<<24>>24){var i=x+48|0,i=36*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=x+112|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];g=x+104|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=x+56|0}else{i=x+56|0,i=36*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=x+112|0,f[0]=i,a[g>>2]=b[0],a[g+4>>2]=b[1],g=x+104|0,f[0]=i,a[g>>2]=b[0],a[g+4>>2]=b[1],i=x+48|0}i=72*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=x+96|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1]}function yF(b,r){var i=h,g,c=0==(b|0);a:do{if(c){var d=r}else{d=m[b];if(0!=d<<24>>24){d=d<<24>>24;do{if(116==(d|0)||84==(d|0)){var f=0==(Lb(b+1|0,zF|0)|0)?8:0;g=3098}else{if(110==(d|0)||78==(d|0)){var k=b+1|0;if(0==(Lb(k,AF|0)|0)){d=0;break a}if(0==(Lb(k,ft|0)|0)){d=2;break a}}else{if(48==(d|0)){d=2;break a}else{if(99==(d|0)||67==(d|0)){f=0==(Lb(b+1|0,BF|0)|0)?10:0,g=3098}else{if(112==(d|0)||80==(d|0)){f=0==(Lb(b+1|0,CF|0)|0)?4:0,g=3098}else{if(115==(d|0)||83==(d|0)){f=0==(Lb(b+1|0,DF|0)|0)?8:0,g=3098}else{if(108==(d|0)||76==(d|0)){f=0==(Lb(b+1|0,EF|0)|0)?2:0,g=3098}else{if(49==(d|0)||50==(d|0)||51==(d|0)||52==(d|0)||53==(d|0)||54==(d|0)||55==(d|0)||56==(d|0)||57==(d|0)){d=8;break a}else{if(102==(d|0)||70==(d|0)){f=0==(Lb(b+1|0,FF|0)|0)?2:0,g=3098}else{if(111==(d|0)||79==(d|0)){f=0==(Lb(b+1|0,GF|0)|0)?6:0,g=3098}else{if(121==(d|0)||89==(d|0)){f=0==(Lb(b+1|0,HF|0)|0)?8:0,g=3098}}}}}}}}}}}}while(0);if(3098==g&&0!=(f|0)){d=f;break}la(0,IF|0,(j=h,h+=4,a[j>>2]=b,j))}d=r}}while(0);h=i;return d}function JF(a,b){var i=V(a|0,KF|0),i=0==(i|0)?b:0==m[i]<<24>>24?0:yF(i,b),g=a+164|0;D[g>>1]=(D[g>>1]&65535|i)&65535}function vF(x,r,i,g,c){var d,l=h;h+=128;d=c>>2;c=h;h+=32;a[c>>2]=a[d];a[c+4>>2]=a[d+1];a[c+8>>2]=a[d+2];a[c+12>>2]=a[d+3];a[c+16>>2]=a[d+4];a[c+20>>2]=a[d+5];a[c+24>>2]=a[d+6];a[c+28>>2]=a[d+7];var k=l+32,e=l+64;d=l+96;var z=c+16|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]);hh(l,x,r,i,g,1);var p=l|0;if(z>=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])){if(hh(k,x,r,i,g,1),k=k+16|0,z=c|0,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])>=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])){if(k=c+24|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),hh(e,x,r,i,g,1),e=e+8|0,k>=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){if(hh(d,x,r,i,g,1),x=d+24|0,c=c+8|0,(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])>=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])){return h=l,1}}}}h=l;return 0}function Zs(b,r){var i=a[b+20>>2];if(0==m[b+134|0]<<24>>24){var g;return b}var c=b|0;gt(r,c);var d=Jc(a[b+12>>2],58);0==(d|0)&&sa(qo|0,1243,LF|0,MF|0);var d=d+1|0,f=Mi(i,d);if(0!=(f|0)){return f}i=cl(i,d);d=a[ro(c)+8>>2];f=a[d>>2];if(0==(f|0)){return i}for(c=i|0;;){var d=d+4|0,k=a[f+8>>2],f=a[f+4>>2];(mb(c,k)|0)!=(f|0)&&qc(c,k,f);f=a[d>>2];if(0==(f|0)){g=i;break}}return g}function ht(b,r){var i,g,c=a[r>>2];g=(r+24|0)>>2;a[g]=0;a[g+1]=0;a[g+2]=0;a[g+3]=0;if(0!=m[c]<<24>>24){var d=Cb(Ba(c)+1|0);m[d]=0;var f=r+12|0,k=d;a:for(;;){for(;;){var e=c+1|0,h=m[c];if(0==h<<24>>24){var p=k;break a}if(!(161>(h&255)|2!=(a[f>>2]|0)|-1==h<<24>>24)){m[k]=h;var h=m[e],j=k+2|0;m[k+1|0]=h;if(0==h<<24>>24){p=j;break a}else{k=j;c=c+2|0;continue}}if(10==h<<24>>24){i=3161;break}else{if(92==h<<24>>24){break}}m[k]=h;k=k+1|0;c=e}3161==i?(i=0,h=k+1|0,m[k]=0,so(b,r,d,110),k=h,c=e,d=h):(h=m[e],j=h<<24>>24,110==(j|0)||108==(j|0)||114==(j|0)?(h=k+1|0,m[k]=0,so(b,r,d,m[e]),d=k=h):(m[k]=h,k=k+1|0),c=0==m[e]<<24>>24?e:c+2|0)}(d|0)!=(p|0)&&(m[p]=0,so(b,r,d,110));i=(r+40|0)>>2;a[i]=a[g];a[i+1]=a[g+1];a[i+2]=a[g+2];a[i+3]=a[g+3]}}function so(x,r,i,g){var c,d=h;h+=16;var l;c=(r+76|0)>>1;var k=D[c]<<16>>16,e=r+72|0,z=a[e>>2],k=0==(z|0)?fa(76*k+152|0):NF(z,k+2|0,76,k+1|0);a[e>>2]=k;e=D[c]<<16>>16;z=k+76*e|0;a[z>>2]=i;m[k+76*e+72|0]=g;if(0==(i|0)){l=3175}else{if(0==m[i]<<24>>24){l=3175}else{var p=r+16|0,i=a[r+4>>2],g=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s,p=h;h+=4;a[p>>2]=0;s=(z+20|0)>>2;a[s]=i;var v=z+24|0;f[0]=g;a[v>>2]=b[0];a[v+4>>2]=b[1];g=a;v=z+4>>2;var t=a[to>>2];0!=(t|0)&&0==(Lb(t,i)|0)?i=a[it>>2]:(a[to>>2]=i,i=tn(to,H,35,36,310),a[it>>2]=i);g[v]=i;i=0==m[ld]<<24>>24?0:0==(nD(a[s])|0)?0:p;x=a[a[x+172>>2]+132>>2];0==(x|0)?x=0:(x=a[x>>2],x=0==(x|0)?0:J[x](z,i));0==x<<24>>24&&OF(z,i);0!=(i|0)&&(x=a[p>>2],i=a[oa>>2],s=a[s],0==(x|0)?Va(i,PF|0,(j=h,h+=4,a[j>>2]=s,j)):Va(i,QF|0,(j=h,h+=8,a[j>>2]=s,a[j+4>>2]=x,j)));x=z+56|0;x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]);z=z+64|0;z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]);s=d|0;f[0]=x;a[s>>2]=b[0];a[s+4>>2]=b[1];x=d+8|0;f[0]=z;a[x>>2]=b[0];a[x+4>>2]=b[1];h=p;p=d|0;z=d+8|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);s=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])}}3175==l&&(l=r+16|0,l=1.2*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1|0,k=k+76*e+64|0,f[0]=l,a[k>>2]=b[0],a[k+4>>2]=b[1],p=0,s=l);D[c]=D[c]+1&65535;c=(r+24|0)>>2;l=(b[0]=a[c],b[1]=a[c+1],f[0]);f[0]=l>p?l:p;a[c]=b[0];a[c+1]=b[1];r=(r+32|0)>>2;c=(b[0]=a[r],b[1]=a[r+1],f[0])+s;f[0]=c;a[r]=b[0];a[r+1]=b[1];h=d}function ag(x,r,i,g,c,d){var l,k,e=h,z=fa(84);k=z>>2;var p=a[x>>2]<<28>>28;if(3==(p|0)){var s=l=0,v=x,p=a[x+32>>2]}else{1==(p|0)?(l=0,s=x,v=0,p=a[a[x+20>>2]+32>>2]):2==(p|0)?(l=x,v=s=0,p=a[a[a[x+12>>2]+20>>2]+32>>2]):p=v=s=l=0}a[k+1]=c;a[k+2]=d;c=z+16|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1];g=z+12|0;a[g>>2]=m[p+151|0]&255;if(0!=(i&4|0)){a[k]=Hb(r);if(0==(i&2|0)){return h=e,z}m[z+82|0]=1;h=e;return z}if(2==(i|0)){a[k]=Hb(r);m[z+82|0]=1;if(0==(RF(x,z)|0)){return h=e,z}x=a[x>>2]<<28>>28;3==(x|0)?la(3,SF|0,(j=h,h+=4,a[j>>2]=a[v+12>>2],j)):1==(x|0)?la(3,TF|0,(j=h,h+=4,a[j>>2]=a[s+12>>2],j)):2==(x|0)&&(p=0!=(a[p>>2]&16|0)?Bf|0:Af|0,x=a[a[l+12>>2]+12>>2],la(3,UF|0,(j=h,h+=12,a[j>>2]=a[a[l+16>>2]+12>>2],a[j+4>>2]=p,a[j+8>>2]=x,j)));h=e;return z}0!=(i|0)&&sa(VF|0,169,WF|0,XF|0);x=jt(r,x,0);l=z>>2;a[l]=x;x=1==(a[g>>2]|0)?at(x):ct(x);G(a[l]);a[l]=x;ht(p,z);h=e;return z}function jt(b,r,i){var g=r>>2,c=a[g]<<28>>28;if(3==(c|0)){var d=a[g+3],f=Ba(d),k=a[g+12];if(0==(k|0)){var e=0,h=0,p=Y|0,j=Y|0,v=d,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=dl|0,C=f,P=2,T=2,gb=2,y=2,M=2,D=0}else{var O=a[k>>2];if(0==(b|0)){h=e=0,p=Y|0,j=Y|0,v=d,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=O,C=f,M=y=gb=T=P=2}else{var F=Ba(O),h=e=0,p=Y|0,j=Y|0,v=d,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=O,C=f,y=gb=T=P=2,M=F}D=0}}else{if(2==(c|0)){var Da=a[g+4],ia=a[a[Da+20>>2]+32>>2],E=a[ia+12>>2],G=Ba(E),J=a[Da+12>>2],sc=Ba(J),H=a[g+16],I=0==(H|0)?0:Ba(H),K=a[a[g+3]+12>>2],L=a[g+26],ca=0==(L|0)?0:Ba(L),N=Ba(K),U=a[g+27];if(0==(U|0)){var zb=dl|0,ja=2}else{var aa=a[U>>2];0==(b|0)?(zb=aa,ja=2):(zb=aa,ja=Ba(aa))}e=1;h=ca;p=H;j=L;v=E;t=yg|0;u=0==(a[ia>>2]&16|0)?Af|0:Bf|0;w=K;A=J;B=zb;C=G;P=2;T=sc+(0==(I|0)?0:I+1|0)+N+(0==(ca|0)?0:ca+1|0)+2|0;gb=N;y=sc;M=ja;D=I}else{if(1==(c|0)){var da=a[a[g+5]+12>>2],ea=Ba(da),xa=a[g+3],Q=Ba(xa),Od=a[g+30];if(0==(Od|0)){h=e=0,p=Y|0,j=Y|0,v=da,t=xa,u=cg|0,w=Hg|0,A=Ig|0,B=dl|0,C=ea,P=Q,M=y=gb=T=2}else{var ha=a[Od>>2];if(0==(b|0)){h=e=0,p=Y|0,j=Y|0,v=da,t=xa,u=cg|0,w=Hg|0,A=Ig|0,B=ha,C=ea,P=Q,M=y=gb=T=2}else{var ga=Ba(ha),h=e=0,p=Y|0,j=Y|0,v=da,t=xa,u=cg|0,w=Hg|0,A=Ig|0,B=ha,C=ea,P=Q,y=gb=T=2,M=ga}}}else{h=e=0,p=Y|0,j=Y|0,v=YF|0,t=yg|0,u=cg|0,w=Hg|0,A=Ig|0,B=dl|0,M=y=gb=T=P=C=2}D=0}}var W=0==(i|0),Rb=0,S=b;a:for(;;){var tb=S+1|0,ya=m[S];if(0==ya<<24>>24){break}else{if(92!=ya<<24>>24){Rb=Rb+1|0;S=tb;continue}}var V=S+2|0,wa=m[tb]<<24>>24;do{if(71==(wa|0)){Rb=Rb+C|0;S=V;continue a}else{if(78==(wa|0)){Rb=Rb+P|0;S=V;continue a}else{if(69==(wa|0)){Rb=Rb+T|0;S=V;continue a}else{if(72==(wa|0)){Rb=Rb+gb|0;S=V;continue a}else{if(84==(wa|0)){Rb=Rb+y|0;S=V;continue a}else{if(76==(wa|0)){Rb=Rb+M|0;S=V;continue a}else{if(92==(wa|0)&&!W){Rb=Rb+1|0;S=V;continue a}}}}}}}}while(0);Rb=Rb+2|0;S=V}var Ab=Cb(Rb+1|0),Fa=0==(e|0),Ga=0==(D|0),R=0==(h|0),ta=b,Ka=Ab;a:for(;;){var za=ta+1|0,ma=m[ta];if(0==ma<<24>>24){break}else{if(92!=ma<<24>>24){m[Ka]=ma;ta=za;Ka=Ka+1|0;continue}}var pa=ta+2|0,la=m[za],Ha=la<<24>>24;do{if(76==(Ha|0)){var Ra=m[B];m[Ka]=Ra;if(0==Ra<<24>>24){ta=pa;continue a}else{var $=B,fa=Ka}for(;;){var La=$+1|0,Z=fa+1|0,Ya=m[La];m[Z]=Ya;if(0==Ya<<24>>24){ta=pa;Ka=Z;continue a}else{$=La,fa=Z}}}else{if(72==(Ha|0)){var ka=m[w];m[Ka]=ka;if(0==ka<<24>>24){ta=pa;continue a}else{var Za=w,sa=Ka}for(;;){var ab=Za+1|0,$a=sa+1|0,jb=m[ab];m[$a]=jb;if(0==jb<<24>>24){ta=pa;Ka=$a;continue a}else{Za=ab,sa=$a}}}else{if(84==(Ha|0)){var Ca=m[A];m[Ka]=Ca;if(0==Ca<<24>>24){ta=pa;continue a}else{var Ia=A,eb=Ka}for(;;){var ub=Ia+1|0,Sa=eb+1|0,ra=m[ub];m[Sa]=ra;if(0==ra<<24>>24){ta=pa;Ka=Sa;continue a}else{Ia=ub,eb=Sa}}}else{if(78==(Ha|0)){var ua=m[t];m[Ka]=ua;if(0==ua<<24>>24){ta=pa;continue a}else{var Oa=t,Wa=Ka}for(;;){var pb=Oa+1|0,ob=Wa+1|0,bb=m[pb];m[ob]=bb;if(0==bb<<24>>24){ta=pa;Ka=ob;continue a}else{Oa=pb,Wa=ob}}}else{if(71==(Ha|0)){var qb=m[v];m[Ka]=qb;if(0==qb<<24>>24){ta=pa;continue a}else{var ba=v,kb=Ka}for(;;){var qa=ba+1|0,vb=kb+1|0,xb=m[qa];m[vb]=xb;if(0==xb<<24>>24){ta=pa;Ka=vb;continue a}else{ba=qa,kb=vb}}}else{if(69==(Ha|0)){if(Fa){ta=pa;continue a}var hd=m[A];m[Ka]=hd;var nb=0==hd<<24>>24;b:do{if(nb){var rb=Ka}else{for(var lb=A,Ta=Ka;;){var cb=lb+1|0,fb=Ta+1|0,Ua=m[cb];m[fb]=Ua;if(0==Ua<<24>>24){rb=fb;break b}else{lb=cb,Ta=fb}}}}while(0);b:do{if(Ga){var sb=rb}else{m[rb]=58;for(var Na=rb,Fb=p;;){var Db=Na+1|0,Ob=m[Fb];m[Db]=Ob;if(0==Ob<<24>>24){sb=Db;break b}else{Na=Db,Fb=Fb+1|0}}}}while(0);var Eb=m[u];m[sb]=Eb;var na=0==Eb<<24>>24;b:do{if(na){var Bb=sb}else{for(var Ja=u,oa=sb;;){var Ea=Ja+1|0,va=oa+1|0,Ma=m[Ea];m[va]=Ma;if(0==Ma<<24>>24){Bb=va;break b}else{Ja=Ea,oa=va}}}}while(0);var Aa=m[w];m[Bb]=Aa;var Wf=0==Aa<<24>>24;b:do{if(Wf){var ic=Bb}else{for(var wb=w,Qa=Bb;;){var Va=wb+1|0,Pa=Qa+1|0,hb=m[Va];m[Pa]=hb;if(0==hb<<24>>24){ic=Pa;break b}else{wb=Va,Qa=Pa}}}}while(0);if(R){ta=pa;Ka=ic;continue a}m[ic]=58;for(var pc=ic,Wc=j;;){var Vb=pc+1|0,Xd=m[Wc];m[Vb]=Xd;if(0==Xd<<24>>24){ta=pa;Ka=Vb;continue a}else{pc=Vb,Wc=Wc+1|0}}}else{if(92==(Ha|0)&&!W){m[Ka]=92;ta=pa;Ka=Ka+1|0;continue a}}}}}}}}while(0);m[Ka]=92;m[Ka+1|0]=la;ta=pa;Ka=Ka+2|0}m[Ka]=0;return Ab}function ZF(b,r){var i;if(0!=(b|0)){var g=0<(r|0);a:do{if(g){var c=0,d=b;for(i=d>>2;;){if(0==(c|0)){var f=a[i];0!=(f|0)&&G(f)}f=a[i+2];if(0!=(f|0)&&(i=a[i+3],0!=(i|0))){J[i](f)}c=c+1|0;if((c|0)==(r|0)){break a}else{d=d+76|0,i=d>>2}}}}while(0);G(b)}}function vh(b){if(0!=(b|0)){G(a[b>>2]);var r=b+72|0;0==m[b+82|0]<<24>>24?ZF(a[r>>2],D[b+76>>1]<<16>>16):$F(a[r>>2],1);G(b)}}function Fg(x,r,i){var g,c,d;d=(a[x+16>>2]+12|0)>>2;var l=a[d];a[d]=r;if(0!=m[i+82|0]<<24>>24){aG(x,a[i+72>>2],i),a[d]=l}else{if(r=(i+76|0)>>1,1<=D[r]<<16>>16){bG(x,0);Pa(x,a[i+8>>2]);g=m[i+80|0]<<24>>24;if(116==(g|0)){g=i+64|0;c=i+48|0;var k=i+16|0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+.5*(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])}else{if(98==(g|0)){g=i+64|0;c=i+48|0;var k=i+32|0,e=i+16|0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-.5*(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])}else{g=i+64|0,c=i+32|0,k=i+16|0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+.5*(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])}}e=0>16;a:do{if(e){var h=i+72|0;c=(i+56|0)>>2;g=(i+40|0)>>2;for(var p=k,j=0,v=a[h>>2];;){var t=m[v+76*j+72|0]<<24>>24,t=114==(t|0)?(b[0]=a[c],b[1]=a[c+1],f[0])+.5*(b[0]=a[g],b[1]=a[g+1],f[0]):108==(t|0)?(b[0]=a[c],b[1]=a[c+1],f[0])-.5*(b[0]=a[g],b[1]=a[g+1],f[0]):(b[0]=a[c],b[1]=a[c+1],f[0]);As(x,t,p,v+76*j|0);v=a[h>>2];t=v+76*j+64|0;j=j+1|0;if((j|0)<(D[r]<<16>>16|0)){p-=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])}else{break a}}}}while(0);cG(x);a[d]=l}}}function ec(a,b){return jt(a,b,1)}function nc(b){var r,i=a[uo>>2];if(0==(i|0)){a[vo>>2]=64;var i=Cb(64),g=a[uo>>2]=i,c=0,d=0}else{g=i,d=c=0}for(;;){if(0==(b|0)){r=148;break}var f=m[b];if(0==f<<24>>24){r=147;break}var k=a[vo>>2];(d|0)>(k-8|0)&&(g=k<<1,a[vo>>2]=g,i=wb(i,g),a[uo>>2]=i,g=i+d|0,f=m[b]);if(60==f<<24>>24){var e=wo|0,h=4}else{38==f<<24>>24?0==(dG(b)|0)?(e=xo|0,h=5):r=142:62==f<<24>>24?(e=yo|0,h=4):45==f<<24>>24?(e=kt|0,h=5):32==f<<24>>24?0==(c|0)?r=142:32==m[c]<<24>>24?(e=lt|0,h=6):r=142:34==f<<24>>24?(e=zo|0,h=6):39!=f<<24>>24?r=142:(e=Ao|0,h=5)}142==r&&(r=0,e=b,h=1);d=h+d|0;k=h;c=e;for(f=g;!(k=k-1|0,m[f]=m[c],0==(k|0));){c=c+1|0,f=f+1|0}c=b;b=b+1|0;g=g+h|0}if(147==r||148==r){return m[g]=0,i}}function dG(a){var b=a+1|0,i=m[b];if(35!=i<<24>>24){for(a=b;;){b=a+1|0;if(!(26>(i-97&255)|26>(i-65&255))){var g=i;break}a=b;i=m[b]}return g=59==g<<24>>24&1}b=a+2|0;i=m[b];if(120==i<<24>>24||88==i<<24>>24){for(a=a+3|0;;){if(i=m[a],10>(i-48&255)|6>(i-97&255)|6>(i-65&255)){a=a+1|0}else{g=i;break}}}else{for(a=b;;){b=a+1|0;if(10<=(i-48&255)){g=i;break}a=b;i=m[b]}}return g=59==g<<24>>24&1}function uF(x,r,i,g,c){var d,l=h;d=c>>2;c=h;h+=32;a[c>>2]=a[d];a[c+4>>2]=a[d+1];a[c+8>>2]=a[d+2];a[c+12>>2]=a[d+3];a[c+16>>2]=a[d+4];a[c+20>>2]=a[d+5];a[c+24>>2]=a[d+6];a[c+28>>2]=a[d+7];var k;d=c|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);var e=d>x;if(e){var j=0}else{j=c+16|0,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])>2],b[1]=a[j+4>>2],f[0])>r?j=0:(j=c+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])>=r))}if(d>i){k=170}else{var p=c+16|0;if((b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])>2],b[1]=a[p+4>>2],f[0])>g){k=170}else{p=c+24|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])>=g;if(j^p){return h=l,0}if(j&p){return h=l,1}}}}if(170==k&&j){return h=l,0}do{if(x==i){if(k=c+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),!(e|k<=r^k<=g^1)&&(k=c+16|0,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])>=x)){return r=0,h=l,r}}else{if(r==g){if(!(d<=x^d<=i)){break}x=c+8|0;if((b[0]=a[x>>2],b[1]=a[x+4>>2],f[0])>r){break}c=c+24|0;if((b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])>2],b[1]=a[j+4>>2],f[0]);if(!(dv|t>2],b[1]=a[p+4>>2],f[0]))){return r=0,h=l,r}p=c+16|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);t+=(p-d)*k;if(t>=j){var u=c+24|0;if(!(t>(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])|pv)){return r=0,h=l,r}}m=(v=r=d&&!(t>p|jv)){return r=0,h=l,r}u=c+24|0;u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]);k=t+(u-j)/k;if(k>=d&&!(k>p|uv)){return r=0,h=l,r}}}while(0);h=l;return-1}function Mn(x){var r;r=(x+16|0)>>2;var i=(b[0]=a[r],b[1]=a[r+1],f[0]),g=x+32|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];g=x+48|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=x+24|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=x+40|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];i=x+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=x+56|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];x|=0;x=(b[0]=a[x>>2],b[1]=a[x+4>>2],f[0]);f[0]=x;a[r]=b[0];a[r+1]=b[1]}function Bo(b){var r,i=a[Co>>2];if(0==(i|0)){a[Do>>2]=64;var i=Cb(64),g=a[Co>>2]=i,c=0}else{g=i,c=0}for(;;){if(0==(b|0)){r=217;break}var d=m[b];if(0==d<<24>>24){r=218;break}var f=a[Do>>2];(c|0)>(f-8|0)&&(g=f<<1,a[Do>>2]=g,i=wb(i,g),a[Co>>2]=i,g=i+c|0,d=m[b]);if(60==d<<24>>24){var k=wo|0,e=4}else{34==d<<24>>24?(k=zo|0,e=6):39==d<<24>>24?(k=Ao|0,e=5):38==d<<24>>24?0==(dG(b)|0)?(k=xo|0,e=5):r=212:62==d<<24>>24?(k=yo|0,e=4):r=212}212==r&&(r=0,k=b,e=1);for(var c=e+c|0,h=e,d=k,f=g;!(h=h-1|0,m[f]=m[d],0==(h|0));){d=d+1|0,f=f+1|0}b=b+1|0;g=g+e|0}if(217==r||218==r){return m[g]=0,i}}function fa(a){if(0==(a|0)){a=0}else{var b=Cb(a);li(b,a);a=b}return a}function OF(x,r){var i,g,c;c=(x+56|0)>>2;f[0]=0;a[c]=b[0];a[c+1]=b[1];g=(x+24|0)>>2;i=(b[0]=a[g],b[1]=a[g+1],f[0]);var d=x+64|0;f[0]=1.2*i;a[d>>2]=b[0];a[d+4>>2]=b[1];d=x+40|0;f[0]=0;a[d>>2]=b[0];a[d+4>>2]=b[1];d=x+48|0;f[0]=.1*i;a[d>>2]=b[0];a[d+4>>2]=b[1];i=(x+20|0)>>2;d=a[i];a[x+8>>2]=d;a[x+12>>2]=0;0==(Df(d,eG|0,4)|0)?(d=fG|0,i=gG|0):0==(Df(a[i],hG|0,5)|0)?(d=mt|0,i=nt|0):(d=(i=0==(Df(a[i],iG|0,9)|0))?mt|0:jG|0,i=i?nt|0:kG|0);0!=(r|0)&&(a[r>>2]=d);d=a[x>>2];if(0!=(d|0)){var l=m[d],k=0==l<<24>>24,e=(b[0]=a[c],b[1]=a[c+1],f[0]);a:do{if(k){var h=e}else{for(var p=d,j=l,v=e;;){if(p=p+1|0,j=((j&255)<<3)+i|0,v+=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),f[0]=v,a[c]=b[0],a[c+1]=b[1],j=m[p],0==j<<24>>24){h=v;break a}}}}while(0);g=h*(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=g;a[c]=b[0];a[c+1]=b[1]}}function lG(x,r,i,g){for(var c;;){if(180==(g|0)){c=291;break}else{if(0==(g|0)){var d=r,l=i;break}else{if(90==(g|0)){c=290;break}else{if(270==(g|0)){c=297;break}}}}if(0>(g|0)){c=293;break}if(360>=(g|0)){c=296;break}g=(g|0)%360}if(291==c){d=r,l=-i}else{if(293==c){Ui(x,r,i,-g|0);return}if(290==c){d=i,l=-r}else{if(296==c){mG(x,r,i,g);return}297==c&&(d=i,l=r)}}r=x|0;f[0]=d;a[r>>2]=b[0];a[r+4>>2]=b[1];x=x+8|0;f[0]=l;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Ui(x,r,i,g){for(var c;;){if(270==(g|0)){c=312;break}else{if(180==(g|0)){c=306;break}else{if(90==(g|0)){c=305;break}else{if(0==(g|0)){var d=r,l=i;break}}}}if(0>(g|0)){c=308;break}if(360>=(g|0)){c=311;break}g=(g|0)%360}if(312==c){d=i,l=r}else{if(306==c){d=r,l=-i}else{if(308==c){lG(x,r,i,-g|0);return}if(311==c){mG(x,r,i,360-g|0);return}305==c&&(d=-i,l=r)}}r=x|0;f[0]=d;a[r>>2]=b[0];a[r+4>>2]=b[1];x=x+8|0;f[0]=l;a[x>>2]=b[0];a[x+4>>2]=b[1]}function mG(x,r,i,g){if((a[ot>>2]|0)==(g|0)){var g=(b[0]=a[el>>2],b[1]=a[el+4>>2],f[0]),c=(b[0]=a[fl>>2],b[1]=a[fl+4>>2],f[0])}else{var d=(g|0)/6.283185307179586,c=Ce(d);f[0]=c;a[fl>>2]=b[0];a[fl+4>>2]=b[1];d=se(d);f[0]=d;a[el>>2]=b[0];a[el+4>>2]=b[1];a[ot>>2]=g;g=d}d=x|0;f[0]=g*r-c*i;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+8|0;f[0]=g*i+c*r;a[x>>2]=b[0];a[x+4>>2]=b[1]}function Cb(b){if(0==(b|0)){return 0}b=Gb(b);if(0==(b|0)){Lc(Eo|0,14,1,a[oa>>2]),S()}else{return b}}function NF(b,r,i,g){b=mc(b,i*r|0);0!=(b|0)|0==(r|0)||(Lc(Eo|0,14,1,a[oa>>2]),S());if(g>>>0>=r>>>0){return b}li(b+g*i|0,(r-g)*i|0);return b}function wb(b,r){var i=mc(b,r);if(0!=(i|0)|0==(r|0)){return i}Lc(Eo|0,14,1,a[oa>>2]);S()}function dD(a,b,i,g,c,d){i-=a;g-=b;a=(d-b)*i-(c-a)*g;a*=a;return 1e-10>a?0:a/(i*i+g*g)}function aG(x,r,i){var g,c,d=h;h+=60;var l;nG(x);c=d>>2;g=(i+56|0)>>2;a[c]=a[g];a[c+1]=a[g+1];a[c+2]=a[g+2];a[c+3]=a[g+3];a[d+20>>2]=a[i+8>>2];a[d+16>>2]=a[i+4>>2];i=i+16|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=d+32|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];g=x+16|0;c=V(a[a[g>>2]+8>>2]|0,pt|0);var k=d+48|0;a[k>>2]=c;i=d+52|0;a[i>>2]=a[a[g>>2]+152>>2];g=d+56|0;m[g]=0;0==(c|0)?l=551:0==m[c]<<24>>24&&(l=551);551==l&&(a[k>>2]=Ze|0);1==m[r+4|0]<<24>>24?(r=a[r>>2],Ke(x,a[a[x>>2]+296>>2]),l=a[r+24>>2],0==(l|0)?Pa(x,Ac|0):Pa(x,l),qt(x,r,d)):oG(x,a[r>>2],d);0!=m[g]<<24>>24&&G(a[i>>2]);r=a[x+16>>2]>>2;a[r+37]=0;a[r+42]=0;a[r+46]=0;a[r+38]=0;Ei(x);h=d}function nG(b){var r,i=wk(b);r=i>>2;var b=a[r]>>2,g=a[b+1];a[r+1]=g;a[r+3]=a[b+3];0==(g|0)?a[r+2]=a[b+2]:3==(g|0)?a[r+2]=a[b+2]:1==(g|0)?a[r+2]=a[b+2]:2==(g|0)&&(a[r+2]=a[b+2]);a[r+37]=a[b+37];a[r+42]=a[b+42];a[r+46]=a[b+46];r=i+200|0;a[r>>2]=a[r>>2]&-2|a[b+50]&1}function qt(x,r,i){var g,c,d,l,k,e=r>>2,j=h;h+=132;var p=j+32,s=j+68,v=r|0;c=j>>2;k=(r+40|0)>>2;a[c]=a[k];a[c+1]=a[k+1];a[c+2]=a[k+2];a[c+3]=a[k+3];a[c+4]=a[k+4];a[c+5]=a[k+5];a[c+6]=a[k+6];a[c+7]=a[k+7];k=i|0;l=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=i+8|0;var t=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=a[e+19];var u=0==(a[e]|0)?0!=(a[e+2]|0):1,w=r+100|0;g=a[w>>2];if(0!=(g|0)){d=i+16|0;var A=a[d>>2];if(0!=(A|0)){var B=a[g>>2];0==(B|0)?a[Fo>>2]=0:(a[Fo>>2]=A,a[d>>2]=B)}d=i+20|0;A=a[d>>2];0!=(A|0)&&(B=a[g+4>>2],0==(B|0)?a[Go>>2]=0:(a[Go>>2]=A,a[d>>2]=B));d=(i+32|0)>>2;A=(b[0]=a[d],b[1]=a[d+1],f[0]);0>A||(g=g+16|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),0>g?(f[0]=-1,a[wh>>2]=b[0],a[wh+4>>2]=b[1]):(f[0]=A,a[wh>>2]=b[0],a[wh+4>>2]=b[1],f[0]=g,a[d]=b[0],a[d+1]=b[1]))}g=(j|0)>>2;d=(b[0]=a[g],b[1]=a[g+1],f[0])+l;f[0]=d;a[g]=b[0];a[g+1]=b[1];g=j+16|0;d=(g|0)>>2;l=(b[0]=a[d],b[1]=a[d+1],f[0])+l;f[0]=l;a[d]=b[0];a[d+1]=b[1];l=(j+8|0)>>2;d=(b[0]=a[l],b[1]=a[l+1],f[0])+t;f[0]=d;a[l]=b[0];a[l+1]=b[1];l=(j+24|0)>>2;t=(b[0]=a[l],b[1]=a[l+1],f[0])+t;f[0]=t;a[l]=b[0];a[l+1]=b[1];t=u?0!=(a[x+148>>2]&4|0)?0:gl(x,i,v,j,p,1):0;l=m[r+104|0];0==(l&2)<<24>>24?(s=a[e+5],0!=(s|0)&&pG(x,s,j),s=m[r+29|0],0!=s<<24>>24&&qG(x,a[e+6],s&255,j)):(r=a[e+6],r=0==(r|0)?Ac|0:r,d=s>>2,a[d]=a[c],a[d+1]=a[c+1],a[d+2]=a[c+2],a[d+3]=a[c+3],d=s+32|0,c=d>>2,g>>=2,a[c]=a[g],a[c+1]=a[g+1],a[c+2]=a[g+2],a[c+3]=a[g+3],c=d|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+16|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],c=s+8|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+24|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],c=s|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+48|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],c=s+40|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),g=s+56|0,f[0]=c,a[g>>2]=b[0],a[g+4>>2]=b[1],e=a[e+5],Ii(x,e,r,s|0,4,l&255,0!=(e|0)&1));e=a[k>>2];s=0==(e|0);a:do{if(!s){c=k;for(r=e;;){if(rG(x,r,i),c=c+4|0,r=a[c>>2],0==(r|0)){break a}}}}while(0);0!=(t|0)&&hl(x,p,1);u&&0!=(a[x+148>>2]&4|0)&&0!=(gl(x,i,v,j,p,0)|0)&&hl(x,p,0);0!=(a[w>>2]|0)&&(x=a[Fo>>2],0!=(x|0)&&(a[i+16>>2]=x),x=a[Go>>2],0!=(x|0)&&(a[i+20>>2]=x),x=(b[0]=a[wh>>2],b[1]=a[wh+4>>2],f[0]),0>x||(i=i+32|0,f[0]=x,a[i>>2]=b[0],a[i+4>>2]=b[1]));h=j}function oG(x,r,i){var g=D[r+4>>1];if(1<=g<<16>>16){var c=r+24|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d=r+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=i|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+.5*(c+d),k=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=r+32|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),h=r+16|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]);sG(x,g<<16>>16,a[r>>2],l,k+.5*(e+h),.5*(c-d),i+16|0,h,e)}}function Ho(b){var r=b+12|0,i=a[r>>2]-1|0;a[r>>2]=i;0==(i|0)&&(r=a[b>>2],0!=(r|0)&&G(r),r=a[b+4>>2],0!=(r|0)&&G(r),G(b))}function Io(b){b>>=2;G(a[b]);G(a[b+1]);G(a[b+2]);G(a[b+4]);G(a[b+3]);G(a[b+5]);G(a[b+6])}function rt(b){var r;if(0!=(b|0)){var i=b|0,g=b+4|0,c=D[g>>1],d=0>16;a:do{if(d){for(var f=0,k=a[i>>2],e=c;;){var h=k+4|0;if(0>1]<<16>>16){e=a[k>>2];r=e>>2;for(var j=0;;){var m=a[r];0!=(m|0)&&G(m);m=a[r+4];0!=(m|0)&&Ho(m);m=a[r+2];if(0!=(m|0)&&(r=a[r+3],0!=(r|0))){J[r](m)}j=j+1|0;if((j|0)<(D[h>>1]<<16>>16|0)){e=e+76|0,r=e>>2}else{break}}h=D[g>>1]}else{h=e}f=f+1|0;if((f|0)<(h<<16>>16|0)){k=k+24|0,e=h}else{break a}}}}while(0);i=a[i>>2];0!=(i|0)&&G(i);G(b)}}function $F(b,r){var i=m[b+4|0];if(3==i<<24>>24){i=a[b>>2],G(a[i+32>>2]),G(i)}else{if(1==i<<24>>24){var i=a[b>>2],g=i+76|0,c=a[g>>2];if(-1==(a[i+92>>2]|0)){Kc(c)}else{G(a[i+84>>2]);G(a[i+88>>2]);var d=a[c>>2],f=0==(d|0);a:do{if(!f){for(var k=c,e=d;;){if($F(e+80|0,0),Io(e|0),G(e),k=k+4|0,e=a[k>>2],0==(e|0)){break a}}}}while(0);G(a[g>>2])}g=a[i+100>>2];0!=(g|0)&&Ho(g);Io(i|0);G(i)}else{rt(a[b>>2])}}0!=(r|0)&&G(b)}function tG(b,r){var i,g=a[b+4>>2];if(0!=(g|0)&&0==(Lb(g,r)|0)){var c;return b|0}for(g=a[b+76>>2];;){var d=a[g>>2];if(0==(d|0)){c=0;i=668;break}var f=a[d+4>>2],d=0!=(f|0)&&0==(Lb(f,r)|0)?d|0:1!=m[d+84|0]<<24>>24?0:tG(a[d+80>>2],r);if(0==(d|0)){g=g+4|0}else{c=d;i=667;break}}if(668==i||667==i){return c}}function RF(b,r){var i,g=h;h+=148;var c=g+4,d=g+20;i=a[b>>2]<<28>>28;if(1==(i|0)){var f=a[b+20>>2]}else{2==(i|0)?f=a[a[b+12>>2]+20>>2]:3==(i|0)&&(f=a[b+32>>2])}f=a[f+32>>2];i=(r|0)>>2;var k=h;h+=152;var e=k+128,z=k+144;a[z>>2]=0;a[z+4>>2]=0;a[st>>2]=z;a[uG>>2]=0;a[vG>>2]=0;z=Nc(wG,a[Jo>>2]);a[Ko>>2]=z;z=Nc(xG,a[Jo>>2]);a[Lo>>2]=z;fc(e,128,k|0);a[yG>>2]=e;z=h;0==(a[Mo>>2]|0)&&(la(0,zG|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),a[Mo>>2]=a[Mo>>2]+1|0);h=z;a[g>>2]=2;Kc(a[Ko>>2]);Kc(a[Lo>>2]);a[Ko>>2]=0;a[Lo>>2]=0;a[st>>2]=0;uc(e);h=k;fc(c,128,d|0);m[r+82|0]=0;d=Hb(AG(b,c));a[i]=d;d=1==(a[r+12>>2]|0)?at(d):ct(d);k=a[i];G(k);a[i]=d;ht(f,r);uc(c);c=a[g>>2];h=g;return c}function AG(b,r){var i;i=a[b>>2]<<28>>28;2==(i|0)?(db(r,a[a[b+16>>2]+12>>2]),i=b+12|0,db(r,a[a[i>>2]+12>>2]),0==(a[a[a[i>>2]+20>>2]>>2]&16|0)?db(r,Af|0):db(r,Bf|0)):3==(i|0)?db(r,a[b+12>>2]):1==(i|0)&&db(r,a[b+12>>2]);i=(r+4|0)>>2;var g=a[i];if(g>>>0>2]>>>0){return m[g]=0,g=a[(r|0)>>2],a[i]=g}na(r,1);g=a[i];m[g]=0;g=a[(r|0)>>2];return a[i]=g}function sG(x,r,i,g,c,d,l,k,e){var j,p,s=h;h+=76;p=l>>2;l=h;h+=24;a[l>>2]=a[p];a[l+4>>2]=a[p+1];a[l+8>>2]=a[p+2];a[l+12>>2]=a[p+3];a[l+16>>2]=a[p+4];a[l+20>>2]=a[p+5];var v;p=g-d;var t=g+d;bG(x,1);if(0<(r|0)){for(var d=(l+16|0)>>2,u=l|0,l=l+4|0,w=s|0,A=s+20|0,B=s+24|0,C=s+40|0,P=s+48|0,T=s+4|0,y=s+8|0,$e=s+56|0,M=s+64|0,X=s+72|0,O=.5*(e-k)+c,c=0;;){k=m[i+24*c+6|0]<<24>>24;114==(k|0)?(k=i+24*c+8|0,e=t-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])):108==(k|0)?e=p:(k=i+24*c+8|0,e=g-.5*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));var k=(i+24*c+16|0)>>2,O=O-(b[0]=a[k],b[1]=a[k+1],f[0]),F=i+24*c+4|0,Da=0>1]<<16>>16;a:do{if(Da){var ia=e,E=0,J=a[(i>>2)+(6*c|0)];for(j=J>>2;;){var G=a[j+4];if(0==(G|0)){var sc=(b[0]=a[d],b[1]=a[d+1],f[0]),H=a[u>>2];v=844}else{var I=G+16|0,I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]),I=0>2],K=0==(K|0)?a[u>>2]:K,G=a[G+4>>2];if(0==(G|0)){sc=I,H=K,v=844}else{var L=G,ca=I,N=K}}844==v&&(v=0,L=a[l>>2],ca=sc,N=H);Pa(x,L);a[w>>2]=a[j];a[A>>2]=N;f[0]=ca;a[B>>2]=b[0];a[B+4>>2]=b[1];G=J+40|0;G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]);f[0]=G;a[C>>2]=b[0];a[C+4>>2]=b[1];f[0]=1;a[P>>2]=b[0];a[P+4>>2]=b[1];a[T>>2]=a[j+1];a[y>>2]=a[j+2];j=(J+32|0)>>2;G=(b[0]=a[j],b[1]=a[j+1],f[0]);f[0]=G;a[$e>>2]=b[0];a[$e+4>>2]=b[1];G=(b[0]=a[k],b[1]=a[k+1],f[0]);f[0]=G;a[M>>2]=b[0];a[M+4>>2]=b[1];m[X]=108;As(x,ia,O,s);E=E+1|0;if((E|0)<(D[F>>1]<<16>>16|0)){ia+=(b[0]=a[j],b[1]=a[j+1],f[0]),J=J+76|0,j=J>>2}else{break a}}}}while(0);c=c+1|0;if((c|0)==(r|0)){break}}}cG(x);h=s}function gl(b,r,i,g,c,d){var f,k=h;h+=176;f=g>>2;g=h;h+=32;a[g>>2]=a[f];a[g+4>>2]=a[f+1];a[g+8>>2]=a[f+2];a[g+12>>2]=a[f+3];a[g+16>>2]=a[f+4];a[g+20>>2]=a[f+5];a[g+24>>2]=a[f+6];a[g+28>>2]=a[f+7];var e,z=k+16,p=k+48,s=a[b+16>>2];f=(s+148|0)>>2;var v=c|0;a[v>>2]=a[f];var t=s+168|0;a[c+4>>2]=a[t>>2];var u=s+184|0;a[c+8>>2]=a[u>>2];var w=s+152|0;a[c+12>>2]=a[w>>2];var A=s+200|0,c=c+16|0;m[c]=a[A>>2]<<31>>31&255;var B=a[i+16>>2];if(0==(B|0)){e=852}else{if(0==m[B]<<24>>24){e=852}else{var C=0,P=B}}852==e&&(fc(k,128,p|0),C=r+52|0,e=a[C>>2],0==(e|0)&&(e=Hb(Kn(b,a[s+8>>2]|0,k)),a[C>>2]=e,m[r+56|0]=1),r=e,db(k,r),r=z|0,z=a[tt>>2],a[tt>>2]=z+1|0,Ma(r,BG|0,(j=h,h+=4,a[j>>2]=z,j)),db(k,r),r=(k+4|0)>>2,z=a[r],z>>>0>2]>>>0||(na(k,1),z=a[r]),m[z]=0,z=a[k>>2],a[r]=z,C=1,P=z);i=Or(b,0,a[i>>2],a[i+12>>2],a[i+8>>2],P,a[s+8>>2]|0);C&&uc(k);if(0==(i|0)){return h=k,i}0!=(d|0)&&!(0==(a[v>>2]|0)&&0==m[c]<<24>>24)&&Se(b);if(0==(a[f]|0)&&0==(a[A>>2]&1|0)){return h=k,i}Ln(b,g);ad(b,a[f],a[t>>2],a[u>>2],a[w>>2]);h=k;return i}function pG(b,r,i){var g,c=h;g=i>>2;i=h;h+=32;a[i>>2]=a[g];a[i+4>>2]=a[g+1];a[i+8>>2]=a[g+2];a[i+12>>2]=a[g+3];a[i+16>>2]=a[g+4];a[i+20>>2]=a[g+5];a[i+24>>2]=a[g+6];a[i+28>>2]=a[g+7];$b(b,r);Pa(b,r);mh(b,i,1);h=c}function qG(x,r,i,g){var c,d=h;c=g>>2;g=h;h+=32;a[g>>2]=a[c];a[g+4>>2]=a[c+1];a[g+8>>2]=a[c+2];a[g+12>>2]=a[c+3];a[g+16>>2]=a[c+4];a[g+20>>2]=a[c+5];a[g+24>>2]=a[c+6];a[g+28>>2]=a[c+7];r=0==(r|0)?Ac|0:r;$b(x,r);Pa(x,r);if(1==(i|0)){mh(x,g,0)}else{r=g+24|0;r=(b[0]=a[r>>2],b[1]=a[r+4>>2],f[0]);c=g+8|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var l=r-c,k=g+16|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),g=g|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=k-g,j=i-1|0;No(x,g,c,j,l);i=1-i|0;No(x,g,r,e,i);No(x,k,r,i,-l);No(x,k,c,-e,j)}h=d}function rG(x,r,i){var g,c,d,l,k=h;h+=68;var e=k+36,j=r|0;l=e>>2;d=(r+40|0)>>2;a[l]=a[d];a[l+1]=a[d+1];a[l+2]=a[d+2];a[l+3]=a[d+3];a[l+4]=a[d+4];a[l+5]=a[d+5];a[l+6]=a[d+6];a[l+7]=a[d+7];d=i|0;g=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=i+8|0;l=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=0==(a[r>>2]|0)?0!=(a[r+8>>2]|0):1;c=(e|0)>>2;var p=(b[0]=a[c],b[1]=a[c+1],f[0])+g;f[0]=p;a[c]=b[0];a[c+1]=b[1];c=(e+16|0)>>2;g=(b[0]=a[c],b[1]=a[c+1],f[0])+g;f[0]=g;a[c]=b[0];a[c+1]=b[1];g=(e+8|0)>>2;c=(b[0]=a[g],b[1]=a[g+1],f[0])+l;f[0]=c;a[g]=b[0];a[g+1]=b[1];g=(e+24|0)>>2;l=(b[0]=a[g],b[1]=a[g+1],f[0])+l;f[0]=l;a[g]=b[0];a[g+1]=b[1];l=d?0!=(a[x+148>>2]&4|0)?0:gl(x,i,j,e,k,1):0;g=a[r+20>>2];0!=(g|0)&&pG(x,g,e);g=m[r+29|0];0!=g<<24>>24&&qG(x,a[r+24>>2],g&255,e);g=(r+80|0)>>2;r=m[r+84|0];if(3==r<<24>>24){g=a[g];r=h;h+=64;c=g|0;p=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);c=g+8|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);var s=g+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=g+24|0,v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),t=i|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),p=p+t,u=i+8|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]);c+=u;s+=t;v+=u;t=r|0;f[0]=s;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+8|0;f[0]=v;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+32|0;f[0]=p;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+40|0;f[0]=c;a[t>>2]=b[0];a[t+4>>2]=b[1];t=r+16|0;f[0]=p;a[t>>2]=b[0];a[t+4>>2]=b[1];p=r+24|0;f[0]=v;a[p>>2]=b[0];a[p+4>>2]=b[1];p=r+48|0;f[0]=s;a[p>>2]=b[0];a[p+4>>2]=b[1];p=r+56|0;f[0]=c;a[p>>2]=b[0];a[p+4>>2]=b[1];c=a[g+36>>2];0==(c|0)&&(c=a[i+48>>2]);g=a[(g+32|0)>>2];ut(x,g,r|0,4,1,c);h=r}else{1==r<<24>>24?qt(x,a[g],i):oG(x,a[g],i)}0!=(l|0)&&hl(x,k,1);d&&0!=(a[x+148>>2]&4|0)&&0!=(gl(x,i,j,e,k,0)|0)&&hl(x,k,0);h=k}function hl(b,r,i){var g,c,d,f=a[b+16>>2];d=(f+148|0)>>2;0==(a[d]|0)?0==(a[f+200>>2]&1|0)?c=0:g=911:g=911;911==g&&(Se(b),c=a[d]);g=r|0;(c|0)!=(a[g>>2]|0)&&(G(c),a[d]=a[g>>2]);c=(f+168|0)>>2;g=a[c];var k=r+4|0;(g|0)!=(a[k>>2]|0)&&(G(g),a[c]=a[k>>2]);g=(f+184|0)>>2;var k=a[g],e=r+8|0;(k|0)!=(a[e>>2]|0)&&(G(k),a[g]=a[e>>2]);var k=f+152|0,e=a[k>>2],h=r+12|0;(e|0)!=(a[h>>2]|0)&&(G(e),e=a[h>>2],a[k>>2]=e);k=e;r=m[r+16|0]&1;f=f+200|0;a[f>>2]=a[f>>2]&-2|r;0!=(i|0)&&(i=a[d],0==(i|0)&0==(r|0)||ad(b,i,a[c],a[g],k))}function No(x,r,i,g,c){var d=h;h+=32;var l=d|0;f[0]=r;a[l>>2]=b[0];a[l+4>>2]=b[1];l=d+8|0;f[0]=i;a[l>>2]=b[0];a[l+4>>2]=b[1];l=d+16|0;f[0]=r+g;a[l>>2]=b[0];a[l+4>>2]=b[1];r=d+24|0;f[0]=i+c;a[r>>2]=b[0];a[r+4>>2]=b[1];mh(x,d,1);h=d}function Oo(x,r,i){var g=h;h+=8;var c=g+4;if(0!=m[ld]<<24>>24){var d=a[x+216>>2];if(0==(d|0)){var l=0,k=0}else{for(var e=0,z=0;;){var e=e+1|0,p=a[d+184>>2],s=0==(a[p>>2]|0);a:do{if(s){var v=z}else{for(var t=0,u=z;;){if(u=u+1|0,t=t+1|0,0==(a[p+(t<<2)>>2]|0)){v=u;break a}}}}while(0);d=a[d+168>>2];if(0==(d|0)){l=e;k=v;break}else{z=v}}}a[g>>2]=l;a[c>>2]=k;l=a[g>>2];c=a[c>>2];Va(a[oa>>2],CG|0,(j=h,h+=20,a[j>>2]=Po|0,a[j+4>>2]=l,a[j+8>>2]=c,a[j+12>>2]=i,a[j+16>>2]=r,j));mk(ih)}0==(DG(x)|0)&&EG();if(1>(i|0)){return vt(),h=g,0}x=V(x|0,FG|0);x=0==(x|0)?30:bh(x);a[Qo>>2]=x;if(0==(GG()|0)){x=0}else{return vt(),h=g,1}for(;;){c=HG();if(0==(c|0)){var w=x;break}IG(c,JG(a[c+12>>2],a[c+16>>2]));x=x+1|0;0!=m[ld]<<24>>24&&0==(x%100|0)&&(c=(x|0)%1e3,l=a[oa>>2],100==(c|0)?(Lc(Po|0,17,1,l),Va(a[oa>>2],wt|0,(j=h,h+=4,a[j>>2]=x,j))):(Va(l,wt|0,(j=h,h+=4,a[j>>2]=x,j)),0==(c|0)&&kk(10,a[oa>>2])));if((x|0)>=(i|0)){w=x;break}}1==(r|0)?KG():2==(r|0)?LG():MG();if(0==m[ld]<<24>>24){return h=g,0}99<(w|0)&&kk(10,a[oa>>2]);r=a[oa>>2];i=a[Le>>2];x=a[Ro>>2];c=Jn();Va(r,NG|0,(j=h,h+=24,a[j>>2]=Po|0,a[j+4>>2]=i,a[j+8>>2]=x,a[j+12>>2]=w,f[0]=c,a[j+16>>2]=b[0],a[j+20>>2]=b[1],j));h=g;return 0}function DG(b){var r;a[Ef>>2]=b;a[il>>2]=0;a[Ro>>2]=0;a[Le>>2]=0;var b=b+216|0,i=a[b>>2];if(0==(i|0)){r=0}else{for(var g=0,c=0;;){m[i+163|0]=0;r=g+1|0;a[Le>>2]=r;var g=a[i+184>>2],d=0==(a[g>>2]|0);a:do{if(d){var f=c}else{for(var e=0,h=c;;){if(h=h+1|0,a[Ro>>2]=h,e=e+1|0,0==(a[g+(e<<2)>>2]|0)){f=h;break a}}}}while(0);i=a[i+168>>2];if(0==(i|0)){break}else{g=r,c=f}}r<<=2}f=a[Vi>>2];r=0==(f|0)?Cb(r):wb(f,r);a[Vi>>2]=r;a[dg>>2]=0;r=a[eg>>2];r=0==(r|0)?Cb(a[Le>>2]<<2):wb(r,a[Le>>2]<<2);a[eg>>2]=r;a[jf>>2]=0;b=a[b>>2];if(0==(b|0)){var j;return 1}i=1;f=b;for(b=f>>2;;){r=(f+292|0)>>2;a[r]=0;f=f+176|0;g=a[a[f>>2]>>2];if(0==(g|0)){r=i,f=4}else{c=i;for(d=i=1;;){a[r]=d;a[g+168>>2]=0;a[g+172>>2]=-1;var p=0==(c|0)?0:(a[a[g+12>>2]+236>>2]-a[a[g+16>>2]+236>>2]|0)<(D[g+178>>1]&65535|0)?0:c,g=a[a[f>>2]+(i<<2)>>2];if(0==(g|0)){break}c=p;i=i+1|0;d=a[r]+1|0}r=p;f=(i<<2)+4|0}a[b+66]=fa(f);a[b+67]=0;f=a[b+46];for(i=0;;){var s=i+1|0;if(0==(a[f+(i<<2)>>2]|0)){break}else{i=s}}a[b+68]=fa(s<<2);a[b+69]=0;b=a[b+42];if(0==(b|0)){j=r;break}else{i=r,f=b,b=f>>2}}return j}function EG(){var b,r=h,i=ZE(a[Le>>2]),g=a[a[Ef>>2]+216>>2],c=0==(g|0);a:do{if(!c){for(var d=g;;){if(0==(a[d+292>>2]|0)&&Rk(i,d),d=a[d+168>>2],0==(d|0)){break a}}}}while(0);g=Sk(i);c=0==(g|0);a:do{if(c){b=0}else{for(var d=0,f=g;;){var e=f+236|0;a[e>>2]=0;var d=d+1|0,n=a[f+176>>2],z=a[n>>2],p=0==(z|0);b:do{if(!p){for(var m=0,v=z,t=0;;){if(v=(D[v+178>>1]&65535)+a[a[v+16>>2]+236>>2]|0,t=(t|0)>(v|0)?t:v,a[e>>2]=t,m=m+1|0,v=a[n+(m<<2)>>2],0==(v|0)){break b}}}}while(0);f=f+184|0;e=a[a[f>>2]>>2];n=0==(e|0);b:do{if(!n){z=0;for(p=e;;){if(p=p+12|0,m=a[p>>2]+292|0,t=a[m>>2]-1|0,a[m>>2]=t,1>(t|0)&&Rk(i,a[p>>2]),z=z+1|0,p=a[a[f>>2]+(z<<2)>>2],0==(p|0)){break b}}}}while(0);f=Sk(i);if(0==(f|0)){b=d;break a}}}}while(0);if((b|0)!=(a[Le>>2]|0)&&(la(1,OG|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),b=a[a[Ef>>2]+216>>2],0!=(b|0))){for(b>>=2;!(g=a[b+73],0!=(g|0)&&la(3,PG|0,(j=h,h+=8,a[j>>2]=a[b+3],a[j+4>>2]=g,j)),b=a[b+42],0==(b|0));){b>>=2}}G(a[i>>2]);G(i);h=r}function vt(){var b;b=a[a[Ef>>2]+216>>2];if(0!=(b|0)){var r=b;for(b=r>>2;;){var i=a[b+66];0!=(i|0)&&G(i);i=a[b+68];0!=(i|0)&&G(i);m[r+163|0]=0;b=a[b+42];if(0==(b|0)){break}else{r=b,b=r>>2}}}}function HG(){for(var b,r=a[il>>2],i=a[jf>>2],g=0,c=0,d=r;(d|0)<(i|0);){var f=a[a[eg>>2]+(d<<2)>>2],e=a[f+168>>2];if(0>(e|0)){if(e=0==(g|0)?f:(a[g+168>>2]|0)>(e|0)?f:g,f=c+1|0,(f|0)<(a[Qo>>2]|0)){g=e,c=f}else{var h=e;b=1036;break}}d=d+1|0;a[il>>2]=d}if(1036==b){return h}if(0<(r|0)){i=0}else{return g}for(;;){a[il>>2]=i;if((i|0)>=(r|0)){h=g;b=1033;break}d=a[a[eg>>2]+(i<<2)>>2];f=a[d+168>>2];if(0>(f|0)&&(g=0==(g|0)?d:(a[g+168>>2]|0)>(f|0)?d:g,c=c+1|0,(c|0)>=(a[Qo>>2]|0))){h=g;b=1035;break}i=i+1|0}if(1033==b||1035==b){return h}}function MG(){a[So>>2]=2147483647;a[xh>>2]=-2147483647;var b=a[a[Ef>>2]+216>>2],r=0==(b|0);a:do{if(r){var i=2147483647,g=-2147483647}else{for(var c=b,d=2147483647,f=-2147483647;;){if(0==m[c+162|0]<<24>>24){var e=a[c+236>>2],h=(d|0)<(e|0)?d:e;a[So>>2]=h;f=(f|0)>(e|0)?f:e;a[xh>>2]=f;e=h}else{e=d}h=f;c=a[c+168>>2];if(0==(c|0)){break}else{d=e,f=h}}if(0==(e|0)){return}for(c=b;;){if(f=c+236|0,a[f>>2]=a[f>>2]-e|0,c=a[c+168>>2],0==(c|0)){i=e;g=h;break a}}}}while(0);a[xh>>2]=g-i|0;a[So>>2]=0}function QG(b,r,i,g){var c,r=r+288|0,d=-i|0,f=0==(g|0)&1;for(c=b>>2;;){var e=a[r>>2];if((a[c+71]|0)<=(e|0)&&(e|0)<=(a[c+72]|0)){break}e=a[c+70];c=a[e+16>>2];var h=e+168|0;a[h>>2]=(0==(((b|0)==(c|0)?g:f)|0)?d:i)+a[h>>2]|0;b=a[e+12>>2];b=(a[c+288>>2]|0)>(a[b+288>>2]|0)?c:b;c=b>>2}return b}function RG(b,r){var i,g;g=(b+172|0)>>2;a[r+172>>2]=a[g];a[a[eg>>2]+(a[g]<<2)>>2]=r;a[g]=-1;var c=a[b+16>>2],d=c+276|0;g=a[d>>2]-1|0;a[d>>2]=g;for(var c=c+272|0,d=a[c>>2],f=0;;){var e=(f<<2)+d|0;if((f|0)>(g|0)){var h=e;break}if((a[e>>2]|0)==(b|0)){h=e;break}else{f=f+1|0}}a[h>>2]=a[d+(g<<2)>>2];a[a[c>>2]+(g<<2)>>2]=0;g=a[b+12>>2];c=g+268|0;h=a[c>>2]-1|0;a[c>>2]=h;g=g+264|0;c=a[g>>2];for(d=0;;){f=(d<<2)+c|0;if((d|0)>(h|0)){i=f;break}if((a[f>>2]|0)==(b|0)){i=f;break}else{d=d+1|0}}a[i>>2]=a[c+(h<<2)>>2];a[a[g>>2]+(h<<2)>>2]=0;g=a[r+16>>2];i=(g+276|0)>>2;h=a[i];a[i]=h+1|0;g=g+272|0;a[a[g>>2]+(h<<2)>>2]=r;a[a[g>>2]+(a[i]<<2)>>2]=0;g=a[r+12>>2];i=(g+268|0)>>2;h=a[i];a[i]=h+1|0;g=g+264|0;a[a[g>>2]+(h<<2)>>2]=r;a[a[g>>2]+(a[i]<<2)>>2]=0}function GG(){var b;if(2>(a[Le>>2]|0)){var r;return 0}a:for(;;){if((SG()|0)>=(a[Le>>2]|0)){b=1075;break}var i=a[a[Ef>>2]+216>>2];if(0==(i|0)){r=1;b=1078;break}else{var g=0}for(;;){var c=a[i+184>>2],d=a[c>>2],f=0==(d|0);b:do{if(f){var e=g}else{for(var h=g,j=0,p=d;;){if(0>(a[p+172>>2]|0)){var m=a[p+12>>2],v=a[p+16>>2],h=0==(TG(m,v)|0)?h:0!=(h|0)&&(a[m+236>>2]-a[v+236>>2]-(D[p+178>>1]&65535)|0)>=(a[a[h+12>>2]+236>>2]-a[a[h+16>>2]+236>>2]-(D[h+178>>1]&65535)|0)?h:p}j=j+1|0;p=a[c+(j<<2)>>2];if(0==(p|0)){e=h;break b}}}}while(0);i=a[i+168>>2];if(0==(i|0)){break}else{g=e}}if(0==(e|0)){r=1;b=1080;break}g=a[e+12>>2];i=a[e+16>>2];c=a[g+236>>2]-a[i+236>>2]|0;d=D[e+178>>1]&65535;f=c-d|0;if((c|0)!=(d|0)&&(g=(TG(g,i)|0)==(g|0)?-f|0:f,i=a[dg>>2],0<(i|0))){c=a[Vi>>2];for(d=0;;){if(f=a[c+(d<<2)>>2]+236|0,a[f>>2]=a[f>>2]+g|0,d=d+1|0,(d|0)>=(i|0)){continue a}}}}if(1080==b){return r}if(1075==b){return b=a[Ef>>2]+216|0,jl(a[b>>2],0,1),xt(a[b>>2],0),0}if(1078==b){return r}}function JG(b,r){var i=(a[r+288>>2]|0)<(a[b+288>>2]|0),g=i?r:b;a[yh>>2]=0;a[Ff>>2]=2147483647;a[To>>2]=a[g+284>>2];a[Uo>>2]=a[g+288>>2];i?Vo(g):Wo(g);return i=a[yh>>2]}function KG(){var b,r;MG();var i=fa((a[xh>>2]<<2)+4|0);r=i>>2;b=a[xh>>2];var g=0>(b|0);a:do{if(!g){for(var c=0;;){if(a[(c<<2>>2)+r]=0,c=c+1|0,(c|0)>(b|0)){break a}}}}while(0);b=a[Ef>>2]+216|0;g=a[b>>2];if(0!=(g|0)){for(;!(0==m[g+162|0]<<24>>24&&(c=(a[g+236>>2]<<2)+i|0,a[c>>2]=a[c>>2]+1|0),g=a[g+168>>2],0==(g|0));){}b=a[b>>2];if(0!=(b|0)){g=b;for(b=g>>2;;){if(0==m[g+162|0]<<24>>24){var c=a[xh>>2],d=a[b+44],f=a[d>>2],e=0==(f|0);a:do{if(e){var h=0,j=0}else{for(var p=0,s=0,v=0,t=f;;){if(p=p+ib[t+164>>2]&-1,t=(D[t+178>>1]&65535)+a[a[t+16>>2]+236>>2]|0,s=(s|0)>(t|0)?s:t,v=v+1|0,t=a[d+(v<<2)>>2],0==(t|0)){h=p;j=s;break a}}}}while(0);d=a[b+46];f=a[d>>2];e=0==(f|0);a:do{if(e){var u=0,w=c}else{p=0;s=c;v=0;for(t=f;;){if(p=p+ib[t+164>>2]&-1,t=a[a[t+12>>2]+236>>2]-(D[t+178>>1]&65535)|0,s=(s|0)<(t|0)?s:t,v=v+1|0,t=a[d+(v<<2)>>2],0==(t|0)){u=p;w=s;break a}}}}while(0);c=0>(j|0)?0:j;if((h|0)==(u|0)){d=c+1|0;f=(d|0)>(w|0);a:do{if(f){var A=c}else{e=c;for(s=d;;){if(e=(a[(s<<2>>2)+r]|0)<(a[(e<<2>>2)+r]|0)?s:e,s=s+1|0,(s|0)>(w|0)){A=e;break a}}}}while(0);c=g+236|0;d=(a[c>>2]<<2)+i|0;a[d>>2]=a[d>>2]-1|0;d=(A<<2)+i|0;a[d>>2]=a[d>>2]+1|0;a[c>>2]=A}c=a[b+66];0!=(c|0)&&G(c);c=a[b+68];0!=(c|0)&&G(c);m[g+163|0]=0}b=a[b+42];if(0==(b|0)){break}else{g=b,b=g>>2}}}}G(i)}function LG(){var b=a[jf>>2];if(0<(b|0)){for(var r=a[eg>>2],i=0;;){var g=a[r+(i<<2)>>2];if(0==(a[g+168>>2]|0)){var c=g+12|0,d=g+16|0,g=JG(a[c>>2],a[d>>2]);0!=(g|0)&&(g=a[a[g+12>>2]+236>>2]-a[a[g+16>>2]+236>>2]-(D[g+178>>1]&65535)|0,2>(g|0)||(d=a[d>>2],c=a[c>>2],(a[d+288>>2]|0)<(a[c+288>>2]|0)?fg(d,(g|0)/2&-1):fg(c,(g|0)/-2&-1)))}i=i+1|0;if((i|0)>=(b|0)){break}}}vt()}function fg(b,r){var i=b+236|0;a[i>>2]=a[i>>2]-r|0;var i=b+272|0,g=a[i>>2],c=a[g>>2],d=0==(c|0);a:do{if(!d){for(var f=b+280|0,e=1,h=c,j=g;;){(h|0)!=(a[f>>2]|0)&&(fg(a[h+12>>2],r),j=a[i>>2]);h=a[j+(e<<2)>>2];if(0==(h|0)){break a}e=e+1|0}}}while(0);i=b+264|0;f=a[i>>2];d=a[f>>2];if(0!=(d|0)){g=b+280|0;for(c=1;;){(d|0)!=(a[g>>2]|0)&&(fg(a[d+16>>2],r),f=a[i>>2]);d=a[f+(c<<2)>>2];if(0==(d|0)){break}c=c+1|0}}}function IG(b,r){var i,g,c,d;d=(r+12|0)>>2;c=(r+16|0)>>2;var f=a[a[d]+236>>2]-a[a[c]+236>>2]-(D[r+178>>1]&65535)|0;if(0<(f|0)){var e=a[b+16>>2];g=e>>2;if(1==(a[g+69]+a[g+67]|0)){fg(e,f)}else{var h=a[b+12>>2];i=h>>2;1==(a[i+69]+a[i+67]|0)?fg(h,-f|0):(a[g+72]|0)<(a[i+72]|0)?fg(e,f):fg(h,-f|0)}}i=b+168|0;g=a[i>>2];f=QG(a[c],a[d],g,1);(QG(a[d],a[c],g,0)|0)==(f|0)?(a[r+168>>2]=-g|0,a[i>>2]=0,RG(b,r),jl(f,a[f+280>>2],a[f+284>>2])):S()}function TG(a,b){var i,g=0==m[a+163|0]<<24>>24;if(0==m[b+163|0]<<24>>24){if(g){i=1154}else{var c=a}}else{g?c=b:i=1154}1154==i&&(c=0);return c}function yt(b,r,i){var b=b>>2,g,c=a[b+4],d=(c|0)==(r|0),c=a[(d?a[b+3]:c)+288>>2];if((a[r+284>>2]|0)>(c|0)){g=1160}else{if((c|0)>(a[r+288>>2]|0)){g=1160}else{var f=0,e=(-1<(a[b+43]|0)?a[b+42]|0:0)-ib[b+41]}}1160==g&&(f=1,e=ib[b+41]);g=e&-1;r=0<(i|0)?(a[b+3]|0)==(r|0)?1:-1:d?1:-1;f=0==(f|0)?r:-r|0;return f=0>(f|0)?-g|0:g}function jl(b,r,i){a[b+280>>2]=r;a[b+284>>2]=i;var g=b+272|0,c=a[g>>2],d=a[c>>2],f=0==(d|0);a:do{if(f){var e=i}else{for(var h=0,j=i,p=d,m=c;;){if((p|0)!=(r|0)&&(j=jl(a[p+12>>2],p,j),m=a[g>>2]),h=h+1|0,p=a[m+(h<<2)>>2],0==(p|0)){e=j;break a}}}}while(0);i=b+264|0;c=a[i>>2];d=a[c>>2];if(0==(d|0)){var v=e;a[(b+288|0)>>2]=v;return v+1|0}for(g=0;;){if((d|0)!=(r|0)&&(e=jl(a[d+16>>2],d,e),c=a[i>>2]),g=g+1|0,d=a[c+(g<<2)>>2],0==(d|0)){v=e;break}}a[(b+288|0)>>2]=v;return v+1|0}function Wo(b){var r=b+184|0,i=a[r>>2],g=a[i>>2],c=0==(g|0);a:do{if(!c){for(var d=b+288|0,f=0,e=g,h=i;;){if(0>(a[e+172>>2]|0)){var j=a[e+12>>2],p=a[j+288>>2];(a[To>>2]|0)>(p|0)|(p|0)>(a[Uo>>2]|0)&&(j=a[j+236>>2]-a[a[e+16>>2]+236>>2]-(D[e+178>>1]&65535)|0,(j|0)<(a[Ff>>2]|0)|0==(a[yh>>2]|0)&&(a[yh>>2]=e,a[Ff>>2]=j))}else{e=a[e+12>>2],(a[e+288>>2]|0)<(a[d>>2]|0)&&(Wo(e),h=a[r>>2])}f=f+1|0;e=a[h+(f<<2)>>2];if(0==(e|0)){break a}}}}while(0);r=b+264|0;d=a[r>>2];g=a[d>>2];c=a[Ff>>2];if(0!=(g|0)&0<(c|0)){b=b+288|0;for(i=1;;){g=a[g+16>>2];(a[g+288>>2]|0)<(a[b>>2]|0)&&(Wo(g),d=a[r>>2],c=a[Ff>>2]);g=a[d+(i<<2)>>2];if(!(0!=(g|0)&0<(c|0))){break}i=i+1|0}}}function Vo(b){var c=b+176|0,i=a[c>>2],g=a[i>>2],d=0==(g|0);a:do{if(!d){for(var f=b+288|0,e=0,k=g,h=i;;){if(0>(a[k+172>>2]|0)){var j=a[k+16>>2],p=a[j+288>>2];(a[To>>2]|0)>(p|0)|(p|0)>(a[Uo>>2]|0)&&(j=a[a[k+12>>2]+236>>2]-a[j+236>>2]-(D[k+178>>1]&65535)|0,(j|0)<(a[Ff>>2]|0)|0==(a[yh>>2]|0)&&(a[yh>>2]=k,a[Ff>>2]=j))}else{k=a[k+16>>2],(a[k+288>>2]|0)<(a[f>>2]|0)&&(Vo(k),h=a[c>>2])}e=e+1|0;k=a[h+(e<<2)>>2];if(0==(k|0)){break a}}}}while(0);c=b+272|0;f=a[c>>2];g=a[f>>2];d=a[Ff>>2];if(0!=(g|0)&0<(d|0)){b=b+288|0;for(i=1;;){g=a[g+12>>2];(a[g+288>>2]|0)<(a[b>>2]|0)&&(Vo(g),f=a[c>>2],d=a[Ff>>2]);g=a[f+(i<<2)>>2];if(!(0!=(g|0)&0<(d|0))){break}i=i+1|0}}}function SG(){var b,c=a[Ef>>2]+216|0,i=a[c>>2],g=0==(i|0);a:do{if(!g){var d=i;for(b=d>>2;;){if(m[d+163|0]=0,a[a[b+68]>>2]=0,a[a[b+66]>>2]=0,a[b+69]=0,a[b+67]=0,b=a[b+42],0==(b|0)){break a}else{d=b,b=d>>2}}}}while(0);i=a[jf>>2];g=0<(i|0);a:do{if(g){b=a[eg>>2];for(d=0;;){if(a[a[b+(d<<2)>>2]+172>>2]=-1,d=d+1|0,(d|0)>=(i|0)){break a}}}}while(0);a[jf>>2]=0;a[dg>>2]=0;c=a[c>>2];if(0==(c|0)){return 0}for(;!(Xo(c),c=a[c+168>>2],!(0!=(c|0)&0==(a[jf>>2]|0)));){}return c=a[dg>>2]}function xt(b,c){var i=b+272|0,g=a[i>>2],d=a[g>>2],f=0==(d|0);a:do{if(!f){for(var e=0,k=d,h=g;;){if((k|0)!=(c|0)&&(xt(a[k+12>>2],k),h=a[i>>2]),e=e+1|0,k=a[h+(e<<2)>>2],0==(k|0)){break a}}}}while(0);i=b+264|0;g=a[i>>2];d=a[g>>2];f=0==(d|0);a:do{if(!f){e=0;k=d;for(h=g;;){if((k|0)!=(c|0)&&(xt(a[k+16>>2],k),h=a[i>>2]),e=e+1|0,k=a[h+(e<<2)>>2],0==(k|0)){break a}}}}while(0);if(0!=(c|0)){g=a[c+16>>2];(a[g+280>>2]|0)==(c|0)?i=1:(i=-1,g=a[c+12>>2]);d=a[g+184>>2];f=a[d>>2];e=0==(f|0);a:do{if(e){var j=0}else{for(var k=h=0,p=f;;){if(h=yt(p,g,i)+h|0,k=k+1|0,p=a[d+(k<<2)>>2],0==(p|0)){j=h;break a}}}}while(0);d=a[g+176>>2];e=a[d>>2];if(0==(e|0)){var m=j}else{for(f=0;;){if(j=yt(e,g,i)+j|0,f=f+1|0,e=a[d+(f<<2)>>2],0==(e|0)){m=j;break}}}j=c+168|0;a[j>>2]=m}}function Xo(b){var c,i=b+184|0,g=0;a:for(;;){var d=a[a[i>>2]+(g<<2)>>2];if(0==(d|0)){c=1253;break}var f=d+12|0,e=a[f>>2];do{if(0==m[e+163|0]<<24>>24&&(a[e+236>>2]-a[a[d+16>>2]+236>>2]|0)==(D[d+178>>1]&65535|0)){zt(d);if((a[jf>>2]|0)==(a[Le>>2]-1|0)){var k=1;c=1268;break a}if(0!=(Xo(a[f>>2])|0)){k=1;c=1269;break a}}}while(0);g=g+1|0}if(1268==c){return k}if(1253==c){b=b+176|0;i=0;a:for(;;){g=a[a[b>>2]+(i<<2)>>2];if(0==(g|0)){k=0;c=1266;break}d=g+16|0;f=a[d>>2];do{if(0==m[f+163|0]<<24>>24&&(a[a[g+12>>2]+236>>2]-a[f+236>>2]|0)==(D[g+178>>1]&65535|0)){zt(g);if((a[jf>>2]|0)==(a[Le>>2]-1|0)){k=1;c=1267;break a}if(0!=(Xo(a[d>>2])|0)){k=1;c=1270;break a}}}while(0);i=i+1|0}if(1270==c||1266==c||1267==c){return k}}else{if(1269==c){return k}}}function At(x,c){var i,g,d,e,l,k=h;h+=144;var n=k+16,j=k+32,p=k+48,m=k+64,v=k+80,t=k+96,u=k+112;i=k+128;l=(x+52|0)>>2;var w=(b[0]=a[l],b[1]=a[l+1],f[0]);e=(x+60|0)>>2;var A=(b[0]=a[e],b[1]=a[e+1],f[0]);d=(x+68|0)>>2;var B=(b[0]=a[d],b[1]=a[d+1],f[0]);g=(x+76|0)>>2;var C=(b[0]=a[g],b[1]=a[g+1],f[0]);2>(c-1|0)>>>0?(zh(k,w,C),u=k|0,t=k+8|0,ce(n,(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])),u=n|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),t=n+8|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),zh(j,B,A),B=j|0,j=j+8|0,ce(p,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])),B=p|0,j=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=p+8|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),A=j,j=t,p=u):(zh(m,w,A),p=m|0,j=m+8|0,ce(v,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])),p=v|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),j=v+8|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),zh(t,B,C),B=t|0,t=t+8|0,ce(u,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])),B=u|0,t=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=u+8|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),A=t);f[0]=p;a[l]=b[0];a[l+1]=b[1];f[0]=j;a[e]=b[0];a[e+1]=b[1];f[0]=A;a[d]=b[0];a[d+1]=b[1];f[0]=B;a[g]=b[0];a[g+1]=b[1];e=a[x+48>>2];0!=(e|0)&&(g=e+56|0,d=g|0,e=e+64|0,ce(i,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])),g>>=2,i>>=2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3]);i=x+208|0;if(1<=(a[i>>2]|0)){g=x+212|0;for(d=1;!(At(a[a[g>>2]+(d<<2)>>2],c),d=d+1|0,(d|0)>(a[i>>2]|0));){}}h=k}function zt(b){var c,i;c=b+172|0;-1<(a[c>>2]|0)&&S();i=a[jf>>2];a[c>>2]=i;a[jf>>2]=i+1|0;a[a[eg>>2]+(i<<2)>>2]=b;i=b+16|0;c=a[i>>2];if(0==m[c+163|0]<<24>>24){var g=a[dg>>2];a[dg>>2]=g+1|0;a[a[Vi>>2]+(g<<2)>>2]=c}c=b+12|0;g=a[c>>2];if(0==m[g+163|0]<<24>>24){var d=a[dg>>2];a[dg>>2]=d+1|0;a[a[Vi>>2]+(d<<2)>>2]=g}g=a[i>>2];m[g+163|0]=1;i=(g+276|0)>>2;d=a[i];a[i]=d+1|0;var f=g+272|0;a[a[f>>2]+(d<<2)>>2]=b;a[a[f>>2]+(a[i]<<2)>>2]=0;0==(a[a[g+184>>2]+(a[i]-1<<2)>>2]|0)&&S();i=a[c>>2];m[i+163|0]=1;c=(i+268|0)>>2;g=a[c];a[c]=g+1|0;d=i+264|0;a[a[d>>2]+(g<<2)>>2]=b;a[a[d>>2]+(a[c]<<2)>>2]=0;0==(a[a[i+176>>2]+(a[c]-1<<2)>>2]|0)&&S()}function zh(x,c,i){var g=x|0;f[0]=c;a[g>>2]=b[0];a[g+4>>2]=b[1];x=x+8|0;f[0]=i;a[x>>2]=b[0];a[x+4>>2]=b[1]}function ce(x,c,i){var g=h;h+=16;Ui(g,c,i,90*a[kl>>2]|0);var c=g|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),i=g+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),c=c-(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),i=i-(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0]),d=x|0;f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];x=x+8|0;f[0]=i;a[x>>2]=b[0];a[x+4>>2]=b[1];h=g}function Bt(x,c){var i,g,d,e=h;h+=1072;i=e+16;var l=e+32,k=e+48,n=ra(x);if(0!=(n|0)){for(;;){var z;g=n+24|0;var p=a[n+124>>2];if(0!=(p|0)){var s=g+8|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=g+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);g=g+88|0;d=p+24|0;z=z+(v+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]))+.5*(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);v=p+56|0;f[0]=z;a[v>>2]=b[0];a[v+4>>2]=b[1];v=p+64|0;f[0]=s;a[v>>2]=b[0];a[v+4>>2]=b[1];m[p+81|0]=1}p=z;n=ba(x,n);if(0==(n|0)){break}else{z=p}}}n=a[x+152>>2];p=n&3;a[kl>>2]=p;n&=1;m[Ct]=n;(g=0==n<<24>>24)?Dt(x):Et(x);n=x+48|0;z=a[n>>2];if(0==(z|0)){v=s=0}else{if(0!=m[z+81|0]<<24>>24){v=s=0}else{s=z+24|0;v=z+32|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0])+16;v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0])+8;d=0!=(m[x+283|0]&1)<<24>>24;if(g){g=0==(p|0);d?g?(g=(x+76|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])+v):(g=(x+60|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])-v):g?(g=(x+60|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])-v):(g=(x+76|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])+v);f[0]=d;a[g]=b[0];a[g+1]=b[1];d=(x+68|0)>>2;var t=(b[0]=a[d],b[1]=a[d+1],f[0]);g=(x+52|0)>>2;var u=(b[0]=a[g],b[1]=a[g+1],f[0]),w=t-u}else{d?(g=(x+68|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])+v):(g=(x+52|0)>>2,d=(b[0]=a[g],b[1]=a[g+1],f[0])-v),f[0]=d,a[g]=b[0],a[g+1]=b[1],d=(x+76|0)>>2,t=(b[0]=a[d],b[1]=a[d+1],f[0]),g=(x+60|0)>>2,u=(b[0]=a[g],b[1]=a[g+1],f[0]),w=t-u}s>w&&(w=.5*(s-w),f[0]=u-w,a[g]=b[0],a[g+1]=b[1],f[0]=t+w,a[d]=b[0],a[d+1]=b[1])}}0==(c|0)?i=z:(1==(p|0)?(i=x+76|0,l=x+52|0,zh(e,-(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),i=e>>2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]):0==(p|0)?(i=(x+52|0)>>2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]):2==(p|0)?(l=x+52|0,p=x+76|0,zh(i,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),-(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])),i>>=2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]):3==(p|0)&&(i=x+60|0,p=x+52|0,zh(l,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])),i=l>>2,a[Yb>>2]=a[i],a[Yb+4>>2]=a[i+1],a[Yb+8>>2]=a[i+2],a[Yb+12>>2]=a[i+3]),UG(x),i=a[n>>2]);0!=(i|0)&&0==m[i+81|0]<<24>>24&&(n=s,i=v,l=m[x+283|0],p=l<<24>>24,0==(p&4|0)?(z=x+52|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),0==(p&2|0)?(n=x+68|0,n=.5*(z+(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]))):n=z+.5*n):(p=x+68|0,n=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])-.5*n),0==(l&1)<<24>>24?(l=x+60|0,i=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+.5*i):(l=x+76|0,i=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-.5*i),l=x+48|0,p=a[l>>2],z=p+56|0,f[0]=n,a[z>>2]=b[0],a[z+4>>2]=b[1],n=p+64|0,f[0]=i,a[n>>2]=b[0],a[n+4>>2]=b[1],m[a[l>>2]+81|0]=1);0!=(a[Yn>>2]|0)&&(k|=0,0==m[Ct]<<24>>24?(i=(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0]),l=(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),Ma(k,VG|0,(j=h,h+=48,f[0]=i,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=i,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=l,a[j+24>>2]=b[0],a[j+28>>2]=b[1],f[0]=-l,a[j+32>>2]=b[0],a[j+36>>2]=b[1],f[0]=-i,a[j+40>>2]=b[0],a[j+44>>2]=b[1],j))):(i=(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),l=(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0]),Ma(k,WG|0,(j=h,h+=32,f[0]=i,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=i,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=l,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j))),k=Hb(k),a[a[Yn>>2]>>2]=k);h=e}function Et(x){if((a[x+32>>2]|0)!=(x|0)){var c=x+48|0,i=a[c>>2];if(0!=(i|0)&&0==m[i+81|0]<<24>>24){var g=m[x+283|0];if(0==(g&1)<<24>>24){var d=x+132|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+52|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+.5*d,e=x+140|0}else{d=x+100|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+68|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-.5*d,e=x+108|0}e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=g<<24>>24;0==(g&4|0)?0==(g&2|0)?(g=x+60|0,e=x+76|0,g=.5*((b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))):(g=x+76|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-.5*e):(g=x+60|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+.5*e);e=i+56|0;f[0]=d;a[e>>2]=b[0];a[e+4>>2]=b[1];i=i+64|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];m[a[c>>2]+81|0]=1}}c=x+208|0;if(1<=(a[c>>2]|0)){x=x+212|0;for(i=1;!(Et(a[a[x>>2]+(i<<2)>>2]),i=i+1|0,(i|0)>(a[c>>2]|0));){}}}function Dt(x){if((a[x+32>>2]|0)!=(x|0)){var c=x+48|0,i=a[c>>2];if(0!=(i|0)&&0==m[i+81|0]<<24>>24){var g=m[x+283|0];if(0==(g&1)<<24>>24){var d=x+92|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+60|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+.5*d,e=x+84|0}else{d=x+124|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=x+76|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-.5*d,e=x+116|0}e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=g<<24>>24;if(0==(g&4|0)){var l=x+52|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);0==(g&2|0)?(g=x+68|0,g=.5*(l+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]))):g=l+.5*e}else{g=x+68|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-.5*e}e=i+56|0;f[0]=g;a[e>>2]=b[0];a[e+4>>2]=b[1];i=i+64|0;f[0]=d;a[i>>2]=b[0];a[i+4>>2]=b[1];m[a[c>>2]+81|0]=1}}c=x+208|0;if(1<=(a[c>>2]|0)){x=x+212|0;for(i=1;!(Dt(a[a[x>>2]+(i<<2)>>2]),i=i+1|0,(i|0)>(a[c>>2]|0));){}}}function UG(x){var c,i,g,d=h;h+=32;var e=d+16;if(0==(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0])){if(!(0!=(b[0]=a[Yb+8>>2],b[1]=a[Yb+12>>2],f[0])|0!=(a[kl>>2]|0))){h=d;return}}var l=ra(x),k=0==(l|0);a:do{if(!k){g=d>>2;i=e>>2;for(var n=l;;){0!=(a[kl>>2]|0)&&et(n,0);var j=c=n+32|0,p=n+40|0;ce(d,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]));c>>=2;a[c]=a[g];a[c+1]=a[g+1];a[c+2]=a[g+2];a[c+3]=a[g+3];j=a[n+124>>2];0!=(j|0)&&(p=j+56|0,c=p>>2,j=j+64|0,ce(e,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])),a[c]=a[i],a[c+1]=a[i+1],a[c+2]=a[i+2],a[c+3]=a[i+3]);c=1==(a[Ah>>2]|0);b:do{if(c&&(j=Ib(x,n),0!=(j|0))){for(;;){if(XG(j),j=yb(x,j),0==(j|0)){break b}}}}while(0);n=ba(x,n);if(0==(n|0)){break a}}}}while(0);At(x,a[x+152>>2]&3);h=d}function XG(x){var c,i,g,d,e,l,k,n,z,p,s;i=x>>2;var v=h;h+=112;var t=v+16,u=v+32;e=v+48;d=v+64;g=v+80;c=v+96;l=(x+24|0)>>2;var w=a[l];if(0==(w|0)){if(0!=m[Wi]<<24>>24&&6==m[x+124|0]<<24>>24){h=v;return}c=a[a[i+3]+12>>2];la(1,YG|0,(j=h,h+=8,a[j>>2]=a[a[i+4]+12>>2],a[j+4>>2]=c,j))}else{var A=0<(a[w+4>>2]|0);a:do{if(A){s=u>>2;p=t>>2;var x=v>>2,B=0;for(k=w;;){k=a[k>>2]>>2;n=a[k+(12*B|0)];var C=a[k+(12*B|0)+1],P=a[k+(12*B|0)+2];k=a[k+(12*B|0)+3];var T=0<(C|0);b:do{if(T){for(var y=0;;){z=(y<<4)+n|0;var D=z|0,M=(y<<4)+n+8|0;ce(v,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]));z>>=2;a[z]=a[x];a[z+1]=a[x+1];a[z+2]=a[x+2];a[z+3]=a[x+3];y=y+1|0;if((y|0)==(C|0)){break b}}}}while(0);0!=(P|0)&&(P=a[a[l]>>2],n=P+48*B+16|0,C=n|0,P=P+48*B+24|0,ce(t,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0])),n>>=2,a[n]=a[p],a[n+1]=a[p+1],a[n+2]=a[p+2],a[n+3]=a[p+3]);0!=(k|0)&&(C=a[a[l]>>2],k=C+48*B+32|0,n=k|0,C=C+48*B+40|0,ce(u,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])),k>>=2,a[k]=a[s],a[k+1]=a[s+1],a[k+2]=a[s+2],a[k+3]=a[s+3]);B=B+1|0;k=a[l];if((B|0)>=(a[k+4>>2]|0)){break a}}}}while(0);u=a[i+27];0!=(u|0)&&(l=u+56|0,t=l|0,u=u+64|0,ce(e,(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])),l>>=2,e>>=2,a[l]=a[e],a[l+1]=a[e+1],a[l+2]=a[e+2],a[l+3]=a[e+3]);t=a[i+30];0!=(t|0)&&(e=t+56|0,l=e|0,t=t+64|0,ce(d,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])),e>>=2,d>>=2,a[e]=a[d],a[e+1]=a[d+1],a[e+2]=a[d+2],a[e+3]=a[d+3]);l=a[i+28];0!=(l|0)&&(d=l+56|0,e=d|0,l=l+64|0,ce(g,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),d>>=2,g>>=2,a[d]=a[g],a[d+1]=a[g+1],a[d+2]=a[g+2],a[d+3]=a[g+3]);d=a[i+29];0!=(d|0)&&(i=d+56|0,g=i|0,d=d+64|0,ce(c,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),i>>=2,c>>=2,a[i]=a[c],a[i+1]=a[c+1],a[i+2]=a[c+2],a[i+3]=a[c+3])}h=v}function Ft(x,c,i,g,d,e,l,k){var n,j,p=h;h+=88;var m=p+8;j=m>>2;var v=p+16;n=p+24;var t=p+56,u=p|0;a[u>>2]=d;d=p+4|0;a[d>>2]=e;e=n|0;f[0]=x;a[e>>2]=b[0];a[e+4>>2]=b[1];x=n+8|0;f[0]=c;a[x>>2]=b[0];a[x+4>>2]=b[1];c=n+16|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1];i=n+24|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];if(-1==(Gt(p,n|0,m)|0)){return h=p,0}do{if(0==(k|0)){g=a[d>>2];m=a[Bh>>2];(g|0)>(a[ll>>2]|0)&&(m=0==(m|0)?Cb(g<<5):wb(m,g<<5),a[Bh>>2]=m,a[ll>>2]=g);n=0<(g|0);a:do{if(n){i=a[u>>2];for(c=0;;){if(e=((c<<5)+m|0)>>2,x=((c<<4)+i|0)>>2,a[e]=a[x],a[e+1]=a[x+1],a[e+2]=a[x+2],a[e+3]=a[x+3],x=c+1|0,e=((c<<5)+m+16|0)>>2,c=((x%g<<4)+i|0)>>2,a[e]=a[c],a[e+1]=a[c+1],a[e+2]=a[c+2],a[e+3]=a[c+3],(x|0)<(g|0)){c=x}else{break a}}}}while(0);n=t>>2;a[n]=0;a[n+1]=0;a[n+2]=0;a[n+3]=0;a[n+4]=0;a[n+5]=0;a[n+6]=0;a[n+7]=0;if(-1==(ZG(m,g,a[j],a[j+1],t|0,v)|0)){return l=0,h=p,l}}else{Ht(a[j],a[j+1],v)}}while(0);k=a[v+4>>2];$G(k);j=0<(k|0);t=a[Ch>>2];a:do{if(j){u=a[v>>2];for(m=0;;){if(g=((m<<4)+t|0)>>2,d=((m<<4)+u|0)>>2,a[g]=a[d],a[g+1]=a[d+1],a[g+2]=a[d+2],a[g+3]=a[d+3],d=m+1|0,(d|0)<(k|0)){m=d}else{var w=t;break a}}}else{w=t}}while(0);a[l>>2]=k;h=p;return w}function $G(b){var c=h,i=a[Yo>>2];(i|0)<(b|0)&&(b=i+(b+300)-b%300|0,i=wb(a[Ch>>2],b<<4),a[Ch>>2]=i,0==(i|0)&&(la(1,aH|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),S()),a[Yo>>2]=b);h=c}function ff(x,c,i){var g,d,e,l,k,n,z,p,s,v,t,u,w,A,B,C,P,T,y,D,M,X,O,F,Da,ia,E=h;h+=88;var G,J=E+8;ia=J>>2;var sc=E+16,H=E+24,I=E+56;a[ml>>2]=a[ml>>2]+1|0;var K=a[x+80>>2];a[nl>>2]=a[nl>>2]+K|0;var L=a[x+88>>2];for(Da=L>>2;;){if(0==(L|0)){G=1477;break}if(0==m[L+124|0]<<24>>24){break}L=a[Da+32];Da=L>>2}1477==G&&(la(1,bH|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),S());var ca=a[x+84>>2];cH(K,ca,x);var N=K<<3;if((N|0)>(a[It>>2]|0)){var U=a[ol>>2],zb=0==(U|0)?Cb(K<<7):wb(U,K<<7);a[ol>>2]=zb;a[It>>2]=N}var ja=1<(K|0);a:do{if(ja){var aa=ca+8|0,da=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=ca+40|0;if(da>(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0])){if(0<(K|0)){for(var xa=0,Q=da;;){F=((xa<<5)+ca+24|0)>>2;var Od=(b[0]=a[F],b[1]=a[F+1],f[0]),ha=(xa<<5)+ca+8|0;f[0]=-1*Q;a[F]=b[0];a[F+1]=b[1];f[0]=-Od;a[ha>>2]=b[0];a[ha+4>>2]=b[1];var ga=xa+1|0;if((ga|0)==(K|0)){Rb=1;break a}var W=(ga<<5)+ca+8|0,xa=ga,Q=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0])}}else{Rb=1}}else{var Rb=0}}else{Rb=0}}while(0);(a[Da+4]|0)==(a[Da+3]|0)&&S();var V=K-1|0,tb=a[ol>>2],ya=0,R=0;a:for(;;){if((R|0)>=(K|0)){var wa=ya,Ab=V;break}if(0<(R|0)){var Fa=(R<<5)+ca+8|0,Ga=(R-1<<5)+ca+8|0,Y=(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0])>(b[0]=a[Ga>>2],b[1]=a[Ga+4>>2],f[0])?-1:1}else{Y=0}if((R|0)<(V|0)){var ta=(R+1<<5)+ca+8|0,Ka=(R<<5)+ca+8|0,za=(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0])>(b[0]=a[Ka>>2],b[1]=a[Ka+4>>2],f[0])?1:-1}else{za=0}do{if((Y|0)==(za|0)){if(-1==(Y|0)){var ma=ya}else{if(0!=(Y|0)){G=1501;break a}O=((R<<5)+ca|0)>>2;var pa=(b[0]=a[O],b[1]=a[O+1],f[0]),$=(ya<<4)+tb|0;f[0]=pa;a[$>>2]=b[0];a[$+4>>2]=b[1];var Ha=(R<<5)+ca+24|0,Ra=(b[0]=a[Ha>>2],b[1]=a[Ha+4>>2],f[0]),fa=ya+1|0,Z=(ya<<4)+tb+8|0;f[0]=Ra;a[Z>>2]=b[0];a[Z+4>>2]=b[1];var La=(b[0]=a[O],b[1]=a[O+1],f[0]),ka=(fa<<4)+tb|0;f[0]=La;a[ka>>2]=b[0];a[ka+4>>2]=b[1];var Ya=(R<<5)+ca+8|0,sa=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),Za=ya+2|0,ra=(fa<<4)+tb+8|0;f[0]=sa;a[ra>>2]=b[0];a[ra+4>>2]=b[1];ma=Za}}else{if(-1==(za|0)|1==(Y|0)){X=((R<<5)+ca|0)>>2;var ab=(b[0]=a[X],b[1]=a[X+1],f[0]),$a=(ya<<4)+tb|0;f[0]=ab;a[$a>>2]=b[0];a[$a+4>>2]=b[1];var jb=(R<<5)+ca+24|0,Ca=(b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0]),Ia=ya+1|0,eb=(ya<<4)+tb+8|0;f[0]=Ca;a[eb>>2]=b[0];a[eb+4>>2]=b[1];var ub=(b[0]=a[X],b[1]=a[X+1],f[0]),Sa=(Ia<<4)+tb|0;f[0]=ub;a[Sa>>2]=b[0];a[Sa+4>>2]=b[1];var ba=(R<<5)+ca+8|0,ua=(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]),Oa=ya+2|0,Wa=(Ia<<4)+tb+8|0;f[0]=ua;a[Wa>>2]=b[0];a[Wa+4>>2]=b[1];ma=Oa}else{M=((R<<5)+ca+16|0)>>2;var pb=(b[0]=a[M],b[1]=a[M+1],f[0]),ob=(ya<<4)+tb|0;f[0]=pb;a[ob>>2]=b[0];a[ob+4>>2]=b[1];var bb=(R<<5)+ca+8|0,qb=(b[0]=a[bb>>2],b[1]=a[bb+4>>2],f[0]),qa=ya+1|0,kb=(ya<<4)+tb+8|0;f[0]=qb;a[kb>>2]=b[0];a[kb+4>>2]=b[1];var na=(b[0]=a[M],b[1]=a[M+1],f[0]),vb=(qa<<4)+tb|0;f[0]=na;a[vb>>2]=b[0];a[vb+4>>2]=b[1];var xb=(R<<5)+ca+24|0,hd=(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0]),nb=ya+2|0,rb=(qa<<4)+tb+8|0;f[0]=hd;a[rb>>2]=b[0];a[rb+4>>2]=b[1];ma=nb}}}while(0);ya=ma;R=R+1|0}1501==G&&S();a:for(;-1<(Ab|0);){if((Ab|0)<(V|0)){var lb=(Ab<<5)+ca+8|0,Ta=(Ab+1<<5)+ca+8|0,cb=(b[0]=a[lb>>2],b[1]=a[lb+4>>2],f[0])>(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0])?-1:1}else{cb=0}if(0<(Ab|0)){var fb=(Ab-1<<5)+ca+8|0,Ua=(Ab<<5)+ca+8|0,sb=(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0])>(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0])?1:-1}else{sb=0}do{if((cb|0)==(sb|0)){if(0==(cb|0)){D=((Ab<<5)+ca+16|0)>>2;var Na=(b[0]=a[D],b[1]=a[D+1],f[0]),Fb=(wa<<4)+tb|0;f[0]=Na;a[Fb>>2]=b[0];a[Fb+4>>2]=b[1];var Db=(Ab<<5)+ca+8|0,Ob=(b[0]=a[Db>>2],b[1]=a[Db+4>>2],f[0]),Eb=wa+1|0,ne=(wa<<4)+tb+8|0;f[0]=Ob;a[ne>>2]=b[0];a[ne+4>>2]=b[1];var Bb=(b[0]=a[D],b[1]=a[D+1],f[0]),Ja=(Eb<<4)+tb|0;f[0]=Bb;a[Ja>>2]=b[0];a[Ja+4>>2]=b[1];var oa=(Ab<<5)+ca+24|0,Ba=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),Ea=wa+2|0,va=(Eb<<4)+tb+8|0;f[0]=Ba;a[va>>2]=b[0];a[va+4>>2]=b[1];var Ma=Ea}else{if(-1==(cb|0)){y=((Ab<<5)+ca+16|0)>>2;var Aa=(b[0]=a[y],b[1]=a[y+1],f[0]),ic=(wa<<4)+tb|0;f[0]=Aa;a[ic>>2]=b[0];a[ic+4>>2]=b[1];T=((Ab<<5)+ca+8|0)>>2;var Pa=(b[0]=a[T],b[1]=a[T+1],f[0]),Qa=wa+1|0,Va=(wa<<4)+tb+8|0;f[0]=Pa;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var hb=(b[0]=a[y],b[1]=a[y+1],f[0]),ib=(Qa<<4)+tb|0;f[0]=hb;a[ib>>2]=b[0];a[ib+4>>2]=b[1];P=((Ab<<5)+ca+24|0)>>2;var pc=(b[0]=a[P],b[1]=a[P+1],f[0]),Wc=wa+2|0,Vb=(Qa<<4)+tb+8|0;f[0]=pc;a[Vb>>2]=b[0];a[Vb+4>>2]=b[1];C=((Ab<<5)+ca|0)>>2;var Xd=(b[0]=a[C],b[1]=a[C+1],f[0]),Gb=(Wc<<4)+tb|0;f[0]=Xd;a[Gb>>2]=b[0];a[Gb+4>>2]=b[1];var Ib=(b[0]=a[P],b[1]=a[P+1],f[0]),yb=wa+3|0,Nb=(Wc<<4)+tb+8|0;f[0]=Ib;a[Nb>>2]=b[0];a[Nb+4>>2]=b[1];var mb=(b[0]=a[C],b[1]=a[C+1],f[0]),lc=(yb<<4)+tb|0;f[0]=mb;a[lc>>2]=b[0];a[lc+4>>2]=b[1];var Hb=(b[0]=a[T],b[1]=a[T+1],f[0]),Jd=wa+4|0,db=(yb<<4)+tb+8|0;f[0]=Hb;a[db>>2]=b[0];a[db+4>>2]=b[1];Ma=Jd}else{G=1514;break a}}}else{if(-1==(sb|0)|1==(cb|0)){B=((Ab<<5)+ca|0)>>2;var Hc=(b[0]=a[B],b[1]=a[B+1],f[0]),Lb=(wa<<4)+tb|0;f[0]=Hc;a[Lb>>2]=b[0];a[Lb+4>>2]=b[1];var oe=(Ab<<5)+ca+24|0,Pb=(b[0]=a[oe>>2],b[1]=a[oe+4>>2],f[0]),Qb=wa+1|0,tc=(wa<<4)+tb+8|0;f[0]=Pb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];var Sc=(b[0]=a[B],b[1]=a[B+1],f[0]),Kb=(Qb<<4)+tb|0;f[0]=Sc;a[Kb>>2]=b[0];a[Kb+4>>2]=b[1];var Jb=(Ab<<5)+ca+8|0,$b=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),rd=wa+2|0,oc=(Qb<<4)+tb+8|0;f[0]=$b;a[oc>>2]=b[0];a[oc+4>>2]=b[1];Ma=rd}else{A=((Ab<<5)+ca+16|0)>>2;var Yb=(b[0]=a[A],b[1]=a[A+1],f[0]),qk=(wa<<4)+tb|0;f[0]=Yb;a[qk>>2]=b[0];a[qk+4>>2]=b[1];var ve=(Ab<<5)+ca+8|0,Rd=(b[0]=a[ve>>2],b[1]=a[ve+4>>2],f[0]),Bc=wa+1|0,Sd=(wa<<4)+tb+8|0;f[0]=Rd;a[Sd>>2]=b[0];a[Sd+4>>2]=b[1];var fd=(b[0]=a[A],b[1]=a[A+1],f[0]),Mb=(Bc<<4)+tb|0;f[0]=fd;a[Mb>>2]=b[0];a[Mb+4>>2]=b[1];var yc=(Ab<<5)+ca+24|0,Wb=(b[0]=a[yc>>2],b[1]=a[yc+4>>2],f[0]),Tb=wa+2|0,Tc=(Bc<<4)+tb+8|0;f[0]=Wb;a[Tc>>2]=b[0];a[Tc+4>>2]=b[1];Ma=Tb}}}while(0);wa=Ma;Ab=Ab-1|0}1514==G&&(a[c>>2]=0,S());var Sb=0==(Rb|0);a:do{if(!Sb){var Mc=0<(K|0);b:do{if(Mc){for(var id=0;;){w=((id<<5)+ca+24|0)>>2;var uc=(b[0]=a[w],b[1]=a[w+1],f[0])&-1;u=((id<<5)+ca+8|0)>>2;var Zb=-1*(b[0]=a[u],b[1]=a[u+1],f[0]);f[0]=Zb;a[w]=b[0];a[w+1]=b[1];f[0]=-uc|0;a[u]=b[0];a[u+1]=b[1];var qc=id+1|0;if((qc|0)==(K|0)){break b}else{id=qc}}}}while(0);if(0<(wa|0)){for(var mf=0;;){t=((mf<<4)+tb+8|0)>>2;var nf=-1*(b[0]=a[t],b[1]=a[t+1],f[0]);f[0]=nf;a[t]=b[0];a[t+1]=b[1];var ec=mf+1|0;if((ec|0)==(wa|0)){break a}else{mf=ec}}}}}while(0);var af=0<(K|0);a:do{if(af){for(var yf=0;;){var Td=(yf<<5)+ca|0;f[0]=2147483647;a[Td>>2]=b[0];a[Td+4>>2]=b[1];var Fe=(yf<<5)+ca+16|0;f[0]=-2147483648;a[Fe>>2]=b[0];a[Fe+4>>2]=b[1];var gf=yf+1|0;if((gf|0)==(K|0)){break a}else{yf=gf}}}}while(0);a[E>>2]=tb;var fe=E+4|0;a[fe>>2]=wa;var fh=x|0,df=(b[0]=a[fh>>2],b[1]=a[fh+4>>2],f[0]),jd=H|0,md=H|0;f[0]=df;a[md>>2]=b[0];a[md+4>>2]=b[1];var je=x+8|0,Qe=(b[0]=a[je>>2],b[1]=a[je+4>>2],f[0]),Xf=H+8|0;f[0]=Qe;a[Xf>>2]=b[0];a[Xf+4>>2]=b[1];var Uc=x+40|0,bf=(b[0]=a[Uc>>2],b[1]=a[Uc+4>>2],f[0]),mc=H+16|0;f[0]=bf;a[mc>>2]=b[0];a[mc+4>>2]=b[1];var kc=x+48|0,rc=(b[0]=a[kc>>2],b[1]=a[kc+4>>2],f[0]),ef=H+24|0;f[0]=rc;a[ef>>2]=b[0];a[ef+4>>2]=b[1];-1==(Gt(E,jd,J)|0)&&S();do{if(0==(i|0)){var kd=a[fe>>2];if((kd|0)>(a[ll>>2]|0)){var ac=a[Bh>>2],dc=0==(ac|0)?Cb(kd<<5):wb(ac,kd<<5);a[Bh>>2]=dc;a[ll>>2]=kd}var bc=0<(kd|0);a:do{if(bc){for(var jc=a[Bh>>2],fc=a[ol>>2],nd=0;;){v=((nd<<5)+jc|0)>>2;s=((nd<<4)+fc|0)>>2;a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];var zd=nd+1|0;p=((nd<<5)+jc+16|0)>>2;z=((zd%kd<<4)+fc|0)>>2;a[p]=a[z];a[p+1]=a[z+1];a[p+2]=a[z+2];a[p+3]=a[z+3];if((zd|0)<(kd|0)){nd=zd}else{break a}}}}while(0);if(0==m[x+29|0]<<24>>24){n=I>>2,a[n]=0,a[n+1]=0,a[n+2]=0,a[n+3]=0}else{var cf=x+16|0,nc=(b[0]=a[cf>>2],b[1]=a[cf+4>>2],f[0]),gc=se(nc),Xb=I|0;f[0]=gc;a[Xb>>2]=b[0];a[Xb+4>>2]=b[1];var we=Ce(nc),pe=I+8|0;f[0]=we;a[pe>>2]=b[0];a[pe+4>>2]=b[1]}if(0==m[x+69|0]<<24>>24){k=(I+16|0)>>2,a[k]=0,a[k+1]=0,a[k+2]=0,a[k+3]=0}else{var Ac=x+56|0,Kd=(b[0]=a[Ac>>2],b[1]=a[Ac+4>>2],f[0]),Dd=-se(Kd),$c=I+16|0;f[0]=Dd;a[$c>>2]=b[0];a[$c+4>>2]=b[1];var zc=-Ce(Kd),Ye=I+24|0;f[0]=zc;a[Ye>>2]=b[0];a[Ye+4>>2]=b[1]}-1==(ZG(a[Bh>>2],kd,a[ia],a[ia+1],I|0,sc)|0)&&S()}else{Ht(a[ia],a[ia+1],sc)}}while(0);var Ad=a[sc+4>>2];$G(Ad);a:do{if(af){for(var Ud=0;;){var Vd=(Ud<<5)+ca|0;f[0]=2147483647;a[Vd>>2]=b[0];a[Vd+4>>2]=b[1];var Cc=(Ud<<5)+ca+16|0;f[0]=-2147483648;a[Cc>>2]=b[0];a[Cc+4>>2]=b[1];var Ic=Ud+1|0;if((Ic|0)==(K|0)){break a}else{Ud=Ic}}}}while(0);var gd=0<(Ad|0),ud=a[Ch>>2];a:do{if(gd){for(var vc=a[sc>>2],Fn=0;;){l=((Fn<<4)+ud|0)>>2;e=((Fn<<4)+vc|0)>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];var of=Fn+1|0;if((of|0)<(Ad|0)){Fn=of}else{break a}}}}while(0);var ld=3<(Ad|0),Dc=10;a:for(;;){b:do{if(ld){for(var Qc=Dc*K|0,Yc=0>(Qc|0),Jc=Qc|0,Kc=0,Nc=3;;){c:do{if(!Yc){for(var Ec=(Kc<<4)+ud|0,Pc=(Kc<<4)+ud+8|0,Fc=Kc+1|0,Gc=(Fc<<4)+ud|0,Zc=(Fc<<4)+ud+8|0,Vc=Kc+2|0,Bd=(Vc<<4)+ud|0,Rc=(Vc<<4)+ud+8|0,Cd=(Nc<<4)+ud|0,vd=(Nc<<4)+ud+8|0,bd=0;;){var te=(bd|0)/Jc,pd=(b[0]=a[Ec>>2],b[1]=a[Ec+4>>2],f[0]),cd=(b[0]=a[Pc>>2],b[1]=a[Pc+4>>2],f[0]),qd=(b[0]=a[Gc>>2],b[1]=a[Gc+4>>2],f[0]),Jt=(b[0]=a[Zc>>2],b[1]=a[Zc+4>>2],f[0]),Gd=(b[0]=a[Bd>>2],b[1]=a[Bd+4>>2],f[0]),ad=(b[0]=a[Rc>>2],b[1]=a[Rc+4>>2],f[0]),Fd=pd+te*(qd-pd),yd=cd+te*(Jt-cd),Xc=qd+te*(Gd-qd),dd=Jt+te*(ad-Jt),od=Fd+te*(Xc-Fd),Md=yd+te*(dd-yd),ed=od+te*(Xc+te*(Gd+te*((b[0]=a[Cd>>2],b[1]=a[Cd+4>>2],f[0])-Gd)-Xc)-od),Ld=Md+te*(dd+te*(ad+te*((b[0]=a[vd>>2],b[1]=a[vd+4>>2],f[0])-ad)-dd)-Md);d:do{if(af){for(var Oc=0;;){var be=(Oc<<5)+ca+24|0;if(Ld<=(b[0]=a[be>>2],b[1]=a[be+4>>2],f[0])+1e-4){var wd=(Oc<<5)+ca+8|0;if(Ld>=(b[0]=a[wd>>2],b[1]=a[wd+4>>2],f[0])-1e-4){d=((Oc<<5)+ca|0)>>2;if((b[0]=a[d],b[1]=a[d+1],f[0])>ed){f[0]=ed,a[d]=b[0],a[d+1]=b[1]}g=((Oc<<5)+ca+16|0)>>2;if((b[0]=a[g],b[1]=a[g+1],f[0])(Qc|0)){break c}else{bd=ke}}}}while(0);var sd=Nc+3|0;if((sd|0)<(Ad|0)){Kc=Nc,Nc=sd}else{var Lc=0;break b}}}else{Lc=0}}while(0);for(;;){if((Lc|0)>=(K|0)){break a}var Ed=(Lc<<5)+ca|0;if(2147483647==(b[0]=a[Ed>>2],b[1]=a[Ed+4>>2],f[0])){break}var Wd=(Lc<<5)+ca+16|0;if(-2147483648==(b[0]=a[Wd>>2],b[1]=a[Wd+4>>2],f[0])){break}else{Lc=Lc+1|0}}Dc<<=1}a[c>>2]=Ad;h=E;return ud}function dH(a,b,i,g){if(!((b|0)>(i|0)&(a|0)<(g|0))){return 0}if(!((i|0)>(a|0)|(a|0)>(g|0))){return g-a|0}(i|0)>(b|0)|(b|0)>(g|0)?(a=b-a|0,i=g-i|0,i=(a|0)<(i|0)?a:i):i=b-i|0;return i}function Jg(x){var c,i=h;c=(x+80|0)>>2;Va(a[oa>>2],eH|0,(j=h,h+=4,a[j>>2]=a[c],j));var g=0<(a[c]|0),d=a[oa>>2];a:do{if(g){for(var e=x+84|0,l=0,k=d;;){var n=a[e>>2],z=(l<<5)+n|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),p=(l<<5)+n+8|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s=(l<<5)+n+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),n=(l<<5)+n+24|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);Va(k,fH|0,(j=h,h+=36,a[j>>2]=l,f[0]=z,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=p,a[j+12>>2]=b[0],a[j+16>>2]=b[1],f[0]=s,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=n,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));l=l+1|0;k=a[oa>>2];if((l|0)>=(a[c]|0)){var v=k;break a}}}else{v=d}}while(0);c=x|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);g=x+8|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);d=x+16|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);e=0!=m[x+29|0]<<24>>24?Kt|0:Lt|0;Va(v,gH|0,(j=h,h+=28,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=g,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=d,a[j+16>>2]=b[0],a[j+20>>2]=b[1],a[j+24>>2]=e,j));v=a[oa>>2];c=x+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);g=x+48|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);d=x+56|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);x=0!=m[x+69|0]<<24>>24?Kt|0:Lt|0;Va(v,hH|0,(j=h,h+=28,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=g,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=d,a[j+16>>2]=b[0],a[j+20>>2]=b[1],a[j+24>>2]=x,j));h=i}function cH(x,c,i){var g,d,e,l,k,n,z,p,s,v,t,u,w,A,B,C,P,T,y,D=h,M,X=0<(x|0);a:do{if(X){for(var O=0,F=0;;){var Da=(F<<5)+c|0,ia=(F<<5)+c+8|0,E=(F<<5)+c+24|0,G=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])-(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]);if(.01>(0>G?-G:G)){var J=O}else{var sc=Da|0,I=(F<<5)+c+16|0,H=(b[0]=a[sc>>2],b[1]=a[sc+4>>2],f[0])-(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]);.01>(0>H?-H:H)?J=O:((O|0)!=(F|0)&&(y=((O<<5)+c|0)>>2,T=Da>>2,a[y]=a[T],a[y+1]=a[T+1],a[y+2]=a[T+2],a[y+3]=a[T+3],a[y+4]=a[T+4],a[y+5]=a[T+5],a[y+6]=a[T+6],a[y+7]=a[T+7]),J=O+1|0)}var K=F+1|0;if((K|0)==(x|0)){var L=J;break a}else{O=J,F=K}}}else{L=0}}while(0);P=(c|0)>>2;var ca=(b[0]=a[P],b[1]=a[P+1],f[0]);C=(c+16|0)>>2;var N=(b[0]=a[C],b[1]=a[C+1],f[0]);ca>N&&(la(1,Mt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Jg(i),S());B=(c+8|0)>>2;var U=(b[0]=a[B],b[1]=a[B+1],f[0]);A=(c+24|0)>>2;var zb=(b[0]=a[A],b[1]=a[A+1],f[0]);U>zb&&(la(1,Mt|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Jg(i),S());for(var ja=L-1|0,aa=0,da=N,ea=ca,xa=zb,Q=U;;){if((aa|0)>=(ja|0)){M=1642;break}var R=aa+1|0;w=((R<<5)+c|0)>>2;var ha=(b[0]=a[w],b[1]=a[w+1],f[0]);u=((R<<5)+c+16|0)>>2;var ga=(b[0]=a[u],b[1]=a[u+1],f[0]);if(ha>ga){M=1673;break}t=((R<<5)+c+8|0)>>2;var W=(b[0]=a[t],b[1]=a[t+1],f[0]);v=((R<<5)+c+24|0)>>2;var Rb=(b[0]=a[v],b[1]=a[v+1],f[0]);if(W>Rb){M=1674;break}s=((aa<<5)+c+16|0)>>2;var V=da>2;var ya=ea>ga,Y=ya&1;z=((aa<<5)+c+24|0)>>2;var wa=xa>2;var Fa=Q>Rb,Ga=Fa&1,$=Y+tb+Ab+Ga|0,ta=0<($|0);0==m[ld]<<24>>24|ta^1||(Va(a[oa>>2],iH|0,(j=h,h+=8,a[j>>2]=aa,a[j+4>>2]=R,j)),Jg(i));a:do{if(ta){if(V){var Ka=(b[0]=a[s],b[1]=a[s+1],f[0])&-1,za=(b[0]=a[w],b[1]=a[w+1],f[0]);f[0]=za;a[s]=b[0];a[s+1]=b[1];f[0]=Ka|0;a[w]=b[0];a[w+1]=b[1];var ma=Ga,pa=Ab,fa=Y,Ha=0}else{if(ya){var Ra=(b[0]=a[p],b[1]=a[p+1],f[0])&-1,Z=(b[0]=a[u],b[1]=a[u+1],f[0]);f[0]=Z;a[p]=b[0];a[p+1]=b[1];f[0]=Ra|0;a[u]=b[0];a[u+1]=b[1];ma=Ga;pa=Ab;fa=0}else{if(wa){var ka=(b[0]=a[z],b[1]=a[z+1],f[0])&-1,La=(b[0]=a[t],b[1]=a[t+1],f[0]);f[0]=La;a[z]=b[0];a[z+1]=b[1];f[0]=ka|0;a[t]=b[0];a[t+1]=b[1];ma=Ga;pa=0}else{if(Fa){var sa=(b[0]=a[n],b[1]=a[n+1],f[0])&-1,Ya=(b[0]=a[v],b[1]=a[v+1],f[0]);f[0]=Ya;a[n]=b[0];a[n+1]=b[1];f[0]=sa|0;a[v]=b[0];a[v+1]=b[1];ma=0}else{ma=Ga}pa=Ab}fa=Y}Ha=tb}if(0<($-1|0)){for(var ra=((ya^1)<<31>>31)+tb+Ab+Ga|0,Za=Ha,ba=fa,ab=0,$a=pa,jb=ma;;){if(1==(Za|0)){var Ca=.5*((b[0]=a[s],b[1]=a[s+1],f[0])+(b[0]=a[w],b[1]=a[w+1],f[0]))+.5&-1|0;f[0]=Ca;a[w]=b[0];a[w+1]=b[1];f[0]=Ca;a[s]=b[0];a[s+1]=b[1];var Ia=jb,eb=$a,ub=ba,Sa=0}else{if(1==(ba|0)){var qa=.5*((b[0]=a[p],b[1]=a[p+1],f[0])+(b[0]=a[u],b[1]=a[u+1],f[0]))+.5&-1|0;f[0]=qa;a[u]=b[0];a[u+1]=b[1];f[0]=qa;a[p]=b[0];a[p+1]=b[1];Ia=jb;eb=$a;ub=0}else{if(1==($a|0)){var ua=.5*((b[0]=a[z],b[1]=a[z+1],f[0])+(b[0]=a[t],b[1]=a[t+1],f[0]))+.5&-1|0;f[0]=ua;a[t]=b[0];a[t+1]=b[1];f[0]=ua;a[z]=b[0];a[z+1]=b[1];Ia=jb;eb=0}else{if(1!=(jb|0)){Ia=jb}else{var Oa=.5*((b[0]=a[n],b[1]=a[n+1],f[0])+(b[0]=a[v],b[1]=a[v+1],f[0]))+.5&-1|0;f[0]=Oa;a[v]=b[0];a[v+1]=b[1];f[0]=Oa;a[n]=b[0];a[n+1]=b[1];Ia=0}eb=$a}ub=ba}Sa=Za}var Wa=ab+1|0;if((Wa|0)==(ra|0)){break a}else{Za=Sa,ba=ub,ab=Wa,$a=eb,jb=Ia}}}}}while(0);var pb=(b[0]=a[p],b[1]=a[p+1],f[0]),ob=(b[0]=a[s],b[1]=a[s+1],f[0]),bb=(b[0]=a[w],b[1]=a[w+1],f[0]),qb=(b[0]=a[u],b[1]=a[u+1],f[0]),na=dH(pb&-1,ob&-1,bb&-1,qb&-1),kb=(b[0]=a[n],b[1]=a[n+1],f[0]),ie=(b[0]=a[z],b[1]=a[z+1],f[0]),vb=(b[0]=a[t],b[1]=a[t+1],f[0]),xb=(b[0]=a[v],b[1]=a[v+1],f[0]),hd=dH(kb&-1,ie&-1,vb&-1,xb&-1);if(0==(na|0)|0==(hd|0)){aa=R,da=qb,ea=bb,xa=xb,Q=vb}else{if((na|0)<(hd|0)){var nb=obqb-bb?(nb?(f[0]=bb,a[s]=b[0],a[s+1]=b[1]):(f[0]=qb,a[p]=b[0],a[p+1]=b[1]),aa=R,da=qb,ea=bb):nb?(f[0]=ob,a[w]=b[0],a[w+1]=b[1],aa=R,da=qb,ea=ob):(f[0]=pb,a[u]=b[0],a[u+1]=b[1],aa=R,da=pb,ea=bb);xa=xb;Q=vb}else{var rb=iexb-vb?(rb?(f[0]=vb,a[z]=b[0],a[z+1]=b[1]):(f[0]=xb,a[n]=b[0],a[n+1]=b[1]),aa=R,da=qb,ea=bb,xa=xb,Q=vb):rb?(f[0]=ie,a[t]=b[0],a[t+1]=b[1],aa=R,da=qb,ea=bb,xa=xb,Q=ie):(f[0]=kb,a[v]=b[0],a[v+1]=b[1],aa=R,da=qb,ea=bb,xa=kb,Q=vb)}}}if(1642==M){k=(i|0)>>2;var lb=(b[0]=a[k],b[1]=a[k+1],f[0]),Ta=(b[0]=a[P],b[1]=a[P+1],f[0]);if(lb(b[0]=a[C],b[1]=a[C+1],f[0])){M=1646}else{var cb=i+8|0,fb=(b[0]=a[cb>>2],b[1]=a[cb+4>>2],f[0]);if(fb<(b[0]=a[B],b[1]=a[B+1],f[0])){M=1646}else{if(fb>(b[0]=a[A],b[1]=a[A+1],f[0])){M=1646}}}}if(1646==M){if(0==m[ld]<<24>>24){var Ua=lb,sb=Ta}else{Lc(jH|0,42,1,a[oa>>2]),Jg(i),Ua=(b[0]=a[k],b[1]=a[k+1],f[0]),sb=(b[0]=a[P],b[1]=a[P+1],f[0])}if(UaFb&&(f[0]=Fb,a[k]=b[0],a[k+1]=b[1]);l=(i+8|0)>>2;var Db=(b[0]=a[l],b[1]=a[l+1],f[0]),Ob=(b[0]=a[B],b[1]=a[B+1],f[0]);if(Dbne&&(f[0]=ne,a[l]=b[0],a[l+1]=b[1])}e=(i+40|0)>>2;var Bb=(b[0]=a[e],b[1]=a[e+1],f[0]);d=((ja<<5)+c|0)>>2;var Ja=(b[0]=a[d],b[1]=a[d+1],f[0]);if(Bb>=Ja){var Ba=(ja<<5)+c+16|0;if(Bb<=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0])){var Ea=i+48|0,va=(b[0]=a[Ea>>2],b[1]=a[Ea+4>>2],f[0]),Ma=(ja<<5)+c+8|0;if(va>=(b[0]=a[Ma>>2],b[1]=a[Ma+4>>2],f[0])){var Aa=(ja<<5)+c+24|0;if(va<=(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0])){h=D;return}}}}if(0==m[ld]<<24>>24){var wb=Bb,ic=Ja}else{Lc(kH|0,39,1,a[oa>>2]),Jg(i),wb=(b[0]=a[e],b[1]=a[e+1],f[0]),ic=(b[0]=a[d],b[1]=a[d+1],f[0])}if(wb>2],b[1]=a[Qa+4>>2],f[0]);Cb>Pa&&(f[0]=Pa,a[e]=b[0],a[e+1]=b[1]);g=(i+48|0)>>2;var hb=(b[0]=a[g],b[1]=a[g+1],f[0]),ib=(ja<<5)+c+8|0,pc=(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0]);if(hb>2],b[1]=a[Vb+4>>2],f[0]);Wc>Xd&&(f[0]=Xd,a[g]=b[0],a[g+1]=b[1]);h=D}else{1673==M?(la(1,Nt|0,(j=h,h+=4,a[j>>2]=R,j)),Jg(i),S()):1674==M&&(la(1,Nt|0,(j=h,h+=4,a[j>>2]=R,j)),Jg(i),S())}}function Zo(x,c,i,g,d,e){var l=x|0;f[0]=(d-i)*c+i;a[l>>2]=b[0];a[l+4>>2]=b[1];x=x+8|0;f[0]=(e-g)*c+g;a[x>>2]=b[0];a[x+4>>2]=b[1]}function ts(b){b=a[b+24>>2];0==(b|0)?b=0:(b=a[a[b+4>>2]>>2],b=270==(b|0)?1:56==(b|0)?2:54==(b|0)?3:356==(b|0)?4:0);return b}function Ii(x,c,i,g,d,e,l){var k,n,j,p,m,v,t,u,w,A,B,C,P,T,y,D,M,X,O,F,Da,ia,E,J,H,I,K,L,N,hc,ca,R,Q,zb,ja,aa,da,ea,xa,U,S,ha,ga,W,Rb,V,tb,ya,Y,wa,Ab,Fa,Ga,$,ta,Ka,za,ma,pa,la,Ha,Ra,Z,ka,La,ba,Ya,ra,Za,qa,ab,$a,jb,Ca,Ia,eb,ub,Sa,na,ua,Oa,Wa,pb,ob,bb,qb,oa,kb,ie,vb,xb,hd,nb,rb,lb,Ta,cb,fb,Ua,sb,Na=h;h+=128;var Fb=Na+64,Db=Na+80,Ob=Na+96,Eb=Na+112;if(0==(e&4|0)){var ne=e&992,Bb=0==(ne|0)?2:ne}else{Bb=4}var Ja=fa((d<<6)+64|0);sb=Ja>>2;var Ba=0<(d|0);a:do{if(Ba){for(var Ea=d-1|0,va=g+8|0,Ma=12,Aa=0;;){var wb=(Aa<<4)+g|0,ic=(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),Qa=(Aa<<4)+g+8|0,hb=(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),Va=Aa+1|0;if((Aa|0)<(Ea|0)){var ib=(Va<<4)+g|0,Gb=(Va<<4)+g+8|0}else{ib=g,Gb=va}var pc=ib|0,Wc=(b[0]=a[pc>>2],b[1]=a[pc+4>>2],f[0])-ic,Vb=(b[0]=a[Gb>>2],b[1]=a[Gb+4>>2],f[0])-hb,Xd=$c(Wc*Wc+Vb*Vb)/3,yb=Ma>2;fb=Db>>2;cb=Ob>>2;Ta=Eb>>2;for(var db=0,lc=0;;){var Hb=(lc<<4)+g|0,Jd=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Lb=(lc<<4)+g+8|0,Hc=(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]);if((lc|0)<(Ea|0)){var Kb=lc+1|0,oe=(Kb<<4)+g|0,Jb=(Kb<<4)+g+8|0}else{oe=g,Jb=va}var Qb=oe|0,tc=(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),Sc=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),Pb=tc-Jd,Yb=Sc-Hc,Mb=yb/$c(Pb*Pb+Yb*Yb),rd=Ib?Nb?Mb:.5*Mb:Mb/3;if(mb){Zo(Fb,.5*rd,Jd,Hc,tc,Sc),lb=((db<<4)+Ja|0)>>2,a[lb]=a[Ua],a[lb+1]=a[Ua+1],a[lb+2]=a[Ua+2],a[lb+3]=a[Ua+3]}else{var oc=(db<<4)+Ja|0;f[0]=Jd;a[oc>>2]=b[0];a[oc+4>>2]=b[1];var Wb=(db<<4)+Ja+8|0;f[0]=Hc;a[Wb>>2]=b[0];a[Wb+4>>2]=b[1]}Zo(Db,rd,Jd,Hc,tc,Sc);rb=((db+1<<4)+Ja|0)>>2;a[rb]=a[fb];a[rb+1]=a[fb+1];a[rb+2]=a[fb+2];a[rb+3]=a[fb+3];var Tb=db+3|0;Zo(Ob,1-rd,Jd,Hc,tc,Sc);nb=((db+2<<4)+Ja|0)>>2;a[nb]=a[cb];a[nb+1]=a[cb+1];a[nb+2]=a[cb+2];a[nb+3]=a[cb+3];if(mb){Zo(Eb,1-.5*rd,Jd,Hc,tc,Sc);hd=((Tb<<4)+Ja|0)>>2;a[hd]=a[Ta];a[hd+1]=a[Ta+1];a[hd+2]=a[Ta+2];a[hd+3]=a[Ta+3];var ve=db+4|0}else{ve=Tb}var Rd=lc+1|0;if((Rd|0)==(d|0)){var Bc=ve;break a}else{db=ve,lc=Rd}}}else{Bc=0}}while(0);xb=((Bc<<4)+Ja|0)>>2;a[xb]=a[sb];a[xb+1]=a[sb+1];a[xb+2]=a[sb+2];a[xb+3]=a[sb+3];var Sd=Ja+16|0;vb=Sd>>2;ie=((Bc+1<<4)+Ja|0)>>2;a[ie]=a[vb];a[ie+1]=a[vb+1];a[ie+2]=a[vb+2];a[ie+3]=a[vb+3];var fd=Ja+32|0;kb=fd>>2;oa=((Bc+2<<4)+Ja|0)>>2;a[oa]=a[kb];a[oa+1]=a[kb+1];a[oa+2]=a[kb+2];a[oa+3]=a[kb+3];if(256==(Bb|0)){4!=(d|0)&&sa(Ot|0,562,Pt|0,Qt|0);Pa(x,i);0!=(l|0)&&$b(x,c);var Sb=d+2|0,yc=fa(Sb<<4);qb=yc>>2;bb=g>>2;a[qb]=a[bb];a[qb+1]=a[bb+1];a[qb+2]=a[bb+2];a[qb+3]=a[bb+3];ob=(yc+16|0)>>2;a[ob]=a[kb];a[ob+1]=a[kb+1];a[ob+2]=a[kb+2];a[ob+3]=a[kb+3];pb=(yc+32|0)>>2;Wa=(Ja+64|0)>>2;a[pb]=a[Wa];a[pb+1]=a[Wa+1];a[pb+2]=a[Wa+2];a[pb+3]=a[Wa+3];Oa=(yc+48|0)>>2;ua=(g+32|0)>>2;a[Oa]=a[ua];a[Oa+1]=a[ua+1];a[Oa+2]=a[ua+2];a[Oa+3]=a[ua+3];na=(yc+64|0)>>2;Sa=(Ja+128|0)>>2;a[na]=a[Sa];a[na+1]=a[Sa+1];a[na+2]=a[Sa+2];a[na+3]=a[Sa+3];ub=(yc+80|0)>>2;eb=(Ja+160|0)>>2;a[ub]=a[eb];a[ub+1]=a[eb+1];a[ub+2]=a[eb+2];a[ub+3]=a[eb+3];zc(x,yc,Sb,l&255);G(yc);var qc=(b[0]=a[Sd>>2],b[1]=a[Sd+4>>2],f[0]),ec=Ja+176|0,Tc=qc+((b[0]=a[ec>>2],b[1]=a[ec+4>>2],f[0])-(b[0]=a[Ja>>2],b[1]=a[Ja+4>>2],f[0])),uc=Na|0,Mc=Na|0;f[0]=Tc;a[Mc>>2]=b[0];a[Mc+4>>2]=b[1];var id=Ja+24|0,mc=(b[0]=a[id>>2],b[1]=a[id+4>>2],f[0]),Zb=Ja+184|0,kc=Ja+8|0,ac=mc+((b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0])-(b[0]=a[kc>>2],b[1]=a[kc+4>>2],f[0])),nf=Na+8|0;f[0]=ac;a[nf>>2]=b[0];a[nf+4>>2]=b[1];Ia=(Na+16|0)>>2;a[Ia]=a[Wa];a[Ia+1]=a[Wa+1];a[Ia+2]=a[Wa+2];a[Ia+3]=a[Wa+3];Gd(x,uc,2);a[Ia]=a[Sa];a[Ia+1]=a[Sa+1];a[Ia+2]=a[Sa+2];a[Ia+3]=a[Sa+3];Gd(x,uc,2);a[Ia]=a[sb];a[Ia+1]=a[sb+1];a[Ia+2]=a[sb+2];a[Ia+3]=a[sb+3];Gd(x,uc,2)}else{if(2==(Bb|0)){var rc=0==(l|0);a:do{if(!rc){var af=d<<1,jc=Cb(d<<5),Td=jc;Pa(x,c);$b(x,c);if(Ba){var Fe=0,gf=0}else{zc(x,Td,af,1);G(jc);Pa(x,i);G(Ja);h=Na;return}for(;;){var fe=Fe<<2;Ca=((gf<<4)+Td|0)>>2;jb=(((fe|1)<<4)+Ja|0)>>2;a[Ca]=a[jb];a[Ca+1]=a[jb+1];a[Ca+2]=a[jb+2];a[Ca+3]=a[jb+3];$a=(((gf|1)<<4)+Td|0)>>2;ab=(((fe|2)<<4)+Ja|0)>>2;a[$a]=a[ab];a[$a+1]=a[ab+1];a[$a+2]=a[ab+2];a[$a+3]=a[ab+3];var fc=Fe+1|0;if((fc|0)==(d|0)){break}else{Fe=fc,gf=gf+2|0}}zc(x,Td,af,1);G(jc);for(var df=0;;){$f(x,((df<<2|2)<<4)+Ja|0,4,0,0,1);var jd=df+1|0;if((jd|0)==(d|0)){break a}else{df=jd}}}}while(0);Pa(x,i);if(Ba){for(var md=0;;){var je=md<<2;Gd(x,((je|1)<<4)+Ja|0,2);$f(x,((je|2)<<4)+Ja|0,4,0,0,0);var Qe=md+1|0;if((Qe|0)==(d|0)){break}else{md=Qe}}}}else{if(128==(Bb|0)){Pa(x,i);0!=(l|0)&&$b(x,c);var nc=d+3|0,Uc=fa(nc<<4);qa=Uc>>2;Za=g>>2;a[qa]=a[Za];a[qa+1]=a[Za+1];a[qa+2]=a[Za+2];a[qa+3]=a[Za+3];ra=(g|0)>>2;var bf=(b[0]=a[ra],b[1]=a[ra+1],f[0]);Ya=Sd>>2;var dc=bf-.25*(bf-(b[0]=a[Ya],b[1]=a[Ya+1],f[0])),bc=Uc+16|0;f[0]=dc;a[bc>>2]=b[0];a[bc+4>>2]=b[1];var Xb=g+8|0,gc=(b[0]=a[Xb>>2],b[1]=a[Xb+4>>2],f[0]),kd=Ja+48|0;ba=(Ja+56|0)>>2;var Ac=Ja+72|0,Cc=gc+((b[0]=a[ba],b[1]=a[ba+1],f[0])-(b[0]=a[Ac>>2],b[1]=a[Ac+4>>2],f[0]))/3,Ic=Uc+24|0;f[0]=Cc;a[Ic>>2]=b[0];a[Ic+4>>2]=b[1];var vc=(b[0]=a[ra],b[1]=a[ra+1],f[0]),Kc=vc-2*(vc-(b[0]=a[Ya],b[1]=a[Ya+1],f[0])),nd=Uc+32|0;f[0]=Kc;a[nd>>2]=b[0];a[nd+4>>2]=b[1];var zd=Uc+40|0;f[0]=Cc;a[zd>>2]=b[0];a[zd+4>>2]=b[1];var cf=(b[0]=a[ra],b[1]=a[ra+1],f[0]),Nc=cf-2.25*(cf-(b[0]=a[Ya],b[1]=a[Ya+1],f[0])),Dc=Uc+48|0;f[0]=Nc;a[Dc>>2]=b[0];a[Dc+4>>2]=b[1];var zi=(b[0]=a[ba],b[1]=a[ba+1],f[0]),we=Uc+56|0;f[0]=zi;a[we>>2]=b[0];a[we+4>>2]=b[1];var pe=(b[0]=a[kd>>2],b[1]=a[kd+4>>2],f[0]),Qc=Uc+64|0;f[0]=pe;a[Qc>>2]=b[0];a[Qc+4>>2]=b[1];var Kd=(b[0]=a[ba],b[1]=a[ba+1],f[0]),Dd=Uc+72|0;f[0]=Kd;a[Dd>>2]=b[0];a[Dd+4>>2]=b[1];var ld=4<(nc|0);a:do{if(ld){for(var Ec=4;;){La=((Ec<<4)+Uc|0)>>2;ka=((Ec-3<<4)+g|0)>>2;a[La]=a[ka];a[La+1]=a[ka+1];a[La+2]=a[ka+2];a[La+3]=a[ka+3];var Ye=Ec+1|0;if((Ye|0)==(nc|0)){break a}else{Ec=Ye}}}}while(0);zc(x,Uc,nc,l&255);G(Uc)}else{if(4==(Bb|0)){if(Pa(x,i),0!=(l|0)&&$b(x,c),zc(x,g,d,l&255),Ba){var Ad=Na|0;Z=Na>>2;Ra=(Na+16|0)>>2;for(var Ud=0;;){var Vd=3*Ud|0;Ha=((Vd+2<<4)+Ja|0)>>2;a[Z]=a[Ha];a[Z+1]=a[Ha+1];a[Z+2]=a[Ha+2];a[Z+3]=a[Ha+3];la=((Vd+4<<4)+Ja|0)>>2;a[Ra]=a[la];a[Ra+1]=a[la+1];a[Ra+2]=a[la+2];a[Ra+3]=a[la+3];Gd(x,Ad,2);var Oc=Ud+1|0;if((Oc|0)==(d|0)){break}else{Ud=Oc}}}}else{if(512==(Bb|0)){4!=(d|0)&&sa(Ot|0,588,Pt|0,Qt|0);Pa(x,i);0!=(l|0)&&$b(x,c);var Pc=d+8|0,gd=fa(Pc<<4);pa=gd>>2;ma=g>>2;a[pa]=a[ma];a[pa+1]=a[ma+1];a[pa+2]=a[ma+2];a[pa+3]=a[ma+3];za=(gd+16|0)>>2;Ka=(g+16|0)>>2;a[za]=a[Ka];a[za+1]=a[Ka+1];a[za+2]=a[Ka+2];a[za+3]=a[Ka+3];ta=(Ja+48|0)>>2;var ud=(b[0]=a[ta],b[1]=a[ta+1],f[0]);$=(Ja+64|0)>>2;var Fc=ud+((b[0]=a[$],b[1]=a[$+1],f[0])-ud),Yc=gd+32|0;Ga=Yc>>2;Fa=Yc>>2;f[0]=Fc;a[Fa]=b[0];a[Fa+1]=b[1];Ab=(Ja+56|0)>>2;var of=(b[0]=a[Ab],b[1]=a[Ab+1],f[0]);wa=(Ja+72|0)>>2;var Gc=of+((b[0]=a[wa],b[1]=a[wa+1],f[0])-of);Y=(gd+40|0)>>2;f[0]=Gc;a[Y]=b[0];a[Y+1]=b[1];var Zc=Fc+((b[0]=a[ta],b[1]=a[ta+1],f[0])-(b[0]=a[fd>>2],b[1]=a[fd+4>>2],f[0]));ya=(gd+48|0)>>2;f[0]=Zc;a[ya]=b[0];a[ya+1]=b[1];var Lc=Ja+40|0,Jc=Gc+((b[0]=a[Ab],b[1]=a[Ab+1],f[0])-(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0]));tb=(gd+56|0)>>2;f[0]=Jc;a[tb]=b[0];a[tb+1]=b[1];var bd=Zc+((b[0]=a[$],b[1]=a[$+1],f[0])-(b[0]=a[ta],b[1]=a[ta+1],f[0]));V=(gd+64|0)>>2;f[0]=bd;a[V]=b[0];a[V+1]=b[1];var Vc=Jc+((b[0]=a[wa],b[1]=a[wa+1],f[0])-(b[0]=a[Ab],b[1]=a[Ab+1],f[0]));Rb=(gd+72|0)>>2;f[0]=Vc;a[Rb]=b[0];a[Rb+1]=b[1];var Bd=bd+(Fc-Zc),Rc=gd+80|0;W=Rc>>2;f[0]=Bd;a[Rc>>2]=b[0];a[Rc+4>>2]=b[1];var ed=gd+88|0;f[0]=Vc+(Gc-Jc);a[ed>>2]=b[0];a[ed+4>>2]=b[1];ga=(Ja+96|0)>>2;var qd=(b[0]=a[ga],b[1]=a[ga+1],f[0]);ha=(Ja+80|0)>>2;var Cd=qd+((b[0]=a[ha],b[1]=a[ha+1],f[0])-qd),ad=gd+144|0;S=ad>>2;f[0]=Cd;a[ad>>2]=b[0];a[ad+4>>2]=b[1];U=(Ja+104|0)>>2;var vd=(b[0]=a[U],b[1]=a[U+1],f[0]);xa=(Ja+88|0)>>2;var Xc=vd+((b[0]=a[xa],b[1]=a[xa+1],f[0])-vd),dd=gd+152|0;f[0]=Xc;a[dd>>2]=b[0];a[dd+4>>2]=b[1];var pd=Ja+112|0,cd=Cd+((b[0]=a[ga],b[1]=a[ga+1],f[0])-(b[0]=a[pd>>2],b[1]=a[pd+4>>2],f[0]));ea=(gd+128|0)>>2;f[0]=cd;a[ea]=b[0];a[ea+1]=b[1];var Fd=Ja+120|0,te=Xc+((b[0]=a[U],b[1]=a[U+1],f[0])-(b[0]=a[Fd>>2],b[1]=a[Fd+4>>2],f[0]));da=(gd+136|0)>>2;f[0]=te;a[da]=b[0];a[da+1]=b[1];var yd=cd+((b[0]=a[ha],b[1]=a[ha+1],f[0])-(b[0]=a[ga],b[1]=a[ga+1],f[0]));aa=(gd+112|0)>>2;f[0]=yd;a[aa]=b[0];a[aa+1]=b[1];var od=te+((b[0]=a[xa],b[1]=a[xa+1],f[0])-(b[0]=a[U],b[1]=a[U+1],f[0]));ja=(gd+120|0)>>2;f[0]=od;a[ja]=b[0];a[ja+1]=b[1];var Md=yd+(Cd-cd),Ld=gd+96|0;zb=Ld>>2;Q=Ld>>2;f[0]=Md;a[Q]=b[0];a[Q+1]=b[1];var be=od+(Xc-te);R=(gd+104|0)>>2;f[0]=be;a[R]=b[0];a[R+1]=b[1];ca=(gd+160|0)>>2;hc=(g+32|0)>>2;a[ca]=a[hc];a[ca+1]=a[hc+1];a[ca+2]=a[hc+2];a[ca+3]=a[hc+3];N=(gd+176|0)>>2;L=(g+48|0)>>2;a[N]=a[L];a[N+1]=a[L+1];a[N+2]=a[L+2];a[N+3]=a[L+3];zc(x,gd,Pc,l&255);var wd=Na|0;K=Na>>2;a[K]=a[Ga];a[K+1]=a[Ga+1];a[K+2]=a[Ga+2];a[K+3]=a[Ga+3];var xd=(b[0]=a[Fa],b[1]=a[Fa+1],f[0]),ke=xd-((b[0]=a[ya],b[1]=a[ya+1],f[0])-xd);I=(Na+16|0)>>2;f[0]=ke;a[I]=b[0];a[I+1]=b[1];var sd=(b[0]=a[Y],b[1]=a[Y+1],f[0]),Ed=sd-((b[0]=a[tb],b[1]=a[tb+1],f[0])-sd);H=(Na+24|0)>>2;f[0]=Ed;a[H]=b[0];a[H+1]=b[1];var Wd=ke+((b[0]=a[V],b[1]=a[V+1],f[0])-(b[0]=a[ya],b[1]=a[ya+1],f[0]));J=(Na+32|0)>>2;f[0]=Wd;a[J]=b[0];a[J+1]=b[1];var se=Ed+((b[0]=a[Rb],b[1]=a[Rb+1],f[0])-(b[0]=a[tb],b[1]=a[tb+1],f[0]));E=(Na+40|0)>>2;f[0]=se;a[E]=b[0];a[E+1]=b[1];ia=(Na+48|0)>>2;a[ia]=a[W];a[ia+1]=a[W+1];a[ia+2]=a[W+2];a[ia+3]=a[W+3];Gd(x,wd,4);a[K]=a[zb];a[K+1]=a[zb+1];a[K+2]=a[zb+2];a[K+3]=a[zb+3];var Pd=(b[0]=a[Q],b[1]=a[Q+1],f[0]),de=Pd-((b[0]=a[aa],b[1]=a[aa+1],f[0])-Pd);f[0]=de;a[I]=b[0];a[I+1]=b[1];var Id=(b[0]=a[R],b[1]=a[R+1],f[0]),le=Id-((b[0]=a[ja],b[1]=a[ja+1],f[0])-Id);f[0]=le;a[H]=b[0];a[H+1]=b[1];var he=de+((b[0]=a[ea],b[1]=a[ea+1],f[0])-(b[0]=a[aa],b[1]=a[aa+1],f[0]));f[0]=he;a[J]=b[0];a[J+1]=b[1];var Ce=le+((b[0]=a[da],b[1]=a[da+1],f[0])-(b[0]=a[ja],b[1]=a[ja+1],f[0]));f[0]=Ce;a[E]=b[0];a[E+1]=b[1];a[ia]=a[S];a[ia+1]=a[S+1];a[ia+2]=a[S+2];a[ia+3]=a[S+3];Gd(x,wd,4);G(gd)}else{if(32==(Bb|0)){Pa(x,i);0!=(l|0)&&$b(x,c);var ce=d+1|0,Hd=fa(ce<<4);Da=Hd>>2;var ue=1<(d|0);a:do{if(ue){for(var Yd=1;;){F=((Yd<<4)+Hd|0)>>2;O=((Yd<<4)+g|0)>>2;a[F]=a[O];a[F+1]=a[O+1];a[F+2]=a[O+2];a[F+3]=a[O+3];var Qd=Yd+1|0;if((Qd|0)==(d|0)){break a}else{Yd=Qd}}}}while(0);var $d=3*d|0;X=(($d+1<<4)+Ja|0)>>2;a[Da]=a[X];a[Da+1]=a[X+1];a[Da+2]=a[X+2];a[Da+3]=a[X+3];M=((d<<4)+Hd|0)>>2;D=(($d-1<<4)+Ja|0)>>2;a[M]=a[D];a[M+1]=a[D+1];a[M+2]=a[D+2];a[M+3]=a[D+3];zc(x,Hd,ce,l&255);G(Hd);var De=Na|0;y=Na>>2;a[y]=a[D];a[y+1]=a[D+1];a[y+2]=a[D+2];a[y+3]=a[D+3];var ae=Na+16|0;T=ae>>2;a[T]=a[X];a[T+1]=a[X+1];a[T+2]=a[X+2];a[T+3]=a[X+3];var Ae=ae|0,He=(b[0]=a[Ae>>2],b[1]=a[Ae+4>>2],f[0]),Ee=Na|0,xe=($d<<4)+Ja|0,Ke=He+((b[0]=a[Ee>>2],b[1]=a[Ee+4>>2],f[0])-(b[0]=a[xe>>2],b[1]=a[xe+4>>2],f[0])),qe=Na+32|0,re=qe|0;f[0]=Ke;a[re>>2]=b[0];a[re+4>>2]=b[1];var Ge=Na+24|0,ye=(b[0]=a[Ge>>2],b[1]=a[Ge+4>>2],f[0]),ze=Na+8|0,me=($d<<4)+Ja+8|0,Oe=ye+((b[0]=a[ze>>2],b[1]=a[ze+4>>2],f[0])-(b[0]=a[me>>2],b[1]=a[me+4>>2],f[0])),Be=Na+40|0;f[0]=Oe;a[Be>>2]=b[0];a[Be+4>>2]=b[1];Gd(x,ae,2);P=qe>>2;a[T]=a[P];a[T+1]=a[P+1];a[T+2]=a[P+2];a[T+3]=a[P+3];Gd(x,De,2)}else{if(64==(Bb|0)){Pa(x,i);0!=(l|0)&&$b(x,c);var Nd=d+2|0,td=fa(Nd<<4);C=td>>2;B=g>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];A=(td+16|0)>>2;a[A]=a[kb];a[A+1]=a[kb+1];a[A+2]=a[kb+2];a[A+3]=a[kb+3];var Pe=(b[0]=a[fd>>2],b[1]=a[fd+4>>2],f[0]),Ie=Ja+48|0;w=Ie>>2;u=Ie>>2;t=(Ja+64|0)>>2;var We=Pe+((b[0]=a[u],b[1]=a[u+1],f[0])-(b[0]=a[t],b[1]=a[t+1],f[0]))/3,Le=td+32|0;f[0]=We;a[Le>>2]=b[0];a[Le+4>>2]=b[1];var Me=Ja+40|0,Te=(b[0]=a[Me>>2],b[1]=a[Me+4>>2],f[0]);v=(Ja+56|0)>>2;m=(Ja+72|0)>>2;var Ue=Te+((b[0]=a[v],b[1]=a[v+1],f[0])-(b[0]=a[m],b[1]=a[m+1],f[0]))/3,Ve=td+40|0;f[0]=Ue;a[Ve>>2]=b[0];a[Ve+4>>2]=b[1];var Re=(b[0]=a[u],b[1]=a[u+1],f[0]),hf=Re+(Re-(b[0]=a[t],b[1]=a[t+1],f[0]))/3,Se=td+48|0;f[0]=hf;a[Se>>2]=b[0];a[Se+4>>2]=b[1];var Ze=(b[0]=a[v],b[1]=a[v+1],f[0]),jf=Ze+(Ze-(b[0]=a[m],b[1]=a[m+1],f[0]))/3,ff=td+56|0;f[0]=jf;a[ff>>2]=b[0];a[ff+4>>2]=b[1];var kf=4<(Nd|0);a:do{if(kf){for(var ge=4;;){p=((ge<<4)+td|0)>>2;j=((ge-2<<4)+g|0)>>2;a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];var Ne=ge+1|0;if((Ne|0)==(Nd|0)){break a}else{ge=Ne}}}}while(0);zc(x,td,Nd,l&255);G(td);n=Na>>2;a[n]=a[w];a[n+1]=a[w+1];a[n+2]=a[w+2];a[n+3]=a[w+3];k=(Na+16|0)>>2;a[k]=a[kb];a[k+1]=a[kb+1];a[k+2]=a[kb+2];a[k+3]=a[kb+3];Gd(x,Na|0,2)}}}}}}}G(Ja);h=Na}function lH(x){var c,i,g,d,e,l,k,n,z=h;h+=32;var p;n=z>>2;var s=z+8;k=s>>2;var v=z+16,t=z+24,u=fa(44);l=u>>2;var w=x+24|0,A=a[a[w>>2]+8>>2];e=A>>2;var B=a[e],C=a[e+1],P=a[e+2],T=A+12|0,y=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),D=A+28|0,M=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),X=A+20|0,O=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),F=x|0,Da=jo(V(F,mH|0))&255|B,ia=0!=(Da|0);if(ia){var E,G=x|0,J=Xb(G,a[rh>>2],0,.01),H=Xb(G,a[sh>>2],0,.02),I=72*(J>H?J:H);E=(0>I?I-.5:I+.5)&-1|0;if(0>2],b[1]=a[N+4>>2],f[0]),R=x+56|0,Q=(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),zb=72*(cazb?zb-.5:zb+.5)&-1|0,L=K=ja}}else{var aa=x+48|0,da=72*(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=0>da?da-.5:da+.5,xa=x+56|0,U=72*(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),K=(0>U?U-.5:U+.5)&-1|0,L=ea&-1|0}var S=Zf(F,a[$o>>2],C),ha=y+Xb(F,a[Rt>>2],0,-360);if(0==(P|0)){var ga=Xb(F,a[St>>2],0,-100),W=Zf(F,a[Tt>>2],4),Rb=Xb(F,a[Ut>>2],0,-100),Y=ga,tb=W}else{Rb=O,Y=M,tb=P}d=(x+120|0)>>2;var ya=a[d],$=ya+24|0,wa=(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),Ab=ya+32|0,Fa=(b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0]),Ga=wa&-1,Z=-1<(Ga|0)?Ga:-Ga|0,ta=Z|0;p=-1<(Z|0)?0==(ta+.5&-1|0)?1774:1777:0==(ta-.5&-1|0)?1774:1777;if(1774==p){var Ka=Fa&-1,za=-1<(Ka|0)?Ka:-Ka|0,ma=za|0;if(-1<(za|0)){if(0==(ma+.5&-1|0)){var pa=wa,sa=Fa}else{p=1777}}else{0==(ma-.5&-1|0)?(pa=wa,sa=Fa):p=1777}}if(1777==p){var Ha=V(F,Zn|0);if(0==(Ha|0)){pa=wa+16,sa=Fa+8}else{var Ra=Cd(Ha,Lk|0,(j=h,h+=8,a[j>>2]=z,a[j+4>>2]=s,j)),ba=(b[0]=a[n],b[1]=a[n+1],f[0]);if(0>ba){f[0]=0;a[n]=b[0];a[n+1]=b[1];var ra=0}else{ra=ba}var La=(b[0]=a[k],b[1]=a[k+1],f[0]);if(0>La){f[0]=0;a[k]=b[0];a[k+1]=b[1];var qa=0}else{qa=La}if(0<(Ra|0)){var Ya=72*ra,na=0>Ya,Za=wa+(((na?Ya-.5:Ya+.5)&-1)<<1|0);if(1<(Ra|0)){var oa=72*qa,ab=0>oa?oa-.5:oa+.5,pa=Za,sa=Fa+((ab&-1)<<1|0)}else{var $a=na?Ya-.5:Ya+.5,pa=Za,sa=Fa+(($a&-1)<<1|0)}}else{pa=wa+16,sa=Fa+8}}}var jb=a[d]+24|0,Ca=pa-(b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0]);g=(x+20|0)>>2;var Ia=a[a[g]+44>>2]|0,eb=(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]);if(0ub?ub-.5:ub+.5)&-1|0,Ba=nH(pa,Sa),ua=nH(sa,Sa)}else{Ba=pa,ua=sa}var Oa=a[w>>2];if(0==m[Oa+12|0]<<24>>24){var Wa=V(F,ap|0);if(0==(Wa|0)){var pb=0,ob=0}else{if(0==m[Wa]<<24>>24){ob=pb=0}else{oH(t,a[g],Wa);var bb=a[t>>2],qb=a[t+4>>2];if(-1==(bb|0)&-1==(qb|0)){var Ma=a[x+12>>2];la(0,pH|0,(j=h,h+=8,a[j>>2]=Wa,a[j+4>>2]=Ma,j));ob=pb=0}else{m[a[g]+150|0]=1,pb=bb+2|0,ob=qb+2|0}}}}else{var kb=a[Oa>>2];if(99!=m[kb]<<24>>24){ob=pb=0}else{if(0!=(ka(kb,th|0)|0)){ob=pb=0}else{var ie=V(F,Xk|0);oH(v,a[g],ie);var vb=a[v>>2],xb=a[v+4>>2];if(-1==(vb|0)&-1==(xb|0)){var hd=0!=(ie|0)?ie:qH|0,nb=a[x+12>>2];la(0,rH|0,(j=h,h+=8,a[j>>2]=hd,a[j+4>>2]=nb,j));ob=pb=0}else{m[a[g]+150|0]=1,pb=vb+2|0,ob=xb+2|0}}}}var rb=pb|0,lb=Ba>rb?Ba:rb,Ta=ob|0,cb=ua>Ta?ua:Ta,fb=3>(tb|0)?0!=Rb|0!=Y?120:tb:tb,Ua=V(F,Vt|0);if(0==(Ua|0)){p=1818}else{var sb=m[Ua];116==sb<<24>>24||98==sb<<24>>24?m[a[d]+80|0]=sb:p=1818}1818==p&&(m[a[d]+80|0]=99);if(4==(fb|0)){if(0==(((0>ha?ha-.5:ha+.5)&-1)%90|0)&0==Rb&0==Y){var Na=lb,Fb=cb,Db=1}else{p=1824}}else{p=1824}if(1824==p){var Ob=1.4142135623730951*cb;if(K>Ob){if(99!=m[a[d]+80|0]<<24>>24){var Eb=1.4142135623730951,ne=Ob}else{var Bb=cb/K,Eb=$c(1/(1-Bb*Bb)),ne=cb}}else{Eb=1.4142135623730951,ne=Ob}var Ja=lb*Eb;if(2<(fb|0)){var Ea=se(3.141592653589793/(fb|0)),Na=Ja/Ea,Fb=ne/Ea}else{Na=Ja,Fb=ne}Db=0}if(0==re(jc(F,a[bp>>2],Ze|0))<<24>>24){var va=L>Na?L:Na,Aa=K>Fb?K:Fb}else{if(L>2];la(0,sH|0,(j=h,h+=8,a[j>>2]=a[x+12>>2],a[j+4>>2]=wb,j))}va=L;Aa=K}if(ia){var Cb=va>Aa?va:Aa,Qa=Cb,ic=Cb}else{Qa=va,ic=Aa}if(0==re(jc(F,a[cp>>2],Ze|0))<<24>>24){if(Db){var Va=a[d]+40|0;f[0]=(Ba>Qa?Ba:Qa)-Ca;a[Va>>2]=b[0];a[Va+4>>2]=b[1]}else{if(uaPa?Ba:Pa)-Ca;a[hb>>2]=b[0];a[hb+4>>2]=b[1]}else{var ib=a[d]+40|0;f[0]=Ba-Ca;a[ib>>2]=b[0];a[ib+4>>2]=b[1]}}}else{var Gb=a[d]+40|0;f[0]=Ba-Ca;a[Gb>>2]=b[0];a[Gb+4>>2]=b[1]}var pc=ic-Fb,Wc=a[d]+48|0;f[0]=ua+(ua>2]=b[0];a[Wc+4>>2]=b[1];var Vb=1>(S|0)?1:S,Xd=3>(fb|0);a:do{if(Xd){var yb=fa(Vb<<5),db=yb,Ib=.5*Qa,Nb=.5*ic,mb=yb;f[0]=-Ib;a[mb>>2]=b[0];a[mb+4>>2]=b[1];var lc=yb+8|0;f[0]=-Nb;a[lc>>2]=b[0];a[lc+4>>2]=b[1];var Hb=yb+16|0;f[0]=Ib;a[Hb>>2]=b[0];a[Hb+4>>2]=b[1];var Jd=yb+24|0;f[0]=Nb;a[Jd>>2]=b[0];a[Jd+4>>2]=b[1];if(1<(S|0)){for(var Lb=Nb,Hc=Ib,Jb=2,oe=1;;){var Kb=Hc+4,Qb=Lb+4,tc=(Jb<<4)+db|0;f[0]=-Kb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];var Sc=(Jb<<4)+db+8|0;f[0]=-Qb;a[Sc>>2]=b[0];a[Sc+4>>2]=b[1];var Pb=Jb|1,Yb=(Pb<<4)+db|0;f[0]=Kb;a[Yb>>2]=b[0];a[Yb+4>>2]=b[1];var Mb=(Pb<<4)+db+8|0;f[0]=Qb;a[Mb>>2]=b[0];a[Mb+4>>2]=b[1];var rd=oe+1|0;if((rd|0)==(S|0)){break}else{Lb=Qb,Hc=Kb,Jb=Jb+2|0,oe=rd}}oc=db;Wb=2;Tb=2*Kb;ve=2*Qb}else{var oc=db,Wb=2,Tb=Qa,ve=ic}}else{for(var Rd=fa((Vb<<4)*fb|0),Bc=Rd,Sd=6.283185307179586/(fb|0),fd=.5*Sd,$b=Ce(fd),yc=pi(be(Rb)+be(Y),1),Sb=1.4142135623730951*Rb/se(fd),uc=.5*Y,Tc=.5*(Sd-3.141592653589793),ec=3.141592653589793*(ha/180),Mc=0,id=Tc+.5*(3.141592653589793-Sd),Zb=0,qc=0,nc=.5*Ce(Tc),kc=.5*se(Tc);;){if((Mc|0)>=(fb|0)){var mc=Zb,fc=qc;break}var af=id+Sd,ac=Ce(af),Td=kc+$b*se(af),Fe=nc+$b*ac,bc=Td*(yc+Fe*Sb)+Fe*uc,fe=ec+Cf(Fe,bc),rc=Ce(fe),dc=se(fe),jd=pi(bc,Fe),md=jd*dc*Qa,je=jd*rc*ic,Qe=be(md)>Zb?be(md):Zb,Ac=be(je)>qc?be(je):qc,Uc=(Mc<<4)+Bc|0;f[0]=md;a[Uc>>2]=b[0];a[Uc+4>>2]=b[1];var gc=(Mc<<4)+Bc+8|0;f[0]=je;a[gc>>2]=b[0];a[gc+4>>2]=b[1];if(Db){p=1855;break}else{Mc=Mc+1|0,id=af,Zb=Qe,qc=Ac,nc=Fe,kc=Td}}if(1855==p){var Cc=-md,Ic=Rd+16|0;f[0]=Cc;a[Ic>>2]=b[0];a[Ic+4>>2]=b[1];var vc=Rd+24|0;f[0]=je;a[vc>>2]=b[0];a[vc+4>>2]=b[1];var ef=Rd+32|0;f[0]=Cc;a[ef>>2]=b[0];a[ef+4>>2]=b[1];var kd=-je,Kc=Rd+40|0;f[0]=kd;a[Kc>>2]=b[0];a[Kc+4>>2]=b[1];var Nc=Rd+48|0;f[0]=md;a[Nc>>2]=b[0];a[Nc+4>>2]=b[1];var zc=Rd+56|0;f[0]=kd;a[zc>>2]=b[0];a[zc+4>>2]=b[1];mc=Qe;fc=Ac}var Dc=2*mc,Ec=2*fc,nd=Qa>Dc?Qa:Dc,zd=ic>Ec?ic:Ec,cf=nd/Dc,Qc=zd/Ec,Fc=0<(fb|0);b:do{if(Fc){for(var Gc=0;;){i=((Gc<<4)+Bc|0)>>2;c=((Gc<<4)+Bc+8|0)>>2;var we=(b[0]=a[i],b[1]=a[i+1],f[0])*cf,pe=(b[0]=a[c],b[1]=a[c+1],f[0])*Qc;f[0]=we;a[i]=b[0];a[i+1]=b[1];f[0]=pe;a[c]=b[0];a[c+1]=b[1];var Zc=Gc+1|0;if((Zc|0)==(fb|0)){break b}else{Gc=Zc}}}}while(0);if(1<(S|0)){var Kd=fb-1|0,Dd=(Kd<<4)+Bc|0,Jc=(b[0]=a[Dd>>2],b[1]=a[Dd+4>>2],f[0]),Oc=(Kd<<4)+Bc+8|0,Ye=(b[0]=a[Oc>>2],b[1]=a[Oc+4>>2],f[0]),Ad=Rd,Ud=(b[0]=a[Ad>>2],b[1]=a[Ad+4>>2],f[0]),Vd=Rd+8|0,Pc=(b[0]=a[Vd>>2],b[1]=a[Vd+4>>2],f[0]);if(Fc){for(var Yc=Ud,gd=Pc,ud=0,Rc=Cf(Pc-Ye,Ud-Jc);;){for(var Lc=ud+1|0,of=(Lc|0)==(fb|0),ld=of?0:Lc,ad=(ld<<4)+Bc|0,bd=(b[0]=a[ad>>2],b[1]=a[ad+4>>2],f[0]),Xc=(ld<<4)+Bc+8|0,Vc=(b[0]=a[Xc>>2],b[1]=a[Xc+4>>2],f[0]),cd=Cf(Vc-gd,bd-Yc),ed=.5*(Rc+3.141592653589793-cd),qd=4/Ce(ed),vd=Rc-ed,dd=Ce(vd)*qd,Bd=se(vd)*qd,pd=gd,Fd=Yc,yd=1;;){var od=Fd+Bd,td=pd+dd,Ld=yd*fb+ud|0,wd=(Ld<<4)+Bc|0;f[0]=od;a[wd>>2]=b[0];a[wd+4>>2]=b[1];var te=(Ld<<4)+Bc+8|0;f[0]=td;a[te>>2]=b[0];a[te+4>>2]=b[1];var xd=yd+1|0;if((xd|0)==(S|0)){break}else{pd=td,Fd=od,yd=xd}}if(of){break}else{Yc=bd,gd=Vc,ud=Lc,Rc=cd}}for(var ke=fb*(S-1)|0,sd=zd,Md=nd,Gd=0;;){var Ed=Gd+ke|0,Wd=(Ed<<4)+Bc|0,Hd=(b[0]=a[Wd>>2],b[1]=a[Wd+4>>2],f[0]),Yd=(Ed<<4)+Bc+8|0,$d=(b[0]=a[Yd>>2],b[1]=a[Yd+4>>2],f[0]),Pd=2*be(Hd)>Md?2*be(Hd):Md,de=2*be($d)>sd?2*be($d):sd,Id=Gd+1|0;if((Id|0)==(fb|0)){oc=Bc;Wb=fb;Tb=Pd;ve=de;break a}else{sd=de,Md=Pd,Gd=Id}}}else{oc=Bc,Wb=fb,Tb=nd,ve=zd}}else{oc=Bc,Wb=fb,Tb=nd,ve=zd}}}while(0);a[l]=Da;a[l+1]=S;a[l+2]=Wb;var le=u+12|0;f[0]=ha;a[le>>2]=b[0];a[le+4>>2]=b[1];var ae=u+28|0;f[0]=Y;a[ae>>2]=b[0];a[ae+4>>2]=b[1];var Nd=u+20|0;f[0]=Rb;a[Nd>>2]=b[0];a[Nd+4>>2]=b[1];a[l+10]=oc;var ce=x+48|0;f[0]=Tb/72;a[ce>>2]=b[0];a[ce+4>>2]=b[1];var Qd=x+56|0;f[0]=ve/72;a[Qd>>2]=b[0];a[Qd+4>>2]=b[1];a[x+28>>2]=u;h=z}function tH(x){var c,i,g,d=h;h+=32;var e=d+16,l=a[a[x+20>>2]+152>>2]>>>2&1^1;i=x+120|0;g=a[a[i>>2]>>2];a[Fd>>2]=g;g=Ba(g);g=fa(1<(g|0)?g+1|0:2);c=dp(x,l,1,g);0==(c|0)?(la(1,uH|0,(j=h,h+=4,a[j>>2]=a[a[i>>2]>>2],j)),a[Fd>>2]=yg|0,l=dp(x,l,1,g)):l=c;G(g);Wt(d,x,l);g=(x+48|0)>>2;i=72*(b[0]=a[g],b[1]=a[g+1],f[0]);var k=(0>i?i-.5:i+.5)&-1|0;i=(x+56|0)>>2;c=72*(b[0]=a[i],b[1]=a[i+1],f[0]);var n=(0>c?c-.5:c+.5)&-1|0,z=x|0;c=(l|0)>>2;if(0==re(jc(z,a[bp>>2],Ze|0))<<24>>24){var p=(b[0]=a[c],b[1]=a[c+1],f[0]),m=l+8|0,v=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),n=v>n?v:n,p=p>k?p:k,k=m}else{p=k,k=l+8|0}Xt(l,p,n,re(jc(z,a[cp>>2],Ze|0))&255);Xi(e,-.5*p,.5*n);z=e|0;e=e+8|0;Yt(l,(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),15);e=(b[0]=a[c],b[1]=a[c+1],f[0])/72;f[0]=e;a[g]=b[0];a[g+1]=b[1];e=((b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])+1)/72;f[0]=e;a[i]=b[0];a[i+1]=b[1];a[x+28>>2]=l;h=d}function vH(c){var d,i,g,q=fa(44);g=q>>2;var e=a[a[a[c+24>>2]+8>>2]+4>>2];d=c|0;i=Xb(d,a[rh>>2],1.7976931348623157e+308,3e-4);var l=Xb(d,a[sh>>2],1.7976931348623157e+308,3e-4),k=i>2;1.7976931348623157e+308==k&1.7976931348623157e+308==l?(f[0]=.05,a[i]=b[0],a[i+1]=b[1],l=c+48|0,f[0]=.05,a[l>>2]=b[0],a[l+4>>2]=b[1],k=3.6):(f[0]=k,a[i]=b[0],a[i+1]=b[1],l=c+48|0,f[0]=k,a[l>>2]=b[0],a[l+4>>2]=b[1],k*=72);l=c+48|0;d=Zf(d,a[$o>>2],e);var e=fa(1>(d|0)?32:d<<5),h=.5*k,j=-h;f[0]=j;a[e>>2]=b[0];a[e+4>>2]=b[1];var p=e+8|0;f[0]=j;a[p>>2]=b[0];a[p+4>>2]=b[1];j=e+16|0;f[0]=h;a[j>>2]=b[0];a[j+4>>2]=b[1];j=e+24|0;f[0]=h;a[j>>2]=b[0];a[j+4>>2]=b[1];if(1<(d|0)){p=j=h;k=2;for(h=1;;){var m=p+4,j=j+4,p=(k<<4)+e|0;f[0]=-m;a[p>>2]=b[0];a[p+4>>2]=b[1];p=(k<<4)+e+8|0;f[0]=-j;a[p>>2]=b[0];a[p+4>>2]=b[1];var p=k|1,v=(p<<4)+e|0;f[0]=m;a[v>>2]=b[0];a[v+4>>2]=b[1];p=(p<<4)+e+8|0;f[0]=j;a[p>>2]=b[0];a[p+4>>2]=b[1];h=h+1|0;if((h|0)==(d|0)){break}else{p=m,k=k+2|0}}m*=2}else{m=k}a[g]=1;a[g+1]=d;a[g+2]=2;d=(q+12|0)>>2;a[d]=0;a[d+1]=0;a[d+2]=0;a[d+3]=0;a[d+4]=0;a[d+5]=0;a[g+10]=e;g=m/72;f[0]=g;a[l>>2]=b[0];a[l+4>>2]=b[1];f[0]=g;a[i]=b[0];a[i+1]=b[1];a[c+28>>2]=q}function Is(b){var c,i=a[Yk>>2];if(0==(i|0)){var g;return 0}for(var d=a[mo>>2],f=0;;){if((f|0)>=(d|0)){g=0;c=1901;break}var e=a[i+(f<<2)>>2],k=a[e>>2];if(m[k]<<24>>24==m[b]<<24>>24&&0==(ka(k,b)|0)){g=e;c=1902;break}f=f+1|0}if(1902==c||1901==c){return g}}function wH(b,c,i,g){var d=h;h+=40;i=xH(c,i,g);a[d+36>>2]=a[g+36>>2];Yi(c,a[g+24>>2],d,i,m[g+33|0]&255,0);c=d>>2;b>>=2;for(g=c+10;c>2]+32>>2]+152>>2]&3,k=c+32|0,n=c+40|0;yH(g,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),l);k=d+32|0;d=d+40|0;yH(q,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l);d=m[i+33|0];l=d&255;if(15==d<<24>>24||0==d<<24>>24){return h=g,0}i=a[i+24>>2];if(0==(i|0)){var e=0==(a[a[e>>2]+152>>2]&1|0),i=c+96|0,i=.5*(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),d=-i,c=c+104|0,k=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),n=-k,c=e?n:d,j=e?d:n,p=e?k:i,n=e?i:k}else{c=i|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),e=i+8|0,d=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=i+16|0,i=i+24|0,j=d,p=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),n=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])}var i=a[g>>2],e=a[g+4>>2],d=a[q>>2],q=a[q+4>>2],s=.5*(c+p)&-1,k=.5*(j+n)&-1;if(0==(l&1|0)){var v=0,j=0}else{v=i+s-d|0,j=e+(j&-1)-q|0,v=j*j+v*v|0,j=zH|0}if(0==(l&2|0)){p=v}else{var p=i+(p&-1)-d|0,t=e+k-q|0,p=t*t+p*p|0,p=(t=0==(j|0)|(p|0)<(v|0))?p:v,j=t?Zt|0:j}0==(l&4|0)?(n=p,s=j):(s=i+s-d|0,n=e+(n&-1)-q|0,n=n*n+s*s|0,n=(s=0==(j|0)|(n|0)<(p|0))?n:p,s=s?$t|0:j);if(0==(l&8|0)){return h=g,s}l=i+(c&-1)-d|0;c=e+k-q|0;l=0==(s|0)|(c*c+l*l|0)<(n|0)?au|0:s;h=g;return l}function Yi(c,d,i,g,q,e){var l=h;h+=128;var k=l+16,n=l+32,j=l+48,p=l+64,s=l+80,v=l+96,t=l+112;if(0==(d|0)){var u=0==(a[a[c+20>>2]+152>>2]&1|0),w=c+96|0,w=.5*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=c+104|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=u?w:A,w=u?A:w,A=0,u=-w,C=-B,P=B,T=B=0}else{var u=d|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),w=d+8|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=d+16|0,P=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),A=d+24|0,y=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]);Xi(l,.5*(u+P),.5*(w+y));B=l|0;T=l+8|0;A=1;C=w;w=P;P=y;B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);T=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0])}0==(g|0)?(e=A,k=1,j=p=n=q=s=0,v=B,u=T):(y=m[g],0==y<<24>>24?(e=A,k=1,j=p=n=q=s=0,v=B,u=T):(y=y<<24>>24,g=g+1|0,119==(y|0)?(v=0==m[g]<<24>>24,j=v&1,e=v?1:A,k=j^1,s=v?q&8:0,q=0,n=v&1^1,p=v?3.141592653589793:0,v=v?u:B,u=T):115==(y|0)?(p=m[g]<<24>>24,119==(p|0)?(0==(e|0)?(v=u,u=C):(Zi(j,e,-2147483647,-2147483647),e=j|0,k=j+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&9,n=q=0,p=-2.356194490192345,j=1):0==(p|0)?(0==(e|0)?(v=B,u=C):(Zi(k,e,-2147483647,B),e=k|0,k=k+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&1,n=q=0,p=-1.5707963267948966,j=1):101==(p|0)?(0==(e|0)?(v=w,u=C):(Zi(n,e,-2147483647,2147483647),e=n|0,k=n+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&3,n=q=0,p=-.7853981633974483,j=1):(e=A,k=1,q=s=0,n=1,j=p=0,v=B,u=T)):101==(y|0)?(v=0==m[g]<<24>>24,j=v&1,e=v?1:A,k=j^1,s=v?q&2:0,q=0,n=v&1^1,p=0,v=v?w:B,u=T):99==(y|0)?(e=A,k=1,j=p=n=q=s=0,v=B,u=T):95==(y|0)?(e=A,k=1,s=q,q=1,j=p=n=0,v=B,u=T):110==(y|0)?(k=m[g]<<24>>24,101==(k|0)?(0==(e|0)?(v=w,u=P):(Zi(s,e,2147483647,2147483647),e=s|0,k=s+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&6,n=q=0,p=.7853981633974483,j=1):0==(k|0)?(0==(e|0)?(v=B,u=P):(Zi(p,e,2147483647,B),e=p|0,k=p+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&4,n=q=0,p=1.5707963267948966,j=1):119==(k|0)?(0==(e|0)?(v=u,u=P):(Zi(v,e,2147483647,-2147483647),e=v|0,k=v+8|0,v=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),u=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),e=1,k=0,s=q&12,n=q=0,p=2.356194490192345,j=1):(e=A,k=1,q=s=0,n=1,j=p=0,v=B,u=T)):(e=A,k=1,q=s=0,n=1,j=p=0,v=B,u=T)));c=(c+20|0)>>2;lG(t,v,u,90*(a[a[c]+152>>2]&3)|0);v=t|0;v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);t=t+8|0;t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]);m[i+33|0]=0==q<<24>>24?(2==(a[a[c]+152>>2]&3|0)?4==(s|0)?1:1==(s|0)?4:s:3==(a[a[c]+152>>2]&3|0)?4==(s|0)?2:8==(s|0)?1:2==(s|0)?4:1==(s|0)?8:s:1==(a[a[c]+152>>2]&3|0)?1==(s|0)?8:4==(s|0)?2:8==(s|0)?4:2==(s|0)?1:s:s)&255:s&255;a[i+24>>2]=d;d=i|0;f[0]=(0>v?v-.5:v+.5)&-1|0;a[d>>2]=b[0];a[d+4>>2]=b[1];d=i+8|0;f[0]=(0>t?t-.5:t+.5)&-1|0;a[d>>2]=b[0];a[d+4>>2]=b[1];d=i+16|0;a:{if(c=a[a[c]+152>>2]&3,2==(c|0)){c=-1*p}else{if(3==(c|0)){if(3.141592653589793==p){c=-1.5707963267948966}else{if(2.356194490192345==p){c=-.7853981633974483}else{if(1.5707963267948966==p){c=0}else{if(.7853981633974483==p){c=p}else{if(0==p){c=1.5707963267948966}else{if(-.7853981633974483==p){c=2.356194490192345}else{c=-1.5707963267948966==p?3.141592653589793:p;break a}}}}}}}else{c=1==(c|0)?p-1.5707963267948966:p}}}f[0]=c;a[d>>2]=b[0];a[d+4>>2]=b[1];if(0==v&0==t){return m[i+32|0]=-128,m[i+29|0]=j,m[i+28|0]=e,m[i+30|0]=k,m[i+31|0]=q,h=l,n}d=Cf(t,v)+4.71238898038469;m[i+32|0]=256*(6.283185307179586>d?d:d-6.283185307179586)/6.283185307179586&255;m[i+29|0]=j;m[i+28|0]=e;m[i+30|0]=k;m[i+31|0]=q;h=l;return n}function Xi(c,d,i){var g=c|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function yH(b,c,i,g){if(2==(g|0)){var d=-i,f=c,c=2026}else{if(0==(g|0)){d=i,f=c,c=2026}else{if(1==(g|0)){d=c,f=-i,c=2026}else{if(3==(g|0)){d=c,f=i,c=2026}else{var e=0,k=0,c=2027}}}}if(2026==c){if(0>f){var h=f-.5,j=d}else{e=f,k=d,c=2027}}2027==c&&(h=e+.5,j=k);a[b>>2]=h&-1;a[b+4>>2]=(0>j?j-.5:j+.5)&-1}function Zi(c,d,i,g){var q,e=h;h+=64;var l=a[d>>2],k=e+16|0;q=e>>2;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;f[0]=g/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+24|0;f[0]=i/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+32|0;f[0]=2*g/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+40|0;f[0]=2*i/3;a[k>>2]=b[0];a[k+4>>2]=b[1];k=e+48|0;f[0]=g;a[k>>2]=b[0];a[k+4>>2]=b[1];g=e+56|0;f[0]=i;a[g>>2]=b[0];a[g+4>>2]=b[1];vk(d,a[a[a[l+24>>2]+4>>2]+12>>2],e|0,1);c>>=2;a[c]=a[q];a[c+1]=a[q+1];a[c+2]=a[q+2];a[c+3]=a[q+3];h=e}function AH(b,c,i,g){var d,f=h;h+=52;var e,k=f+40;d=k>>2;var n=f+44;if(0==m[i]<<24>>24){c=bu>>2}else{g=0==(g|0)?cu|0:g;a[d]=15;if(0==m[a[c+120>>2]+82|0]<<24>>24){e=2047}else{var z=a[a[c+120>>2]+72>>2];2==m[z+4|0]<<24>>24?k=0:(z=tG(a[z>>2],i),0==(z|0)?k=0:(a[k>>2]=m[z+31|0]&255,k=z+40|0));0==(k|0)?e=2047:0!=(Yi(c,k,f,g,a[d],0)|0)&&la(0,du|0,(j=h,h+=12,a[j>>2]=a[c+12>>2],a[j+4>>2]=i,a[j+8>>2]=g,j))}2047==e&&((a[a[c+24>>2]+8>>2]|0)==(pl|0)?e=0:(a[n>>2]=c,a[n+4>>2]=0,e=n),0!=(Yi(c,0,f,i,a[d],e)|0)&&BH(a[c+12>>2],i));c=f>>2}b>>=2;for(i=c+10;c>2];q=l>>2;l=l+148|0;g=a[l>>2];var k=0==(g|0)?0!=(a[q+50]&1|0):1,n=a[d+28>>2];i=n>>2;if(0!=(n|0)){k&&0==(a[c+148>>2]&4|0)&&ad(c,g,a[q+42],a[q+46],a[q+38]);g=a[c+36>>2];var n=d+32|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+(a[i+1]|0),z=d+40|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])+(a[i+2]|0);i=a[i];Va(g,DH|0,(j=h,h+=20,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],a[j+16>>2]=i,j));n=d+120|0;g=(a[n>>2]+56|0)>>2;i=(d+32|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];Fg(c,10,a[n>>2]);k&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[l>>2],a[q+42],a[q+46],a[q+38]),Se(c))}h=e}function BH(b,c){var i=h;la(0,EH|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=c,j));h=i}function FH(c,d,i){var g=h;h+=16;var q=a[c+4>>2],c=a[c>>2];Ui(g,d,i,90*(a[a[c+20>>2]+152>>2]&3)|0);d=g|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=g+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(0==(q|0)){var q=a[c+28>>2],e=q+16|0,l=q+24|0,c=q+32|0,q=q+40|0}else{e=q,l=q+8|0,c=q+16|0,q=q+24|0}e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);if(e>d){return h=g,0}l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(d>(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])|l>i){return h=g,0}d=i<=q&1;h=g;return d}function GH(c,d,i,g,q){var e,l,k=h;h+=32;var n;if(0==m[d+28|0]<<24>>24){var j;h=k;return 0}for(var d=d|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),p=a[c+28>>2],s=a[p+48>>2],v=c+20|0,p=p+56|0,t=0;;){if((t|0)>=(s|0)){j=i;n=2114;break}var u=0==(a[a[v>>2]+152>>2]&1|0);l=a[a[p>>2]+(t<<2)>>2];if(u){var w=l+32|0,A=l+16|0}else{w=l+40|0,A=l+24|0}A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])&-1|0;if(A<=d&&(e=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])&-1|0,d<=e)){break}t=t+1|0}if(2114==n){return h=k,j}u?(l=(c+32|0)>>2,n=(b[0]=a[l],b[1]=a[l+1],f[0])+A,j=g|0,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],j=c+40|0,n=c+96|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])-.5*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),u=g+8|0,f[0]=j,a[u>>2]=b[0],a[u+4>>2]=b[1],e=(b[0]=a[l],b[1]=a[l+1],f[0])+e,l=g+16|0,f[0]=e,a[l>>2]=b[0],a[l+4>>2]=b[1],e=n):(e=c+32|0,n=c+40|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),j=h,l=(l+16|0)>>2,A=h,h+=32,a[A>>2]=a[l],a[A+4>>2]=a[l+1],a[A+8>>2]=a[l+2],a[A+12>>2]=a[l+3],a[A+16>>2]=a[l+4],a[A+20>>2]=a[l+5],a[A+24>>2]=a[l+6],a[A+28>>2]=a[l+7],l=A+24|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),u=A+16|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),d=A+8|0,s=A|0,A=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+e,d=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0])+n,s=k|0,f[0]=A,a[s>>2]=b[0],a[s+4>>2]=b[1],A=k+8|0,f[0]=d,a[A>>2]=b[0],a[A+4>>2]=b[1],A=k+16|0,f[0]=l+e,a[A>>2]=b[0],a[A+4>>2]=b[1],e=k+24|0,f[0]=u+n,a[e>>2]=b[0],a[e+4>>2]=b[1],h=j,l=g>>2,e=k>>2,a[l]=a[e],a[l+1]=a[e+1],a[l+2]=a[e+2],a[l+3]=a[e+3],a[l+4]=a[e+4],a[l+5]=a[e+5],a[l+6]=a[e+6],a[l+7]=a[e+7],e=c+96|0);c=c+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+.5*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=g+24|0;f[0]=c;a[g>>2]=b[0];a[g+4>>2]=b[1];a[q>>2]=1;h=k;return i}function HH(c,d){var i,g,q,e,l,k=h;h+=96;var n=k+32,j=a[c+16>>2];l=j>>2;var j=j+148|0,p=a[j>>2],s=0==(p|0)?0!=(a[l+50]&1|0):1,v=a[d+28>>2];i=(v+16|0)>>2;g=k>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];a[g+4]=a[i+4];a[g+5]=a[i+5];a[g+6]=a[i+6];a[g+7]=a[i+7];i=d+32|0;q=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=(k|0)>>2;var t=(b[0]=a[i],b[1]=a[i+1],f[0])+q;f[0]=t;a[i]=b[0];a[i+1]=b[1];i=d+40|0;t=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=(k+8|0)>>2;e=(b[0]=a[i],b[1]=a[i+1],f[0])+t;f[0]=e;a[i]=b[0];a[i+1]=b[1];i=k+16|0;e=(i|0)>>2;q=(b[0]=a[e],b[1]=a[e+1],f[0])+q;f[0]=q;a[e]=b[0];a[e+1]=b[1];q=(k+24|0)>>2;t=(b[0]=a[q],b[1]=a[q+1],f[0])+t;f[0]=t;a[q]=b[0];a[q+1]=b[1];s&&0==(a[c+148>>2]&4|0)&&ad(c,p,a[l+42],a[l+46],a[l+38]);p=IH(c,d);ep(c,d);0!=(p&1|0)&&$b(c,Dh(d,qe|0));q=a[a[d+24>>2]>>2];p=77==m[q]<<24>>24?0==(ka(q,eu|0)|0)?p|2:p:p;0==(p&998|0)?mh(c,k,p&1):(q=n>>2,a[q]=a[g],a[q+1]=a[g+1],a[q+2]=a[g+2],a[q+3]=a[g+3],q=n+32|0,g=q>>2,i>>=2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3],g=q|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+16|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],g=n+8|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+24|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],g=n|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+48|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],g=n+40|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),i=n+56|0,f[0]=g,a[i>>2]=b[0],a[i+4>>2]=b[1],Ii(c,Dh(d,qe|0),fu(d),n|0,4,p,p&1));gu(c,d,v);s&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[j>>2],a[l+42],a[l+46],a[l+38]),Se(c));h=k}function IH(b,c){var i=h;h+=4;var g=hu(c,i);0!=(g|0)&&Ke(b,g);g=a[iu>>2];if(0!=(g|0)){var d=c|0,f=mb(d,a[g+8>>2]);0!=(f|0)&&0!=m[f]<<24>>24&&Zr(b,Xb(d,g,1,0))}h=i;return a[i>>2]}function ep(b,c){var i=Aa(c|0,a[Eh>>2],Y|0);0==m[i]<<24>>24?Pa(b,Ac|0):Pa(b,i)}function fp(c,d,i,g,q){var e=c|0;f[0]=d+g;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+8|0;f[0]=i+q;a[c>>2]=b[0];a[c+4>>2]=b[1]}function gu(c,d,i){var g,q,e,l,k,n,j,p,s,v,t=h;h+=96;var u=t+32;s=t+48;var w=t+64,A=t+80,B=i+52|0;v=a[B>>2];0==(v|0)?(B=d+32|0,s=d+40|0):(l=i+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=i+24|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=i+32|0,j=i+40|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),p=u|0,f[0]=.5*(l+n),a[p>>2]=b[0],a[p+4>>2]=b[1],l=u+8|0,f[0]=.5*(k+j),a[l>>2]=b[0],a[l+4>>2]=b[1],l=u|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),u=u+8|0,n=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),k=d+32|0,u=d+40|0,fp(s,l,n,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])),v=(v+56|0)>>2,s>>=2,a[v]=a[s],a[v+1]=a[s+1],a[v+2]=a[s+2],a[v+3]=a[s+3],Fg(c,10,a[B>>2]),ep(c,d),B=k,s=u);B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);v=i+48|0;if(0<(a[v>>2]|0)){u=i+64|0;e=t+16|0;var C=i+56|0;p=e>>2;j=(t|0)>>2;n=(t+24|0)>>2;k=(t+8|0)>>2;var P=t|0;l=t>>2;var i=w>>2,T=e|0;e=A>>2;for(var y=t+16|0,D=0;;){if(0<(D|0)){q=((D<<2)+a[C>>2]|0)>>2;g=a[q];if(0==m[u]<<24>>24){g=(g+32|0)>>2;a[p]=a[g];a[p+1]=a[g+1];a[p+2]=a[g+2];a[p+3]=a[g+3];q=a[q]+16|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);f[0]=q;a[j]=b[0];a[j+1]=b[1];var M=(b[0]=a[n],b[1]=a[n+1],f[0]);f[0]=M;a[k]=b[0];a[k+1]=b[1];g=M;var X=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0])}else{g=(g+16|0)>>2,a[l]=a[g],a[l+1]=a[g+1],a[l+2]=a[g+2],a[l+3]=a[g+3],X=(b[0]=a[j],b[1]=a[j+1],f[0]),f[0]=X,a[y>>2]=b[0],a[y+4>>2]=b[1],q=a[q]+40|0,M=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),f[0]=M,a[n]=b[0],a[n+1]=b[1],q=X,g=(b[0]=a[k],b[1]=a[k+1],f[0])}fp(w,q,g,B,s);a[l]=a[i];a[l+1]=a[i+1];a[l+2]=a[i+2];a[l+3]=a[i+3];fp(A,X,M,B,s);a[p]=a[e];a[p+1]=a[e+1];a[p+2]=a[e+2];a[p+3]=a[e+3];Gd(c,P,2)}gu(c,d,a[a[C>>2]+(D<<2)>>2]);D=D+1|0;if((D|0)>=(a[v>>2]|0)){break}}}h=t}function fu(b){b=Aa(b|0,a[Eh>>2],Y|0);return 0==m[b]<<24>>24?Ac|0:b}function Dh(b,c){var i=b|0,g=Aa(i,a[gp>>2],Y|0);return 0==m[g]<<24>>24?(i=Aa(i,a[Eh>>2],Y|0),0==m[i]<<24>>24?c:i):g}function hu(b,c){var i,g=Aa(b|0,a[Ki>>2],Y|0),d=0==m[g]<<24>>24;a:do{if(d){var f=0,e=0}else{nh(g);for(var k=Cc|0,h=0;;){for(var j=k;;){var p=a[j>>2];if(0==(p|0)){f=h;e=Cc|0;break a}var s=m[p];if(114==s<<24>>24){if(0==(ka(p,Vr|0)|0)){var v=j;i=2181;break}}else{if(105==s<<24>>24){if(0==(ka(p,qh|0)|0)){i=2185;break}}else{if(102==s<<24>>24){if(0==(ka(p,Hi|0)|0)){i=2179;break}}else{if(100==s<<24>>24&&0==(ka(p,JH|0)|0)){var t=j;i=2183;break}}}}j=j+4|0}if(2181==i){for(;!(i=0,k=v+4|0,p=a[k>>2],a[v>>2]=p,0==(p|0));){v=k,i=2181}k=j;h|=2}else{if(2179==i){i=0,k=j+4|0,h|=1}else{if(2185==i){i=0,k=j+4|0,h|=16}else{if(2183==i){for(;!(i=0,k=t+4|0,p=a[k>>2],a[t>>2]=p,0==(p|0));){t=k,i=2183}k=j;h|=4}}}}}}}while(0);i=a[a[b+24>>2]+8>>2];if(0==(i|0)){return a[c>>2]=f,e}f|=a[i+36>>2];a[c>>2]=f;return e}function KH(b,c){var i,g=a[b+60>>2];if(0!=(g|0)&&m[g]<<24>>24==m[c]<<24>>24&&0==(ka(g,c)|0)){var d;return b}for(var g=b+56|0,f=a[b+48>>2],e=0;;){if((e|0)>=(f|0)){d=0;i=2201;break}var k=KH(a[a[g>>2]+(e<<2)>>2],c);if(0==(k|0)){e=e+1|0}else{d=k;i=2199;break}}if(2199==i||2201==i){return d}}function ju(b){var c=b+48|0,i=0<(a[c>>2]|0),g=b+56|0;a:do{if(i){for(var d=0;;){if(ju(a[a[g>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>=(a[c>>2]|0)){break a}}}}while(0);G(a[b+60>>2]);vh(a[b+52>>2]);G(a[g>>2]);G(b)}function LH(c,d,i){var g=h;h+=16;c=a[c>>2];Ui(g,d,i,90*(a[a[c+20>>2]+152>>2]&3)|0);d=g|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=g+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if((c|0)!=(a[ku>>2]|0)){var q=a[c+28>>2],e=(a[q+4>>2]<<1)-2|0,q=((0>(e|0)?1:e|1)<<4)+a[q+40>>2]|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);f[0]=q;a[gg>>2]=b[0];a[gg+4>>2]=b[1];a[ku>>2]=c}if(be(d)>(b[0]=a[gg>>2],b[1]=a[gg+4>>2],f[0])||be(i)>(b[0]=a[gg>>2],b[1]=a[gg+4>>2],f[0])){return h=g,0}c=pi(d,i)<=(b[0]=a[gg>>2],b[1]=a[gg+4>>2],f[0])&1;h=g;return c}function MH(c,d){var i,g,q=h;h+=4;var e,l=a[c+16>>2];g=l>>2;var l=l+148|0,k=a[l>>2];if(0==(k|0)){if(0==(a[g+50]&1|0)){var n=0}else{e=2221}}else{e=2221}2221==e&&(0==(a[c+148>>2]&4|0)&&ad(c,k,a[g+42],a[g+46],a[g+38]),n=1);i=a[d+28>>2]>>2;var k=a[i+10],j=a[i+2];i=a[i+1];if((a[lu>>2]|0)<(j|0)){var p=j+2|0;a[lu>>2]=p;var s=a[ql>>2],p=0==(s|0)?Cb(p<<4):wb(s,p<<4);a[ql>>2]=p}hu(d,q);0==(a[q>>2]&16|0)?Ke(c,rl+4|0):Ke(c,rl|0);p=m[d+133|0]&255;0==(p&1|0)?0!=(p&2|0)?(p=d|0,Pa(c,Aa(p,a[mu>>2],Dk|0)),p=Aa(p,a[nu>>2],Ek|0),$b(c,p)):0!=(p&8|0)?(p=d|0,Pa(c,Aa(p,a[ou>>2],Fk|0)),p=Aa(p,a[pu>>2],Gk|0),$b(c,p)):0==(p&4|0)?(p=Dh(d,Ac|0),$b(c,p),ep(c,d)):(p=d|0,Pa(c,Aa(p,a[qu>>2],Hk|0)),p=Aa(p,a[ru>>2],Ik|0),$b(c,p)):(p=d|0,Pa(c,Aa(p,a[su>>2],Jk|0)),p=Aa(p,a[tu>>2],Kk|0),$b(c,p));if(0==(i|0)){if(0==m[p]<<24>>24){var v=1}else{Pa(c,p),v=1}e=2244}else{0<(i|0)&&(v=i,e=2244)}a:do{if(2244==e){i=0<(j|0);for(var p=d+32|0,s=d+40|0,t=0,u=1;;){b:do{if(i){for(var w=t*j|0,A=a[ql>>2],B=0;;){var C=B+w|0,P=(C<<4)+k|0,P=(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]),C=(C<<4)+k+8|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),P=P+(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),T=(B<<4)+A|0;f[0]=P;a[T>>2]=b[0];a[T+4>>2]=b[1];P=C+(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);C=(B<<4)+A+8|0;f[0]=P;a[C>>2]=b[0];a[C+4>>2]=b[1];B=B+1|0;if((B|0)==(j|0)){var y=A;break b}}}else{y=a[ql>>2]}}while(0);Qk(c,y,u);t=t+1|0;if((t|0)==(v|0)){break a}else{u=0}}}}while(0);n&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[l>>2],a[g+42],a[g+46],a[g+38]),Se(c));h=q}function NH(c,d,i){var g,q=h;h+=16;var e;g=a[c+4>>2];var c=a[c>>2],l=c+20|0;Ui(q,d,i,90*(a[a[l>>2]+152>>2]&3)|0);d=q|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=q+8|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(0!=(g|0)){var k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);e=g+24|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);k>d?e=0:(k=g+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),c=g+16|0,e=d>(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])|k>i?0:i<=e);h=q;return e&1}if((c|0)==(a[uu>>2]|0)){c=(b[0]=a[sl>>2],b[1]=a[sl+4>>2],f[0]),g=(b[0]=a[tl>>2],b[1]=a[tl+4>>2],f[0])}else{g=a[c+28>>2]>>2;a[vu>>2]=a[g+10];var n=a[g+2];a[wu>>2]=n;var j=0==(a[a[l>>2]+152>>2]&1|0),l=c+104|0,p=c+112|0,p=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),l=c+96|0,m=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=j?m:p,m=j?p:m,j=c+48|0,j=72*(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),p=0>j,m=((p?j-.5:j+.5)&-1|0)/(0==m?1:m);f[0]=m;a[sl>>2]=b[0];a[sl+4>>2]=b[1];var v=c+56|0,v=72*(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),t=0>v,l=((t?v-.5:v+.5)&-1|0)/(0==l?1:l);f[0]=l;a[tl>>2]=b[0];a[tl+4>>2]=b[1];f[0]=.5*((p?j-.5:j+.5)&-1|0);a[Fh>>2]=b[0];a[Fh+4>>2]=b[1];f[0]=.5*((t?v-.5:v+.5)&-1|0);a[ul>>2]=b[0];a[ul+4>>2]=b[1];g=(a[g+1]-1)*n|0;a[xu>>2]=0>(g|0)?0:g;a[uu>>2]=c;c=m;g=l}d*=c;i*=g;if(be(d)>(b[0]=a[Fh>>2],b[1]=a[Fh+4>>2],f[0])){return h=q,0}c=be(i);g=(b[0]=a[ul>>2],b[1]=a[ul+4>>2],f[0]);if(c>g){return h=q,0}c=a[wu>>2];if(3>(c|0)){return e=1>pi(d/(b[0]=a[Fh>>2],b[1]=a[Fh+4>>2],f[0]),i/g)&1,h=q,e}m=(a[hp>>2]|0)%(c|0);j=(m+1|0)%(c|0);g=a[xu>>2];var l=g+m|0,n=a[vu>>2],p=(l<<4)+n|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),l=(l<<4)+n+8|0,v=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=g+j|0,t=(l<<4)+n|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),l=(l<<4)+n+8|0,u=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(0==(ip(d,i,0,0,p,v,t,u)|0)){return h=q,0}if(l=0!=(ip(d,i,p,v,t,u,0,0)|0)){if(0==(ip(d,i,t,u,0,0,p,v)|0)){p=1}else{return h=q,1}}else{p=1}for(;;){if((p|0)>=(c|0)){e=2290;break}l?(k=j,j=(j+1|0)%(c|0)):(k=(m-1+c|0)%(c|0),j=m);var u=g+k|0,v=g+j|0,t=(u<<4)+n|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),u=(u<<4)+n+8|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),w=(v<<4)+n|0,v=(v<<4)+n+8|0;if(0==(ip(d,i,0,0,t,u,(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]))|0)){e=2289;break}else{p=p+1|0,m=k}}if(2290==e){return a[hp>>2]=m,h=q,1}if(2289==e){return a[hp>>2]=k,h=q,0}}function ip(a,b,i,c,d,f,e,k){k=-(k-f);e-=d;d=k*d+e*f;return(0<=k*a+e*b-d^0<=k*i+e*c-d)&1^1}function OH(c,d){var i,g,q,e,l,k=a[c+16>>2];e=k>>2;var k=k+148|0,h=a[k>>2];if(0==(h|0)){if(0==(a[e+50]&1|0)){var j=0}else{l=2303}}else{l=2303}2303==l&&(0==(a[c+148>>2]&4|0)&&ad(c,h,a[e+42],a[e+46],a[e+38]),j=1);q=a[d+28>>2]>>2;var h=a[q+10],p=a[q+2],s=a[q+1];if((a[yu>>2]|0)<(p|0)){q=p+5|0;a[yu>>2]=q;var v=a[hg>>2];q=0==(v|0)?Cb(q<<4):wb(v,q<<4);a[hg>>2]=q}q=d+120|0;v=d+32|0;g=(a[q>>2]+56|0)>>2;i=v>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];i=d+104|0;g=d+112|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=d+48|0;g=72*(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);i/=(0>g?g-.5:g+.5)&-1|0;g=d+96|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var t=d+56|0,t=72*(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]);g/=(0>t?t-.5:t+.5)&-1|0;var t=IH(c,d),u=m[d+133|0]&255;0==(u&1|0)?0!=(u&2|0)?(u=d|0,Pa(c,Aa(u,a[mu>>2],Dk|0)),$b(c,Aa(u,a[nu>>2],Ek|0)),u=1):0!=(u&8|0)?(u=d|0,Pa(c,Aa(u,a[ou>>2],Fk|0)),$b(c,Aa(u,a[pu>>2],Gk|0)),u=1):0!=(u&4|0)?(u=d|0,Pa(c,Aa(u,a[qu>>2],Hk|0)),$b(c,Aa(u,a[ru>>2],Ik|0)),u=1):(0==(t&1|0)?u=0:($b(c,Dh(d,qe|0)),u=1),ep(c,d)):(u=d|0,Pa(c,Aa(u,a[su>>2],Jk|0)),$b(c,Aa(u,a[tu>>2],Kk|0)),u=1);var w=d+24|0,A=a[w>>2],B=m[A+12|0];if(0==B<<24>>24){var C=0;l=2331}else{if(l=a[A>>2],99==m[l]<<24>>24){C=0!=(ka(l,th|0)|0),l=2331}else{var P=l,T=1,y=0==u<<24>>24,D=s;l=2339}}if(2331==l){var M=0==u<<24>>24;0!=(s|0)|M|C?w=M:(C=Dh(d,qe|0),0==m[C]<<24>>24?(s=1,C=w=0):(Pa(c,C),B=a[w>>2],s=1,C=w=0,A=B,B=m[B+12|0]));if(0==B<<24>>24){if(B=V(d|0,ap|0),0==(B|0)){var X=u,O=s}else{P=B,T=C,y=w,D=s,l=2339}}else{P=a[A>>2],P=99!=m[P]<<24>>24?P:0!=(ka(P,th|0)|0)?P:V(d|0,Xk|0),T=C,y=w,D=s,l=2339}}if(2339==l){X=0<(p|0);a:do{if(X){O=v|0;C=a[hg>>2];s=d+40|0;for(l=0;;){if(B=(l<<4)+h|0,A=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),B=(l<<4)+h+8|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),A=A*i+(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]),w=(l<<4)+C|0,f[0]=A,a[w>>2]=b[0],a[w+4>>2]=b[1],B=B*g+(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),A=(l<<4)+C+8|0,f[0]=B,a[A>>2]=b[0],a[A+4>>2]=b[1],l=l+1|0,(l|0)==(p|0)){break a}}}}while(0);X=u&255;y|T||(3>(p|0)?(Qk(c,a[hg>>2],u),0!=(t&4|0)&&PH(c,d)):(O=a[hg>>2],0==(t&6|0)?zc(c,O,p,u):Ii(c,Dh(d,qe|0),fu(d),O,p,t,X)));ut(c,P,a[hg>>2],p,u,jc(d|0,a[zu>>2],Ze|0));X=0;O=D}P=0<(O|0);a:do{if(P){D=0<(p|0);T=3>(p|0);y=0==(t&4|0);u=0==(t&998|0);C=v|0;s=d+40|0;l=0;for(B=X;;){b:do{if(D){A=l*p|0;w=a[hg>>2];for(M=0;;){var F=M+A|0,Da=(F<<4)+h|0,Da=(b[0]=a[Da>>2],b[1]=a[Da+4>>2],f[0]),F=(F<<4)+h+8|0,F=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),Da=Da*i+(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),ia=(M<<4)+w|0;f[0]=Da;a[ia>>2]=b[0];a[ia+4>>2]=b[1];Da=F*g+(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);F=(M<<4)+w+8|0;f[0]=Da;a[F>>2]=b[0];a[F+4>>2]=b[1];M=M+1|0;if((M|0)==(p|0)){var E=w;break b}}}else{E=a[hg>>2]}}while(0);T?(Qk(c,E,B),y||PH(c,d)):u?zc(c,E,p,B):Ii(c,Dh(d,qe|0),fu(d),E,p,t,B&255);l=l+1|0;if((l|0)==(O|0)){break a}else{B=0}}}}while(0);Fg(c,10,a[q>>2]);j&&(0!=(a[c+148>>2]&4|0)&&ad(c,a[k>>2],a[e+42],a[e+46],a[e+38]),Se(c))}function PH(c,d){var i,g,q=h;h+=48;i=q+32;var e=d+96|0,e=.375*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=d+112|0,k=.6614*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=q|0;g=d+32|0;var n=d+40|0;fp(i,k,e,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]));g=q>>2;i>>=2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];g=(q+8|0)>>2;n=(b[0]=a[g],b[1]=a[g+1],f[0]);i=(q+24|0)>>2;f[0]=n;a[i]=b[0];a[i+1]=b[1];n=q|0;k=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-2*k;n=q+16|0;f[0]=k;a[n>>2]=b[0];a[n+4>>2]=b[1];Gd(c,l,2);e=(b[0]=a[g],b[1]=a[g+1],f[0])-2*e;f[0]=e;a[g]=b[0];a[g+1]=b[1];f[0]=e;a[i]=b[0];a[i+1]=b[1];Gd(c,l,2);h=q}function nH(a,b){var i=a/b&-1;return(((i|0)*b+1e-5>2],h=0,j=a[Fd>>2],p=1;a:for(;;){var s=m[j];do{if(0==s<<24>>24){var v=p;break a}else{if(92==s<<24>>24){var t=j+1|0,u=m[t];if(92==u<<24>>24||123==u<<24>>24||125==u<<24>>24||124==u<<24>>24){var w=h,A=t,B=p}else{var C=t,P=u;e=2375}}else{C=j,P=s,e=2375}}}while(0);if(2375==e){e=0;if(124==P<<24>>24){var T=h,y=(0==(h|0)&1)+p|0}else{T=125==P<<24>>24?h-1|0:123==P<<24>>24?h+1|0:h,y=p}if(0>(T|0)){v=y;break}else{w=T,A=C,B=y}}h=w;j=A+1|0;p=B}q=(l+56|0)>>2;a[q]=fa(v<<2);m[l+64|0]=d&255;var D=0==(d|0)&1,M=k+82|0,X=g+1|0,O=0==(i|0),F=c|0,Da=k+16|0,ia=k+4|0,E=k+8|0,G=0,J=0,I=0,H=0,K=0,L=g,N=0,ca=g,R=0;a:for(;;){for(var S=G,zb=J,ja=H,aa=K,da=L,ea=N,xa=ca,Q=R;;){var U=S,ha=zb,ga=ja,W=da,V=ea,Y=xa,tb=Q,ya=0;b:for(;;){var $=U,wa=ha,Ab=ga,Fa=W,Ga=V,la=Y,ta=tb;c:for(;;){var Ka=$,za=Ab,ma=Ga,pa=ta;d:for(;;){for(var Z=Ka,Ha=za;;){if(I){e=2448;break a}var Ra=a[Fd>>2],ka=m[Ra],sa=ka<<24>>24;if(60==(sa|0)){break}else{if(62==(sa|0)){e=2393;break d}else{if(92==(sa|0)){e=2422;break d}else{if(125==(sa|0)||124==(sa|0)||0==(sa|0)){break b}else{if(123!=(sa|0)){var La=wa,ba=Ha,Ya=Fa,ra=Ra;break d}}}}}var Za=Ra+1|0;a[Fd>>2]=Za;if(0!=(Ha|0)){e=2402;break a}if(0==m[Za]<<24>>24){e=2402;break a}var qa=dp(c,D,0,g);a[a[q]+(Z<<2)>>2]=qa;if(0==(qa|0)){e=2404;break a}else{Z=Z+1|0,Ha=4}}if(0!=(Ha&6|0)){e=2390;break a}if(0!=m[M]<<24>>24){La=wa;ba=Ha;Ya=Fa;ra=Ra;break}a[Fd>>2]=Ra+1|0;Ka=Z;za=Ha|18;pa=ma=g}d:do{if(2393==e){if(e=0,0==m[M]<<24>>24){break c}else{La=wa,ba=Ha,Ya=Fa,ra=Ra}}else{if(2422==e){e=0;var ab=Ra+1|0,$a=m[ab];if(0==$a<<24>>24){La=wa,ba=Ha,Ya=Fa,ra=Ra}else{if(123==$a<<24>>24||125==$a<<24>>24||124==$a<<24>>24||60==$a<<24>>24||62==$a<<24>>24){a[Fd>>2]=ab,La=wa,ba=Ha,Ya=Fa}else{32==$a<<24>>24&&(e=2424);do{if(2424==e&&(e=0,0==m[M]<<24>>24)){a[Fd>>2]=ab;La=1;ba=Ha;Ya=Fa;ra=ab;break d}}while(0);m[Fa]=92;a[Fd>>2]=ab;La=wa;ba=Ha|9;Ya=Fa+1|0}ra=ab}}}}while(0);if(0!=(ba&4|0)&&32!=m[ra]<<24>>24){e=2429;break a}var jb=0==(ba&24|0)?32==m[ra]<<24>>24?ba:ba|9:ba;if(0==(jb&8|0)){if(0==(jb&16|0)){var Ca=Ya,Ia=ma,eb=la,ub=pa}else{var Sa=m[ra],na=0==(La|0);if(32==Sa<<24>>24&na){if((ma|0)==(g|0)){var ua=ma}else{32==m[ma-1|0]<<24>>24?ua=ma:e=2443}}else{e=2443}2443==e&&(e=0,m[ma]=Sa,ua=ma+1|0);na?(Ca=Ya,Ia=ua,eb=la,ub=pa):(Ca=Ya,Ia=ua,eb=la,ub=ua-1|0)}}else{var Oa=m[ra],Wa=0==(La|0);if(32==Oa<<24>>24&Wa){if(32!=m[Ya-1|0]<<24>>24){e=2436}else{if(0==m[M]<<24>>24){var pb=Ya}else{e=2436}}}else{e=2436}2436==e&&(e=0,m[Ya]=Oa,pb=Ya+1|0);Wa?(Ca=pb,Ia=ma,eb=la):(Ca=pb,Ia=ma,eb=pb-1|0);ub=pa}var ob=ra+1|0;a[Fd>>2]=ob;var bb=m[ob];if(0>bb<<24>>24){for(var qb=Ca,oa=ob,kb=bb;;){var Ba=oa+1|0;a[Fd>>2]=Ba;var vb=qb+1|0;m[qb]=kb;var xb=m[Ba];if(0>xb<<24>>24){qb=vb,oa=Ba,kb=xb}else{$=Z;wa=La;Ab=jb;Fa=vb;Ga=Ia;la=eb;ta=ub;continue c}}}else{$=Z,wa=La,Ab=jb,Fa=Ca,Ga=Ia,la=eb,ta=ub}}if(0==(Ha&16|0)){e=2395;break a}if(ma>>>0>X>>>0){var hd=ma-1|0,nb=(hd|0)==(pa|0)?ma:32==m[hd]<<24>>24?hd:ma}else{nb=ma}m[nb]=0;var rb=Hb(g);a[Fd>>2]=a[Fd>>2]+1|0;U=Z;ha=wa;ga=Ha&-17;W=Fa;V=nb;Y=la;tb=pa;ya=rb}if(0==ka<<24>>24&O){e=2407;break a}if(0!=(Ha&16|0)){e=2407;break a}if(0==(Ha&4|0)){var lb=fa(68);a[a[q]+(Z<<2)>>2]=lb;var Ta=Z+1|0,cb=lb}else{Ta=Z,cb=aa}0!=(ya|0)&&(a[cb+60>>2]=ya);if(0==(Ha&5|0)){m[Fa]=32;var fb=Ha|1,Ua=Fa+1|0}else{fb=Ha,Ua=Fa}if(0==(fb&1|0)){var sb=Ua,Na=la}else{if(Ua>>>0>X>>>0){var Fb=Ua-1|0,Db=(Fb|0)==(la|0)?Ua:32==m[Fb]<<24>>24?Fb:Ua}else{Db=Ua}m[Db]=0;var Ob=Hb(g);a[cb+52>>2]=ag(F,Ob,0!=m[M]<<24>>24?2:0,(b[0]=a[Da>>2],b[1]=a[Da+4>>2],f[0]),a[ia>>2],a[E>>2]);m[cb+64|0]=1;Na=sb=g}var Eb=a[Fd>>2],va=m[Eb];if(0==va<<24>>24){G=Ta;J=wa;I=1;H=fb;K=cb;L=sb;N=ma;ca=Na;R=pa;continue a}else{if(125==va<<24>>24){e=2420;break a}}a[Fd>>2]=Eb+1|0;S=Ta;zb=wa;ja=0;aa=cb;da=sb;ea=ma;xa=Na;Q=pa}}if(2390==e){$i(l,ya);var Bb=0;return Bb}if(2407==e||2395==e||2404==e||2429==e){return $i(l,ya),Bb=0}if(2448==e){return a[l+48>>2]=Z,Bb=l}if(2420==e){return a[Fd>>2]=Eb+1|0,a[l+48>>2]=Ta,Bb=l}if(2402==e){return $i(l,ya),Bb=0}}function Wt(c,d,i){var g=h;h+=32;var q=g+8,e=g+16,l=a[i+52>>2],k=0==(l|0);a:do{if(k){var n=i+48|0;if(0<(a[n>>2]|0)){for(var z=i+56|0,p=e|0,s=e+8|0,v=i+64|0,t=0,u=0,w=0;;){Wt(e,d,a[a[z>>2]+(w<<2)>>2]);var A=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),B=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);0==m[v]<<24>>24?(u=u>A?u:A,t+=B):(u+=A,t=t>B?t:B);w=w+1|0;if((w|0)>=(a[n>>2]|0)){C=u;P=t;break a}}}else{var C=0,P=0}}else{C=l+24|0,n=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),C=l+32|0,P=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),0>2]=g,a[j+4>>2]=q,j)),0<(C|0)?(z=72*(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),n+=((0>z?z-.5:z+.5)&-1)<<1|0,z=72*(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),z=(p=0<=z)?z+.5:z-.5,C=n,P+=(z&-1)<<1|0):(C=n+16,P+=8))):C=n}}while(0);d=i|0;f[0]=C;a[d>>2]=b[0];a[d+4>>2]=b[1];i=i+8|0;f[0]=P;a[i>>2]=b[0];a[i+4>>2]=b[1];i=c|0;f[0]=C;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+8|0;f[0]=P;a[c>>2]=b[0];a[c+4>>2]=b[1];h=g}function Xt(c,d,i,g){var q,e,l=h;h+=32;var k=l+16;e=(c|0)>>2;var n=d-(b[0]=a[e],b[1]=a[e+1],f[0]);q=(c+8|0)>>2;var j=i-(b[0]=a[q],b[1]=a[q+1],f[0]);f[0]=d;a[e]=b[0];a[e+1]=b[1];f[0]=i;a[q]=b[0];a[q+1]=b[1];q=c+52|0;e=a[q>>2];if(0!=(e|0)&0==(g|0)){e=(e+40|0)>>2;var p=(b[0]=a[e],b[1]=a[e+1],f[0])+n;f[0]=p;a[e]=b[0];a[e+1]=b[1];q=(a[q>>2]+48|0)>>2;e=(b[0]=a[q],b[1]=a[q+1],f[0])+j;f[0]=e;a[q]=b[0];a[q+1]=b[1]}q=c+48|0;p=a[q>>2];if(0!=(p|0)){e=c+64|0;var s=m[e],n=(0==s<<24>>24?j:n)/(p|0);if(0<(p|0)){for(var c=c+56|0,j=k|0,p=k+8|0,v=l|0,t=l+8|0,u=0,w=s;;){var s=a[a[c>>2]+(u<<2)>>2],A=u+1|0,u=(A*n&-1)-(u*n&-1)|0;0==w<<24>>24?(w=s+8|0,Xi(k,d,(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])+(u|0)),w=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),u=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])):(w=s|0,Xi(l,(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])+(u|0),i),w=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),u=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]));Xt(s,w,u,g);if((A|0)>=(a[q>>2]|0)){break}u=A;w=m[e]}}}h=l}function Yt(c,d,i,g){var q,e,l,k=h;h+=32;q=k+16;m[c+65|0]=g&255;e=c+8|0;Xi(k,d,i-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]));l=(c+16|0)>>2;e=k>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];e=c|0;Xi(q,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+d,i);e=(c+32|0)>>2;q>>=2;a[e]=a[q];a[e+1]=a[q+1];a[e+2]=a[q+2];a[e+3]=a[q+3];q=a[c+48>>2];e=q-1|0;if(0<=(e|0)){l=0==(g|0);for(var n=c+56|0,c=c+64|0,j=d,d=0;;){if(l){var p=0}else{var p=0==(d|0),s=(d|0)==(e|0),p=0==m[c]<<24>>24?p?s?15:14:s?11:10:p?s?15:13:s?7:5}Yt(a[a[n>>2]+(d<<2)>>2],j,i,p&g);p=a[a[n>>2]+(d<<2)>>2];0==m[c]<<24>>24?(p=p+8|0,i-=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])):(p|=0,j+=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]));d=d+1|0;if((d|0)==(q|0)){break}}}h=k}function $i(a,b){ju(a);0!=(b|0)&&G(b)}function vk(c,d,i,g){var q,e,l,k=h;h+=96;var n=k+64;l=n>>2;var j=k+72;e=j>>2;var p=k+80;q=k|0;if(0==g<<24>>24){var g=n,m=q,v=0,n=i+48|0;q=i+56|0}else{g=j,j=n,m=0,v=q,n=i|0,q=i+8|0}var t=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),u=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);f[0]=0;a[l]=b[0];a[l+1]=b[1];f[0]=1;a[e]=b[0];a[e+1]=b[1];var w=p|0,A=p+8|0,B=k|0,C=k+8|0,P=k+16|0,T=P|0,y=k+24|0,n=k+32|0,D=n|0,M=k+40|0;q=k+48|0;for(var X=q|0,O=k+56|0,F=0,Da=1,ia=0;;){var E,G,I,H,K,L,N,R,ca=.5*(Da+ia);Ld(p,i,3,ca,m,v);Da=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]);ia=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]);if(0==J[d](c,Da,ia)<<24>>24){var S=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),Q=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),zb=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),ja=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),aa=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),da=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0]),ea=(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]),xa=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);f[0]=ca;a[g>>2]=b[0];a[g+4>>2]=b[1];ca=1}else{f[0]=ca,a[j>>2]=b[0],a[j+4>>2]=b[1],ca=F,S=R,Q=N,zb=L,ja=K,aa=H,da=I,ea=G,xa=E}t-=Da;if(.5>=(0>t?-t:t)){if(t=u-ia,.5>=(0>t?-t:t)){break}}F=ca;t=Da;u=ia;Da=(b[0]=a[e],b[1]=a[e+1],f[0]);ia=(b[0]=a[l],b[1]=a[l+1],f[0]);R=S;N=Q;L=zb;K=ja;H=aa;I=da;G=ea;E=xa}0==ca<<24>>24?(d=i>>2,c=k>>2,a[d]=a[c],a[d+1]=a[c+1],a[d+2]=a[c+2],a[d+3]=a[c+3],c=(i+16|0)>>2,d=P>>2,a[c]=a[d],a[c+1]=a[d+1],a[c+2]=a[d+2],a[c+3]=a[d+3],c=(i+32|0)>>2,d=n>>2,a[c]=a[d],a[c+1]=a[d+1],a[c+2]=a[d+2],a[c+3]=a[d+3],i=(i+48|0)>>2,q>>=2,a[i]=a[q],a[i+1]=a[q+1],a[i+2]=a[q+2],a[i+3]=a[q+3]):(q=i|0,f[0]=S,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+8|0,f[0]=Q,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+16|0,f[0]=zb,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+24|0,f[0]=ja,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+32|0,f[0]=aa,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+40|0,f[0]=da,a[q>>2]=b[0],a[q+4>>2]=b[1],q=i+48|0,f[0]=ea,a[q>>2]=b[0],a[q+4>>2]=b[1],i=i+56|0,f[0]=xa,a[i>>2]=b[0],a[i+4>>2]=b[1]);h=k}function jp(c,d,i,g){var q,e,l,k,n,j,p,m,v,t,u,w,A,B,C,P,T,y,D=h;h+=64;y=(d+112|0)>>2;var M=(b[0]=a[y],b[1]=a[y+1],f[0]);T=(d+32|0)>>2;e=(b[0]=a[T],b[1]=a[T+1],f[0]);P=(d+40|0)>>2;q=(b[0]=a[P],b[1]=a[P+1],f[0]);C=(i|0)>>2;l=(b[0]=a[C],b[1]=a[C+1],f[0])-e;B=(D|0)>>2;f[0]=l;a[B]=b[0];a[B+1]=b[1];A=(i+8|0)>>2;l=(b[0]=a[A],b[1]=a[A+1],f[0])-q;w=(D+8|0)>>2;f[0]=l;a[w]=b[0];a[w+1]=b[1];u=(i+16|0)>>2;l=(b[0]=a[u],b[1]=a[u+1],f[0])-e;t=(D+16|0)>>2;f[0]=l;a[t]=b[0];a[t+1]=b[1];v=(i+24|0)>>2;l=(b[0]=a[v],b[1]=a[v+1],f[0])-q;m=(D+24|0)>>2;f[0]=l;a[m]=b[0];a[m+1]=b[1];p=(i+32|0)>>2;l=(b[0]=a[p],b[1]=a[p+1],f[0])-e;j=(D+32|0)>>2;f[0]=l;a[j]=b[0];a[j+1]=b[1];n=(i+40|0)>>2;l=(b[0]=a[n],b[1]=a[n+1],f[0])-q;k=(D+40|0)>>2;f[0]=l;a[k]=b[0];a[k+1]=b[1];l=(i+48|0)>>2;var X=(b[0]=a[l],b[1]=a[l+1],f[0])-e;e=(D+48|0)>>2;f[0]=X;a[e]=b[0];a[e+1]=b[1];i=(i+56|0)>>2;X=(b[0]=a[i],b[1]=a[i+1],f[0])-q;q=(D+56|0)>>2;f[0]=X;a[q]=b[0];a[q+1]=b[1];M&=-1;vk(c,a[a[a[d+24>>2]+4>>2]+12>>2],D|0,g);c=(b[0]=a[B],b[1]=a[B+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=c;a[C]=b[0];a[C+1]=b[1];C=(b[0]=a[w],b[1]=a[w+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=C;a[A]=b[0];a[A+1]=b[1];A=(b[0]=a[t],b[1]=a[t+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=A;a[u]=b[0];a[u+1]=b[1];u=(b[0]=a[m],b[1]=a[m+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=u;a[v]=b[0];a[v+1]=b[1];v=(b[0]=a[j],b[1]=a[j+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=v;a[p]=b[0];a[p+1]=b[1];p=(b[0]=a[k],b[1]=a[k+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=p;a[n]=b[0];a[n+1]=b[1];T=(b[0]=a[e],b[1]=a[e+1],f[0])+(b[0]=a[T],b[1]=a[T+1],f[0]);f[0]=T;a[l]=b[0];a[l+1]=b[1];P=(b[0]=a[q],b[1]=a[q+1],f[0])+(b[0]=a[P],b[1]=a[P+1],f[0]);f[0]=P;a[i]=b[0];a[i+1]=b[1];f[0]=M|0;a[y]=b[0];a[y+1]=b[1];h=D}function Au(b,c){var i,g;i=0==m[b+124|0]<<24>>24;a:do{if(i){g=b}else{for(var d=b;;){if(d=a[d+128>>2],0==m[d+124|0]<<24>>24){g=d;break a}}}}while(0);i=(g+24|0)>>2;g=a[i];0==(g|0)&&(g=fa(40),a[i]=g);g>>=2;d=a[g];g=0==(d|0)?Cb(48*a[g+1]+48|0):wb(d,48*a[g+1]+48|0);a[a[i]>>2]=g;d=a[i]+4|0;g=a[d>>2];a[d>>2]=g+1|0;d=a[a[i]>>2];i=d>>2;d=d+48*g|0;a[d>>2]=fa(c<<4);a[i+(12*g|0)+1]=c;a[i+(12*g|0)+3]=0;a[i+(12*g|0)+2]=0;return d}function Wd(c,d,i,g,q){var e,l,k,n,j,p,s,v=h;h+=80;var t;j=v>>2;p=v+4;n=p>>2;var u=v+8;l=u>>2;k=v+16;var w=a[c+16>>2];s=w>>2;var A=a[s+5],B=Au(c,g),C=0==m[c+124|0]<<24>>24;a:do{if(C){var P=c}else{for(var y=c;;){if(y=a[y+128>>2],0==m[y+124|0]<<24>>24){P=y;break a}}}}while(0);0==m[q+8|0]<<24>>24?(a[s+59]|0)!=(a[d+236>>2]|0)?s=d:(s=(C=(a[s+60]|0)>(a[d+240>>2]|0))?w:d,w=C?d:w):s=d;if((w|0)==(a[P+16>>2]|0)){var d=P+92|0,y=P+52|0,D=P+98|0,C=P+58|0}else{d=P+52|0,y=P+92|0,D=P+58|0,C=P+98|0}P=m[D];d=a[d>>2];y=a[y>>2];do{if(0==m[C]<<24>>24){t=2574}else{var D=w+24|0,F=a[D>>2];if(0==(F|0)){t=2574}else{if(0==(a[a[F+4>>2]+12>>2]|0)){t=2574}else{a[l]=w;a[l+1]=y|0;for(var M=g-4|0,F=w+32|0,X=w+40|0,O=0;(O|0)<(M|0);){var E=O+3|0,Da=(E<<4)+i|0,Da=(b[0]=a[Da>>2],b[1]=a[Da+4>>2],f[0])-(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),ia=(E<<4)+i+8|0;if(0==J[a[a[a[D>>2]+4>>2]+12>>2]](u,Da,(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])-(b[0]=a[X>>2],b[1]=a[X+4>>2],f[0]))<<24>>24){break}else{O=E}}a[j]=O;jp(u,w,(O<<4)+i|0,1);M=O}}}}while(0);2574==t&&(M=a[j]=0);do{if(0==P<<24>>24){t=2583}else{if(w=s+24|0,C=a[w>>2],0==(C|0)){t=2583}else{if(0==(a[a[C+4>>2]+12>>2]|0)){t=2583}else{a[l]=s;a[l+1]=d|0;e=s+32|0;C=s+40|0;for(y=g-4|0;0<(y|0);){D=(y<<4)+i|0;D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);F=(y<<4)+i+8|0;if(0==J[a[a[a[w>>2]+4>>2]+12>>2]](u,D,(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0])-(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]))<<24>>24){break}y=y-3|0}a[n]=y;jp(u,s,(y<<4)+i|0,0);e=y}}}}while(0);2583==t&&(e=g-4|0,a[n]=e);for(g=g-4|0;;){if((M|0)>=(g|0)){var G=e;break}u=(M<<4)+i|0;l=M+3|0;P=(l<<4)+i|0;u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]);M=(M<<4)+i+8|0;P=(l<<4)+i+8|0;M=(b[0]=a[M>>2],b[1]=a[M+4>>2],f[0])-(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]);if(1e-6<=u*u+M*M){G=e;break}M=a[j]=l}for(;0<(G|0);){g=(G<<4)+i|0;e=G+3|0;l=(e<<4)+i|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);l=(G<<4)+i+8|0;e=(e<<4)+i+8|0;e=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(1e-6<=g*g+e*e){break}G=G-3|0;a[n]=G}QH(c,s,i,v,p,B,q);c=a[j];G=a[n]+4|0;p=(B|0)>>2;j=k>>2;s=k|0;q=(k+16|0)>>2;n=(k+32|0)>>2;k=(k+48|0)>>2;A=A+52|0;for(e=c;;){if((e|0)>=(G|0)){t=2597;break}l=((e-c<<4)+a[p]|0)>>2;g=((e<<4)+i|0)>>2;a[l]=a[g];a[l+1]=a[g+1];a[l+2]=a[g+2];a[l+3]=a[g+3];a[j]=a[g];a[j+1]=a[g+1];a[j+2]=a[g+2];a[j+3]=a[g+3];l=e+1|0;if((l|0)>=(G|0)){t=2596;break}g=((l-c<<4)+a[p]|0)>>2;l=((l<<4)+i|0)>>2;a[g]=a[l];a[g+1]=a[l+1];a[g+2]=a[l+2];a[g+3]=a[l+3];a[q]=a[l];a[q+1]=a[l+1];a[q+2]=a[l+2];a[q+3]=a[l+3];l=e+2|0;g=((l-c<<4)+a[p]|0)>>2;l=((l<<4)+i|0)>>2;a[g]=a[l];a[g+1]=a[l+1];a[g+2]=a[l+2];a[g+3]=a[l+3];a[n]=a[l];a[n+1]=a[l+1];a[n+2]=a[l+2];a[n+3]=a[l+3];g=e+3|0;e=((g<<4)+i|0)>>2;a[k]=a[e];a[k+1]=a[e+1];a[k+2]=a[e+2];a[k+3]=a[e+3];xk(A,s);e=g}2596==t?(a[(B+4|0)>>2]=G-c|0,h=v):2597==t&&(a[(B+4|0)>>2]=G-c|0,h=v)}function QH(b,c,i,g,d,f,e){var k,n,j=h;h+=8;n=j>>2;var p=j+4;k=p>>2;for(var s=b;;){var v=a[s+128>>2];if(0==(v|0)){break}else{s=v}}v=0==m[e+8|0]<<24>>24?J[a[e>>2]](s)&255:0;tk(s,j,p);p=e+4|0;0!=J[a[p>>2]](c)<<24>>24&&(a[k]=0);0!=J[a[p>>2]](a[b+16>>2])<<24>>24&&(a[n]=0);0!=(v|0)&&(b=a[n],a[n]=a[k],a[k]=b);0!=m[e+9|0]<<24>>24?(k=a[k],n=a[n],0!=(k|n|0)&&LC(s,i,a[g>>2],a[d>>2],f,n,k)):(n=a[n],0!=(n|0)&&(a[g>>2]=In(s,i,a[g>>2],a[d>>2],f,n)),k=a[k],0!=(k|0)&&(a[d>>2]=Hn(s,i,a[g>>2],a[d>>2],f,k)));h=j}function bd(c,d){var i,g,q=h;i=d>>2;d=h;h+=32;a[d>>2]=a[i];a[d+4>>2]=a[i+1];a[d+8>>2]=a[i+2];a[d+12>>2]=a[i+3];a[d+16>>2]=a[i+4];a[d+20>>2]=a[i+5];a[d+24>>2]=a[i+6];a[d+28>>2]=a[i+7];i=d|0;g=d+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){if(i=d+8|0,g=d+24|0,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){i=c+80|0,g=a[i>>2],a[i>>2]=g+1|0,g=((g<<5)+a[c+84>>2]|0)>>2,i=d>>2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3],a[g+4]=a[i+4],a[g+5]=a[i+5],a[g+6]=a[i+6],a[g+7]=a[i+7]}}h=q}function RH(c,d,i,g,q){var e=c|0;f[0]=d+g;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+8|0;f[0]=i+q;a[c>>2]=b[0];a[c+4>>2]=b[1]}function vl(c,d,i,g,q){var e,l,k,n,j,p,s,v,t,u,w,A,B,C=g>>2,P=h;h+=56;var y,D=P+40,F=d+16|0,M=a[F>>2];B=M>>2;var X=d+28|0;if(0!=m[d+59|0]<<24>>24){wH(P,M,a[d+12>>2],X);for(var O=P>>2,E=X>>2,Da=O+10;O>2]+16>>2];A=(M+32|0)>>2;var I=(b[0]=a[A],b[1]=a[A+1],f[0]);w=(M+40|0)>>2;var H=(b[0]=a[w],b[1]=a[w+1],f[0]),K=X|0,L=d+36|0;RH(D,I,H,(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0]));u=c>>2;t=D>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];if(0==q<<24>>24){if(0==m[d+57|0]<<24>>24){m[c+29|0]=0}else{var N=d+44|0,R=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=c+16|0;f[0]=R;a[S>>2]=b[0];a[S+4>>2]=b[1];m[c+29|0]=1}}else{var ca=Bu(a[F>>2]),Q=c+16|0;f[0]=ca;a[Q>>2]=b[0];a[Q+4>>2]=b[1];m[c+29|0]=1}a[c+80>>2]=0;a[c+88>>2]=d|0;v=(g+32|0)>>2;a[v]=a[u];a[v+1]=a[u+1];a[v+2]=a[u+2];a[v+3]=a[u+3];var U=1==(i|0);do{if(U){if(0!=m[M+162|0]<<24>>24){var zb=1}else{var ja=m[d+61|0],aa=ja&255;if(0==ja<<24>>24){y=2673}else{var da=g|0,ea=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),xa=g+8|0,W=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),V=g+16|0,ha=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),ga=g+24|0,Y=(b[0]=a[ga>>2],b[1]=a[ga+4>>2],f[0]);if(0==(aa&4|0)){if(0!=(aa&1|0)){a[C+12]=1;s=(c+8|0)>>2;var Rb=(b[0]=a[s],b[1]=a[s+1],f[0]),Z=Y>Rb?Y:Rb,tb=g+56|0;f[0]=ea;a[tb>>2]=b[0];a[tb+4>>2]=b[1];var ya=g+64|0;f[0]=W;a[ya>>2]=b[0];a[ya+4>>2]=b[1];var $=g+72|0;f[0]=ha;a[$>>2]=b[0];a[$+4>>2]=b[1];var wa=g+80|0;f[0]=Z;a[wa>>2]=b[0];a[wa+4>>2]=b[1];a[C+13]=1;var la=(b[0]=a[s],b[1]=a[s+1],f[0])-1;f[0]=la;a[s]=b[0];a[s+1]=b[1]}else{var Fa=g+48|0;if(0==(aa&8|0)){a[Fa>>2]=2;p=(c|0)>>2;var Ga=(b[0]=a[p],b[1]=a[p+1],f[0]),fa=(b[0]=a[w],b[1]=a[w+1],f[0]),ta=M+96|0,Ka=(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0]),za=fa-((((0>Ka?Ka-.5:Ka+.5)&-1)+1|0)/2&-1|0),ma=c+8|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),ba=g+56|0;f[0]=Ga;a[ba>>2]=b[0];a[ba+4>>2]=b[1];var Ha=g+64|0;f[0]=za;a[Ha>>2]=b[0];a[Ha+4>>2]=b[1];var Ra=g+72|0;f[0]=ha;a[Ra>>2]=b[0];a[Ra+4>>2]=b[1];var ka=g+80|0;f[0]=pa;a[ka>>2]=b[0];a[ka+4>>2]=b[1];a[C+13]=1;var ra=(b[0]=a[p],b[1]=a[p+1],f[0])+1;f[0]=ra;a[p]=b[0];a[p+1]=b[1]}else{a[Fa>>2]=8;j=(c|0)>>2;var La=(b[0]=a[j],b[1]=a[j+1],f[0]),qa=(b[0]=a[w],b[1]=a[w+1],f[0]),Ya=M+96|0,na=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),Za=qa-((((0>na?na-.5:na+.5)&-1)+1|0)/2&-1|0),oa=c+8|0,ab=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),$a=g+56|0;f[0]=ea;a[$a>>2]=b[0];a[$a+4>>2]=b[1];var jb=g+64|0;f[0]=Za;a[jb>>2]=b[0];a[jb+4>>2]=b[1];var Ca=g+72|0;f[0]=La;a[Ca>>2]=b[0];a[Ca+4>>2]=b[1];var Ia=g+80|0;f[0]=ab;a[Ia>>2]=b[0];a[Ia+4>>2]=b[1];a[C+13]=1;var eb=(b[0]=a[j],b[1]=a[j+1],f[0])-1;f[0]=eb;a[j]=b[0];a[j+1]=b[1]}}}else{a[C+12]=4;var ub=c|0,Sa=(b[0]=a[ub>>2],b[1]=a[ub+4>>2],f[0]),Ba=(b[0]=a[A],b[1]=a[A+1],f[0]);if(Sa>2],b[1]=a[Oa+4>>2],f[0]),pb=(b[0]=a[w],b[1]=a[w+1],f[0]),ob=M+96|0,bb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0]),qb=0>bb,va=pb+((((qb?bb-.5:bb+.5)&-1)+1|0)/2&-1|0)+((a[a[B+5]+260>>2]|0)/2&-1|0),kb=M+104|0,Aa=Ba-(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0]),vb=pb-((((qb?bb-.5:bb+.5)&-1)+1|0)/2&-1|0),xb=g+56|0;f[0]=ua;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var hd=g+64|0;f[0]=Wa;a[hd>>2]=b[0];a[hd+4>>2]=b[1];var nb=g+72|0;f[0]=ha;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=g+80|0;f[0]=va;a[rb>>2]=b[0];a[rb+4>>2]=b[1];var lb=g+88|0;f[0]=ua;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=g+96|0;f[0]=vb;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];var cb=g+104|0;f[0]=Aa;a[cb>>2]=b[0];a[cb+4>>2]=b[1];var fb=g+112|0;f[0]=Wa;a[fb>>2]=b[0];a[fb+4>>2]=b[1]}else{var Ua=c+8|0,sb=(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),Na=ha+1,Fb=(b[0]=a[w],b[1]=a[w+1],f[0]),Db=M+96|0,Ob=(b[0]=a[Db>>2],b[1]=a[Db+4>>2],f[0]),Eb=0>Ob,Ea=Fb+((((Eb?Ob-.5:Ob+.5)&-1)+1|0)/2&-1|0)+((a[a[B+5]+260>>2]|0)/2&-1|0),Bb=M+112|0,Ja=Ba+(b[0]=a[Bb>>2],b[1]=a[Bb+4>>2],f[0]),Ma=Fb-((((Eb?Ob-.5:Ob+.5)&-1)+1|0)/2&-1|0),Qa=g+56|0;f[0]=ea;a[Qa>>2]=b[0];a[Qa+4>>2]=b[1];var wb=g+64|0;f[0]=sb;a[wb>>2]=b[0];a[wb+4>>2]=b[1];var Cb=g+72|0;f[0]=Na;a[Cb>>2]=b[0];a[Cb+4>>2]=b[1];var Va=g+80|0;f[0]=Ea;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var Pa=g+88|0;f[0]=Ja;a[Pa>>2]=b[0];a[Pa+4>>2]=b[1];var ic=g+96|0;f[0]=Ma;a[ic>>2]=b[0];a[ic+4>>2]=b[1];var hb=g+104|0;f[0]=Na;a[hb>>2]=b[0];a[hb+4>>2]=b[1];var ib=g+112|0;f[0]=sb;a[ib>>2]=b[0];a[ib+4>>2]=b[1]}n=(c+8|0)>>2;var yb=(b[0]=a[n],b[1]=a[n+1],f[0])+1;f[0]=yb;a[n]=b[0];a[n+1]=b[1];a[C+13]=2}var Gb=0==m[d+124|0]<<24>>24;a:do{if(Gb){var db=d}else{for(var pc=d;;){var Wc=a[pc+128>>2];if(0==m[Wc+124|0]<<24>>24){db=Wc;break a}else{pc=Wc}}}}while(0);(M|0)==(a[db+16>>2]|0)?m[db+58|0]=0:m[db+98|0]=0;h=P;return}}}else{y=2673}}while(0);do{if(2673==y){do{if(2==(i|0)){var Vb=m[d+61|0],Ib=Vb&255;if(0!=Vb<<24>>24){var Nb=g|0,mb=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),Jb=g+8|0,Hb=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),Lb=g+16|0,lc=(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),Kb=g+24|0,Jd=(b[0]=a[Kb>>2],b[1]=a[Kb+4>>2],f[0]);if(0==(Ib&4|0)){if(0!=(Ib&1|0)){if(4!=(a[C+12]|0)){var Pb=c+8|0,Hc=(b[0]=a[Pb>>2],b[1]=a[Pb+4>>2],f[0]),Wb=Jd>Hc?Jd:Hc,oe=g+56|0;f[0]=mb;a[oe>>2]=b[0];a[oe+4>>2]=b[1];var Tb=g+64|0;f[0]=Hb;a[Tb>>2]=b[0];a[Tb+4>>2]=b[1];var Qb=g+72|0;f[0]=lc;a[Qb>>2]=b[0];a[Qb+4>>2]=b[1];var tc=g+80|0;f[0]=Wb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];a[C+13]=1}else{var Sc=(b[0]=a[w],b[1]=a[w+1],f[0]),Yb=M+96|0,Mb=(b[0]=a[Yb>>2],b[1]=a[Yb+4>>2],f[0]),$b=0>Mb,rd=Sc-(((($b?Mb-.5:Mb+.5)&-1)+1|0)/2&-1|0),oc=lc+1,Zb=c|0,qc=(b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0]),ve=rd-((a[a[B+5]+260>>2]|0)/2&-1|0),Rd=M+112|0,Bc=(b[0]=a[A],b[1]=a[A+1],f[0])+(b[0]=a[Rd>>2],b[1]=a[Rd+4>>2],f[0]),Sd=Sc+(((($b?Mb-.5:Mb+.5)&-1)+1|0)/2&-1|0),fd=g+56|0;f[0]=qc;a[fd>>2]=b[0];a[fd+4>>2]=b[1];var Sb=g+64|0;f[0]=ve;a[Sb>>2]=b[0];a[Sb+4>>2]=b[1];var yc=g+72|0;f[0]=oc;a[yc>>2]=b[0];a[yc+4>>2]=b[1];var uc=g+80|0;f[0]=rd;a[uc>>2]=b[0];a[uc+4>>2]=b[1];var nc=g+88|0;f[0]=Bc;a[nc>>2]=b[0];a[nc+4>>2]=b[1];var Tc=g+96|0;f[0]=rd;a[Tc>>2]=b[0];a[Tc+4>>2]=b[1];var kc=g+104|0;f[0]=oc;a[kc>>2]=b[0];a[kc+4>>2]=b[1];var Mc=g+112|0;f[0]=Sd;a[Mc>>2]=b[0];a[Mc+4>>2]=b[1];a[C+13]=2}}else{var id=c|0,ec=(b[0]=a[id>>2],b[1]=a[id+4>>2],f[0]);if(0==(Ib&8|0)){var mc=4==(a[C+12]|0),fc=(b[0]=a[w],b[1]=a[w+1],f[0]),bc=M+96|0,ac=(b[0]=a[bc>>2],b[1]=a[bc+4>>2],f[0]),rc=0<=ac;if(mc){var jc=c+8|0,Ac=fc+((((rc?ac+.5:ac-.5)&-1)+1|0)/2&-1|0),Td=(b[0]=a[jc>>2],b[1]=a[jc+4>>2],f[0])}else{var gc=rc?ac+.5:ac-.5,dc=c+8|0,Ac=(b[0]=a[dc>>2],b[1]=a[dc+4>>2],f[0])+1,Td=fc-(((gc&-1)+1|0)/2&-1|0)}var fe=g+56|0;f[0]=ec;a[fe>>2]=b[0];a[fe+4>>2]=b[1];var Xb=g+64|0;f[0]=Td;a[Xb>>2]=b[0];a[Xb+4>>2]=b[1];var Cc=g+72|0;f[0]=lc;a[Cc>>2]=b[0];a[Cc+4>>2]=b[1];var jd=g+80|0;f[0]=Ac;a[jd>>2]=b[0];a[jd+4>>2]=b[1]}else{var md=ec+1,je=4==(a[C+12]|0),Qe=(b[0]=a[w],b[1]=a[w+1],f[0]),Ic=M+96|0,Uc=(b[0]=a[Ic>>2],b[1]=a[Ic+4>>2],f[0]),vc=0<=Uc;if(je){var Dc=c+8|0,Ec=Qe+((((vc?Uc+.5:Uc-.5)&-1)+1|0)/2&-1|0),Gc=(b[0]=a[Dc>>2],b[1]=a[Dc+4>>2],f[0])-1}else{var Kc=vc?Uc+.5:Uc-.5,kd=c+8|0,Ec=(b[0]=a[kd>>2],b[1]=a[kd+4>>2],f[0])+1,Gc=Qe-(((Kc&-1)+1|0)/2&-1|0)}var Nc=g+56|0;f[0]=mb;a[Nc>>2]=b[0];a[Nc+4>>2]=b[1];var zc=g+64|0;f[0]=Gc;a[zc>>2]=b[0];a[zc+4>>2]=b[1];var Fc=g+72|0;f[0]=md;a[Fc>>2]=b[0];a[Fc+4>>2]=b[1];var Qc=g+80|0;f[0]=Ec;a[Qc>>2]=b[0];a[Qc+4>>2]=b[1]}a[C+13]=1}}else{var Yc=c+8|0,nd=(b[0]=a[Yc>>2],b[1]=a[Yc+4>>2],f[0]),zd=Hb>2]=b[0];a[cf+4>>2]=b[1];var Zc=g+64|0;f[0]=zd;a[Zc>>2]=b[0];a[Zc+4>>2]=b[1];var Rc=g+72|0;f[0]=lc;a[Rc>>2]=b[0];a[Rc+4>>2]=b[1];var Lc=g+80|0;f[0]=Jd;a[Lc>>2]=b[0];a[Lc+4>>2]=b[1];a[C+13]=1}var $c=0==m[d+124|0]<<24>>24;a:do{if($c){var pe=d}else{for(var Oc=d;;){var Kd=a[Oc+128>>2];if(0==m[Kd+124|0]<<24>>24){pe=Kd;break a}else{Oc=Kd}}}}while(0);(M|0)==(a[pe+16>>2]|0)?m[pe+58|0]=0:m[pe+98|0]=0;a[C+12]=Ib;h=P;return}}}while(0);zb=U?1:a[C+12]}}while(0);var Dd=g+56|0,Pc=g+52|0;if(0!=(G|0)){var Jc=J[G](M,X,zb,Dd,Pc);if(0!=(Jc|0)){a[C+12]=Jc;h=P;return}}k=Dd>>2;l=g>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[k+4]=a[l+4];a[k+5]=a[l+5];a[k+6]=a[l+6];a[k+7]=a[l+7];a[Pc>>2]=1;if(2==(i|0)){var ld=4==(a[C+12]|0),Ad=c+8|0,Ud=(b[0]=a[Ad>>2],b[1]=a[Ad+4>>2],f[0]);if(ld){var Vd=g+64|0;f[0]=Ud;a[Vd>>2]=b[0];a[Vd+4>>2]=b[1]}else{var ad=g+80|0;f[0]=Ud;a[ad>>2]=b[0];a[ad+4>>2]=b[1]}}else{if(1==(i|0)){e=(c+8|0)>>2;var bd=(b[0]=a[e],b[1]=a[e+1],f[0]),gd=g+80|0;f[0]=bd;a[gd>>2]=b[0];a[gd+4>>2]=b[1];a[C+12]=1;var ud=(b[0]=a[e],b[1]=a[e+1],f[0])-1;f[0]=ud;a[e]=b[0];a[e+1]=b[1]}else{if(8==(i|0)){sa(wl|0,565,SH|0,vd|0);var Xc=c+8|0,Vc=(b[0]=a[Xc>>2],b[1]=a[Xc+4>>2],f[0])-1,cd=g+80|0;f[0]=Vc;a[cd>>2]=b[0];a[cd+4>>2]=b[1];a[C+12]=1}}}h=P}function Bu(c){var d,i=a[c+176>>2],g=a[i>>2];if(0==(g|0)){var q=0,e=0}else{for(var e=q=0,l=g;;){var k=a[l+16>>2]+32|0,k=e+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),h=q+1|0,l=a[i+(h<<2)>>2];if(0==(l|0)){break}else{q=h,e=k}}q=h|0;e=k}var i=c+184|0,k=a[i>>2],j=a[k>>2];if(0==(j|0)){var p=0,k=0}else{for(l=h=0;!(d=a[j+12>>2]+32|0,d=l+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),p=h+1|0,j=a[k+(p<<2)>>2],0==(j|0));){h=p,l=d}p|=0;k=d}d=(c+32|0)>>2;q=(b[0]=a[d],b[1]=a[d+1],f[0])-e/q;c=(c+40|0)>>2;g=a[g+16>>2]+40|0;g=Cf((b[0]=a[c],b[1]=a[c+1],f[0])-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q);d=k/p-(b[0]=a[d],b[1]=a[d+1],f[0]);i=a[a[a[i>>2]>>2]+12>>2]+40|0;return.5*(g+Cf((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(b[0]=a[c],b[1]=a[c+1],f[0]),d))}function HQa(c){var d,i=a[c+108>>2];0==m[c+56|0]<<24>>24?0!=m[c+96|0]<<24>>24&&(d=2744):d=2744;if(2744==d){d=m[c+61|0];var g=d&255;if(0!=(g&8|0)){return 0}var q=m[c+101|0];if(0!=(q&8)<<24>>24||d<<24>>24==q<<24>>24&&0!=(g&5|0)){return 0}}if(0==(i|0)){return 18}c=0==(a[a[a[c+12>>2]+20>>2]+152>>2]&1|0)?i+24|0:i+32|0;return c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+18&-1}function xl(c,d,i,g,q){var e,l,k,n,j,p,s,v,t,u,w,A,B,C=g>>2,P=h;h+=56;var y,D=P+40,F=d+12|0,M=a[F>>2];B=M>>2;var X=d+68|0;if(0!=m[d+99|0]<<24>>24){wH(P,M,a[d+16>>2],X);for(var O=P>>2,E=X>>2,Da=O+10;O>2]+16>>2],I=c+40|0;A=(M+32|0)>>2;var H=(b[0]=a[A],b[1]=a[A+1],f[0]);w=(M+40|0)>>2;var K=(b[0]=a[w],b[1]=a[w+1],f[0]),L=X|0,N=d+76|0;RH(D,H,K,(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0]),(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]));u=I>>2;t=D>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];if(0==q<<24>>24){if(0==m[d+97|0]<<24>>24){m[c+69|0]=0}else{var R=d+84|0,S=(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),ca=c+56|0;f[0]=S;a[ca>>2]=b[0];a[ca+4>>2]=b[1];m[c+69|0]=1}}else{var Q=Bu(a[F>>2])+3.141592653589793,U=c+56|0;f[0]=Q;a[U>>2]=b[0];a[U+4>>2]=b[1];6.283185307179586>Q||sa(wl|0,602,Cu|0,TH|0);m[c+69|0]=1}v=(g+32|0)>>2;a[v]=a[u];a[v+1]=a[u+1];a[v+2]=a[u+2];a[v+3]=a[u+3];var zb=1==(i|0);do{if(zb){if(0!=m[M+162|0]<<24>>24){var ja=4}else{var aa=m[d+101|0],da=aa&255;if(0==aa<<24>>24){y=2804}else{var ea=g|0,xa=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),W=g+8|0,V=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),ha=g+16|0,ga=(b[0]=a[ha>>2],b[1]=a[ha+4>>2],f[0]);if(0==(da&4|0)){if(0==(da&1|0)){var Y=g+48|0;if(0==(da&8|0)){a[Y>>2]=2;s=(I|0)>>2;var Rb=(b[0]=a[s],b[1]=a[s+1],f[0]),$=(b[0]=a[w],b[1]=a[w+1],f[0]),tb=M+96|0,ya=(b[0]=a[tb>>2],b[1]=a[tb+4>>2],f[0]),Z=$+((((0>ya?ya-.5:ya+.5)&-1)+1|0)/2&-1|0),wa=c+48|0,la=(b[0]=a[wa>>2],b[1]=a[wa+4>>2],f[0]),Fa=g+56|0;f[0]=Rb;a[Fa>>2]=b[0];a[Fa+4>>2]=b[1];var Ga=g+64|0;f[0]=la;a[Ga>>2]=b[0];a[Ga+4>>2]=b[1];var fa=g+72|0;f[0]=ga;a[fa>>2]=b[0];a[fa+4>>2]=b[1];var ta=g+80|0;f[0]=Z;a[ta>>2]=b[0];a[ta+4>>2]=b[1];a[C+13]=1;var Ka=(b[0]=a[s],b[1]=a[s+1],f[0])+1;f[0]=Ka;a[s]=b[0];a[s+1]=b[1]}else{a[Y>>2]=8;p=(I|0)>>2;var za=(b[0]=a[p],b[1]=a[p+1],f[0]),ma=(b[0]=a[w],b[1]=a[w+1],f[0]),pa=M+96|0,ba=(b[0]=a[pa>>2],b[1]=a[pa+4>>2],f[0]),Ha=ma+((((0>ba?ba-.5:ba+.5)&-1)+1|0)/2&-1|0),Ra=c+48|0,ka=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),ra=g+56|0;f[0]=xa;a[ra>>2]=b[0];a[ra+4>>2]=b[1];var La=g+64|0;f[0]=ka;a[La>>2]=b[0];a[La+4>>2]=b[1];var qa=g+72|0;f[0]=za;a[qa>>2]=b[0];a[qa+4>>2]=b[1];var Ya=g+80|0;f[0]=Ha;a[Ya>>2]=b[0];a[Ya+4>>2]=b[1];a[C+13]=1;var na=(b[0]=a[p],b[1]=a[p+1],f[0])-1;f[0]=na;a[p]=b[0];a[p+1]=b[1]}}else{a[C+12]=1;var Za=I|0,oa=(b[0]=a[Za>>2],b[1]=a[Za+4>>2],f[0]),ab=(b[0]=a[A],b[1]=a[A+1],f[0]);if(oa>2],b[1]=a[jb+4>>2],f[0]),Ia=(b[0]=a[w],b[1]=a[w+1],f[0]),eb=M+96|0,ub=(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]),Sa=0>ub,Ba=Ia-((((Sa?ub-.5:ub+.5)&-1)+1|0)/2&-1|0)-((a[a[B+5]+260>>2]|0)/2&-1|0),ua=M+104|0,Oa=ab-(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]),Wa=Ia+((((Sa?ub-.5:ub+.5)&-1)+1|0)/2&-1|0),pb=g+56|0;f[0]=$a;a[pb>>2]=b[0];a[pb+4>>2]=b[1];var ob=g+64|0;f[0]=Ba;a[ob>>2]=b[0];a[ob+4>>2]=b[1];var bb=g+72|0;f[0]=ga;a[bb>>2]=b[0];a[bb+4>>2]=b[1];var qb=g+80|0;f[0]=Ca;a[qb>>2]=b[0];a[qb+4>>2]=b[1];var va=g+88|0;f[0]=$a;a[va>>2]=b[0];a[va+4>>2]=b[1];var kb=g+96|0;f[0]=Ca;a[kb>>2]=b[0];a[kb+4>>2]=b[1];var Aa=g+104|0;f[0]=Oa;a[Aa>>2]=b[0];a[Aa+4>>2]=b[1];var vb=g+112|0;f[0]=Wa;a[vb>>2]=b[0];a[vb+4>>2]=b[1]}else{var xb=c+48|0,hd=(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0]),nb=ga+1,rb=(b[0]=a[w],b[1]=a[w+1],f[0]),lb=M+96|0,Ta=(b[0]=a[lb>>2],b[1]=a[lb+4>>2],f[0]),cb=0>Ta,fb=rb-((((cb?Ta-.5:Ta+.5)&-1)+1|0)/2&-1|0)-((a[a[B+5]+260>>2]|0)/2&-1|0),Ua=M+112|0,sb=ab+(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),Na=rb+((((cb?Ta-.5:Ta+.5)&-1)+1|0)/2&-1|0),Fb=g+56|0;f[0]=xa;a[Fb>>2]=b[0];a[Fb+4>>2]=b[1];var Db=g+64|0;f[0]=fb;a[Db>>2]=b[0];a[Db+4>>2]=b[1];var Ob=g+72|0;f[0]=nb;a[Ob>>2]=b[0];a[Ob+4>>2]=b[1];var Eb=g+80|0;f[0]=hd;a[Eb>>2]=b[0];a[Eb+4>>2]=b[1];var Ea=g+88|0;f[0]=sb;a[Ea>>2]=b[0];a[Ea+4>>2]=b[1];var Bb=g+96|0;f[0]=hd;a[Bb>>2]=b[0];a[Bb+4>>2]=b[1];var Ja=g+104|0;f[0]=nb;a[Ja>>2]=b[0];a[Ja+4>>2]=b[1];var Ma=g+112|0;f[0]=Na;a[Ma>>2]=b[0];a[Ma+4>>2]=b[1]}a[C+13]=2;j=(c+48|0)>>2;var Qa=(b[0]=a[j],b[1]=a[j+1],f[0])-1;f[0]=Qa;a[j]=b[0];a[j+1]=b[1]}}else{var wb=g+24|0,Cb=(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]);a[C+12]=4;n=(c+48|0)>>2;var Va=(b[0]=a[n],b[1]=a[n+1],f[0]),Pa=V>2]=b[0];a[ic+4>>2]=b[1];var hb=g+64|0;f[0]=Pa;a[hb>>2]=b[0];a[hb+4>>2]=b[1];var ib=g+72|0;f[0]=ga;a[ib>>2]=b[0];a[ib+4>>2]=b[1];var db=g+80|0;f[0]=Cb;a[db>>2]=b[0];a[db+4>>2]=b[1];a[C+13]=1;var yb=(b[0]=a[n],b[1]=a[n+1],f[0])+1;f[0]=yb;a[n]=b[0];a[n+1]=b[1]}var Gb=0==m[d+124|0]<<24>>24;a:do{if(Gb){var pc=d}else{for(var Ib=d;;){var Vb=a[Ib+128>>2];if(0==m[Vb+124|0]<<24>>24){pc=Vb;break a}else{Ib=Vb}}}}while(0);(M|0)==(a[pc+12>>2]|0)?m[pc+98|0]=0:m[pc+58|0]=0;a[C+12]=da;h=P;return}}}else{y=2804}}while(0);do{if(2804==y){do{if(2==(i|0)){var Nb=m[d+101|0],mb=Nb&255;if(0!=Nb<<24>>24){var Hb=g|0,Jb=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Lb=g+8|0,Kb=(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),lc=g+16|0,Mb=(b[0]=a[lc>>2],b[1]=a[lc+4>>2],f[0]),Jd=g+24|0,Pb=(b[0]=a[Jd>>2],b[1]=a[Jd+4>>2],f[0]);if(0==(mb&4|0)){if(0!=(mb&1|0)){if(4!=(a[C+12]|0)){var Hc=c+8|0,Tb=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0]),Yb=Pb>Tb?Pb:Tb,Wb=g+56|0;f[0]=Jb;a[Wb>>2]=b[0];a[Wb+4>>2]=b[1];var Qb=g+64|0;f[0]=Kb;a[Qb>>2]=b[0];a[Qb+4>>2]=b[1];var tc=g+72|0;f[0]=Mb;a[tc>>2]=b[0];a[tc+4>>2]=b[1];var Sc=g+80|0;f[0]=Yb;a[Sc>>2]=b[0];a[Sc+4>>2]=b[1];a[C+13]=1}else{var $b=Jb-1,Zb=(b[0]=a[w],b[1]=a[w+1],f[0]),qc=M+96|0,rd=(b[0]=a[qc>>2],b[1]=a[qc+4>>2],f[0]),oc=0>rd,Sb=Zb-((((oc?rd-.5:rd+.5)&-1)+1|0)/2&-1|0),uc=I|0,ac=(b[0]=a[uc>>2],b[1]=a[uc+4>>2],f[0]),nc=Sb-((a[a[B+5]+260>>2]|0)/2&-1|0),Bc=M+104|0,Sd=(b[0]=a[A],b[1]=a[A+1],f[0])-(b[0]=a[Bc>>2],b[1]=a[Bc+4>>2],f[0])-2,fd=Zb+((((oc?rd-.5:rd+.5)&-1)+1|0)/2&-1|0),kc=g+56|0;f[0]=$b;a[kc>>2]=b[0];a[kc+4>>2]=b[1];var yc=g+64|0;f[0]=nc;a[yc>>2]=b[0];a[yc+4>>2]=b[1];var ec=g+72|0;f[0]=ac;a[ec>>2]=b[0];a[ec+4>>2]=b[1];var fc=g+80|0;f[0]=Sb;a[fc>>2]=b[0];a[fc+4>>2]=b[1];var Tc=g+88|0;f[0]=$b;a[Tc>>2]=b[0];a[Tc+4>>2]=b[1];var mc=g+96|0;f[0]=Sb;a[mc>>2]=b[0];a[mc+4>>2]=b[1];var Mc=g+104|0;f[0]=Sd;a[Mc>>2]=b[0];a[Mc+4>>2]=b[1];var id=g+112|0;f[0]=fd;a[id>>2]=b[0];a[id+4>>2]=b[1];a[C+13]=2}}else{var bc=I|0,rc=(b[0]=a[bc>>2],b[1]=a[bc+4>>2],f[0]);if(0==(mb&8|0)){var jc=rc-1,Ac=4==(a[C+12]|0),dc=(b[0]=a[w],b[1]=a[w+1],f[0]),gc=M+96|0,Xb=(b[0]=a[gc>>2],b[1]=a[gc+4>>2],f[0]),Cc=0<=Xb;if(Ac){var Td=c+48|0,Ic=dc+((((Cc?Xb+.5:Xb-.5)&-1)+1|0)/2&-1|0),vc=(b[0]=a[Td>>2],b[1]=a[Td+4>>2],f[0])-1}else{var fe=Cc?Xb+.5:Xb-.5,Dc=c+48|0,Ic=(b[0]=a[Dc>>2],b[1]=a[Dc+4>>2],f[0]),vc=dc-(((fe&-1)+1|0)/2&-1|0)}var Ec=g+56|0;f[0]=jc;a[Ec>>2]=b[0];a[Ec+4>>2]=b[1];var jd=g+64|0;f[0]=vc;a[jd>>2]=b[0];a[jd+4>>2]=b[1];var md=g+72|0;f[0]=Mb;a[md>>2]=b[0];a[md+4>>2]=b[1];var je=g+80|0;f[0]=Ic;a[je>>2]=b[0];a[je+4>>2]=b[1]}else{var Gc=rc+1,Nc=4==(a[C+12]|0),Uc=(b[0]=a[w],b[1]=a[w+1],f[0]),zc=M+96|0,Kc=(b[0]=a[zc>>2],b[1]=a[zc+4>>2],f[0]),Fc=0<=Kc;if(Nc){var Qc=c+48|0,Yc=Uc+((((Fc?Kc+.5:Kc-.5)&-1)+1|0)/2&-1|0),kd=(b[0]=a[Qc>>2],b[1]=a[Qc+4>>2],f[0])-1}else{var Zc=Fc?Kc+.5:Kc-.5,Rc=c+48|0,Yc=(b[0]=a[Rc>>2],b[1]=a[Rc+4>>2],f[0])+1,kd=Uc-(((Zc&-1)+1|0)/2&-1|0)}var Lc=g+56|0;f[0]=Jb;a[Lc>>2]=b[0];a[Lc+4>>2]=b[1];var Oc=g+64|0;f[0]=kd;a[Oc>>2]=b[0];a[Oc+4>>2]=b[1];var Pc=g+72|0;f[0]=Gc;a[Pc>>2]=b[0];a[Pc+4>>2]=b[1];var nd=g+80|0;f[0]=Yc;a[nd>>2]=b[0];a[nd+4>>2]=b[1]}a[C+13]=1}}else{var zd=c+48|0,Jc=(b[0]=a[zd>>2],b[1]=a[zd+4>>2],f[0]),$c=Kb>2]=b[0];a[ad+4>>2]=b[1];var Xc=g+64|0;f[0]=$c;a[Xc>>2]=b[0];a[Xc+4>>2]=b[1];var cd=g+72|0;f[0]=Mb;a[cd>>2]=b[0];a[cd+4>>2]=b[1];var ld=g+80|0;f[0]=Pb;a[ld>>2]=b[0];a[ld+4>>2]=b[1];a[C+13]=1}var bd=0==m[d+124|0]<<24>>24;a:do{if(bd){var Kd=d}else{for(var Dd=d;;){var Vc=a[Dd+128>>2];if(0==m[Vc+124|0]<<24>>24){Kd=Vc;break a}else{Dd=Vc}}}}while(0);(M|0)==(a[Kd+12>>2]|0)?m[Kd+98|0]=0:m[Kd+58|0]=0;a[C+12]=mb;h=P;return}}}while(0);ja=zb?4:a[C+12]}}while(0);var ed=g+56|0,qd=g+52|0;if(0!=(G|0)){var Ad=J[G](M,X,ja,ed,qd);if(0!=(Ad|0)){a[C+12]=Ad;h=P;return}}k=ed>>2;l=g>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[k+4]=a[l+4];a[k+5]=a[l+5];a[k+6]=a[l+6];a[k+7]=a[l+7];a[qd>>2]=1;if(1==(i|0)){e=(c+48|0)>>2;var Ud=(b[0]=a[e],b[1]=a[e+1],f[0]),Vd=g+64|0;f[0]=Ud;a[Vd>>2]=b[0];a[Vd+4>>2]=b[1];a[C+12]=4;var yd=(b[0]=a[e],b[1]=a[e+1],f[0])+1;f[0]=yd;a[e]=b[0];a[e+1]=b[1]}else{if(8==(i|0)){sa(wl|0,757,Cu|0,vd|0);var pd=c+48|0,gd=(b[0]=a[pd>>2],b[1]=a[pd+4>>2],f[0])+1,ud=g+64|0;f[0]=gd;a[ud>>2]=b[0];a[ud+4>>2]=b[1];a[C+12]=4}else{if(2==(i|0)){var Fd=4==(a[C+12]|0),dd=c+48|0,od=(b[0]=a[dd>>2],b[1]=a[dd+4>>2],f[0]);if(Fd){var sd=g+64|0;f[0]=od;a[sd>>2]=b[0];a[sd+4>>2]=b[1]}else{var Bd=g+80|0;f[0]=od;a[Bd>>2]=b[0];a[Bd+4>>2]=b[1]}}}}h=P}function UH(b,c,i,g,d,f,e){var k,b=a[c+(i<<2)>>2];0==m[b+56|0]<<24>>24?0!=m[b+96|0]<<24>>24&&(k=2867):k=2867;a:do{if(2867==k){k=m[b+61|0];var h=k&255;do{if(0==(h&8|0)){var j=m[b+101|0],p=0==(j&8)<<24>>24;if(p){if(k<<24>>24!=j<<24>>24){break a}if(0==(h&5|0)){break a}if(p){if(0!=(h&4|0)){Du(c,i,g,d,f,e);return}0==(h&1|0)?sa(wl|0,1114,VH|0,vd|0):WH(c,i,g,d,f,e);return}}}}while(0);if(0==(k&2)<<24>>24&&0==(m[b+101|0]&2)<<24>>24){XH(c,i,g,d,f,e);return}Du(c,i,g,d,f,e);return}}while(0);YH(c,i,g,d,f,e)}function YH(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var q=.5*q/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),q=(k+40|0)>>2,Da=(b[0]=a[q],b[1]=a[q+1],f[0]),ia=X+28|0,G=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+Da,J=X+68|0;n=X+76|0;J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+E;Da=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+Da;k=k+112|0;var I=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=E+I;var H=3*(k-ia),K=3*(k-J);if(0<(i|0)){var L=(G>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(G+Da);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var Q=C+96|0,S=C+104|0,U=C|0,i=i+d|0,ja=I,H=I>2]=b[0];a[N+4>>2]=b[1];f[0]=G;a[R>>2]=b[0];a[R+4>>2]=b[1];var aa=G+K;Pc(P,ia+H/3,aa);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=E+ja;Pc(y,l,aa);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,l,ca);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=Da-K;Pc(F,l,aa);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,J+I/3,aa);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=J;a[Q>>2]=b[0];a[Q+4>>2]=b[1];f[0]=Da;a[S>>2]=b[0];a[S+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)?(aa=da+32|0,ea|=0):(aa=ea|0,ea=da+32|0);var aa=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),xa=(b[0]=a[B],b[1]=a[B+1],f[0])+ja+.5*ea,da=da+56|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[q],b[1]=a[q+1],f[0]);xa=a[l]+64|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;ja=ea>g?ja+(ea-g):ja;K=K+O>2],U,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function Du(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var g=.5*g/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),g=(k+40|0)>>2,Da=(b[0]=a[g],b[1]=a[g+1],f[0]),ia=X+28|0,G=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+Da;n=X+68|0;var J=X+76|0,E=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+E,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+Da;k=k+96|0;var I=.5*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);k=Da+I;var H=3*(k-G),K=3*(k-J);if(0<(i|0)){var L=(ia>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(ia+E);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var Q=C+96|0,S=C+104|0,U=C|0,i=i+d|0,ja=0,H=I>2]=b[0];a[N+4>>2]=b[1];f[0]=G;a[R>>2]=b[0];a[R+4>>2]=b[1];var aa=ia+ja;Pc(P,aa,G+H/3);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=Da+I;Pc(y,aa,l);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,ca,l);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=E-ja;Pc(F,aa,l);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,aa,J+K/3);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=E;a[Q>>2]=b[0];a[Q+4>>2]=b[1];f[0]=J;a[S>>2]=b[0];a[S+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;if(0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)){var aa=da+32|0,xa=ea|0}else{aa=ea|0,xa=da+32|0}ea=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]);aa=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]);xa=(b[0]=a[g],b[1]=a[g+1],f[0])+I+.5*ea;da=da+64|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[B],b[1]=a[B+1],f[0]);xa=a[l]+56|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;I=ea>q?I+(ea-q):I;ja+O>2],U,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function XH(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var q=.5*q/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),q=(k+40|0)>>2,G=(b[0]=a[q],b[1]=a[q+1],f[0]),ia=X+28|0,J=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+G,I=X+68|0;n=X+76|0;I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0])+E;G=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+G;k=k+104|0;var H=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),K=3*(ia+H-E),L=3*(I+H-E);if(0<(i|0)){var N=(J>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(J+G);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var S=C+96|0,U=C+104|0,zb=C|0,i=i+d|0,ja=H,K=H>2]=b[0];a[R+4>>2]=b[1];f[0]=J;a[Q>>2]=b[0];a[Q+4>>2]=b[1];var aa=J+L;Pc(P,ia-K/3,aa);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=E-ja;Pc(y,l,aa);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,l,ca);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=G-L;Pc(F,l,aa);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,I-H/3,aa);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=I;a[S>>2]=b[0];a[S+4>>2]=b[1];f[0]=G;a[U>>2]=b[0];a[U+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)?(aa=da+32|0,ea|=0):(aa=ea|0,ea=da+32|0);var aa=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),xa=(b[0]=a[B],b[1]=a[B+1],f[0])-ja-.5*ea,da=da+56|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[q],b[1]=a[q+1],f[0]);xa=a[l]+64|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;ja=ea>g?ja+(ea-g):ja;L=L+O>2],zb,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function Pc(c,d,i){var g=c|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function WH(c,d,i,g,q,e){var l,k,n,j,p,s,v,t,u,w,A,B,C=h;h+=16080;var P=C+16e3,y=C+16016,D=C+16032,F=C+16048,M=C+16064,X=a[c+(d<<2)>>2];k=a[X+16>>2];var g=.5*g/(i|0),O=2>2;var E=(b[0]=a[B],b[1]=a[B+1],f[0]),g=(k+40|0)>>2,G=(b[0]=a[g],b[1]=a[g+1],f[0]),ia=X+28|0,J=X+36|0,ia=(b[0]=a[ia>>2],b[1]=a[ia+4>>2],f[0])+E,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+G;n=X+68|0;var I=X+76|0,E=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+E,I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0])+G;k=k+96|0;var H=.5*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),K=3*(J+H-G),L=3*(I+H-G);if(0<(i|0)){var N=(ia>2;w=P>>2;u=(C+32|0)>>2;t=y>>2;var ca=.5*(ia+E);v=(C+48|0)>>2;s=D>>2;p=(C+64|0)>>2;j=F>>2;n=(C+80|0)>>2;k=M>>2;var S=C+96|0,U=C+104|0,zb=C|0,i=i+d|0,K=H>2]=b[0];a[R+4>>2]=b[1];f[0]=J;a[Q>>2]=b[0];a[Q+4>>2]=b[1];var aa=ia+ja;Pc(P,aa,J-K/3);a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];l=G-H;Pc(y,aa,l);a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Pc(D,ca,l);a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];aa=E-ja;Pc(F,aa,l);a[p]=a[j];a[p+1]=a[j+1];a[p+2]=a[j+2];a[p+3]=a[j+3];Pc(M,aa,I-L/3);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];f[0]=E;a[S>>2]=b[0];a[S+4>>2]=b[1];f[0]=I;a[U>>2]=b[0];a[U+4>>2]=b[1];l=(X+108|0)>>2;var da=a[l];if(0!=(da|0)){var ea=da+24|0;if(0==(a[a[a[X+16>>2]+20>>2]+152>>2]&1|0)){var aa=da+32|0,xa=ea|0}else{aa=ea|0,xa=da+32|0}ea=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]);aa=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]);xa=(b[0]=a[g],b[1]=a[g+1],f[0])-H-.5*ea;da=da+64|0;f[0]=xa;a[da>>2]=b[0];a[da+4>>2]=b[1];da=(b[0]=a[B],b[1]=a[B+1],f[0]);xa=a[l]+56|0;f[0]=da;a[xa>>2]=b[0];a[xa+4>>2]=b[1];m[a[l]+81|0]=1;H=ea>q?H+(ea-q):H;ja+O>2],zb,7,e);if((d|0)==(i|0)){break}l=d;X=a[c+(d<<2)>>2]}}h=C}function Eu(c,d){var i,g,q,e,l,k,n=h;h+=96;var j=n+64,p=n+80;if(6!=m[c+124|0]<<24>>24){k=0==d<<24>>24;var s=a[(k?c+116|0:c+112|0)>>2];i=yl(c)>>2;k?(i=a[i],k=i>>2,0==(a[k+2]|0)?(i=a[k],p=i|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),k=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),g=n>>2,l=i>>2,a[g]=a[l],a[g+1]=a[l+1],a[g+2]=a[l+2],a[g+3]=a[l+3],g=(n+16|0)>>2,l=(i+16|0)>>2,a[g]=a[l],a[g+1]=a[l+1],a[g+2]=a[l+2],a[g+3]=a[l+3],g=(n+32|0)>>2,l=(i+32|0)>>2,a[g]=a[l],a[g+1]=a[l+1],a[g+2]=a[l+2],a[g+3]=a[l+3],l=(n+48|0)>>2,i=(i+48|0)>>2,a[l]=a[i],a[l+1]=a[i+1],a[l+2]=a[i+2],a[l+3]=a[i+3],Ld(j,n|0,3,.1,0,0),i=j|0,l=j+8|0,j=k,k=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])):(p=i+16|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),j=i+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),i=a[k],k=i|0,i=i+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),l=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]))):(k=a[i+1]-1|0,i=a[i],l=i>>2,j=i+48*k|0,0==(a[l+(12*k|0)+3]|0)?(g=a[l+(12*k|0)+1],i=g-1|0,l=a[j>>2],j=(i<<4)+l|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),k=(i<<4)+l+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=n>>2,q=((g-4<<4)+l|0)>>2,a[e]=a[q],a[e+1]=a[q+1],a[e+2]=a[q+2],a[e+3]=a[q+3],e=(n+16|0)>>2,q=((g-3<<4)+l|0)>>2,a[e]=a[q],a[e+1]=a[q+1],a[e+2]=a[q+2],a[e+3]=a[q+3],q=(n+32|0)>>2,g=((g-2<<4)+l|0)>>2,a[q]=a[g],a[q+1]=a[g+1],a[q+2]=a[g+2],a[q+3]=a[g+3],g=(n+48|0)>>2,i=((i<<4)+l|0)>>2,a[g]=a[i],a[g+1]=a[i+1],a[g+2]=a[i+2],a[g+3]=a[i+3],Ld(p,n|0,3,.9,0,0),i=p|0,l=p+8|0,p=j,j=k,k=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])):(p=i+48*k+32|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),i=i+48*k+40|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),l=a[l+(12*k|0)+1]-1|0,j=a[j>>2],k=(l<<4)+j|0,l=(l<<4)+j+8|0,j=i,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]));i=c|0;k=Cf(l-j,k-p)+3.141592653589793*(Xb(i,a[Fu>>2],-25,-180)/180);i=10*Xb(i,a[Gu>>2],1,0);p+=i*se(k);l=s+56|0;f[0]=p;a[l>>2]=b[0];a[l+4>>2]=b[1];p=j+i*Ce(k);j=s+64|0;f[0]=p;a[j>>2]=b[0];a[j+4>>2]=b[1];m[s+81|0]=1}h=n}function ZH(b){var c=Ba(b);if((c|0)<(a[Hu>>2]|0)){c=a[zl>>2]}else{if(c=c+11|0,a[Hu>>2]=c,c=wb(a[zl>>2],c),a[zl>>2]=c,0==(c|0)){return 0}}var i=m[b];if(0==i<<24>>24){var g=c}else{for(;;){var b=b+1|0,d=i&255,g=c+1|0;m[c]=0==((65<=d&&90>=d)|0)?i:vf(d)&255;i=m[b];if(0==i<<24>>24){break}else{c=g}}c=a[zl>>2]}m[g]=0;return c}function yl(b){for(var c;;){var i=a[b+24>>2];if(0!=(i|0)){c=105;break}if(0==m[b+124|0]<<24>>24){c=104;break}b=a[b+128>>2]}if(104==c){S()}else{if(105==c){return i}}}function Bk(b){a[aj>>2]=b}function Iu(c,d,i,g,q,e,l){l>>=2;e>>=2;q>>=2;g>>=2;f[0]=1-c;a[g]=b[0];a[g+1]=b[1];f[0]=1-d;a[q]=b[0];a[q+1]=b[1];f[0]=1-i;a[e]=b[0];a[e+1]=b[1];c=(b[0]=a[g],b[1]=a[g+1],f[0]);d=(b[0]=a[q],b[1]=a[q+1],f[0]);c=c>=2;q>>=2;g>>=2;if(0c?6*c:0,c=l&-1,k=l-(c|0),l=(1-d)*i,h=(1-k*d)*i,d=(1-(1-k)*d)*i;0==(c|0)?(f[0]=i,a[g]=b[0],a[g+1]=b[1],f[0]=d,a[q]=b[0],a[q+1]=b[1],f[0]=l,a[e]=b[0],a[e+1]=b[1]):1==(c|0)?(f[0]=h,a[g]=b[0],a[g+1]=b[1],f[0]=i,a[q]=b[0],a[q+1]=b[1],f[0]=l,a[e]=b[0],a[e+1]=b[1]):2==(c|0)?(f[0]=l,a[g]=b[0],a[g+1]=b[1],f[0]=i,a[q]=b[0],a[q+1]=b[1],f[0]=d,a[e]=b[0],a[e+1]=b[1]):3==(c|0)?(f[0]=l,a[g]=b[0],a[g+1]=b[1],f[0]=h,a[q]=b[0],a[q+1]=b[1],f[0]=i,a[e]=b[0],a[e+1]=b[1]):5==(c|0)?(f[0]=i,a[g]=b[0],a[g+1]=b[1],f[0]=l,a[q]=b[0],a[q+1]=b[1],f[0]=h,a[e]=b[0],a[e+1]=b[1]):4==(c|0)&&(f[0]=d,a[g]=b[0],a[g+1]=b[1],f[0]=l,a[q]=b[0],a[q+1]=b[1],f[0]=i,a[e]=b[0],a[e+1]=b[1])}else{f[0]=i,a[g]=b[0],a[g+1]=b[1],f[0]=i,a[q]=b[0],a[q+1]=b[1],f[0]=i,a[e]=b[0],a[e+1]=b[1]}}function $H(c,d,i){var g,q,Xa,l,k,n,z,p,s,v,t,u,w,A,B,C,P=d>>2,y=h;h+=108;var D,F=y+12;C=F>>2;var M=y+20;B=M>>2;var X=y+28;A=X>>2;var O=y+36;w=O>>2;var E=y+44;u=E>>2;var G=y+52;t=G>>2;var ia=y+60;v=ia>>2;var J=y+68;s=J>>2;var I=y+76;p=I>>2;var H=y+84;z=H>>2;var K=y+92;n=K>>2;var L=y+96;k=L>>2;var N=y+100;l=N>>2;var R=y+104;Xa=R>>2;a[P+8]=i;for(var Q=c;;){if(32==m[Q]<<24>>24){Q=Q+1|0}else{break}}a[Xa]=255;var ca=m[Q];if(35==ca<<24>>24){if(2<(Cd(Q,aI|0,(j=h,h+=16,a[j>>2]=K,a[j+4>>2]=L,a[j+8>>2]=N,a[j+12>>2]=R,j))|0)){if(0==(i|0)){var S=(a[n]>>>0)/255;f[0]=S;a[w]=b[0];a[w+1]=b[1];var U=(a[k]>>>0)/255;f[0]=U;a[u]=b[0];a[u+1]=b[1];var zb=(a[l]>>>0)/255;f[0]=zb;a[t]=b[0];a[t+1]=b[1];var ja=(a[Xa]>>>0)/255,aa=Uzb?U:zb,ea=daS?S:aa),W=xa/ea;if(0Y?Y+360:Y,Z=W}else{var $=0,Z=W}}else{Z=$=0}f[0]=$/360;a[F>>2]=b[0];a[F+4>>2]=b[1];f[0]=ea;a[X>>2]=b[0];a[X+4>>2]=b[1];f[0]=Z;a[M>>2]=b[0];a[M+4>>2]=b[1];var tb=(b[0]=a[C],b[1]=a[C+1],f[0]),ya=d|0;f[0]=tb;a[ya>>2]=b[0];a[ya+4>>2]=b[1];var la=(b[0]=a[B],b[1]=a[B+1],f[0]),wa=d+8|0;f[0]=la;a[wa>>2]=b[0];a[wa+4>>2]=b[1];var Ab=(b[0]=a[A],b[1]=a[A+1],f[0]),Fa=d+16|0;f[0]=Ab;a[Fa>>2]=b[0];a[Fa+4>>2]=b[1];var Ga=d+24|0;f[0]=ja;a[Ga>>2]=b[0];a[Ga+4>>2]=b[1];var ba=0}else{if(1==(i|0)){m[d]=a[n]&255,m[d+1|0]=a[k]&255,m[d+2|0]=a[l]&255,m[d+3|0]=a[Xa]&255}else{if(3==(i|0)){var ta=(a[n]>>>0)/255;f[0]=ta;a[w]=b[0];a[w+1]=b[1];var Ka=(a[k]>>>0)/255;f[0]=Ka;a[u]=b[0];a[u+1]=b[1];var za=(a[l]>>>0)/255;f[0]=za;a[t]=b[0];a[t+1]=b[1];Iu(ta,Ka,za,ia,J,I,H);m[d]=255*((b[0]=a[v],b[1]=a[v+1],f[0])&-1)&255;m[d+1|0]=255*((b[0]=a[s],b[1]=a[s+1],f[0])&-1)&255;m[d+2|0]=255*((b[0]=a[p],b[1]=a[p+1],f[0])&-1)&255;m[d+3|0]=255*((b[0]=a[z],b[1]=a[z+1],f[0])&-1)&255}else{if(2==(i|0)){a[P]=Math.floor(((65535*a[n]|0)>>>0)/255),a[d+4>>2]=Math.floor(((65535*a[k]|0)>>>0)/255),a[P+2]=Math.floor(((65535*a[l]|0)>>>0)/255),a[d+12>>2]=Math.floor(((65535*a[Xa]|0)>>>0)/255)}else{if(4==(i|0)){var ma=d|0;f[0]=(a[n]>>>0)/255;a[ma>>2]=b[0];a[ma+4>>2]=b[1];var pa=d+8|0;f[0]=(a[k]>>>0)/255;a[pa>>2]=b[0];a[pa+4>>2]=b[1];var fa=d+16|0;f[0]=(a[l]>>>0)/255;a[fa>>2]=b[0];a[fa+4>>2]=b[1];var Ha=d+24|0;f[0]=(a[Xa]>>>0)/255;a[Ha>>2]=b[0];a[Ha+4>>2]=b[1]}}}}ba=0}h=y;return ba}var Ra=m[Q]}else{Ra=ca}46==Ra<<24>>24?D=150:10>((Ra&255)-48|0)>>>0&&(D=150);do{if(150==D){var sa=Ba(Q);if((sa|0)<(a[Ju>>2]|0)){var ra=a[lp>>2]}else{var La=sa+11|0;a[Ju>>2]=La;var qa=wb(a[lp>>2],La);a[lp>>2]=qa;if(0==(qa|0)){return ba=-1,h=y,ba}ra=qa}for(var Ya=Q,na=ra;;){var Za=Ya+1|0,oa=m[Ya];if(44==oa<<24>>24){var ab=32}else{if(0==oa<<24>>24){break}else{ab=oa}}m[na]=ab;Ya=Za;na=na+1|0}m[na]=0;if(3==(Cd(ra,bI|0,(j=h,h+=12,a[j>>2]=F,a[j+4>>2]=M,a[j+8>>2]=X,j))|0)){var $a=(b[0]=a[C],b[1]=a[C+1],f[0]),jb=1>$a?$a:1,Ca=0Ia?Ia:1,ub=0Sa?Sa:1,ua=0>2]=65535*(b[0]=a[u],b[1]=a[u+1],f[0])&-1;a[P+2]=65535*(b[0]=a[t],b[1]=a[t+1],f[0])&-1;a[Oa+12>>2]=65535}else{if(4==(i|0)){kp(Ca,ub,ua,O,E,G);var Wa=(b[0]=a[w],b[1]=a[w+1],f[0]),pb=d|0;f[0]=Wa;a[pb>>2]=b[0];a[pb+4>>2]=b[1];var ob=(b[0]=a[u],b[1]=a[u+1],f[0]),bb=d+8|0;f[0]=ob;a[bb>>2]=b[0];a[bb+4>>2]=b[1];var qb=(b[0]=a[t],b[1]=a[t+1],f[0]),Aa=d+16|0;f[0]=qb;a[Aa>>2]=b[0];a[Aa+4>>2]=b[1];var kb=d+24|0;f[0]=1;a[kb>>2]=b[0];a[kb+4>>2]=b[1]}else{if(0==(i|0)){var Ea=d|0;f[0]=Ca;a[Ea>>2]=b[0];a[Ea+4>>2]=b[1];var vb=d+8|0;f[0]=ub;a[vb>>2]=b[0];a[vb+4>>2]=b[1];var xb=d+16|0;f[0]=ua;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var hd=d+24|0;f[0]=1;a[hd>>2]=b[0];a[hd+4>>2]=b[1]}else{if(1==(i|0)){kp(Ca,ub,ua,O,E,G);var nb=d;m[d]=255*(b[0]=a[w],b[1]=a[w+1],f[0])&255;m[nb+1|0]=255*(b[0]=a[u],b[1]=a[u+1],f[0])&255;m[nb+2|0]=255*(b[0]=a[t],b[1]=a[t+1],f[0])&255;m[nb+3|0]=-1}else{if(3==(i|0)){kp(Ca,ub,ua,O,E,G);var rb=(b[0]=a[w],b[1]=a[w+1],f[0]);Iu(rb,(b[0]=a[u],b[1]=a[u+1],f[0]),(b[0]=a[t],b[1]=a[t+1],f[0]),ia,J,I,H);var lb=d;m[d]=255*((b[0]=a[v],b[1]=a[v+1],f[0])&-1)&255;m[lb+1|0]=255*((b[0]=a[s],b[1]=a[s+1],f[0])&-1)&255;m[lb+2|0]=255*((b[0]=a[p],b[1]=a[p+1],f[0])&-1)&255;m[lb+3|0]=255*((b[0]=a[z],b[1]=a[z+1],f[0])&-1)&255}}}}}ba=0;h=y;return ba}}}while(0);var Ta=cI(Q);a[y>>2]=Ta;if(0==(Ta|0)){return ba=-1,h=y,ba}var cb=a[Ku>>2];if(0==(cb|0)){D=168}else{var fb=a[cb>>2];if(m[fb]<<24>>24!=m[Ta]<<24>>24){D=168}else{if(0==(ka(fb,Ta)|0)){var Ua=cb}else{D=168}}}if(168==D){var sb=tn(y,e,2491,12,314),Ua=a[Ku>>2]=sb}if(0==(Ua|0)){if(0==(i|0)){var Na=d+24|0;q=d>>2;a[q]=0;a[q+1]=0;a[q+2]=0;a[q+3]=0;a[q+4]=0;a[q+5]=0;f[0]=1;a[Na>>2]=b[0];a[Na+4>>2]=b[1]}else{if(1==(i|0)){m[d+2|0]=0,m[d+1|0]=0,m[d]=0,m[d+3|0]=-1}else{if(3==(i|0)){Pb=0,m[d]=Pb&255,Pb>>=8,m[d+1]=Pb&255,Pb>>=8,m[d+2]=Pb&255,Pb>>=8,m[d+3]=Pb&255}else{if(2==(i|0)){a[P+2]=0,a[d+4>>2]=0,a[P]=0,a[d+12>>2]=65535}else{if(4==(i|0)){var Fb=d+24|0;g=d>>2;a[g]=0;a[g+1]=0;a[g+2]=0;a[g+3]=0;a[g+4]=0;a[g+5]=0;f[0]=1;a[Fb>>2]=b[0];a[Fb+4>>2]=b[1]}}}}}ba=1}else{if(0==(i|0)){var Db=d|0;f[0]=(m[Ua+4|0]&255)/255;a[Db>>2]=b[0];a[Db+4>>2]=b[1];var Ob=d+8|0;f[0]=(m[Ua+5|0]&255)/255;a[Ob>>2]=b[0];a[Ob+4>>2]=b[1];var Eb=d+16|0;f[0]=(m[Ua+6|0]&255)/255;a[Eb>>2]=b[0];a[Eb+4>>2]=b[1];var Ma=d+24|0;f[0]=(m[Ua+10|0]&255)/255;a[Ma>>2]=b[0];a[Ma+4>>2]=b[1]}else{if(1==(i|0)){m[d]=m[Ua+7|0],m[d+1|0]=m[Ua+8|0],m[d+2|0]=m[Ua+9|0],m[d+3|0]=m[Ua+10|0]}else{if(3==(i|0)){var Bb=(m[Ua+7|0]&255|0)/255;f[0]=Bb;a[w]=b[0];a[w+1]=b[1];var Ja=(m[Ua+8|0]&255|0)/255;f[0]=Ja;a[u]=b[0];a[u+1]=b[1];var Qa=(m[Ua+9|0]&255|0)/255;f[0]=Qa;a[t]=b[0];a[t+1]=b[1];Iu(Bb,Ja,Qa,ia,J,I,H);m[d]=255*((b[0]=a[v],b[1]=a[v+1],f[0])&-1)&255;m[d+1|0]=255*((b[0]=a[s],b[1]=a[s+1],f[0])&-1)&255;m[d+2|0]=255*((b[0]=a[p],b[1]=a[p+1],f[0])&-1)&255;m[d+3|0]=255*((b[0]=a[z],b[1]=a[z+1],f[0])&-1)&255}else{if(2==(i|0)){a[P]=Math.floor(((65535*(m[Ua+7|0]&255)|0)>>>0)/255),a[d+4>>2]=Math.floor(((65535*(m[Ua+8|0]&255)|0)>>>0)/255),a[P+2]=Math.floor(((65535*(m[Ua+9|0]&255)|0)>>>0)/255),a[d+12>>2]=Math.floor(((65535*(m[Ua+10|0]&255)|0)>>>0)/255)}else{if(4==(i|0)){var Cb=d|0;f[0]=(m[Ua+7|0]&255|0)/255;a[Cb>>2]=b[0];a[Cb+4>>2]=b[1];var Va=d+8|0;f[0]=(m[Ua+8|0]&255|0)/255;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var hb=d+16|0;f[0]=(m[Ua+9|0]&255|0)/255;a[hb>>2]=b[0];a[hb+4>>2]=b[1];var Pa=d+24|0;f[0]=(m[Ua+10|0]&255|0)/255;a[Pa>>2]=b[0];a[Pa+4>>2]=b[1]}}}}}ba=0}h=y;return ba}function cI(b){var c=m[b];if(98==c<<24>>24){return b}var i=b+1|0;if(0==(td(i,dI|0,4)|0)|119==c<<24>>24||0==(td(i,eI|0,4)|0)|108==c<<24>>24||0==(td(i,fI|0,8)|0)){return b}c=47==c<<24>>24;a:do{if(c){var d=Jc(i,47);if(0==(d|0)){d=i}else{if(47!=m[i]<<24>>24){d=0==(Df(mp|0,i,4)|0)?d+1|0:b}else{d=a[aj>>2];do{if(0!=(d|0)&&0!=m[d]<<24>>24&&0!=(Df(mp|0,d,3)|0)){d=gI(a[aj>>2],b+2|0);break a}}while(0);d=b+2|0}}}else{d=a[aj>>2],d=0==(d|0)?b:0==m[d]<<24>>24?b:0==(Df(mp|0,d,3)|0)?b:gI(a[aj>>2],b)}}while(0);return b=ZH(d)}function gI(b,c){var i=h,d=Ba(b)+Ba(c)|0;(d+3|0)<(a[Lu>>2]|0)?d=a[Al>>2]:(d=d+13|0,a[Lu>>2]=d,d=wb(a[Al>>2],d),a[Al>>2]=d);Ma(d,hI|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=c,j));d=a[Al>>2];h=i;return d}function iI(b){var c,i=h;h+=1112;var d=i+1024,f=i+1096,e=i+1100,l=i+1104,k=i+1108,n=a[bj>>2];0==(n|0)&&(n=Nc(Mu,a[Pn>>2]),a[bj>>2]=n);n=J[a[n>>2]](n,b,512);if(0!=(n|0)){return h=i,n}n=qi(b,cj|0);if(0==(n|0)){return la(0,jI|0,(j=h,h+=4,a[j>>2]=b,j)),h=i,0}c=i|0;for(var z=0,p=0;;){if(0==(oi(c,1024,n)|0)){var s=z,v=p;break}p=4==(Cd(c,Nu|0,(j=h,h+=16,a[j>>2]=f,a[j+4>>2]=e,a[j+8>>2]=l,a[j+12>>2]=k,j))|0)?1:p;z=37==m[c]<<24>>24?z:0==(un(c,kI|0)|0)?z:1;if(!(0==(p|0)|0==(z|0))){s=z;v=p;break}}0==(v|0)?(la(0,lI|0,(j=h,h+=4,a[j>>2]=b,j)),s=0):(v=Cb(64),c=v>>2,a[c+8]=a[f>>2],z=v+36|0,a[z>>2]=a[e>>2],a[c+10]=a[l>>2]-a[f>>2]|0,a[z>>2]=a[k>>2]-a[e>>2]|0,a[c+2]=b,b=a[Ou>>2],a[Ou>>2]=b+1|0,a[c+3]=b,kC(n,d),d=a[d+28>>2],b=Cb(d+1|0),a[c+13]=b,xg(n,0,0),lC(b,d,1,n),m[b+d|0]=0,d=a[bj>>2],J[a[d>>2]](d,v,1),m[v+16|0]=s&255,s=v);ri(n);h=i;return s}function np(b,c,i){var d=h,f,e=0!=(c|0);a:do{if(e){for(var l=1,k=0;;){if(0==l<<24>>24){break a}var n=a[c+(k<<2)>>2];if(0==(n|0)){f=280;break a}l=0==m[n]<<24>>24?0:l;k=k+1|0}}else{f=280}}while(0);a:do{if(280==f&&(n=a[i>>2],0!=(n|0))){l=b;for(k=i;;){if(y(l,n),y(l,wd|0),k=k+4|0,n=a[k>>2],0==(n|0)){break a}}}}while(0);if(e&&(f=a[c>>2],0!=(f|0))){for(i=0;;){do{if(0!=m[f]<<24>>24){if(l=Uk(f),0==(l|0)){la(0,mI|0,(j=h,h+=4,a[j>>2]=f,j))}else{if(e=qi(l,cj|0),0==(e|0)){la(0,nI|0,(j=h,h+=4,a[j>>2]=l,j))}else{l=$E(e);k=0==(l|0);a:do{if(!k){for(n=l;;){if(y(b,n),n=$E(e),0==(n|0)){break a}}}}while(0);y(b,wd|0);ri(e)}}}}while(0);i=i+1|0;f=a[c+(i<<2)>>2];if(0==(f|0)){break}}}h=d}function Pu(b,c){var i,d=a[c+52>>2];a:for(;;){var f=m[d];b:do{if(37==f<<24>>24){if(37!=m[d+1|0]<<24>>24){var e=d}else{f=d+2|0;do{if(0==(Df(f,oI|0,3)|0)){e=d}else{if(0==(Df(f,pI|0,5)|0)){e=d}else{if(0==(Df(f,qI|0,3)|0)){e=d}else{if(0==(Df(f,rI|0,7)|0)){e=d}else{e=d;break b}}}}}while(0);for(;;){var l=m[e];if(13==l<<24>>24){i=311;break}else{if(0==l<<24>>24||10==l<<24>>24){i=313;break}}e=e+1|0}do{if(311==i){if(i=0,d=e+1|0,10!=m[d]<<24>>24){var k=d}else{d=e+2|0;continue a}}else{313==i&&(i=0,k=e+1|0)}}while(0);d=0==l<<24>>24?e:k;continue a}}else{if(0==f<<24>>24){break a}else{e=d}}}while(0);for(;;){var h=m[e];if(0==h<<24>>24||10==h<<24>>24){i=319;break}else{if(13==h<<24>>24){i=317;break}}sI(b,h<<24>>24);e=e+1|0}if(319==i){var j=e+1|0;i=320}else{if(317==i){if(i=0,d=e+1|0,10!=m[d]<<24>>24){j=d,i=320}else{var p=e+2|0}}}320==i&&(i=0,p=0==h<<24>>24?e:j);sI(b,10);d=p}}function Qu(b,c){var i=h;if(0==(c|0)){var d;var f=b,e=0;b:for(;;){for(;;){var l=m[f];if(0==l<<24>>24){var k=e;d=246;break b}if(127>(l&255)){f=f+1|0}else{break}}if(-64==(l&-4)<<24>>24){f=f+2|0,e=1}else{k=2;d=245;break}}d=245==d||246==d?k:cc;1==(d|0)?d=bt(b):(2==(d|0)&&!m[Ru]&&(la(0,tI|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),m[Ru]=1),d=b)}else{d=bt(b)}0==(a[Mb>>2]|0)&&fc(Mb,0,0);e=a[Mb+4>>2];e>>>0>2]>>>0||(na(Mb,1),e=a[Mb+4>>2]);a[Mb+4>>2]=e+1|0;m[e]=40;for(e=d;;){l=m[e];if(40==l<<24>>24||41==l<<24>>24||92==l<<24>>24){l=a[Mb+4>>2],l>>>0>2]>>>0||(na(Mb,1),l=a[Mb+4>>2]),a[Mb+4>>2]=l+1|0,m[l]=92}else{if(0==l<<24>>24){break}}l=a[Mb+4>>2];l>>>0>2]>>>0||(na(Mb,1),l=a[Mb+4>>2]);k=m[e];a[Mb+4>>2]=l+1|0;m[l]=k;e=e+1|0}e=a[Mb+4>>2];e>>>0>2]>>>0||(na(Mb,1),e=a[Mb+4>>2]);a[Mb+4>>2]=e+1|0;m[e]=41;(d|0)!=(b|0)&&G(d);d=a[Mb+4>>2];if(d>>>0>2]>>>0){return m[d]=0,d=a[Mb>>2],a[Mb+4>>2]=d,h=i,d}na(Mb,1);d=a[Mb+4>>2];m[d]=0;d=a[Mb>>2];a[Mb+4>>2]=d;h=i;return d}function uI(c,d){var i,g,q,e,l=c>>2,k=h;h+=8;var n;e=k>>2;q=(c+44|0)>>2;a[q]=fa(96);var z=c|0,p=V(z,vI|0);if(0==(p|0)){var s=lk(wI|0);if(0!=(s|0)){var v=s;n=516}}else{v=p,n=516}if(516==n){var t=wb(a[op>>2],Ba(v)+12|0);a[op>>2]=t;for(var u=xI|0,w=t,A=u+12;u>2];if(0===B){Ea(va.i)}else{var B=Oe(B),C=B.indexOf("=");if(""===B||-1===B.indexOf("=")){Ea(va.i)}else{var P=B.slice(0,C),y=B.slice(C+1);if(!(P in Ee)||Ee[P]!==y){Ee[P]=y,mC(Ee)}}}}var D=m,F=c+151|0,M=h,X=Aa(c|0,$(a[c+32>>2]|0,yI|0),Su|0);if(0==(Lb(X,zI|0)|0)){var O=1}else{0==(Lb(X,AI|0)|0)?O=1:0==(Lb(X,BI|0)|0)?O=1:0==(Lb(X,CI|0)|0)?O=1:0==(Lb(X,DI|0)|0)?O=1:0==(Lb(X,EI|0)|0)?O=1:0==(Lb(X,FI|0)|0)?O=1:0==(Lb(X,GI|0)|0)?O=2:0==(Lb(X,HI|0)|0)?O=2:(0!=(Lb(X,Su|0)|0)&&0!=(Lb(X,II|0)|0)&&la(0,JI|0,(j=h,h+=4,a[j>>2]=X,j)),O=0)}h=M;D[F]=O&255;g=(c+32|0)>>2;var E=Xb(z,$(a[g]|0,KI|0),0,0),G=a[q]|0;f[0]=E;a[G>>2]=b[0];a[G+4>>2]=b[1];var ia=V(z,LI|0);do{if(0==(ia|0)){var J=0}else{var I=m[ia];if(76==I<<24>>24){if(0==(ka(ia,MI|0)|0)){J=1;break}}else{if(82==I<<24>>24){J=0==(ka(ia,NI|0)|0)?3:0;break}else{if(66==I<<24>>24){if(0==(ka(ia,OI|0)|0)){J=2;break}}else{J=0;break}}}J=0}}while(0);var H=J<<2;a[l+38]=0==d<<24>>24?H:H|J;var K=Xb(z,$(a[g]|0,PI|0),.25,.02);f[0]=K;a[e]=b[0];a[e+1]=b[1];var L=72*K;a[l+64]=(0>L?L-.5:L+.5)&-1;var N=jc(z,$(a[g]|0,QI|0),0);if(0==(N|0)){f[0]=.5;a[e]=b[0];a[e+1]=b[1];var Q=.5}else{if(0==(Cd(N,RI|0,(j=h,h+=4,a[j>>2]=k,j))|0)){f[0]=.5;a[e]=b[0];a[e+1]=b[1];var S=.5}else{var ca=(b[0]=a[e],b[1]=a[e+1],f[0]);.02>ca?(f[0]=.02,a[e]=b[0],a[e+1]=b[1],S=.02):S=ca}0!=(un(N,SI|0)|0)&&(m[c+284|0]=1);Q=S}var R=72*Q;a[l+65]=(0>R?R-.5:R+.5)&-1;m[c+249|0]=Zf(z,$(a[g]|0,pp|0),0)&255;a[l+63]=Ds(jc(z,$(a[g]|0,TI|0),0),Bl|0,UI|0);VI(c);var U=Tu(c,WI|0,a[q]+64|0);m[a[q]+80|0]=U;Tu(c,XI|0,a[q]+48|0);var W=jo(V(z,YI|0));m[a[q]+82|0]=W;var ja=V(z,ZI|0);if(0==(ja|0)){var aa=V(z,Uu|0);if(0!=(aa|0)){var da=m[aa];m[a[q]+81|0]=(108==da<<24>>24|76==da<<24>>24)&1}else{var ea=V(z,$I|0);if(0!=(ea|0)){var xa=re(ea);m[a[q]+81|0]=xa}}}else{var Y=90==(bh(ja)|0)&1;m[a[q]+81|0]=Y}var Z=Ds(V(z,aJ|0),Cl|0,bJ|0);a[Dl>>2]=Z;var ha=jo(V(z,cJ|0));m[Wi]=ha;a[Ah>>2]=0;var ga=a[q]+24|0;f[0]=0;a[ga>>2]=b[0];a[ga+4>>2]=b[1];var ba=V(z,dJ|0);if(0==(ba|0)){n=548}else{if(0==m[ba]<<24>>24){n=548}else{var Rb=ba;n=550}}if(548==n){var sa=V(z,eJ|0);0!=(sa|0)&&0!=m[sa]<<24>>24&&(Rb=sa,n=550)}if(550==n){var tb=wg(Rb,xc),ya=a[q]+24|0;f[0]=tb;a[ya>>2]=b[0];a[ya+4>>2]=b[1]}Vu(c);f[0]=1e+37;a[Wu>>2]=b[0];a[Wu+4>>2]=b[1];var ra=$(a[g]|0,Xu|0);a[Yu>>2]=ra;i=(c+40|0)>>2;var wa=$(a[a[i]>>2]|0,qp|0);a[sh>>2]=wa;var Ab=$(a[a[i]>>2]|0,rp|0);a[rh>>2]=Ab;var Fa=$(a[a[i]>>2]|0,fJ|0);a[Fs>>2]=Fa;var Ga=$(a[a[i]>>2]|0,kh|0);a[Eh>>2]=Ga;var qa=$(a[a[i]>>2]|0,Ak|0);a[gp>>2]=qa;var ta=$(a[a[i]>>2]|0,Rn|0);a[Ki>>2]=ta;var Ka=$(a[a[i]>>2]|0,sp|0);a[bo>>2]=Ka;var za=$(a[a[i]>>2]|0,tp|0);a[ao>>2]=za;var ma=$(a[a[i]>>2]|0,Eg|0);a[Js>>2]=ma;var pa=$(a[a[i]>>2]|0,dh|0);a[no>>2]=pa;var na=$(a[a[i]>>2]|0,Zu|0);a[Ks>>2]=na;var Ha=$(a[a[i]>>2]|0,pp|0);a[Ls>>2]=Ha;var Ra=$(a[a[i]>>2]|0,$n|0);a[iu>>2]=Ra;var oa=$(a[a[i]>>2]|0,Xu|0);a[El>>2]=oa;var Ma=$(a[a[i]>>2]|0,gJ|0);a[Tt>>2]=Ma;var La=$(a[a[i]>>2]|0,es|0);a[$o>>2]=La;var Qa=$(a[a[i]>>2]|0,hJ|0);a[St>>2]=Qa;var Ya=$(a[a[i]>>2]|0,Uu|0);a[Rt>>2]=Ya;var Cb=$(a[a[i]>>2]|0,iJ|0);a[Ut>>2]=Cb;var Za=$(a[a[i]>>2]|0,jJ|0);a[bp>>2]=Za;var Va=$(a[a[i]>>2]|0,pt|0);a[zu>>2]=Va;var ab=$(a[a[i]>>2]|0,kJ|0);a[cp>>2]=ab;var $a=$(a[a[i]>>2]|0,Qn|0);a[Un>>2]=$a;var jb=$(a[a[i]>>2]|0,lJ|0);a[Gh>>2]=jb;var Ca=$(a[a[i]>>2]|0,Nn|0);a[$r>>2]=Ca;var Ia=$(a[a[i]>>2]|0,mJ|0);a[up>>2]=Ia;var eb=$(a[a[i]>>2]|0,nJ|0);a[oJ>>2]=eb;var ub=$(a[a[i]+4>>2]|0,vp|0);a[Kg>>2]=ub;var Sa=$(a[a[i]+4>>2]|0,kh|0);a[go>>2]=Sa;var hb=$(a[a[i]+4>>2]|0,sp|0);a[Ts>>2]=hb;var ua=$(a[a[i]+4>>2]|0,tp|0);a[Us>>2]=ua;var Oa=$(a[a[i]+4>>2]|0,Eg|0);a[Vs>>2]=Oa;var Wa=$(a[a[i]+4>>2]|0,dh|0);a[Ms>>2]=Wa;var pb=$(a[a[i]+4>>2]|0,Zu|0);a[Ps>>2]=pb;var ob=$(a[a[i]+4>>2]|0,pJ|0);a[Os>>2]=ob;var bb=$(a[a[i]+4>>2]|0,qJ|0);a[Hr>>2]=bb;var qb=$(a[a[i]+4>>2]|0,rJ|0);a[Ir>>2]=qb;var Pa=$(a[a[i]+4>>2]|0,sJ|0);a[Jr>>2]=Pa;var kb=$(a[a[i]+4>>2]|0,ks|0);a[Zk>>2]=kb;var ib=$(a[a[i]+4>>2]|0,ls|0);a[$k>>2]=ib;var vb=$(a[a[i]+4>>2]|0,tJ|0);a[Ws>>2]=vb;var xb=$(a[a[i]+4>>2]|0,uJ|0);a[Xs>>2]=xb;var hd=$(a[a[i]+4>>2]|0,vJ|0);a[Ys>>2]=hd;var nb=$(a[a[i]+4>>2]|0,wJ|0);a[Gu>>2]=nb;var rb=$(a[a[i]+4>>2]|0,xJ|0);a[Fu>>2]=rb;var lb=$(a[a[i]+4>>2]|0,yJ|0);a[Hh>>2]=lb;var Ta=$(a[a[i]+4>>2]|0,pp|0);a[$u>>2]=Ta;var cb=$(a[a[i]+4>>2]|0,Rn|0);a[Vn>>2]=cb;var fb=$(a[a[i]+4>>2]|0,zJ|0);a[io>>2]=fb;var Ua=$(a[a[i]+4>>2]|0,AJ|0);a[uk>>2]=Ua;var sb=$(a[a[i]+4>>2]|0,BJ|0);a[dj>>2]=sb;var Na=$(a[a[i]+4>>2]|0,Qn|0);a[Tn>>2]=Na;var Fb=$(a[a[i]+4>>2]|0,Nn|0);a[bs>>2]=Fb;var Db=$(a[a[i]+4>>2]|0,CJ|0);a[Rs>>2]=Db;var Ob=$(a[a[i]+4>>2]|0,DJ|0);a[Ss>>2]=Ob;var Eb=$(a[a[i]+4>>2]|0,$n|0);a[hs>>2]=Eb;var db=RC(c);a[a[q]+88>>2]=db;var Bb=V(z,Pr|0);if(0!=(Bb|0)&&0!=m[Bb]<<24>>24){var Ja=ec(Bb,z);a[a[q]+92>>2]=Ja}h=k}function VI(c){var d=V(c|0,EJ|0);if(0!=(d|0)){var i=m[d];if(0!=i<<24>>24){var g=i<<24>>24;101==(g|0)?101==i<<24>>24&&0==(ka(d,FJ|0)|0)&&(a[a[c+44>>2]+84>>2]=5):99==(g|0)?99==i<<24>>24&&0==(ka(d,GJ|0)|0)&&(a[a[c+44>>2]+84>>2]=3):102==(g|0)?102==i<<24>>24&&0==(ka(d,HJ|0)|0)&&(a[a[c+44>>2]+84>>2]=2):97==(g|0)?97==i<<24>>24&&0==(ka(d,IJ|0)|0)&&(a[a[c+44>>2]+84>>2]=4):(d=wg(d,xc),0>2]+84>>2]=1,c=a[c>>2]+16|0,f[0]=d,a[c>>2]=b[0],a[c+4>>2]=b[1]))}}}function Tu(c,d,i){var g,q=h;h+=20;g=q>>2;var e=q+8,l=q+16;m[l]=0;c=V(c|0,d);if(0==(c|0)){return h=q,0}if(1<(Cd(c,JJ|0,(j=h,h+=12,a[j>>2]=q,a[j+4>>2]=e,a[j+8>>2]=l,j))|0)){if(d=(b[0]=a[g],b[1]=a[g+1],f[0]),0>2],b[1]=a[e+4>>2],f[0]),0g?g-.5:g+.5)&-1|0,a[c>>2]=b[0],a[c+4>>2]=b[1],g=72*e,i=i+8|0,f[0]=(0>g?g-.5:g+.5)&-1|0,a[i>>2]=b[0],a[i+4>>2]=b[1],l=33==m[l]<<24>>24&1,h=q,l}}m[l]=0;if(0>=(Cd(c,KJ|0,(j=h,h+=8,a[j>>2]=q,a[j+4>>2]=l,j))|0)){return h=q,0}g=(b[0]=a[g],b[1]=a[g+1],f[0]);if(0>=g){return h=q,0}g*=72;g=(0>g?g-.5:g+.5)&-1|0;e=i|0;f[0]=g;a[e>>2]=b[0];a[e+4>>2]=b[1];i=i+8|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];h=q;return 33==m[l]<<24>>24&1}function LJ(c){if(0!=(a[Ic>>2]|0)){var d=c+76|0,c=c+60|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);f[0]=d;a[Nb>>2]=b[0];a[Nb+4>>2]=b[1];f[0]=d/72;a[Ih>>2]=b[0];a[Ih+4>>2]=b[1]}}function Vu(c){var d,i=c|0,g=V(i,dh|0);if(0!=(g|0)&&0!=m[g]<<24>>24){d=(c+32|0)>>2;var q=a[d]+149|0;m[q]|=8;var e=0!=(bg(g)|0)?2:0,l=Xb(i,$(a[d]|0,sp|0),14,1),q=c+48|0;a[q>>2]=ag(i,g,e,l,Aa(i,$(a[d]|0,tp|0),Li|0),Aa(i,$(a[d]|0,Eg|0),Ac|0));g=V(i,Vt|0);e=0!=(g|0);g=(a[d]|0)==(c|0)?e&&116==m[g]<<24>>24?1:0:e&&98==m[g]<<24>>24?0:1;i=V(i,MJ|0);0==(i|0)?i=g:(i=m[i],i=108==i<<24>>24?g|2:114==i<<24>>24?g|4:g);m[c+283|0]=i;g=a[d];(g|0)!=(c|0)&&(q=a[q>>2],d=q+24|0,q=q+32|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+16,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])+8,i=0!=(i&1)<<24>>24,0==(a[g+152>>2]&1|0)?(i=i?2:0,g=(i<<4)+c+84|0,f[0]=d,a[g>>2]=b[0],a[g+4>>2]=b[1],c=(i<<4)+c+92|0,f[0]=q):(i=i?1:3,g=(i<<4)+c+84|0,f[0]=q,a[g>>2]=b[0],a[g+4>>2]=b[1],c=(i<<4)+c+92|0,f[0]=d),a[c>>2]=b[0],a[c+4>>2]=b[1])}}function xC(b){var c,i=b+44|0;c=(i|0)>>2;var d=a[c],f=a[d+88>>2];0!=(f|0)&&(IQa(f),d=a[c]);f=a[d+92>>2];0!=(f|0)&&(G(f),d=a[c]);G(d);a[c]=0;vh(a[b+48>>2]);b=i>>2;for(c=b+61;b>2]+a[b>>2]-a[ih>>2]-a[ih+4>>2]|0)>>>0)/60;h=b;return c}function av(c,d,i,g){var q,e,l;LJ(d);var k=d+68|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=d+76|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),c=c+348|0;Jh(i,NJ|0,(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]));Jh(i,gc|0,k/72);Jh(i,gc|0,n/72);Ge(10,i);c=ra(d);k=0==(c|0);a:do{if(!k){n=c;for(l=n>>2;;){if(0==m[n+134|0]<<24>>24){e=xd(a[l+3]);Me(i,OJ|0,e);e=n+32|0;var z=n+40|0;bv(i,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]));e=a[l+30];0==m[e+82|0]<<24>>24?(e=cv(a[e>>2]),z=n|0):(z=n|0,e=xd(mb(z,a[a[no>>2]+8>>2])));q=n+48|0;Jh(i,gc|0,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]));q=n+56|0;Jh(i,gc|0,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]));Me(i,gc|0,e);Me(i,gc|0,Aa(z,a[Ki>>2],wp|0));Me(i,gc|0,a[a[l+6]>>2]);Me(i,gc|0,Aa(z,a[Eh>>2],Ac|0));l=Aa(z,a[gp>>2],Y|0);Me(i,gc|0,0==m[l]<<24>>24?Aa(z,a[Eh>>2],qe|0):l);Ge(10,i)}n=ba(d,n);if(0==(n|0)){break a}else{l=n>>2}}}}while(0);c=ra(d);if(0!=(c|0)){for(g=0==g<<24>>24;;){k=Ib(d,c);n=0==(k|0);a:do{if(!n){l=k;for(e=l>>2;;){if(g){var z=Y|0,p=Y|0}else{q=a[e+1],0==(q|0)?(z=Y|0,p=Y|0):(z=a[q+4>>2],p=a[q+8>>2])}q=(l+24|0)>>2;var s=a[q],v=0==(s|0);b:do{if(!v){var t=a[s+4>>2],u=0<(t|0);c:do{if(u){for(var w=a[s>>2],A=0,B=0;;){if(A=a[(w+4>>2)+(12*B|0)]+A|0,B=B+1|0,(B|0)>=(t|0)){var C=A;break c}}}else{C=0}}while(0);Me(i,0,Dg|0);t=a[e+4];PJ(i,a[t+12>>2],m[t+134|0],z);t=a[e+3];PJ(i,a[t+12>>2],m[t+134|0],p);t=i;u=C;w=h;h+=1024;hb(gc|0,t);A=w|0;Ma(A,dv|0,(j=h,h+=4,a[j>>2]=u,j));hb(A,t);h=w;u=a[q];if(0<(a[u+4>>2]|0)){t=0;for(A=u;;){w=a[A>>2];u=a[(w>>2)+(12*t|0)];w=a[(w+4>>2)+(12*t|0)];if(0<(w|0)){for(A=0;;){var B=(A<<4)+u|0,P=(A<<4)+u+8|0;bv(i,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),(b[0]=a[P>>2],b[1]=a[P+4>>2],f[0]));A=A+1|0;if((A|0)==(w|0)){break}}u=a[q]}else{u=A}t=t+1|0;if((t|0)<(a[u+4>>2]|0)){A=u}else{break b}}}}}while(0);e=l+108|0;z=a[e>>2];0!=(z|0)&&(z=cv(a[z>>2]),Me(i,gc|0,z),z=a[e>>2],e=z+56|0,z=z+64|0,bv(i,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])));e=l|0;Me(i,gc|0,Aa(e,a[Vn>>2],wp|0));Me(i,gc|0,Aa(e,a[go>>2],Ac|0));Ge(10,i);l=yb(d,l);if(0==(l|0)){break a}else{e=l>>2}}}}while(0);c=ba(d,c);if(0==(c|0)){break}}}hb(QJ|0,i)}function Jh(c,d,i){var g=h;h+=1024;0!=(d|0)&&hb(d,c);d=g|0;Ma(d,xp|0,(j=h,h+=8,f[0]=i,a[j>>2]=b[0],a[j+4>>2]=b[1],j));hb(d,c);h=g}function Me(a,b,i){0!=(b|0)&&hb(b,a);hb(i,a)}function bv(c,d,i){Jh(c,gc|0,d/72);d=0==(a[Ic>>2]|0)?i:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i;Jh(c,gc|0,d/72)}function cv(a){var a=Dc(a),b=xd(a);dc(a);return b}function PJ(a,b,i,c){b=0==i<<24>>24?xd(b):cv(Jc(b,58)+1|0);Me(a,gc|0,b);0!=(c|0)&&0!=m[c]<<24>>24&&(c=xd(c),Me(a,zf|0,c))}function ev(c,d,i){var g,q,e,l,k,n,z,p,s,v,t=h;h+=2064;var u,w=t+2048;v=(c+206|0)>>1;var A=2<(D[v]&65535);Gg(1);LJ(c);fc(w,1024,t+1024|0);s=(c+40|0)>>2;ac(c,a[a[s]>>2]|0,ej|0,Y|0,212);ac(c,a[a[s]>>2]|0,fv|0,Y|0,212);var B=ac(c,a[a[s]>>2]|0,rp|0,Y|0,212);a[rh>>2]=B;var C=ac(c,a[a[s]>>2]|0,qp|0,Y|0,212);a[sh>>2]=C;ac(c,a[a[s]+4>>2]|0,ej|0,Y|0,286);var P=c+149|0,y=m[P];if(0==(y&16)<<24>>24){var gb=y}else{ac(c,a[a[s]>>2]|0,Fl|0,Y|0,212),gb=m[P]}if(0==(gb&1)<<24>>24){var F=gb}else{ac(c,a[a[s]+4>>2]|0,fj|0,Y|0,286),F=m[P]}if(0==(F&32)<<24>>24){var M=F}else{ac(c,a[a[s]+4>>2]|0,Fl|0,Y|0,286),M=m[P]}if(0==(M&2)<<24>>24){var X=M}else{ac(c,a[a[s]+4>>2]|0,gv|0,Y|0,286),X=m[P]}0!=(X&4)<<24>>24&&ac(c,a[a[s]+4>>2]|0,hv|0,Y|0,286);p=(c+48|0)>>2;var O=c|0;if(0!=(a[p]|0)){ac(c,O,fj|0,Y|0,202);ac(c,O,yp|0,Y|0,202);ac(c,O,zp|0,Y|0,202);var E=a[p];if(0!=m[a[E>>2]]<<24>>24){var G=E+56|0,ia=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]),J=E+64|0,I=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0]),H=t|0,K=0==(a[Ic>>2]|0)?I:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-I;Ma(H,Gf|0,(j=h,h+=16,f[0]=ia,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=K,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(O,fj|0,H);var L=a[p],N=L+24|0,Q=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=L+32|0,ca=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);Ma(H,Gl|0,(j=h,h+=8,f[0]=Q/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));yd(O,yp|0,H);Ma(H,Gl|0,(j=h,h+=8,f[0]=ca/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));yd(O,zp|0,H)}}var R=ac(c,O,iv|0,Y|0,202),U=ra(c),W=0==(U|0);a:do{if(W){var ja=0,aa=0}else{var da=t|0;z=(w+4|0)>>2;n=(w+8|0)>>2;k=(w|0)>>2;for(var ea=0,xa=0,Z=U;;){var $=Z,ha=Z+24|0;l=ha>>2;var ga=Z+32|0,la=ga,Rb=(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0]),sa=0!=(a[Ic>>2]|0);if(A){if(sa){var tb=ga+8|0,ya=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[tb>>2],b[1]=a[tb+4>>2],f[0])}else{var fa=ga+8|0,ya=(b[0]=a[fa>>2],b[1]=a[fa+4>>2],f[0])}var wa=ha+124|0,Ab=a[wa>>2]+16|0,Fa=72*(b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0]);Ma(da,RJ|0,(j=h,h+=24,f[0]=Rb,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=ya,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=Fa,a[j+16>>2]=b[0],a[j+20>>2]=b[1],j));db(w,da);var Ga=3<(D[v]&65535);b:do{if(Ga){for(var qa=3;;){var ta=(qa<<3)+a[wa>>2]|0;Ma(da,SJ|0,(j=h,h+=8,f[0]=72*(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));db(w,da);var Ka=qa+1|0;if((Ka|0)<(D[v]&65535|0)){qa=Ka}else{break b}}}}while(0);var za=a[z];if(za>>>0>>0){var ma=za}else{na(w,1),ma=a[z]}m[ma]=0;var pa=a[k];a[z]=pa;yd(Z|0,ej|0,pa)}else{if(sa){var oa=ga+8|0,Ha=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0])}else{var Ra=Z+40|0,Ha=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0])}Ma(da,Gf|0,(j=h,h+=16,f[0]=Rb,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Ha,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Z|0,ej|0,da)}var Ba=Z+96|0;Ma(da,xp|0,(j=h,h+=8,f[0]=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0])/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));var va=Z|0;qc(va,a[a[sh>>2]+8>>2],da);var La=Z+104|0,Aa=Z+112|0;Ma(da,xp|0,(j=h,h+=8,f[0]=((b[0]=a[La>>2],b[1]=a[La+4>>2],f[0])+(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0]))/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j));qc(va,a[a[rh>>2]+8>>2],da);var Ya=a[Z+124>>2];if(0!=(Ya|0)){var Ea=Ya+56|0,Za=(b[0]=a[Ea>>2],b[1]=a[Ea+4>>2],f[0]),Qa=Ya+64|0,ab=(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),$a=0==(a[Ic>>2]|0)?ab:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-ab;Ma(da,Gf|0,(j=h,h+=16,f[0]=Za,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=$a,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(va,Fl|0,da)}do{if(0==(ka(a[a[l]>>2],jv|0)|0)){kv($,a[l+1],w);var jb=w+4|0,Ca=a[jb>>2];Ca>>>0>a[w>>2]>>>0&&(a[jb>>2]=Ca-1|0);var Ia=a[z];if(Ia>>>0>>0){var eb=Ia}else{na(w,1),eb=a[z]}m[eb]=0;var ub=a[k];a[z]=ub;yd(va,fv|0,ub)}else{var Sa;if(Sa=0!=(a[up>>2]|0)){var Cb;var ua=a[$+24>>2];if(0==(ua|0)){var Oa=0,Wa=Oa&1}else{Oa=270==(a[a[ua+4>>2]>>2]|0),Wa=Oa&1}Cb=Wa;Sa=0!=Cb<<24>>24}if(Sa){var pb=a[l+1],ob=pb+8|0,bb=a[ob>>2];if(3>(bb|0)){var qb=V(va,us|0),wb=0==(qb|0)?8:bh(qb),kb=3>(wb|0)?8:wb;if(0<(kb|0)){var Va=kb;u=763}}else{Va=bb,u=763}b:do{if(763==u){u=0;var vb=pb+40|0,xb=ha+24|0,hd=Va|0;e=(ha+32|0)>>2;for(var nb=0;;){if(0<(nb|0)){var rb=a[z];if(rb>>>0>>0){var lb=rb}else{na(w,1),lb=a[z]}a[z]=lb+1|0;m[lb]=32}if(2<(a[ob>>2]|0)){var Ta=a[vb>>2],cb=(nb<<4)+Ta|0,fb=(b[0]=a[cb>>2],b[1]=a[cb+4>>2],f[0])/72;if(0==(a[Ic>>2]|0)){var Ua=(nb<<4)+Ta+8|0,sb=(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0])/72}else{var Na=(nb<<4)+Ta+8|0,sb=(b[0]=a[Ih>>2],b[1]=a[Ih+4>>2],f[0])-(b[0]=a[Na>>2],b[1]=a[Na+4>>2],f[0])/72}Ma(da,lv|0,(j=h,h+=16,f[0]=fb,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=sb,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}else{var Fb=6.283185307179586*((nb|0)/hd),Db=.5*(b[0]=a[xb>>2],b[1]=a[xb+4>>2],f[0])*se(Fb),Ob=0==(a[Ic>>2]|0)?.5*(b[0]=a[e],b[1]=a[e+1],f[0])*Ce(Fb):(b[0]=a[Ih>>2],b[1]=a[Ih+4>>2],f[0])-.5*(b[0]=a[e],b[1]=a[e+1],f[0])*Ce(Fb);Ma(da,lv|0,(j=h,h+=16,f[0]=Db,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Ob,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}db(w,da);var Eb=nb+1|0;if((Eb|0)==(Va|0)){break b}else{nb=Eb}}}}while(0);var hb=a[a[up>>2]+8>>2],Bb=a[z];if(Bb>>>0>>0){var Ja=Bb}else{na(w,1),Ja=a[z]}m[Ja]=0;var Pa=a[k];a[z]=Pa;qc(va,hb,Pa)}}}while(0);var ib=0<(a[Ah>>2]|0);b:do{if(ib){var Gb=Ib(c,Z);if(0==(Gb|0)){var mb=xa,Jb=ea}else{var Hb=ea,ic=xa,Kb=Gb;for(q=Kb>>2;;){do{if(6==m[Kb+124|0]<<24>>24){var Lb=ic,Mb=Hb}else{g=(Kb+24|0)>>2;var Pb=a[g];if(0==(Pb|0)){Lb=ic,Mb=Hb}else{var Tb=0<(a[Pb+4>>2]|0);c:do{if(Tb){for(var pc=0,Wc=Hb,Vb=ic,Wb=Pb;;){if(0<(pc|0)){var Yb=a[z];if(Yb>>>0>>0){var $b=Yb}else{na(w,1),$b=a[z]}a[z]=$b+1|0;m[$b]=59;var Zb=a[g]}else{Zb=Wb}var Sb=a[Zb>>2];if(0==(a[(Sb+8>>2)+(12*pc|0)]|0)){var kc=Wc,lc=Zb,ec=Sb}else{var Jd=Sb+48*pc+16|0,nc=(b[0]=a[Jd>>2],b[1]=a[Jd+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var Hc=Sb+48*pc+24|0,mc=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0])}else{var oe=Sb+48*pc+24|0,mc=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[oe>>2],b[1]=a[oe+4>>2],f[0])}Ma(da,TJ|0,(j=h,h+=16,f[0]=nc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=mc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));db(w,da);var bc=a[g],kc=1,lc=bc,ec=a[bc>>2]}if(0==(a[(ec+12>>2)+(12*pc|0)]|0)){var Qb=Vb,tc=lc,Sc=ec}else{var Xb=ec+48*pc+32|0,rc=(b[0]=a[Xb>>2],b[1]=a[Xb+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var dc=ec+48*pc+40|0,rd=(b[0]=a[dc>>2],b[1]=a[dc+4>>2],f[0])}else{var oc=ec+48*pc+40|0,rd=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-(b[0]=a[oc>>2],b[1]=a[oc+4>>2],f[0])}Ma(da,UJ|0,(j=h,h+=16,f[0]=rc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=rd,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));db(w,da);var jc=a[g],Qb=1,tc=jc,Sc=a[jc>>2]}var Ac=0<(a[(Sc+4>>2)+(12*pc|0)]|0);d:do{if(Ac){for(var gc=0,Rd=tc;;){if(0<(gc|0)){var Bc=a[z];if(Bc>>>0>>0){var Sd=Bc}else{na(w,1),Sd=a[z]}a[z]=Sd+1|0;m[Sd]=32;var fd=a[g]}else{fd=Rd}var Cc=a[(a[fd>>2]>>2)+(12*pc|0)],yc=(gc<<4)+Cc|0,Kc=(b[0]=a[yc>>2],b[1]=a[yc+4>>2],f[0]),vc=(gc<<4)+Cc+8|0,Tc=(b[0]=a[vc>>2],b[1]=a[vc+4>>2],f[0]),Dc=0==(a[Ic>>2]|0)?Tc:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-Tc;Ma(da,Gf|0,(j=h,h+=16,f[0]=Kc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Dc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));db(w,da);var Mc=gc+1|0,id=a[g];if((Mc|0)<(a[(a[id>>2]+4>>2)+(12*pc|0)]|0)){gc=Mc,Rd=id}else{var Ec=id;break d}}}else{Ec=tc}}while(0);var zc=pc+1|0;if((zc|0)<(a[Ec+4>>2]|0)){pc=zc,Wc=kc,Vb=Qb,Wb=Ec}else{var Gc=kc,Nc=Qb;break c}}}else{Gc=Hb,Nc=ic}}while(0);var Fc=Kb|0,Qc=a[z];if(Qc>>>0>>0){var Yc=Qc}else{na(w,1),Yc=a[z]}m[Yc]=0;var Rc=a[k];a[z]=Rc;yd(Fc,ej|0,Rc);var Td=a[q+27];if(0!=(Td|0)){var Lc=Td+56|0,Oc=(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0]),fe=Td+64|0,Pc=(b[0]=a[fe>>2],b[1]=a[fe+4>>2],f[0]),Zc=0==(a[Ic>>2]|0)?Pc:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-Pc;Ma(da,Gf|0,(j=h,h+=16,f[0]=Oc,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Zc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,fj|0,da)}var jd=a[q+30];if(0!=(jd|0)){var md=jd+56|0,je=(b[0]=a[md>>2],b[1]=a[md+4>>2],f[0]),Jc=jd+64|0,ad=(b[0]=a[Jc>>2],b[1]=a[Jc+4>>2],f[0]),Uc=0==(a[Ic>>2]|0)?ad:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-ad;Ma(da,Gf|0,(j=h,h+=16,f[0]=je,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=Uc,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,Fl|0,da)}var Xc=a[q+28];if(0!=(Xc|0)){var Vc=Xc+56|0,cd=(b[0]=a[Vc>>2],b[1]=a[Vc+4>>2],f[0]),$c=Xc+64|0,ld=(b[0]=a[$c>>2],b[1]=a[$c+4>>2],f[0]),kd=0==(a[Ic>>2]|0)?ld:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-ld;Ma(da,Gf|0,(j=h,h+=16,f[0]=cd,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=kd,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,gv|0,da)}var bd=a[q+29];if(0!=(bd|0)){var ed=bd+56|0,qd=(b[0]=a[ed>>2],b[1]=a[ed+4>>2],f[0]),pd=bd+64|0,dd=(b[0]=a[pd>>2],b[1]=a[pd+4>>2],f[0]),nd=0==(a[Ic>>2]|0)?dd:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-dd;Ma(da,Gf|0,(j=h,h+=16,f[0]=qd,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=nd,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));yd(Fc,hv|0,da)}Lb=Nc;Mb=Gc}}}while(0);var zd=yb(c,Kb);if(0==(zd|0)){mb=Lb;Jb=Mb;break b}else{Hb=Mb,ic=Lb,Kb=zd,q=Kb>>2}}}}else{mb=xa,Jb=ea}}while(0);var od=ba(c,Z);if(0==(od|0)){ja=Jb;aa=mb;break a}else{ea=Jb,xa=mb,Z=od}}}}while(0);mv(c,R);uc(w);0!=(D[c+164>>1]&1)<<16>>16&&oF(c);a[d>>2]=ja;a[i>>2]=aa;Gg(0);h=t}function kv(c,d,i){var g,q=h;h+=1024;g=(d+48|0)>>2;var e=a[g];if(0==(e|0)){var e=q|0,l=d+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=c+32|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var n=d+24|0,m=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=c+40|0,p=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=d+40|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+p,m=m+p}else{var m=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),n=d+24|0,p=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=c+40|0,s=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=d+40|0,n=m-((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+s),m=m-(p+s)}p=d+32|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])+k;Ma(e,VJ|0,(j=h,h+=32,f[0]=l+k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=m,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=p,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=n,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j));db(i,e);e=a[g]}if(0<(e|0)){d=d+56|0;for(e=0;!(kv(c,a[a[d>>2]+(e<<2)>>2],i),e=e+1|0,(e|0)>=(a[g]|0));){}}h=q}function mv(c,d){var i=h;h+=1024;var g=i|0,q=c+52|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);if(0==(a[Ic>>2]|0)){var e=c+60|0,l=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=c+76|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])}else{var e=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),l=c+60|0,l=e-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=c+76|0,e=e-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])}k=c+68|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);Ma(g,WJ|0,(j=h,h+=32,f[0]=q,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=k,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=e,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j));q=c|0;qc(q,a[d+8>>2],g);e=c+48|0;k=a[e>>2];0!=(k|0)&&0!=m[a[k>>2]]<<24>>24&&(l=k+56|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=k+64|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=0==(a[Ic>>2]|0)?k:(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-k,Ma(g,Gf|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),yd(q,fj|0,g),l=a[e>>2],e=l+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=l+32|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),Ma(g,Gl|0,(j=h,h+=8,f[0]=e/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),yd(q,yp|0,g),Ma(g,Gl|0,(j=h,h+=8,f[0]=l/72,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),yd(q,zp|0,g));g=c+208|0;if(1<=(a[g>>2]|0)){q=c+212|0;for(e=1;!(mv(a[a[q>>2]+(e<<2)>>2],d),e=e+1|0,(e|0)>(a[g>>2]|0));){}}h=i}function Ap(c,d,i){var g=h;h+=1024;var q=g|0;if(0==(a[Ic>>2]|0)){var e=i,l=0}else{e=(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i,l=1}i=0>e?(l?(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i:i)-.5:(l?(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0])-i:i)+.5;Ma(q,Hl|0,(j=h,h+=8,a[j>>2]=(0>d?d-.5:d+.5)&-1,a[j+4>>2]=i&-1,j));db(c,q);h=g}function An(c,d,i){var g=h;h+=256;if(999==(XJ(c,i)|0)){return d=nv(c,1,i),la(1,ov|0,(j=h,h+=8,a[j>>2]=i,a[j+4>>2]=d,j)),h=g,-1}YJ(c,d);var i=g|0,q=d+52|0;if(0==m[a[d+44>>2]+81|0]<<24>>24){var c=q|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),q=d+60|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),e=d+68|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=d+76|0}else{c=d+60|0,c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),q|=0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),e=d+76|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),l=d+68|0}l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);Ma(i,ZJ|0,(j=h,h+=16,a[j>>2]=(0>c?c-.5:c+.5)&-1,a[j+4>>2]=(0>q?q-.5:q+.5)&-1,a[j+8>>2]=(0>e?e-.5:e+.5)&-1,a[j+12>>2]=(0>l?l-.5:l+.5)&-1,j));$J(d|0,iv|0,i,Y|0);h=g;return 0}function xr(b,c){var i;i=a[c>>2];var d,f=Cb(12);d=f>>2;a[d+1]=0;a[d+2]=Hb(i);i=b+100|0;a[d]=a[i>>2];a[i>>2]=f;d=a[c+4>>2];i=a[d+4>>2];if(0!=(i|0)){var e=i;for(i=e>>2;;){var l=a[i+1],k=0==(l|0);a:do{if(!k){for(var h=d|0,j=0,p=l;;){if(aK(b,a[h>>2],p,a[i+(5*j|0)+2],f,e+20*j|0),j=j+1|0,p=a[i+(5*j|0)+1],0==(p|0)){break a}}}}while(0);i=a[d+12>>2];if(0==(i|0)){break}else{d=d+8|0,e=i,i=e>>2}}}}function OD(b){var c,i=b>>2,d=h,f=a[i+19],e=a[i];if(0==(f|0)){c=994}else{if(f=a[f>>2],0==(f|0)){c=994}else{J[f](b)}}if(994==c&&0==(a[i+10]|0)&&(c=(b+36|0)>>2,0==(a[c]|0))){if(0!=m[e+13|0]<<24>>24&&bK(b),b=b+32|0,e=a[b>>2],0==(e|0)){a[c]=a[zg>>2]}else{if(e=qi(e,au|0),a[c]=e,0==(e|0)){return i=a[a[i+3]+16>>2],b=a[b>>2],c=si(a[Ea.c>>2]),J[i](cK|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=c,j)),h=d,1}}}if(0==(a[i+37]&1024|0)){return h=d,0}J[a[a[i+3]+16>>2]](pv|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));h=d;return 1}function Bp(b,c){if(-1e15>c){a[b>>2]=19;var i=qv|0;return i}if(1e15>2]=18,i=qv+1|0}var i=100*c,d=(0>i?i-.5:i+.5)&-1;if(0==(d|0)){return a[b>>2]=1,i=vd|0}for(var i=0>(d|0),f=0,d=i?-d|0:d,e=rv+20|0,l=2;;){var k=(d|0)%10,h=(d|0)/10&-1;0==(k|0)&0==f<<24>>24?k=e:(f=e-1|0,m[f]=(k|48)&255,k=f,f=1);1==(l|0)&&(0!=f<<24>>24&&(k=k-1|0,m[k]=46),f=1);l=l-1|0;if(18<(d+9|0)>>>0|0<(l|0)){d=h,e=k}else{break}}i?(i=k-1|0,m[i]=45):i=k;a[b>>2]=rv+20-i|0;return i}function bK(b){var c=h;h+=100;var i=a[b+24>>2],d=c|0;0==(i|0)?m[d]=0:Ma(d,dK|0,(j=h,h+=4,a[j>>2]=i+1|0,j));var i=a[b+20>>2],f=0==(i|0)?eK|0:i,i=b+52|0,e=Ba(f)+Ba(d)+Ba(a[i>>2])+1|0;a[sv>>2]>>>0<(e+1|0)>>>0?(e=e+11|0,a[sv>>2]=e,e=mc(a[ig>>2],e),a[ig>>2]=e):e=a[ig>>2];Rf(e,f);uf(a[ig>>2],d);d=a[ig>>2];d=d+Ba(d)|0;Pb=46;m[d]=Pb&255;Pb>>=8;m[d+1]=Pb&255;d=Hb(a[i>>2]);i=ik(d,58);f=a[ig>>2];if(0==(i|0)){var l;uf(f,d)}else{for(;;){if(uf(f,i+1|0),f=a[ig>>2],e=f+Ba(f)|0,Pb=46,m[e]=Pb&255,Pb>>=8,m[e+1]=Pb&255,m[i]=0,i=ik(d,58),0==(i|0)){l=f;break}}uf(l,d)}G(d);l=a[ig>>2];b=b+32|0;a[b>>2]=l;h=c}function y(a,b){jg(a,b,Ba(b))}function sI(a,b){var i=h;h+=4;m[i]=b&255;jg(a,i,1);h=i}function iD(b){var c=a[b+36>>2];if(0!=(c|0)&&0==m[b+140|0]<<24>>24&&0==(a[a[b>>2]+116>>2]|0)){b=(function(a){Q.a[a]&&Q.a[a].object.l&&(Q.a[a].aa||Q.a[a].object.l(xc))});try{if(0===c){for(c=0;c>2]=arguments[N.length];var f=i|0;jg(b,f,JQa(f,c,a[d>>2]));h=i}function gj(b,c){var i=h;h+=4;jg(b,Bp(i,c),a[i>>2]);h=i}function Hd(b,c,i){var d=h;h+=4;jg(b,Bp(d,c),a[d>>2]);jg(b,gc|0,1);jg(b,Bp(d,i),a[d>>2]);h=d}function kf(c,d,i){var g=d|0,q=d+8|0;Hd(c,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]));if(1<(i|0)){for(g=1;;){jg(c,gc|0,1);var q=(g<<4)+d|0,e=(g<<4)+d+8|0;Hd(c,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]));g=g+1|0;if((g|0)==(i|0)){break}}}}function XJ(b,c){var i;i=eh(b,1,c);if(0==(i|0)){return 999}i=a[i+16>>2]>>2;a[b+156>>2]=a[i+1];a[b+144>>2]=a[i+3];a[b+148>>2]=a[i];a[b+152>>2]=a[i+4];return 300}function YJ(b,c){var i=h;a[c+172>>2]=b;var d=c+32|0,f=a[d>>2];(f|0)!=(c|0)&&(a[f+172>>2]=b);f=V(c|0,tv|0);if(0!=(f|0)&&999==(XJ(b,f)|0)){return d=nv(b,1,f),la(1,ov|0,(j=h,h+=8,a[j>>2]=f,a[j+4>>2]=d,j)),h=i,-1}f=a[b+144>>2];if(0==(f|0)){return h=i,-1}Gg(1);uI(c,a[a[b+152>>2]>>2]&1);a[a[d>>2]+44>>2]=a[c+44>>2];d=a[f>>2];0!=(d|0)&&(J[d](c),d=a[f+4>>2],0!=(d|0)&&(a[c+176>>2]=d));Gg(0);h=i;return 0}function jg(b,c,i){var d=h;if(0==(i|0)|0==(c|0)){return h=d,0}0!=(a[b+148>>2]&1024|0)&&(J[a[a[b+12>>2]+16>>2]](pv|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe());if((fK(b,c,i)|0)==(i|0)){return h=d,i}J[a[a[b+12>>2]+16>>2]](gK|0,(j=h,h+=4,a[j>>2]=i,j));Pe()}function fK(b,c,i){var d,f,e=h;d=a[a[b>>2]+116>>2];if(0!=(d|0)){return i=J[d](b,c,i),h=e,i}f=(b+40|0)>>2;var l=a[f];if(0==(l|0)){return i=Lc(c,1,i,a[b+36>>2]),h=e,i}var k=b+44|0;d=(b+48|0)>>2;var n=a[d];if((a[k>>2]-1-n|0)>>>0>>0){if(n=n+(i+4096)&-4096,a[k>>2]=n,l=mc(l,n),a[f]=l,0==(l|0)){J[a[a[b+12>>2]+16>>2]](hK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()}else{var z=l,p=a[d]}}else{z=l,p=n}tf(z+p|0,c,i);b=a[d]+i|0;a[d]=b;m[a[f]+b|0]=0;h=e;return i}function iK(b){var c=h,i=a[b+76>>2];0!=(a[b+148>>2]&1024|0)&&(J[a[a[b+12>>2]+16>>2]](jK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe());if(0!=(i|0)&&(i=a[i+8>>2],0!=(i|0))){J[i](b);h=c;return}iD(b);i=b+32|0;if(0!=(a[i>>2]|0)){var d=b+36|0,f=a[d>>2];(f|0)!=(a[zg>>2]|0)&&0==m[b+140|0]<<24>>24&&(0!=(f|0)&&(ri(f),a[d>>2]=0),a[i>>2]=0)}h=c}function kK(c,d,i,g){var q,e;q=c>>2;if(3==(d|0)){uv(c,i,g),m[c+530|0]=1,m[c+533|0]=3,m[c+529|0]=1}else{if(2==(d|0)){m[c+530|0]=1,m[c+533|0]=2,m[c+529|0]=1}else{if(4==(d|0)){m[c+528|0]=0;if(0==(a[q+89]|0)){var l=.10000000000000009*(i-.5*(a[q+110]>>>0)),d=c+348|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),k=c+512|0;e=(c+332|0)>>2;l=l/(d*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0]);f[0]=l;a[e]=b[0];a[e+1]=b[1];l=c+520|0;e=(c+340|0)>>2;q=.10000000000000009*(g-.5*(a[q+111]>>>0))/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0])}else{e=.10000000000000009*(g-.5*(a[q+111]>>>0)),d=c+348|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=c+520|0,l=e/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),e=(c+332|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])-l,f[0]=l,a[e]=b[0],a[e+1]=b[1],l=c+512|0,e=(c+340|0)>>2,q=.10000000000000009*(i-.5*(a[q+110]>>>0))/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0])}f[0]=q;a[e]=b[0];a[e+1]=b[1];q=d;d=c+348|0;f[0]=1.1*q;a[d>>2]=b[0];a[d+4>>2]=b[1];m[c+529|0]=1}else{5==(d|0)?(m[c+528|0]=0,e=(c+348|0)>>2,d=(b[0]=a[e],b[1]=a[e+1],f[0])/1.1,f[0]=d,a[e]=b[0],a[e+1]=b[1],0==(a[q+89]|0)?(e=c+512|0,l=.10000000000000009*(i-.5*(a[q+110]>>>0))/(d*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])),e=(c+332|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])-l,f[0]=l,a[e]=b[0],a[e+1]=b[1],e=c+520|0,d=.10000000000000009*(g-.5*(a[q+111]>>>0))/(d*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))):(l=c+520|0,e=(c+332|0)>>2,l=.10000000000000009*(g-.5*(a[q+111]>>>0))/(d*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]))+(b[0]=a[e],b[1]=a[e+1],f[0]),f[0]=l,a[e]=b[0],a[e+1]=b[1],e=c+512|0,d=.10000000000000009*(i-.5*(a[q+110]>>>0))/(d*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))),q=(c+340|0)>>2,d=(b[0]=a[q],b[1]=a[q+1],f[0])-d,f[0]=d,a[q]=b[0],a[q+1]=b[1],m[c+529|0]=1):1==(d|0)&&(uv(c,i,g),lK(c),m[c+530|0]=1,m[c+533|0]=1,m[c+529|0]=1)}}}q=c+552|0;f[0]=i;a[q>>2]=b[0];a[q+4>>2]=b[1];c=c+560|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function mK(c,d,i){var g,q,e,l,k;k=(c+552|0)>>2;l=c+512|0;e=(d-(b[0]=a[k],b[1]=a[k+1],f[0]))/(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);l=(c+560|0)>>2;g=c+520|0;g=(i-(b[0]=a[l],b[1]=a[l+1],f[0]))/(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var h=e&-1;if(1>((-1<(h|0)?h:-h|0)|0)){if(h=g&-1,1>((-1<(h|0)?h:-h|0)|0)){return}}h=m[c+533|0]&255;0==(h|0)?uv(c,d,i):2==(h|0)&&(q=0==(a[c+356>>2]|0),h=c+348|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),q?(q=(c+332|0)>>2,e=(b[0]=a[q],b[1]=a[q+1],f[0])-e/h,f[0]=e,a[q]=b[0],a[q+1]=b[1],e=(c+340|0)>>2,g=(b[0]=a[e],b[1]=a[e+1],f[0])-g/h,f[0]=g,a[e]=b[0],a[e+1]=b[1]):(q=(c+332|0)>>2,g=(b[0]=a[q],b[1]=a[q+1],f[0])-g/h,f[0]=g,a[q]=b[0],a[q+1]=b[1],g=(c+340|0)>>2,e=(b[0]=a[g],b[1]=a[g+1],f[0])+e/h,f[0]=e,a[g]=b[0],a[g+1]=b[1]),m[c+529|0]=1);f[0]=d;a[k]=b[0];a[k+1]=b[1];f[0]=i;a[l]=b[0];a[l+1]=b[1]}function nK(b,c,i){var d=a[b>>2];if(0==(c|0)){c=xn(oK|0,1);a[b+32>>2]=pK|0;var f=c}else{c=qi(c,cj|0);if(0==(c|0)){return}vC(c);zr();f=a[qa+16>>2];ri(c)}if(0!=(f|0)){var c=(d+128|0)>>2,e=a[c];if(0!=(e|0)){var l=a[d+144>>2];0!=(l|0)&&(l=a[l+4>>2],0!=(l|0)&&(J[l](e),e=a[c]));xC(e);Sf(a[c])}a[c]=f;a[f+172>>2]=d;An(d,f,i);a[b+572>>2]=0;a[b+568>>2]=0;m[b+529|0]=1}}function uv(c,d,i){var g=h;h+=48;var q=g+32,e;e=0==(a[c+356>>2]|0);var l=c+348|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(e){e=c+512|0;var k=c+496|0,d=d/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);e=c+520|0;k=c+504|0;l=i/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);e=(q|0)>>2;f[0]=d}else{e=c+520|0,k=c+496|0,i=i/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=c+512|0,k=c+504|0,l=-d/(l*(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=(q|0)>>2,f[0]=i}a[e]=b[0];a[e+1]=b[1];d=q+8|0;d>>=2;f[0]=l;a[d]=b[0];a[d+1]=b[1];l=q|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);q=q+8|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);d=c+348|0;d=1/(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);i=g+16|0;f[0]=l+d;a[i>>2]=b[0];a[i+4>>2]=b[1];i=g+24|0;f[0]=q+d;a[i>>2]=b[0];a[i+4>>2]=b[1];i=g|0;f[0]=l-d;a[i>>2]=b[0];a[i+4>>2]=b[1];l=g+8|0;f[0]=q-d;a[l>>2]=b[0];a[l+4>>2]=b[1];var n,q=a[a[c>>2]+128>>2],d=h,i=g>>2,l=h;h+=32;a[l>>2]=a[i];a[l+4>>2]=a[i+1];a[l+8>>2]=a[i+2];a[l+12>>2]=a[i+3];a[l+16>>2]=a[i+4];a[l+20>>2]=a[i+5];a[l+24>>2]=a[i+6];a[l+28>>2]=a[i+7];i=ra(q);a:for(;;){if(0==(i|0)){n=1222;break}for(var j=Ib(q,i);0!=(j|0);){b:{var p=j;e=l;var s=cc,k=h,s=e>>2;e=h;h+=32;a[e>>2]=a[s];a[e+4>>2]=a[s+1];a[e+8>>2]=a[s+2];a[e+12>>2]=a[s+3];a[e+16>>2]=a[s+4];a[e+20>>2]=a[s+5];a[e+24>>2]=a[s+6];a[e+28>>2]=a[s+7];var v=a[p+24>>2],s=0==(v|0);c:do{if(!s&&0!=(GQa(v+8|0,e)|0)){for(var s=v+4|0,v=v|0,t=0;;){if((t|0)>=(a[s>>2]|0)){break c}if(0==rF(a[v>>2]+48*t|0,e)<<24>>24){t=t+1|0}else{var u=1;break}}h=k;e=u;break b}}while(0);u=a[p+108>>2];u=0!=(u|0)&&0!=as(u,e)<<24>>24?1:0;h=k;e=u}if(0!=e<<24>>24){n=1219;break a}j=yb(q,j)}i=ba(q,i)}do{if(1222==n){var w;w=a[q+20>>2];for(w=J[a[w>>2]](w,0,256);0!=(w|0);){if(0!=qF(w,l)<<24>>24){n=1225;break}u=a[q+20>>2];w=J[a[u>>2]](u,w|0,16)}1225==n?w|=0:(w=qK(q,l),w=0==(w|0)?q|0:w|0)}else{1219==n&&(w=j|0)}}while(0);h=d;n=w;j=c+568|0;(n|0)!=(a[j>>2]|0)&&(w=a[c+568>>2],0!=(w|0)&&(u=a[w>>2]<<28>>28,1==(u|0)?(w=w+133|0,m[w]&=-2):2==(u|0)?(w=w+127|0,m[w]&=-2):3==(u|0)&&(w=w+148|0,m[w]&=-2)),a[c+576>>2]=0,a[j>>2]=n,rK(c),m[c+529|0]=1);h=g}function rK(b){var c,i;i=(b+576|0)>>2;c=a[i];0!=(c|0)&&(G(c),a[i]=0);b=a[b+568>>2];c=b>>2;if(0!=(b|0)){var d=a[c]<<28>>28;2==(d|0)?(d=b+127|0,m[d]|=1,c=$(a[a[a[a[c+3]+20>>2]+40>>2]+4>>2]|0,Pi|0),0!=(c|0)&&(a[i]=ec(mb(b,a[c+8>>2]),b))):1==(d|0)?(d=b+133|0,m[d]|=1,c=$(a[a[a[c+5]+40>>2]>>2]|0,Pi|0),0!=(c|0)&&(a[i]=ec(mb(b,a[c+8>>2]),b))):3==(d|0)&&(d=b+148|0,m[d]|=1,c=$(a[c+8]|0,Pi|0),0!=(c|0)&&(a[i]=ec(mb(b,a[c+8>>2]),b)))}}function qK(c,d){var i,g=h;i=d>>2;d=h;h+=32;a[d>>2]=a[i];a[d+4>>2]=a[i+1];a[d+8>>2]=a[i+2];a[d+12>>2]=a[i+3];a[d+16>>2]=a[i+4];a[d+20>>2]=a[i+5];a[d+24>>2]=a[i+6];a[d+28>>2]=a[i+7];var q;i=a[c+208>>2];for(var e=c+212|0,l=1;(l|0)<=(i|0);){var k=qK(a[a[e>>2]+(l<<2)>>2],d);if(0==(k|0)){l=l+1|0}else{var n=k;q=1259;break}}if(1259==q){return h=g,n}q=c+52|0;i=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);q=c+60|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);n=c+76|0;n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);e=d+16|0;if((b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])>=i){if(i=c+68|0,e=d|0,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){if(i=d+24|0,(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=q){if(q=d+8|0,n>=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])){return h=g,c}}}}h=g;return 0}function lK(b){var c=b+572|0,i=a[c>>2];if(0!=(i|0)){var d=a[i>>2]<<28>>28;1==(d|0)?(i=i+133|0,m[i]=m[i]&-7|4):2==(d|0)?(i=i+127|0,m[i]=m[i]&-7|4):3==(d|0)&&(i=i+148|0,m[i]=m[i]&-7|4)}i=b+580|0;d=a[i>>2];0!=(d|0)&&(G(d),a[i>>2]=0);i=a[b+568>>2];a[c>>2]=i;0!=(i|0)&&(c=a[i>>2]<<28>>28,3==(c|0)?(c=i+148|0,m[c]|=2,vv(b,i)):2==(c|0)?(c=i+127|0,m[c]|=2,sK(b,i)):1==(c|0)&&(c=i+133|0,m[c]|=2,tK(b,i)))}function vv(b,c){var i,d;i=b+584|0;d=(c+32|0)>>2;(a[d]|0)==(c|0)?0==(a[c>>2]&16|0)?Fc(i,0,Yf|0):Fc(i,0,wv|0):Fc(i,0,uK|0);Fc(i,1,a[c+12>>2]);a[b+588>>2]=2;var f=b+596|0;i=(c+16|0)>>2;var e=0<(rc(a[a[a[i]+12>>2]+4>>2])|0);a:do{if(e){for(var l=c|0,k=0,h=0;;){var j=a[a[a[a[i]+12>>2]+8>>2]+(h<<2)>>2];Fc(f,k,a[j>>2]);Fc(f,k+1|0,mb(l,a[j+8>>2]));j=k+3|0;Fc(f,k+2|0,0);h=h+1|0;if((h|0)<(rc(a[a[a[i]+12>>2]+4>>2])|0)){k=j}else{var p=j;break a}}}else{p=0}}while(0);a[b+600>>2]=p;p=$(a[d]|0,Ni|0);if(0==(p|0)){if(d=$(a[d]|0,Oi|0),0==(d|0)){return}}else{d=p}p=c|0;a[b+580>>2]=ec(mb(p,a[d+8>>2]),p)}function tK(b,c){var i,d;d=b+584|0;Fc(d,0,jh|0);Fc(d,1,a[c+12>>2]);a[b+588>>2]=2;var f=b+596|0;d=(c+20|0)>>2;i=(a[a[d]+32>>2]+16|0)>>2;var e=0<(rc(a[a[a[i]+4>>2]+4>>2])|0);a:do{if(e){for(var l=c|0,k=0,h=0;;){var j=a[a[a[a[i]+4>>2]+8>>2]+(h<<2)>>2];Fc(f,k,a[j>>2]);var p=k+2|0;Fc(f,k|1,mb(l,a[j+8>>2]));h=h+1|0;if((h|0)<(rc(a[a[a[i]+4>>2]+4>>2])|0)){k=p}else{var m=p;break a}}}else{m=0}}while(0);a[b+600>>2]=m;m=$(a[a[a[d]+40>>2]>>2]|0,Ni|0);if(0==(m|0)){if(d=$(a[a[a[d]+40>>2]>>2]|0,Oi|0),0==(d|0)){return}}else{d=m}m=c|0;a[b+580>>2]=ec(mb(m,a[d+8>>2]),m)}function sK(b,c){var i,d,f,e=b+584|0;Fc(e,0,Dg|0);d=c+16|0;Fc(e,1,a[a[d>>2]+12>>2]);Fc(e,3,0!=(a[a[a[d>>2]+20>>2]>>2]&16|0)?Bf|0:Af|0);d=(c+12|0)>>2;Fc(e,4,a[a[d]+12>>2]);a[b+588>>2]=7;var l=b+596|0;i=(a[a[a[d]+20>>2]+32>>2]+16|0)>>2;var k=0<(rc(a[a[a[i]+8>>2]+4>>2])|0);a:do{if(k){for(var h=c|0,j=0,p=0;;){var m=a[a[a[a[i]+8>>2]+8>>2]+(j<<2)>>2],v=m|0,t=a[v>>2];if(0==(ka(t,vi|0)|0)){f=m+8|0;Fc(e,2,mb(h,a[f>>2]));var u=f;f=1322}else{if(0==(ka(t,wi|0)|0)){f=m+8|0,Fc(e,5,mb(h,a[f>>2])),u=f,f=1322}else{if(m=m+8|0,0!=(ka(t,wr|0)|0)){u=m,f=1322}else{Fc(e,6,mb(h,a[m>>2]));var w=p}}}1322==f&&(f=0,Fc(l,p,a[v>>2]),Fc(l,p+1|0,mb(h,a[u>>2])),w=p+2|0);j=j+1|0;if((j|0)<(rc(a[a[a[i]+8>>2]+4>>2])|0)){p=w}else{var A=w;break a}}}else{A=0}}while(0);a[b+600>>2]=A;e=$(a[a[a[a[d]+20>>2]+40>>2]+4>>2]|0,Ni|0);if(0==(e|0)){if(d=$(a[a[a[a[d]+20>>2]+40>>2]+4>>2]|0,Oi|0),0==(d|0)){return}}else{d=e}e=c|0;a[b+580>>2]=ec(mb(e,a[d+8>>2]),e)}function wC(b,c){var i=b+120|0,d=a[i>>2];0==(d|0)?(d=fa(624),a[i>>2]=d,a[b+124>>2]=d,i=a[Kh>>2]=d):(i=a[Kh>>2],0==(i|0)?i=a[Kh>>2]=d:(i=a[i+4>>2],0==(i|0)&&(i=fa(624),a[a[Kh>>2]+4>>2]=i),a[Kh>>2]=i));a[i+52>>2]=c;a[i>>2]=b;eh(b,3,c)}function Fc(b,c,i){var d=b+8|0;if((a[d>>2]|0)>(c|0)){var f=a[b>>2]}else{f=c+10|0,a[d>>2]=f,b|=0,f=wb(a[b>>2],f<<2),a[b>>2]=f}c=(c<<2)+f|0;a[c>>2]=i}function vK(b){var c=b|0,i=a[c>>2];0!=(i|0)&&G(i);a[c>>2]=0;a[b+8>>2]=0;a[b+4>>2]=0}function Dr(b){var c,i=b+120|0,d=a[i>>2],f=0==(d|0);a:do{if(!f){var e=d;for(c=e>>2;;){var l=a[c+1];vK(e+596|0);vK(e+584|0);var k=a[c+144];0!=(k|0)&&G(k);c=a[c+145];0!=(c|0)&&G(c);G(e);if(0==(l|0)){break a}else{e=l,c=e>>2}}}}while(0);a[Kh>>2]=0;a[Lh>>2]=0;a[b+164>>2]=0;a[b+124>>2]=0;a[i>>2]=0;a[b+28>>2]=0}function aK(b,c,i,d,f,e){var l,k,n=h;h+=128;l=n|0;jk(l,i);var j=Jc(l,58);0!=(j|0)&&(m[j]=0);j=n+64|0;for(b=(c<<2)+b+60|0;;){c=a[b>>2];if(0==(c|0)){k=b;k>>=2;break}jk(j,a[c+4>>2]);c=Jc(j,58);0!=(c|0)&&(m[c]=0);if(1>(ka(l,j)|0)){k=b;k>>=2;break}b=a[b>>2]|0}for(;;){b=a[k];if(0==(b|0)){break}jk(j,a[b+4>>2]);b=Jc(j,58);0!=(b|0)&&(m[b]=0);if(0!=(ka(l,j)|0)){break}b=a[k];if((a[b+8>>2]|0)<=(d|0)){break}k=b|0;k>>=2}j=Cb(20);l=j>>2;a[l]=a[k];a[k]=j;a[l+1]=i;a[l+2]=d;a[l+3]=f;a[l+4]=e;h=n;return 1}function eh(b,c,i){var d,f=h;h+=128;var e,l=f+64,k=2>(c-3|0)>>>0?0:c,n=f|0;jk(n,i);i=Jc(n,58);if(0==(i|0)){var z=i=0}else{z=i+1|0,m[i]=0,i=Jc(z,58),0==(i|0)?i=0:(m[i]=0,i=i+1|0)}var l=l|0,p=0==(z|0),s=0==(i|0),v=(k|0)==(c|0);d=((c<<2)+b+60|0)>>2;a:for(;;){var t=a[d];if(0==(t|0)){var u=0;e=1413;break}jk(l,a[t+4>>2]);t=Jc(l,58);0==(t|0)?t=0:(m[t]=0,t=t+1|0);do{if(0==(ka(l,n)|0)){var w=0==(t|0);if(w|p||0==(ka(t,z)|0)){if(s||0==(ka(i,a[a[a[d]+12>>2]+8>>2])|0)){if(w|v){break a}if(0!=(eh(b,k,t)|0)){break a}}}}}while(0);d=a[d]|0;d>>=2}if(1413==e){return b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}u=a[d];if(0==(u|0)){return u=0,b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}e=u+16|0;k=a[e>>2];0==(k|0)?(k=h,la(1,wK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),h=k,e=a[e>>2]):e=k;u=0==(e|0)?0:u;if(0==(u|0)){return u=0,b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}if(0>=(a[b+8>>2]|0)){return b=((c<<2)+b+80|0)>>2,a[b]=u,h=f,u}e=a[Mh+(c<<2)>>2];k=a[u+4>>2];n=a[a[u+12>>2]+8>>2];Va(a[oa>>2],xK|0,(j=h,h+=12,a[j>>2]=e,a[j+4>>2]=k,a[j+8>>2]=n,j));b=((c<<2)+b+80|0)>>2;a[b]=u;h=f;return u}function nv(b,c,i){var d,f;m[xv]||(fc(Sb,0,0),m[xv]=1);var i=Hb(i),e=Jc(i,58);do{if(0==(e|0)){var l=(c<<2)+b+60|0;f=1432}else{m[e]=0;var k=(c<<2)+b+60|0;if(0==(e+1|0)){l=k,f=1432}else{var h=a[k>>2];if(0==(h|0)){G(i);var j=1,p=k;f=1434}else{d=k;d>>=2;for(var s=1;;){var h=Hb(a[h+4>>2]),v=Jc(h,58);0!=(v|0)&&(m[v]=0);if(0==m[i]<<24>>24){f=1426}else{if(0==(Lb(i,h)|0)){f=1426}else{var t=s}}1426==f&&(f=0,t=a[Sb+4>>2],t>>>0>2]>>>0||(na(Sb,1),t=a[Sb+4>>2]),a[Sb+4>>2]=t+1|0,m[t]=32,db(Sb,a[a[d]+4>>2]),t=a[Sb+4>>2],t>>>0>2]>>>0||(na(Sb,1),t=a[Sb+4>>2]),a[Sb+4>>2]=t+1|0,m[t]=58,db(Sb,a[a[a[d]+12>>2]+8>>2]),t=0);G(h);d=a[d]|0;h=a[d>>2];if(0==(h|0)){break}else{d>>=2,s=t}}G(i);0!=t<<24>>24&&(j=t,p=k,f=1434)}}}}while(0);1432==f&&(G(i),j=1,p=l,f=1434);do{if(1434==f){b=a[p>>2];do{if(0==(b|0)){var u=j;f=1445}else{c=p;l=0;i=j;for(e=b;;){var w=Hb(a[e+4>>2]),e=Jc(w,58);0!=(e|0)&&(m[e]=0);if(e=0!=(l|0)){if(0==(Lb(l,w)|0)){var A=i}else{f=1439}}else{f=1439}1439==f&&(f=0,A=a[Sb+4>>2],A>>>0>2]>>>0||(na(Sb,1),A=a[Sb+4>>2]),a[Sb+4>>2]=A+1|0,m[A]=32,db(Sb,w),e||G(0),A=0);c=a[c>>2]|0;e=a[c>>2];if(0==(e|0)){break}else{l=w,i=A}}if(0==(w|0)){u=A,f=1445}else{var B=A}}}while(0);1445==f&&(G(0),B=u);if(0!=B<<24>>24){return f=Y|0}}}while(0);f=a[Sb+4>>2];f>>>0>2]>>>0||(na(Sb,1),f=a[Sb+4>>2]);m[f]=0;f=a[Sb>>2];return a[Sb+4>>2]=f}function yv(c,d,i,g){var e=d+496|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),h=d+504|0,l=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=d+348|0,k=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=d+512|0,h=k*(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),n=d+520|0;0==(a[d+356>>2]|0)?(d=l+g,i=e+i):(d=e+i,i=-(l+g));g=d*k*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);d=c|0;f[0]=i*h;a[d>>2]=b[0];a[d+4>>2]=b[1];c=c+8|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Re(c,d,i,g){var e=c+496|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),h=c+504|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=c+348|0,k=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=c+512|0,l=k*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),n=c+520|0,k=k*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=0<(g|0);if(0==(a[c+356>>2]|0)){if(n){c=0}else{return i}for(;;){var n=(c<<4)+d|0,n=((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+e)*l,j=(c<<4)+i|0;f[0]=n;a[j>>2]=b[0];a[j+4>>2]=b[1];n=(c<<4)+d+8|0;n=((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+h)*k;j=(c<<4)+i+8|0;f[0]=n;a[j>>2]=b[0];a[j+4>>2]=b[1];c=c+1|0;if((c|0)==(g|0)){break}}}else{if(n){c=0}else{return i}for(;;){var n=(c<<4)+d+8|0,n=l*-((b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])+h),j=(c<<4)+d|0,j=((b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])+e)*k,p=(c<<4)+i+8|0;f[0]=j;a[p>>2]=b[0];a[p+4>>2]=b[1];j=(c<<4)+i|0;f[0]=n;a[j>>2]=b[0];a[j+4>>2]=b[1];c=c+1|0;if((c|0)==(g|0)){break}}}return i}function Bn(b,c){var d,g,f,e=b>>2;d=a[e];eh(d,3,c);g=a[d+92>>2];if(0==(g|0)){return 999}f=a[g+16>>2]>>2;var l=a[f+3];a[e+19]=l;var k=a[f+4];a[e+21]=k;f=a[f];a[e+20]=f;a[e+22]=a[g+4>>2];g=(b+148|0)>>2;k=a[g]|a[k>>2];a[g]=k;var h=a[d+80>>2];if(0==(h|0)){return a[e+15]=0,999}d=a[h+16>>2]>>2;a[e+15]=a[d+3];var j=a[d+4];a[e+17]=j;a[e+18]=a[h+4>>2];a[g]=k|a[j>>2];a[e+16]=0==(l|0)?f:a[d];return 300}function Cr(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+4>>2],0!=(c|0))){J[c](b)}a[a[b>>2]+24>>2]=0;iK(b)}function Tr(b,c,d){var g=h;h+=4;a[d>>2]=c;a[d+32>>2]=5;a[g>>2]=ZH(c);var f=a[b+12>>2];0!=(f|0)&&0!=(tn(g,f,a[b+16>>2],4,128)|0)||(b=$H(c,d,a[b+20>>2]),1==(b|0)?(b=Cb(Ba(c)+16|0),Ma(b,yK|0,(j=h,h+=4,a[j>>2]=c,j)),0!=(nD(b)|0)&&la(0,zK|0,(j=h,h+=4,a[j>>2]=c,j)),G(b)):0!=(b|0)&&la(1,AK|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)));h=g}function mD(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+28>>2],0!=(c|0))){J[c](b)}}function xs(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+40>>2],0!=(c|0))){J[c](b)}}function ys(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+44>>2],0!=(c|0))){J[c](b)}}function vs(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+48>>2],0!=(c|0))){J[c](b)}}function ws(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+52>>2],0!=(c|0))){J[c](b)}}function WE(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+56>>2],0!=(c|0))){J[c](b)}}function ad(b,c,d,g,f){var e=a[b+60>>2];if(0!=(e|0)&&(e=a[e+72>>2],0!=(e|0))){J[e](b,c,d,g,f)}}function Se(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+76>>2],0!=(c|0))){J[c](b)}}function bG(b,c){var d=a[b+60>>2];if(0!=(d|0)&&(d=a[d+80>>2],0!=(d|0))){J[d](b,c)}}function cG(b){var c=a[b+60>>2];if(0!=(c|0)&&(c=a[c+84>>2],0!=(c|0))){J[c](b)}}function As(c,d,i,g){var e=h;h+=16;var j=a[c+60>>2],l=a[g>>2];if(0!=(l|0)&&0!=m[l]<<24>>24){l=a[c+16>>2];if(0!=(l|0)&&0==(a[l+88>>2]|0)){h=e;return}0==(a[c+148>>2]&8192|0)&&(yv(e,c,d,i),d=e|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),i=e+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]));if(0!=(j|0)&&(j=a[j+88>>2],0!=(j|0))){J[j](c,d,i,g)}}h=e}function Pa(b,c){var d=a[b+60>>2],g=a[b+16>>2]+16|0,f=Jc(c,58),e=0!=(f|0);e&&(m[f]=0);if(0!=(d|0)&&(Tr(a[b+68>>2],c,g),d=a[d+92>>2],0!=(d|0))){J[d](b,g)}e&&(m[f]=58)}function $b(b,c){var d=a[b+60>>2],g=a[b+16>>2]+52|0,f=Jc(c,58),e=0!=(f|0);e&&(m[f]=0);if(0!=(d|0)&&(Tr(a[b+68>>2],c,g),d=a[d+92>>2],0!=(d|0))){J[d](b,g)}e&&(m[f]=58)}function Zr(c,d){if(0!=(a[c+60>>2]|0)){var i=a[c+16>>2]+96|0;f[0]=d;a[i>>2]=b[0];a[i+4>>2]=b[1]}}function BK(b,c,d,g){if(0==(c|0)){c=g=-1}else{var f=a[c+48>>2];0!=(f|0)&&(d=g=f|0);f=g;g=(72*a[c+40>>2]|0)/d&-1;c=(72*a[c+44>>2]|0)/f&-1}a[b>>2]=g;a[b+4>>2]=c}function Ke(c,d){var i,g,e=h,Xa;i=a[c+60>>2];var l=a[c+16>>2];a[l+104>>2]=d;if(!(0==(i|0)|0==(d|0))){var k=a[d>>2];if(0!=(k|0)){g=(l+88|0)>>2;i=(l+96|0)>>2;for(var l=l+92|0,n=d;;){var n=n+4|0,z=m[k];a:do{if(100==z<<24>>24){0==(ka(k,CK|0)|0)?a[g]=1:0==(ka(k,DK|0)|0)?a[g]=2:Xa=102==z<<24>>24?1818:117==z<<24>>24?1820:1822}else{if(115==z<<24>>24){if(0==(ka(k,wp|0)|0)){a[g]=3}else{if(0==(ka(k,Cp|0)|0)){for(var p=k,s=0;;){var v=p+1|0;if(s){break}p=v;s=0==m[v]<<24>>24}p=wg(v,xc);f[0]=p;a[i]=b[0];a[i+1]=b[1]}else{Xa=1822}}}else{if(105==z<<24>>24){do{if(0!=(ka(k,qh|0)|0)&&0!=(ka(k,EK|0)|0)){Xa=98==z<<24>>24?1811:102==z<<24>>24?1818:117==z<<24>>24?1820:1822;break a}}while(0);a[g]=0}else{Xa=98==z<<24>>24?1811:102==z<<24>>24?1818:117==z<<24>>24?1820:1822}}}}while(0);1811==Xa?(Xa=0,0!=(ka(k,Wb|0)|0)?Xa=1822:(f[0]=2,a[i]=b[0],a[i+1]=b[1])):1818==Xa?(Xa=0,0!=(ka(k,Hi|0)|0)?Xa=1822:a[l>>2]=1):1820==Xa&&(Xa=0,0!=(ka(k,FK|0)|0)?Xa=1822:a[l>>2]=0);1822==Xa&&(Xa=0,la(0,GK|0,(j=h,h+=4,a[j>>2]=k,j)));k=a[n>>2];if(0==(k|0)){break}}}}h=e}function Qk(c,d,i){var g,e=h;h+=32;var j=a[c+60>>2];if(0!=(j|0)&&(j=j+96|0,0!=(a[j>>2]|0)&&0!=(a[a[c+16>>2]+88>>2]|0))){var l=d|0;g=d+16|0;var k=g|0,k=.5*((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),l=e|0,n=e|0;f[0]=k;a[n>>2]=b[0];a[n+4>>2]=b[1];k=d+8|0;d=d+24|0;d=.5*((b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));k=e+8|0;f[0]=d;a[k>>2]=b[0];a[k+4>>2]=b[1];d=(e+16|0)>>2;g>>=2;a[d]=a[g];a[d+1]=a[g+1];a[d+2]=a[g+2];a[d+3]=a[g+3];0==(a[c+148>>2]&8192|0)&&Re(c,l,l,2);J[a[j>>2]](c,l,i&255)}h=e}function zc(b,c,d,g){var f=a[b+60>>2];if(0!=(f|0)){var f=f+100|0,e=a[f>>2];if(0!=(e|0)&&0!=(a[a[b+16>>2]+88>>2]|0)){if(0!=(a[b+148>>2]&8192|0)){J[e](b,c,d,g&255)}else{(a[Nh>>2]|0)<(d|0)?(e=d+10|0,a[Nh>>2]=e,e=wb(a[Hf>>2],e<<4),a[Hf>>2]=e):e=a[Hf>>2],Re(b,c,e,d),J[a[f>>2]](b,e,d,g&255)}}}}function mh(c,d,i){var g,e,j=h;h+=64;e=d>>2;d=h;h+=32;a[d>>2]=a[e];a[d+4>>2]=a[e+1];a[d+8>>2]=a[e+2];a[d+12>>2]=a[e+3];a[d+16>>2]=a[e+4];a[d+20>>2]=a[e+5];a[d+24>>2]=a[e+6];a[d+28>>2]=a[e+7];g=j>>2;e=d>>2;a[g]=a[e];a[g+1]=a[e+1];a[g+2]=a[e+2];a[g+3]=a[e+3];e=j+32|0;g=e>>2;d=(d+16|0)>>2;a[g]=a[d];a[g+1]=a[d+1];a[g+2]=a[d+2];a[g+3]=a[d+3];d=j|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=j+16|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];d=j+40|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=j+24|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];e|=0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);d=j+48|0;f[0]=e;a[d>>2]=b[0];a[d+4>>2]=b[1];e=j+8|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);d=j+56|0;f[0]=e;a[d>>2]=b[0];a[d+4>>2]=b[1];zc(c,j|0,4,i);h=j}function $f(b,c,d,g,f,e){var l=a[b+60>>2];if(0!=(l|0)){var l=l+104|0,k=a[l>>2];if(0!=(k|0)&&0!=(a[a[b+16>>2]+88>>2]|0)){if(0!=(a[b+148>>2]&8192|0)){J[k](b,c,d,g,f,e&255)}else{(a[Nh>>2]|0)<(d|0)?(k=d+10|0,a[Nh>>2]=k,k=wb(a[Hf>>2],k<<4),a[Hf>>2]=k):k=a[Hf>>2],Re(b,c,k,d),J[a[l>>2]](b,k,d,g,f,e&255)}}}}function Gd(b,c,d){var g=a[b+60>>2];if(0!=(g|0)){var g=g+108|0,f=a[g>>2];if(0!=(f|0)&&0!=(a[a[b+16>>2]+88>>2]|0)){if(0!=(a[b+148>>2]&8192|0)){J[f](b,c,d)}else{(a[Nh>>2]|0)<(d|0)?(f=d+10|0,a[Nh>>2]=f,f=wb(a[Hf>>2],f<<4),a[Hf>>2]=f):f=a[Hf>>2],Re(b,c,f,d),J[a[g>>2]](b,f,d)}}}}function yk(b,c){var d=a[b+60>>2];if(0!=(c|0)&&!(0==m[c]<<24>>24|0==(d|0))&&(d=a[d+112>>2],0!=(d|0))){J[d](b,c)}}function ut(c,d,i,g,e,Xa){var l,k,n,z,p,s,v,t,u,w=h;h+=72;u=w+32;k=w+40;l=w+56;var A=a[c+60>>2],B=HK(d);if(0==(B|0)){if(!(0==(Is(d)|0)|0==(A|0))&&(B=a[A+116>>2],0!=(B|0))){J[B](c,d,i,g,e&255)}}else{var d=c+424|0,C=c+432|0;BK(u,B,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]));var C=a[u>>2],y=a[u+4>>2];if(!(1>(C|0)&1>(y|0))){n=w+16|0;u=n>>2;p=i>>2;a[u]=a[p];a[u+1]=a[p+1];a[u+2]=a[p+2];a[u+3]=a[p+3];d=w>>2;a[d]=a[p];a[d+1]=a[p+1];a[d+2]=a[p+2];a[d+3]=a[p+3];if(1<(g|0)){t=(w|0)>>2;v=(w+8|0)>>2;s=(n|0)>>2;p=(w+24|0)>>2;for(var T=(b[0]=a[t],b[1]=a[t+1],f[0]),D=(b[0]=a[v],b[1]=a[v+1],f[0]),F=1,M=T,T=(b[0]=a[s],b[1]=a[s+1],f[0]),X=(b[0]=a[p],b[1]=a[p+1],f[0]);;){z=(F<<4)+i|0;var O=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),E=M>2],b[1]=a[z+4>>2],f[0]);z=DO?T:O;G=X>G?X:G;F=F+1|0;if((F|0)==(g|0)){break}else{M=E,D=z,T=O,X=G}}f[0]=G;a[p]=b[0];a[p+1]=b[1];f[0]=O;a[s]=b[0];a[s+1]=b[1];f[0]=z;a[v]=b[0];a[v+1]=b[1];f[0]=E;a[t]=b[0];a[t+1]=b[1];p=E;E=G;G=z}else{i=n|0,z=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=w|0,E=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=w+24|0,i=w+8|0,O=z,p=E,E=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),G=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])}z=(n|0)>>2;g=(w|0)>>2;v=O-p;i=(w+24|0)>>2;n=(w+8|0)>>2;s=E-G;y|=0;C|=0;t=v/C;F=s/y;Xa=0==m[Xa]<<24>>24?0:0==(Lb(Xa,rp|0)|0)?2:0==(Lb(Xa,qp|0)|0)?3:0==(Lb(Xa,zv|0)|0)?4:0!=re(Xa)<<24>>24&1;1==(Xa|0)?t>2]&8192|0)?(yv(k,c,C,Xa),k>>=2,a[d]=a[k],a[d+1]=a[k+1],a[d+2]=a[k+2],a[d+3]=a[k+3],yv(l,c,(b[0]=a[z],b[1]=a[z+1],f[0]),(b[0]=a[i],b[1]=a[i+1],f[0])),l>>=2,a[u]=a[l],a[u+1]=a[l+1],a[u+2]=a[l+2],a[u+3]=a[l+3],l=(b[0]=a[g],b[1]=a[g+1],f[0]),k=(b[0]=a[z],b[1]=a[z+1],f[0])):(l=C,k=y);l>k&&(f[0]=k,a[g]=b[0],a[g+1]=b[1],f[0]=l,a[z]=b[0],a[z+1]=b[1]);l=(b[0]=a[n],b[1]=a[n+1],f[0]);k=(b[0]=a[i],b[1]=a[i+1],f[0]);l>k&&(f[0]=k,a[n]=b[0],a[n+1]=b[1],f[0]=l,a[i]=b[0],a[i+1]=b[1]);if(0!=(A|0)){u=a[c+72>>2];l=h;h+=128;k=w>>2;A=h;h+=32;a[A>>2]=a[k];a[A+4>>2]=a[k+1];a[A+8>>2]=a[k+2];a[A+12>>2]=a[k+3];a[A+16>>2]=a[k+4];a[A+20>>2]=a[k+5];a[A+24>>2]=a[k+6];a[A+28>>2]=a[k+7];k=l|0;Rf(k,a[B+28>>2]);d=l+Ba(k)|0;Pb=58;m[d]=Pb&255;Pb>>=8;m[d+1]=Pb&255;uf(k,u);u=eh(a[c>>2],4,k);0==(u|0)?u=999:(u=a[u+16>>2],a[c+92>>2]=a[u+12>>2],a[c+96>>2]=a[u>>2],u=300);999==(u|0)&&la(0,IK|0,(j=h,h+=4,a[j>>2]=k,j));k=a[c+92>>2];if(0!=(k|0)&&(k=a[k>>2],0!=(k|0))){J[k](c,B,A,e)}h=l}}}h=w}function HK(b){var c=h;h+=64;var d=a[Il>>2];if(0==(d|0)){return h=c,0}a[c+8>>2]=b;b=J[a[d>>2]](d,c,4);h=c;return b}function JK(b){var c=h;0==(b|0)&&sa(Av|0,363,Bv|0,Oh|0);var d=b+8|0;0==(a[d>>2]|0)&&sa(Av|0,364,Bv|0,Ph|0);var g=b+20|0,f=a[g>>2];0==(f|0)?(d=Uk(a[d>>2]),0==(d|0)?b=1:(f=qi(d,cj|0),a[g>>2]=f,0==(f|0)?(b=si(a[Ea.c>>2]),la(0,KK|0,(j=h,h+=8,a[j>>2]=b,a[j+4>>2]=d,j)),b=0):(g=a[Cv>>2],49<(g|0)?m[b+17|0]=1:a[Cv>>2]=g+1|0,b=1))):(xg(f,0,0),b=1);h=c;return b}function LK(b){if(0!=m[b+17|0]<<24>>24){var b=b+20|0,c=a[b>>2];0!=(c|0)&&(ri(c),a[b>>2]=0)}}function oH(c,d,i){0!=(i|0)&&0!=m[i]<<24>>24?(d=a[d+44>>2]+24|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),d=1>d?96:d,BK(c,MK(i),d,d)):(a[c>>2]=-1,a[c+4>>2]=-1)}function MK(b){var c=h;if(0==(a[Il>>2]|0)){var d=Nc(NK,a[Xc>>2]);a[Il>>2]=d}d=HK(b);if(0==(d|0)){d=fa(64);if(0==(d|0)){return h=c,0}var g=d+8|0;a[g>>2]=b;if(0==JK(d)<<24>>24){return h=c,0}b=OK(d);if(4==(b|0)){PK(d)}else{if(3==(b|0)){var f,b=h;h+=8;g=b+4;a[d+48>>2]=0;f=(d+20|0)>>2;xg(a[f],16,0);0!=If(a[f],4,b)<<24>>24&&0!=If(a[f],4,g)<<24>>24&&(a[d+40>>2]=a[b>>2],a[d+44>>2]=a[g>>2]);h=b}else{if(0==(b|0)){return f=a[g>>2],b=Is(f),a[d+52>>2]=b,0==(b|0)&&la(0,QK|0,(j=h,h+=4,a[j>>2]=f,j)),G(d),h=c,0}if(6==(b|0)){b=d>>2;g=h;h+=1040;var e=g+1024,l=g+1028,k=g+1032,n=g+1036;a[b+12]=72;var m=d+20|0;xg(a[m>>2],0,0);for(var p=g|0;;){if(0==(oi(p,1024,a[m>>2])|0)){f=2073;break}var s=un(p,RK|0);if(0!=(s|0)&&4==(Cd(s,Nu|0,(j=h,h+=16,a[j>>2]=e,a[j+4>>2]=l,a[j+8>>2]=k,a[j+12>>2]=n,j))|0)){break}}2073!=f&&(f=a[e>>2],a[b+8]=f,l=a[l>>2],a[b+9]=l,a[b+10]=a[k>>2]-f|0,a[b+11]=a[n>>2]-l|0);h=g}else{1==(b|0)?(b=h,h+=16,g=b+4,k=b+8,n=b+12,a[d+48>>2]=0,f=(d+20|0)>>2,xg(a[f],16,0),0!=hj(a[f],b)<<24>>24&&0!=hj(a[f],g)<<24>>24&&0!=hj(a[f],k)<<24>>24&&0!=hj(a[f],n)<<24>>24&&(a[d+40>>2]=a[b>>2]<<16|a[g>>2],a[d+44>>2]=a[k>>2]<<16|a[n>>2]),h=b):2==(b|0)?(b=h,h+=8,g=b+4,a[d+48>>2]=0,f=(d+20|0)>>2,xg(a[f],6,0),0!=hj(a[f],b)<<24>>24&&0!=hj(a[f],g)<<24>>24&&(a[d+40>>2]=a[b>>2],a[d+44>>2]=a[g>>2]),h=b):8==(b|0)&&SK(d)}}}f=a[Il>>2];J[a[f>>2]](f,d,1)}LK(d);h=c;return d}function OK(b){var c=h;h+=220;var d,g=c+20,f=b+20|0,e=a[f>>2],l=0==(e|0);a:do{if(!l){var k=c|0;if(20==(lC(k,1,20,e)|0)){var e=b+28|0,l=b+24|0,g=g|0,n=0;b:for(;;){if(8<=n>>>0){break a}var j=0==(Ve(k,a[Qc+(n<<4)>>2],a[Qc+(n<<4)+4>>2])|0);c:do{if(j){a[e>>2]=a[Qc+(n<<4)+12>>2];var p=a[Qc+(n<<4)+8>>2];a[l>>2]=p;if(7!=(n|0)){var m=p;d=2012;break b}for(;;){if(0==(oi(g,200,a[f>>2])|0)){break c}if(0==(Ve(g,TK|0,4)|0)){break b}}}}while(0);n=n+1|0}if(2012==d){return h=c,m}a[e>>2]=Dp|0;m=a[l>>2]=8;h=c;return m}}}while(0);a[b+28>>2]=UK|0;a[b+24>>2]=0;h=c;return 0}function PK(b){var c=b>>2,d=h;h+=20;var g,f=d+4,e=d+8,l=d+12,k=d+16;a[c+12]=0;for(b=(b+20|0)>>2;;){if(0==If(a[b],1,d)<<24>>24){g=2057;break}var n=a[d>>2];if(255!=(n|0)&&0==(Jc(VK|0,n)|0)){if(192==(n|0)){g=2044;break}var j=a[b];if(194==(n|0)){g=2049;break}if(0==If(j,2,f)<<24>>24){g=2064;break}xg(a[b],a[f>>2]-2|0,1)}}2064==g?h=d:2049==g?(0!=If(j,3,k)<<24>>24&&0!=If(a[b],2,e)<<24>>24&&0!=If(a[b],2,l)<<24>>24&&(a[c+11]=a[e>>2],a[c+10]=a[l>>2]),h=d):2044==g?(0!=If(a[b],3,k)<<24>>24&&0!=If(a[b],2,e)<<24>>24&&0!=If(a[b],2,l)<<24>>24&&(a[c+11]=a[e>>2],a[c+10]=a[l>>2]),h=d):2057==g&&(h=d)}function SK(c){var d,i=h;h+=220;var g;d=i>>2;var e=c+20|0,Xa=i+20|0;xg(a[e>>2],-Ba(Xa)|0,1);var l=i+8|0,k=0,n=0,z=0,p=0;a:for(;;){if(0==(oi(Xa,200,a[e>>2])|0)){g=2087;break}if(!(0==p<<24>>24|0==k<<24>>24)){g=2086;break}for(var s=k,v=n,t=z,u=he(Xa,gc|0),w=p;;){if(0==(u|0)){k=s;n=v;z=t;p=w;continue a}if(62==m[u+(Ba(u)-1)|0]<<24>>24){k=s;n=v;z=t;p=w;continue a}if(2==(Cd(u,WK|0,(j=h,h+=8,a[j>>2]=i,a[j+4>>2]=l,j))|0)){if(v=Dv((b[0]=a[d],b[1]=a[d+1],f[0]),l),0==s<<24>>24){w=1}else{k=s;n=v;z=t;p=1;continue a}}if(2==(Cd(u,XK|0,(j=h,h+=8,a[j>>2]=i,a[j+4>>2]=l,j))|0)){if(t=Dv((b[0]=a[d],b[1]=a[d+1],f[0]),l),0==w<<24>>24){s=1}else{k=1;n=v;z=t;p=w;continue a}}u=he(0,gc|0)}}2087==g?(a[(c+48|0)>>2]=72,a[(c+40|0)>>2]=n,a[(c+44|0)>>2]=z,h=i):2086==g&&(a[(c+48|0)>>2]=72,a[(c+40|0)>>2]=n,a[(c+44|0)>>2]=z,h=i)}function Dv(a,b){if(0==(ka(b,Ep|0)|0)){var c=72*a;return(0>c?c-.5:c+.5)&-1}if(0==(ka(b,YK|0)|0)){return c=72*a/96,(0>c?c-.5:c+.5)&-1}if(0==(ka(b,ZK|0)|0)){return c=72*a/6,(0>c?c-.5:c+.5)&-1}if(0!=(ka(b,$K|0)|0)&&0!=(ka(b,ue|0)|0)){if(0==(ka(b,aL|0)|0)){return c=28.346456664*a,(0>c?c-.5:c+.5)&-1}if(0!=(ka(b,bL|0)|0)){return 0}c=2.8346456663999997*a;return(0>c?c-.5:c+.5)&-1}return(0>a?a-.5:a+.5)&-1}function If(b,c,d){for(var g,f=a[d>>2]=0;;){if(f>>>0>=c>>>0){var e=1;g=2133;break}var l=ni(b);if(0!=(Number(Q.a[b]&&Q.a[b].f)|0)){e=0;g=2132;break}a[d>>2]=a[d>>2]<<8|l;f=f+1|0}if(2132==g||2133==g){return e}}function hj(b,c){for(var d,g=a[c>>2]=0;;){if(2<=g>>>0){var f=1;d=2139;break}var e=ni(b);if(0!=(Number(Q.a[b]&&Q.a[b].f)|0)){f=0;d=2140;break}a[c>>2]|=e<<(g<<3);g=g+1|0}if(2139==d||2140==d){return f}}function cL(a){var b=1-a;return 3*a*b*b}function Jf(c,d,i,g){var e=c|0;f[0]=d*g;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+8|0;f[0]=i*g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Ev(c,d,i,g,e){var h=c|0;f[0]=d+g;a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=i+e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Fp(c,d,i,g,e){var h=c|0;f[0]=d-g;a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=i-e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function ZG(c,d,i,g,e,j){var l,k,n,m,p,s=h;h+=32;l=s+16;p=(e|0)>>2;m=(e+8|0)>>2;Jl(s,(b[0]=a[p],b[1]=a[p+1],f[0]),(b[0]=a[m],b[1]=a[m+1],f[0]));k=e>>2;n=s>>2;a[k]=a[n];a[k+1]=a[n+1];a[k+2]=a[n+2];a[k+3]=a[n+3];k=e+16|0;n=(k|0)>>2;e=(e+24|0)>>2;Jl(l,(b[0]=a[n],b[1]=a[n+1],f[0]),(b[0]=a[e],b[1]=a[e+1],f[0]));k>>=2;l>>=2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[ge>>2]=0;Fv(4);l=a[ge>>2];a[ge>>2]=l+1|0;k=((l<<4)+a[Lg>>2]|0)>>2;l=i>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];p=(b[0]=a[p],b[1]=a[p+1],f[0]);m=(b[0]=a[m],b[1]=a[m+1],f[0]);if(-1==(Gp(c,d,i,g,p,m,(b[0]=a[n],b[1]=a[n+1],f[0]),(b[0]=a[e],b[1]=a[e+1],f[0]))|0)){return h=s,-1}a[j+4>>2]=a[ge>>2];a[j>>2]=a[Lg>>2];h=s;return 0}function Jl(c,d,i){var g=d*d+i*i;1e-6>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function Gp(c,d,i,g,e,j,l,k){var n,m,p,s,v,t,u,w,A=h;h+=256;var B=A+16,C=A+32,y=A+48,T=A+64,D=A+80,F=A+96,M=A+112,X=A+128,O=A+144,E=A+160,G=A+176,ia=A+192,J=A+208,I=A+224,H=A+240,K=a[Kl>>2];if((a[Gv>>2]|0)<(g|0)){if(0==(K|0)){var L=Gb(40*g|0);a[Kl>>2]=L;if(0==(L|0)){var N=-1;h=A;return N}var Q=L}else{var S=mc(K,40*g|0);a[Kl>>2]=S;if(0==(S|0)){return N=-1,h=A,N}Q=S}a[Gv>>2]=g;var ca=Q}else{ca=K}var R=ca|0;f[0]=0;a[R>>2]=b[0];a[R+4>>2]=b[1];var U=1<(g|0);a:do{if(U){for(var W=1,ja=0;;){var aa=W-1|0,da=(W<<4)+i|0,ea=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),xa=(W<<4)+i+8|0,Z=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),Y=(aa<<4)+i|0,ha=(aa<<4)+i+8|0,ga=ja+Hv(ea,Z,(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),(b[0]=a[ha>>2],b[1]=a[ha+4>>2],f[0])),V=ca+40*W|0;f[0]=ga;a[V>>2]=b[0];a[V+4>>2]=b[1];var $=W+1|0;if(($|0)==(g|0)){break}else{W=$,ja=ga}}for(var la=ca+40*(g-1)|0,ba=1;;){var ya=(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0]);w=(ca+40*ba|0)>>2;var sa=(b[0]=a[w],b[1]=a[w+1],f[0])/ya;f[0]=sa;a[w]=b[0];a[w+1]=b[1];var wa=ba+1|0;if((wa|0)==(g|0)){break a}else{ba=wa}}}}while(0);var Ab=0<(g|0);a:do{if(Ab){u=T>>2;t=D>>2;for(var Fa=0;;){v=(ca+40*Fa|0)>>2;Jf(T,e,j,cL((b[0]=a[v],b[1]=a[v+1],f[0])));s=(ca+40*Fa+8|0)>>2;a[s]=a[u];a[s+1]=a[u+1];a[s+2]=a[u+2];a[s+3]=a[u+3];var Ga=D,fa=l,ta=k,Ka=(b[0]=a[v],b[1]=a[v+1],f[0]);Jf(Ga,fa,ta,3*Ka*Ka*(1-Ka));p=(ca+40*Fa+24|0)>>2;a[p]=a[t];a[p+1]=a[t+1];a[p+2]=a[t+2];a[p+3]=a[t+3];var za=Fa+1|0;if((za|0)==(g|0)){break a}else{Fa=za}}}}while(0);dL(i,g,ca,e,j,l,k,A,C,B,y);var ma=A|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),ra=A+8|0,Ha=(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0]),Ra=C|0,ka=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),qa=C+8|0,La=(b[0]=a[qa>>2],b[1]=a[qa+4>>2],f[0]),na=B|0,Ya=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),oa=B+8|0,Za=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),Ba=y|0,ab=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0]),$a=y+8|0,jb=(b[0]=a[$a>>2],b[1]=a[$a+4>>2],f[0]);if(0!=(eL(c,d,pa,Ha,ka,La,Ya,Za,ab,jb,i,g)|0)){return N=0,h=A,N}Jf(F,ka,La,.3333333333333333);var Ca=F|0,Ia=F+8|0;Ev(M,pa,Ha,(b[0]=a[Ca>>2],b[1]=a[Ca+4>>2],f[0]),(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]));var eb=M|0,ub=(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]),Sa=M+8|0,va=(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]);Jf(X,ab,jb,.3333333333333333);var ua=X|0,Oa=X+8|0;Fp(O,Ya,Za,(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]),(b[0]=a[Oa>>2],b[1]=a[Oa+4>>2],f[0]));var Wa=O|0,pb=(b[0]=a[Wa>>2],b[1]=a[Wa+4>>2],f[0]),ob=O+8|0,bb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0]),qb=g-1|0,Aa=1<(qb|0);a:do{if(Aa){for(var kb=a[Kl>>2],Ea=-1,vb=-1,xb=1;;){var Qa=kb+40*xb|0,nb=(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),rb,lb=1-nb;rb=lb*lb*lb;var Ta=cL(nb),cb=3*nb*nb*(1-nb),fb=nb*nb*nb,Ua=(xb<<4)+i|0,sb=(xb<<4)+i+8|0,Na=Hv(rb*pa+Ta*ub+cb*pb+fb*Ya,rb*Ha+Ta*va+cb*bb+fb*Za,(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]),(b[0]=a[sb>>2],b[1]=a[sb+4>>2],f[0])),Fb=Na>Ea,Db=Fb?xb:vb,Ob=xb+1|0;if((Ob|0)==(qb|0)){var Eb=Db;break a}else{Ea=Fb?Na:Ea,vb=Db,xb=Ob}}}else{Eb=-1}}while(0);var Ma=(Eb<<4)+i|0,Bb=Eb-1|0;m=(Ma|0)>>2;var Ja=(b[0]=a[m],b[1]=a[m+1],f[0]);n=((Eb<<4)+i+8|0)>>2;var Va=(b[0]=a[n],b[1]=a[n+1],f[0]),Cb=(Bb<<4)+i|0,wb=(Bb<<4)+i+8|0;Fp(E,Ja,Va,(b[0]=a[Cb>>2],b[1]=a[Cb+4>>2],f[0]),(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]));var Pa=E|0,hb=E+8|0;Jl(G,(b[0]=a[Pa>>2],b[1]=a[Pa+4>>2],f[0]),(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0]));var ib=G|0,ic=(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0]),db=G+8|0,Ib=(b[0]=a[db>>2],b[1]=a[db+4>>2],f[0]),yb=Eb+1|0,mb=(yb<<4)+i|0,Kb=(b[0]=a[mb>>2],b[1]=a[mb+4>>2],f[0]),pc=(yb<<4)+i+8|0,Jb=(b[0]=a[pc>>2],b[1]=a[pc+4>>2],f[0]);Fp(ia,Kb,Jb,(b[0]=a[m],b[1]=a[m+1],f[0]),(b[0]=a[n],b[1]=a[n+1],f[0]));var Vb=ia|0,Hb=ia+8|0;Jl(J,(b[0]=a[Vb>>2],b[1]=a[Vb+4>>2],f[0]),(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]));var Lb=J|0,Mb=J+8|0;Ev(I,ic,Ib,(b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]));var Nb=I|0,Pb=I+8|0;Jl(H,(b[0]=a[Nb>>2],b[1]=a[Nb+4>>2],f[0]),(b[0]=a[Pb>>2],b[1]=a[Pb+4>>2],f[0]));var Wb=H|0,lc=(b[0]=a[Wb>>2],b[1]=a[Wb+4>>2],f[0]),Tb=H+8|0,Yb=(b[0]=a[Tb>>2],b[1]=a[Tb+4>>2],f[0]);Gp(c,d,i,yb,e,j,lc,Yb);Gp(c,d,Ma,g-Eb|0,lc,Yb,l,k);N=0;h=A;return N}function Hv(a,b,c,d){a=c-a;b=d-b;return $c(a*a+b*b)}function dL(c,d,i,g,e,j,l,k,n,m,p){var s,v,t,u,w,A,B,C,y,T,D,F,M,X=h;h+=96;var O=X+16,E=X+32,G=X+48,ia=X+64,J=X+80,I=0<(d|0);a:do{if(I){for(var H=c|0,K=c+8|0,L=d-1|0,N=(L<<4)+c|0,S=(L<<4)+c+8|0,Q=O|0,ca=O+8|0,R=E|0,U=E+8|0,W=X|0,ja=X+8|0,aa=G|0,da=G+8|0,ea=0,xa=0,Y=0,Z=0,ha=0,ga=0;;){M=(i+40*ga+8|0)>>2;var V=(b[0]=a[M],b[1]=a[M+1],f[0]);F=(i+40*ga+16|0)>>2;var $=(b[0]=a[F],b[1]=a[F+1],f[0]),la=ea+(V*V+$*$);D=(i+40*ga+24|0)>>2;var ba=(b[0]=a[D],b[1]=a[D+1],f[0]);T=(i+40*ga+32|0)>>2;var ya=(b[0]=a[T],b[1]=a[T+1],f[0]),sa=xa+(V*ba+$*ya),wa=Y+(ba*ba+ya*ya);y=(i+40*ga|0)>>2;var fa,Fa=(b[0]=a[y],b[1]=a[y+1],f[0]),Ga=1-Fa;fa=Ga*Ga*(Ga+3*Fa);Jf(O,(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),fa);var ra,ta=(b[0]=a[y],b[1]=a[y+1],f[0]);ra=ta*ta*(3*(1-ta)+ta);Jf(E,(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]),ra);var Ka=(b[0]=a[Q>>2],b[1]=a[Q+4>>2],f[0]),za=(b[0]=a[ca>>2],b[1]=a[ca+4>>2],f[0]);Ev(X,Ka,za,(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]));var ma=(ga<<4)+c|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),ka=(ga<<4)+c+8|0,Ha=(b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0]);Fp(G,pa,Ha,(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]));var Ra=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),qa=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),na=Z,La=(b[0]=a[M],b[1]=a[M+1],f[0]),oa=(b[0]=a[F],b[1]=a[F+1],f[0]),Ya=na+(La*Ra+oa*qa),Ba=ha,Za=(b[0]=a[D],b[1]=a[D+1],f[0]),va=(b[0]=a[T],b[1]=a[T+1],f[0]),ab=Ba+(Za*Ra+va*qa),$a=ga+1|0;if(($a|0)==(d|0)){var jb=la,Ca=sa,Ia=wa,eb=Ya,ub=ab;break a}else{ea=la,xa=sa,Y=wa,Z=Ya,ha=ab,ga=$a}}}else{ub=eb=Ia=Ca=jb=0}}while(0);var Sa=jb*Ia-Ca*Ca,Ea=0<=Sa;if(1e-6>(Ea?Sa:-Sa)){var ua=0,Oa=0}else{ua=(jb*ub-Ca*eb)/Sa,Oa=(eb*Ia-ub*Ca)/Sa}var Wa=d-1|0;if(1e-6<=(Ea?Sa:-Sa)&0>2;var qb=c;B=qb>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];Jf(ia,g,e,ob);var Aa=n;A=Aa>>2;var kb=ia;w=kb>>2;a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];var Qa=(Wa<<4)+c|0,vb=m;u=vb>>2;var xb=Qa;t=xb>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Jf(J,j,l,pb);var Ma=p;v=Ma>>2;var nb=J}else{var rb=c|0,lb=(b[0]=a[rb>>2],b[1]=a[rb+4>>2],f[0]),Ta=c+8|0,cb=(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0]),fb=(Wa<<4)+c|0,Ua=(Wa<<4)+c+8|0,sb=Hv(lb,cb,(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]),(b[0]=a[Ua>>2],b[1]=a[Ua+4>>2],f[0]))/3,ob=pb=sb,bb=k;C=bb>>2;qb=c;B=qb>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];Jf(ia,g,e,ob);Aa=n;A=Aa>>2;kb=ia;w=kb>>2;a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];Qa=(Wa<<4)+c|0;vb=m;u=vb>>2;xb=Qa;t=xb>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];Jf(J,j,l,pb);Ma=p;v=Ma>>2;nb=J}s=nb>>2;a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];h=X}function eL(c,d,i,g,e,j,l,k,n,m,p,s){var v,t,u,w,A,B,C=h;h+=64;var y,T=2==(s|0),D=C|0,F=C|0,M=C+8|0;B=(C+16|0)>>2;A=(C+24|0)>>2;w=(C+32|0)>>2;u=(C+40|0)>>2;t=(C+48|0)>>2;v=(C+56|0)>>2;for(var E=1,O=4,G=4;;){f[0]=i;a[F>>2]=b[0];a[F+4>>2]=b[1];f[0]=g;a[M>>2]=b[0];a[M+4>>2]=b[1];f[0]=G*e/3+i;a[B]=b[0];a[B+1]=b[1];f[0]=G*j/3+g;a[A]=b[0];a[A+1]=b[1];f[0]=l-O*n/3;a[w]=b[0];a[w+1]=b[1];f[0]=k-O*m/3;a[u]=b[0];a[u+1]=b[1];f[0]=l;a[t]=b[0];a[t+1]=b[1];f[0]=k;a[v]=b[0];a[v+1]=b[1];if(E&&fL(D,4)>2]+4|0),d=a[Lg>>2],c=a[ge>>2],B=(b[0]=a[B],b[1]=a[B+1],f[0]),i=(c<<4)+d|0,f[0]=B,a[i>>2]=b[0],a[i+4>>2]=b[1],B=(b[0]=a[A],b[1]=a[A+1],f[0]),A=c+1|0,i=(c<<4)+d+8|0,f[0]=B,a[i>>2]=b[0],a[i+4>>2]=b[1],w=(b[0]=a[w],b[1]=a[w+1],f[0]),B=(A<<4)+d|0,f[0]=w,a[B>>2]=b[0],a[B+4>>2]=b[1],w=(b[0]=a[u],b[1]=a[u+1],f[0]),u=c+2|0,A=(A<<4)+d+8|0,f[0]=w,a[A>>2]=b[0],a[A+4>>2]=b[1],t=(b[0]=a[t],b[1]=a[t+1],f[0]),w=(u<<4)+d|0,f[0]=t,a[w>>2]=b[0],a[w+4>>2]=b[1],v=(b[0]=a[v],b[1]=a[v+1],f[0]),t=(u<<4)+d+8|0,f[0]=v,a[t>>2]=b[0],a[t+4>>2]=b[1],a[ge>>2]=c+3|0,h=C,1}if(2268==y){return h=C,J}if(2261==y){if(!T){return h=C,0}Fv(a[ge>>2]+4|0);d=a[Lg>>2];c=a[ge>>2];B=(b[0]=a[B],b[1]=a[B+1],f[0]);i=(c<<4)+d|0;f[0]=B;a[i>>2]=b[0];a[i+4>>2]=b[1];B=(b[0]=a[A],b[1]=a[A+1],f[0]);A=c+1|0;i=(c<<4)+d+8|0;f[0]=B;a[i>>2]=b[0];a[i+4>>2]=b[1];w=(b[0]=a[w],b[1]=a[w+1],f[0]);B=(A<<4)+d|0;f[0]=w;a[B>>2]=b[0];a[B+4>>2]=b[1];w=(b[0]=a[u],b[1]=a[u+1],f[0]);u=c+2|0;A=(A<<4)+d+8|0;f[0]=w;a[A>>2]=b[0];a[A+4>>2]=b[1];t=(b[0]=a[t],b[1]=a[t+1],f[0]);w=(u<<4)+d|0;f[0]=t;a[w>>2]=b[0];a[w+4>>2]=b[1];v=(b[0]=a[v],b[1]=a[v+1],f[0]);t=(u<<4)+d+8|0;f[0]=v;a[t>>2]=b[0];a[t+4>>2]=b[1];a[ge>>2]=c+3|0;h=C;return 1}}function Fv(b){var c=h;if((a[Iv>>2]|0)<(b|0)){var d=a[Lg>>2];0==(d|0)?(d=Gb(b<<4),a[Lg>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Jv|0,a[j+4>>2]=519,a[j+8>>2]=Kv|0,j)),S())):(d=mc(d,b<<4),a[Lg>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Jv|0,a[j+4>>2]=525,a[j+8>>2]=Lv|0,j)),S()));a[Iv>>2]=b}h=c}function Ll(c,d,i,g,e){var i=3*i,h=e+24|0;f[0]=3*d+g-(i+c);a[h>>2]=b[0];a[h+4>>2]=b[1];g=e+16|0;f[0]=3*c+i-6*d;a[g>>2]=b[0];a[g+4>>2]=b[1];g=e+8|0;f[0]=3*(d-c);a[g>>2]=b[0];a[g+4>>2]=b[1];f[0]=c;a[e>>2]=b[0];a[e+4>>2]=b[1]}function Ml(c,d,i){0<=c&1>=c&&(d=(a[i>>2]<<3)+d|0,f[0]=c,a[d>>2]=b[0],a[d+4>>2]=b[1],a[i>>2]=a[i>>2]+1|0)}function fL(c,d){if(1>=(d|0)){var i;return 0}for(var g=c|0,e=c+8|0,h=1,l=0,k=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),n=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);;){if(e=(h<<4)+c|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),k=e-k,g=(h<<4)+c+8|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),n=g-n,l+=$c(k*k+n*n),h=h+1|0,(h|0)==(d|0)){i=l;break}else{k=e,n=g}}return i}function gL(c,d,i){var g,e,j,l=h;h+=64;var k,n=l+32,m=n|0;j=n>>2;var p=n+16|0;e=p>>2;var s=l|0,v=i|0,t=i+16|0,u=i+32|0,w=i+48|0,A=i+8|0,B=i+24|0,C=i+40|0,y=i+56|0,T=n|0,D=n+8|0,p=p|0,n=n+24|0,F=0;a:for(;;){if((F|0)>=(d|0)){var M=1;k=2306;break}g=((F<<5)+c|0)>>2;a[j]=a[g];a[j+1]=a[g+1];a[j+2]=a[g+2];a[j+3]=a[g+3];g=((F<<5)+c+16|0)>>2;a[e]=a[g];a[e+1]=a[g+1];a[e+2]=a[g+2];a[e+3]=a[g+3];g=hL(i,m,s);var E=4==(g|0);b:do{if(!E){for(var O=(b[0]=a[T>>2],b[1]=a[T+4>>2],f[0]),G=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),J=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),ia=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),H=0;;){if((H|0)>=(g|0)){break b}var I=(H<<3)+l|0,I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]);do{if(!(1e-6>I|.999999>2],b[1]=a[v+4>>2],f[0])+L*(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])+S*(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+K*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),K=Q*(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])+L*(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])+S*(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])+K*(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),S=N-O,L=K-G;if(.001<=S*S+L*L&&(N-=J,K-=ia,.001<=N*N+K*K)){M=0;k=2307;break a}}}while(0);H=H+1|0}}}while(0);F=F+1|0}if(2306==k||2307==k){return h=l,M}}function hL(c,d,i){var g,e,j,l,k,n=h;h+=84;var m=n+32;l=n+56;var p=n+80;k=p>>2;var s=d|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=d+16|0;g=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0])-v;s=d+8|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);d=d+24|0;j=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-s;a[k]=0;if(0!=g){var t=j/g,d=c+8|0;l=(c|0)>>2;var u=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-t*(b[0]=a[l],b[1]=a[l+1],f[0]);j=c+24|0;var d=(c+16|0)>>2,w=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])-t*(b[0]=a[d],b[1]=a[d+1],f[0]);e=c+40|0;j=(c+32|0)>>2;var A=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-t*(b[0]=a[j],b[1]=a[j+1],f[0]),B=c+56|0;e=(c+48|0)>>2;var C=n|0,c=C>>2;Ll(u,w,A,(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])-t*(b[0]=a[e],b[1]=a[e+1],f[0]),C);s=(b[0]=a[c],b[1]=a[c+1],f[0])+(t*v-s);f[0]=s;a[c]=b[0];a[c+1]=b[1];s=Hp(C,m|0);if(4==(s|0)){return h=n,4}if(0>=(s|0)){return h=n,0}t=n+8|0;u=n+16|0;w=n+24|0;for(A=0;;){B=(A<<3)+m|0;B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);if(0<=B&1>=B){var y=(b[0]=a[l],b[1]=a[l+1],f[0]),T=(b[0]=a[d],b[1]=a[d+1],f[0]);Ll(y,T,(b[0]=a[j],b[1]=a[j+1],f[0]),(b[0]=a[e],b[1]=a[e+1],f[0]),C);y=(b[0]=a[c],b[1]=a[c+1],f[0]);T=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]);y=(y+B*(T+B*((b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+B*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])))-v)/g;0<=y&1>=y&&Ml(B,i,p)}A=A+1|0;if((A|0)==(s|0)){break}}i=a[k];h=n;return i}e=0==j;g=c|0;C=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=c+16|0;t=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);u=c+32|0;w=c+48|0;d=n|0;g=d>>2;Ll(C,t,(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),d);v=(b[0]=a[g],b[1]=a[g+1],f[0])-v;f[0]=v;a[g]=b[0];a[g+1]=b[1];v=Hp(d,m|0);if(!e){if(4==(v|0)){return h=n,4}if(0>=(v|0)){return h=n,0}l=c+8|0;e=c+24|0;C=c+40|0;c=c+56|0;t=n+8|0;u=n+16|0;w=n+24|0;for(A=0;!(B=(A<<3)+m|0,B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),0<=B&1>=B&&(y=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),T=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),Ll(y,T,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d),y=(b[0]=a[g],b[1]=a[g+1],f[0]),T=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),y=(y+B*(T+B*((b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+B*(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])))-s)/j,0<=y&1>=y&&Ml(B,i,p)),A=A+1|0,(A|0)==(v|0));){}i=a[k];h=n;return i}j=c+8|0;j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);e=c+24|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);C=c+40|0;c=c+56|0;Ll(j,e,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d);s=(b[0]=a[g],b[1]=a[g+1],f[0])-s;f[0]=s;a[g]=b[0];a[g+1]=b[1];s=Hp(d,l|0);c=4==(v|0);g=4==(s|0);a:do{if(c){if(g){return i=4,h=n,i}if(0<(s|0)){for(d=0;;){if(j=(d<<3)+l|0,Ml((b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),i,p),d=d+1|0,(d|0)==(s|0)){break a}}}}else{d=0<(v|0);if(g){if(d){j=0}else{break}for(;;){if(e=(j<<3)+m|0,Ml((b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),i,p),j=j+1|0,(j|0)==(v|0)){break a}}}if(d){d=0<(s|0);for(j=0;;){b:do{if(d){e=(j<<3)+m|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);for(C=0;;){if(t=(C<<3)+l|0,e==(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])&&Ml(e,i,p),C=C+1|0,(C|0)==(s|0)){break b}}}}while(0);j=j+1|0;if((j|0)==(v|0)){break a}}}}}while(0);i=a[k];h=n;return i}function od(a,b,c,d,f,e){a=(b-d)*(f-c)-(e-d)*(a-c);return 0a?2:3}function iL(b,c){var d,g,f,e=a[kg>>2];g=e>>2;for(var l=0;;){var k=e+52*b|0,h=e+52*c|0;d=((l<<4)+e+52*b+4|0)>>2;var j=a[a[d]>>2],p=a[a[g+(13*c|0)+1]>>2];if((j|0)==(p|0)){if(f=a[a[g+(13*c|0)+2]>>2],(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(f|0)){f=2362}else{var m=f;f=2360}}else{m=a[a[g+(13*c|0)+2]>>2],f=2360}if(2360==f){if(f=0,(j|0)!=(m|0)){var v=j}else{(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(p|0)?f=2362:v=j}}2362==f&&(a[((l<<4)+16>>2)+g+(13*b|0)]=h,a[g+(13*c|0)+4]=k,v=a[a[d]>>2]);j=a[a[g+(13*c|0)+5]>>2];if((v|0)==(j|0)){if(f=a[a[g+(13*c|0)+6]>>2],(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(f|0)){f=2369}else{var t=f;f=2367}}else{t=a[a[g+(13*c|0)+6]>>2],f=2367}if(2367==f){if(f=0,(v|0)!=(t|0)){var u=v}else{(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(j|0)?f=2369:u=v}}2369==f&&(a[((l<<4)+16>>2)+g+(13*b|0)]=h,a[g+(13*c|0)+8]=k,u=a[a[d]>>2]);d=a[a[g+(13*c|0)+9]>>2];if((u|0)==(d|0)){if(f=a[a[g+(13*c|0)+10]>>2],(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(f|0)){f=2375}else{var w=f;f=2373}}else{w=a[a[g+(13*c|0)+10]>>2],f=2373}2373==f&&(f=0,(u|0)==(w|0)&&(a[a[((l<<4)+8>>2)+g+(13*b|0)]>>2]|0)==(d|0)&&(f=2375));2375==f&&(a[((l<<4)+16>>2)+g+(13*b|0)]=h,a[g+(13*c|0)+12]=k);l=l+1|0;if(3==(l|0)){break}}}function Gt(c,d,i){var g,e,Xa,l,k,n,m,p,s,v,t,u,w,A,B,C,y=i>>2,T=h;h+=16;var D;C=T>>2;B=(c+4|0)>>2;jL(a[B]);a[Qh>>2]=0;a[ij>>2]=0;var F=a[B]<<1,M=h;if((a[Ip>>2]|0)<(F|0)){var E=a[Mg>>2];if(0==(E|0)){var O=Gb(F<<2);a[Mg>>2]=O;0==(O|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=564,a[j+8>>2]=kL|0,j)),S())}else{var G=mc(E,F<<2);a[Mg>>2]=G;0==(G|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=571,a[j+8>>2]=lL|0,j)),S())}a[Ip>>2]=F}h=M;var J=(a[Ip>>2]|0)/2&-1;a[lg>>2]=J;a[Ng>>2]=J-1|0;var I=a[B],H=0<(I|0);A=(c|0)>>2;var K=a[A];a:do{if(H){for(var L=Infinity,N=-1,Q=0;;){var R=(Q<<4)+K|0,U=(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]),W=L>U,ca=W?Q:N,Y=Q+1|0;if((Y|0)<(I|0)){L=W?U:L,N=ca,Q=Y}else{var Z=ca;break a}}}else{Z=-1}}while(0);var V=(Z<<4)+K|0,ja=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),aa=(Z<<4)+K+8|0,da=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=(0==(Z|0)?I:Z)-1|0,xa=(ea<<4)+K|0,$=(b[0]=a[xa>>2],b[1]=a[xa+4>>2],f[0]),la=(Z|0)==(I-1|0)?0:Z+1|0,ha=(la<<4)+K|0,ga=(b[0]=a[ha>>2],b[1]=a[ha+4>>2],f[0]),ba=(la<<4)+K+8|0,sa=(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]),fa=$==ja&ja==ga&sa>da;a:do{if(fa){D=2382}else{var tb=(ea<<4)+K+8|0;if(1!=(od($,(b[0]=a[tb>>2],b[1]=a[tb+4>>2],f[0]),ja,da,ga,sa)|0)){D=2382}else{if(H){for(var ya=0,ra=I,wa=K;;){if(0<(ya|0)){var Ab=(ya<<4)+wa|0,Fa=ya-1|0,Ga=(Fa<<4)+wa|0;if((b[0]=a[Ab>>2],b[1]=a[Ab+4>>2],f[0])!=(b[0]=a[Ga>>2],b[1]=a[Ga+4>>2],f[0])){D=2392}else{var ka=(ya<<4)+wa+8|0,ta=(Fa<<4)+wa+8|0;if((b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0])==(b[0]=a[ta>>2],b[1]=a[ta+4>>2],f[0])){var Ka=ra}else{D=2392}}}else{D=2392}if(2392==D){D=0;var za=a[Qh>>2],ma=a[jj>>2];a[ma+(za<<3)>>2]=(ya<<4)+wa|0;a[ma+(za<<3)+4>>2]=(za%a[B]<<3)+ma|0;a[a[Rh>>2]+(za<<2)>>2]=(za<<3)+ma|0;a[Qh>>2]=za+1|0;Ka=a[B]}var pa=ya+1|0;if((pa|0)>=(Ka|0)){break a}ya=pa;ra=Ka;wa=a[A]}}}}}while(0);a:do{if(2382==D&&H){for(var qa=I,Ha=I,Ra=K;;){var na=qa-1|0;if((na|0)<(Ha-1|0)){var Ba=(na<<4)+Ra|0,La=(qa<<4)+Ra|0;if((b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0])!=(b[0]=a[La>>2],b[1]=a[La+4>>2],f[0])){D=2388}else{var va=(na<<4)+Ra+8|0,Ya=(qa<<4)+Ra+8|0;if((b[0]=a[va>>2],b[1]=a[va+4>>2],f[0])!=(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0])){D=2388}}}else{D=2388}if(2388==D){D=0;var Aa=a[Qh>>2],Za=a[jj>>2];a[Za+(Aa<<3)>>2]=(na<<4)+Ra|0;a[Za+(Aa<<3)+4>>2]=(Aa%a[B]<<3)+Za|0;a[a[Rh>>2]+(Aa<<2)>>2]=(Aa<<3)+Za|0;a[Qh>>2]=Aa+1|0}if(0>=(na|0)){break a}qa=na;Ha=a[B];Ra=a[A]}}}while(0);var Ea=a[Rh>>2],ab=a[Qh>>2],$a=Ea>>2,jb=h,Ca,Ia=ab,eb=ab;a:for(;;){var ub=eb-1|0;if(3<(Ia|0)){var Sa=0}else{Ca=2454;break}for(;;){if((Sa|0)>=(Ia|0)){Ca=2453;break a}var Qa=Sa+1|0,ua=(Sa+2|0)%(Ia|0);if(0==(mL(Sa,ua,Ea,Ia)|0)){Sa=Qa}else{break}}var Oa=(Qa|0)%(Ia|0);nL(a[(Sa<<2>>2)+$a],a[(Oa<<2>>2)+$a],a[(ua<<2>>2)+$a]);var Wa=Ia-1|0;if((Oa|0)<(Wa|0)){for(var pb=Oa;;){var ob=pb+1|0;a[(pb<<2>>2)+$a]=a[(ob<<2>>2)+$a];if((ob|0)==(ub|0)){Ia=Wa;eb=ub;continue a}else{pb=ob}}}else{Ia=Wa,eb=ub}}2454==Ca?(nL(a[$a],a[$a+1],a[$a+2]),h=jb):2453==Ca&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=315,a[j+8>>2]=oL|0,j)),h=jb);var bb=a[ij>>2],qb=0<(bb|0);a:do{if(qb){for(var Ma=0;;){var kb=Ma+1|0,Cb=(kb|0)<(bb|0);if(Cb){var vb=kb}else{break a}for(;;){iL(Ma,vb);var xb=vb+1|0;if((xb|0)<(bb|0)){vb=xb}else{break}}if(Cb){Ma=kb}else{break a}}}}while(0);for(var wb=d|0,nb=d+8|0,rb=0;(rb|0)<(bb|0);){if(0==(Mv(rb,(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),(b[0]=a[nb>>2],b[1]=a[nb+4>>2],f[0]))|0)){rb=rb+1|0}else{break}}if((rb|0)==(bb|0)){Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=183,a[j+8>>2]=pL|0,j));var lb=-1;h=T;return lb}var Ta=d+16|0;w=(Ta|0)>>2;u=(d+24|0)>>2;for(var cb=0;(cb|0)<(bb|0);){if(0==(Mv(cb,(b[0]=a[w],b[1]=a[w+1],f[0]),(b[0]=a[u],b[1]=a[u+1],f[0]))|0)){cb=cb+1|0}else{break}}if((cb|0)==(bb|0)){return Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=191,a[j+8>>2]=qL|0,j)),lb=-1,h=T,lb}if(0==(rL(rb,cb)|0)){Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=198,a[j+8>>2]=sL|0,j));Nv(2);a[y+1]=2;var fb=a[Sh>>2];t=fb>>2;v=d>>2;a[t]=a[v];a[t+1]=a[v+1];a[t+2]=a[v+2];a[t+3]=a[v+3];s=(fb+16|0)>>2;p=Ta>>2;a[s]=a[p];a[s+1]=a[p+1];a[s+2]=a[p+2];a[s+3]=a[p+3];a[y]=fb;lb=0;h=T;return lb}if((rb|0)==(cb|0)){Nv(2);a[y+1]=2;var Ua=a[Sh>>2];m=Ua>>2;n=d>>2;a[m]=a[n];a[m+1]=a[n+1];a[m+2]=a[n+2];a[m+3]=a[n+3];k=(Ua+16|0)>>2;l=Ta>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];a[y]=Ua;lb=0;h=T;return lb}a[C]=d;a[C+1]=0;var sb=T+8|0;a[sb>>2]=Ta;a[C+3]=0;Nl(1,T|0);var Na=a[lg>>2];a[Ol>>2]=Na;var Fb=-1==(rb|0);a:do{if(Fb){var Db=0,Ob=sb}else{var Eb=a[kg>>2];Xa=Eb>>2;for(var Pa=rb,Bb=Na;;){a[Xa+(13*Pa|0)]=2;for(var Ja=0;3>(Ja|0);){var hb=a[((Ja<<4)+16>>2)+Xa+(13*Pa|0)];if(0!=(hb|0)&&1==(a[hb>>2]|0)){break}Ja=Ja+1|0}if(3==(Ja|0)){var ib=a[Mg>>2],db=a[a[ib+(a[lg>>2]<<2)>>2]>>2],yb=a[ib+(a[Ng>>2]<<2)>>2],mb=a[yb>>2],Ib=(b[0]=a[w],b[1]=a[w+1],f[0]),ic=(b[0]=a[u],b[1]=a[u+1],f[0]),Hb=db|0,Kb=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Jb=db+8|0,Lb=(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),Mb=mb|0,pc=mb+8|0,Nb=1==(od(Ib,ic,Kb,Lb,(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]),(b[0]=a[pc>>2],b[1]=a[pc+4>>2],f[0]))|0),Vb=Nb?sb:yb,Pb=Nb?yb:sb}else{var Wb=a[((Ja<<4)+4>>2)+Xa+(13*Pa|0)],Tb=a[Wb>>2],Yb=a[a[(((Ja+1)%3<<4)+8>>2)+Xa+(13*Pa|0)]>>2],Sb=a[((Ja<<4)+8>>2)+Xa+(13*Pa|0)],$b=a[Sb>>2],lc=Tb|0,ec=(b[0]=a[lc>>2],b[1]=a[lc+4>>2],f[0]),Zb=Tb+8|0,kc=(b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0]),Hc=Yb|0,qc=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0]),nc=Yb+8|0,gc=(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0]),Qb=$b|0,tc=$b+8|0,Sc=1==(od(ec,kc,qc,gc,(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),(b[0]=a[tc>>2],b[1]=a[tc+4>>2],f[0]))|0),Vb=Sc?Wb:Sb,Pb=Sc?Sb:Wb}var bc=(Pa|0)==(rb|0);b:do{if(bc){Nl(2,Pb);Nl(1,Vb);var Xb=Bb}else{var uc=a[Mg>>2];do{if((a[uc+(a[lg>>2]<<2)>>2]|0)!=(Vb|0)&&(a[uc+(a[Ng>>2]<<2)>>2]|0)!=(Vb|0)){var rd=Ov(Vb);a[lg>>2]=rd;Nl(1,Vb);if((rd|0)<=(Bb|0)){Xb=Bb;break b}Xb=a[Ol>>2]=rd;break b}}while(0);var oc=Ov(Pb);a[Ng>>2]=oc;Nl(2,Pb);Xb=(oc|0)<(Bb|0)?a[Ol>>2]=oc:Bb}}while(0);for(var ac=0;;){if(3<=(ac|0)){Db=0;Ob=sb;break a}var dc=a[((ac<<4)+16>>2)+Xa+(13*Pa|0)];if(0!=(dc|0)&&1==(a[dc>>2]|0)){break}ac=ac+1|0}var rc=dc-Eb|0;if(-52==(rc|0)){Db=0;Ob=sb;break a}else{Pa=(rc|0)/52&-1,Bb=Xb}}}}while(0);for(;;){var jc=Db+1|0,Bc=a[Ob+4>>2];if(0==(Bc|0)){break}else{Db=jc,Ob=Bc}}Nv(jc);a[y+1]=jc;for(var fc=a[Sh>>2],fd=sb,Ac=Db;;){e=((Ac<<4)+fc|0)>>2;g=a[fd>>2]>>2;a[e]=a[g];a[e+1]=a[g+1];a[e+2]=a[g+2];a[e+3]=a[g+3];var yc=a[fd+4>>2];if(0==(yc|0)){break}else{fd=yc,Ac=Ac-1|0}}a[y]=fc;lb=0;h=T;return lb}function Mv(c,d,i){var g;g=a[kg>>2]>>2;var e=a[a[g+(13*c|0)+1]>>2],h=a[a[g+(13*c|0)+2]>>2],l=e|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),e=e+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),k=h|0,h=h+8|0,h=2!=(od(l,e,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),d,i)|0)&1,k=a[a[g+(13*c|0)+5]>>2],l=a[a[g+(13*c|0)+6]>>2],e=k|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),k=k+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=l|0,l=l+8|0,h=(2!=(od(e,k,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),d,i)|0)&1)+h|0,l=a[a[g+(13*c|0)+9]>>2],c=a[a[g+(13*c|0)+10]>>2];g=l|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);l=l+8|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);e=c|0;c=c+8|0;d=(2!=(od(g,l,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),d,i)|0)&1)+h|0;return(3==(d|0)|0==(d|0))&1}function jL(b){var c=h;if((a[Pv>>2]|0)<(b|0)){var d=a[jj>>2];0==(d|0)?(d=Gb(b<<3),a[jj>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=514,a[j+8>>2]=tL|0,j)),S()),d=Gb(b<<2),a[Rh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=518,a[j+8>>2]=uL|0,j)),S())):(d=mc(d,b<<3),a[jj>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=524,a[j+8>>2]=vL|0,j)),S()),d=mc(a[Rh>>2],b<<2),a[Rh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=530,a[j+8>>2]=wL|0,j)),S()));a[Pv>>2]=b}h=c}function Nl(b,c){var d,g=a[Ng>>2],f=a[lg>>2],e=-1<(g-f|0);d=a[Mg>>2]>>2;1==(b|0)?(e&&(a[c+4>>2]=a[(f<<2>>2)+d]),g=f-1|0,a[lg>>2]=g):(e&&(a[c+4>>2]=a[(g<<2>>2)+d]),g=g+1|0,a[Ng>>2]=g);a[(g<<2>>2)+d]=c}function rL(b,c){var d,g,f=a[kg>>2];d=(f+52*b|0)>>2;if(0!=(a[d]|0)){var e;return 0}a[d]=1;if((b|0)==(c|0)){return 1}for(var l=0;3>(l|0);){var k=a[((l<<4)+f+16>>2)+(13*b|0)];if(0!=(k|0)&&0!=(rL((k-f|0)/52&-1,c)|0)){e=1;g=2515;break}l=l+1|0}return 2515==g?e:a[d]=0}function Ov(c){var d,i,g=a[Ol>>2];d=a[Mg>>2]>>2;for(var c=c|0,e=a[lg>>2];(e|0)<(g|0);){var h=e+1|0,l=a[a[(h<<2>>2)+d]>>2],k=a[a[(e<<2>>2)+d]>>2],n=a[c>>2],j=l|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),l=l+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),p=k|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),k=k+8|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),m=n|0,n=n+8|0;if(1==(od(j,l,p,k,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]))|0)){var v=e;i=2525;break}else{e=h}}if(2525==i){return v}for(e=a[Ng>>2];;){if((e|0)<=(g|0)){v=g;i=2526;break}h=e-1|0;l=a[a[(h<<2>>2)+d]>>2];k=a[a[(e<<2>>2)+d]>>2];n=a[c>>2];j=l|0;j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);l=l+8|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);p=k|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);k=k+8|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);m=n|0;n=n+8|0;if(2==(od(j,l,p,k,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]))|0)){v=e;i=2524;break}else{e=h}}if(2524==i||2526==i){return v}}function mL(c,d,i,g){var i=i>>2,e,h=a[a[((c-1+g)%g<<2>>2)+i]>>2],l=a[a[(c<<2>>2)+i]>>2],k=a[a[((c+1)%g<<2>>2)+i]>>2],n=h|0,j=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),h=h+8|0,p=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=l|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=l+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),n=k|0,m=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k=k+8|0,v=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),t=1==(od(j,p,h,l,m,v)|0),n=a[a[(d<<2>>2)+i]>>2],k=n|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=n+8|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);if(0==((t?(1==(od(h,l,k,n,j,p)|0)?1==(od(k,n,h,l,m,v)|0):0)&1:2==(od(h,l,k,n,m,v)|0)&1)|0)){var u;return 0}for(p=0;;){if((p|0)>=(g|0)){u=1;e=2537;break}j=p+1|0;m=(j|0)%(g|0);if((p|0)==(c|0)|(m|0)==(c|0)|(p|0)==(d|0)|(m|0)==(d|0)){p=j}else{var p=a[a[(p<<2>>2)+i]>>2],w=a[a[(m<<2>>2)+i]>>2],A=p|0,B=p+8|0;a:{var p=h,m=l,v=k,t=n,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),C=od(p,m,v,t,A,B);if(3!=(C|0)){var y=w|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),D=w+8|0,F=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),D=od(p,m,v,t,y,F);if(3!=(D|0)){var E=od(A,B,y,F,p,m);if(3!=(E|0)&&(y=od(A,B,y,F,v,t),3!=(y|0))){p=(1==(C|0)^1==(D|0)?1==(E|0)^1==(y|0):0)&1;break a}}}0!=(Jp(p,m,v,t,A,B)|0)?p=1:(C=w|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),w=w+8|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),p=0!=(Jp(p,m,v,t,C,w)|0)?1:0==(Jp(A,B,C,w,p,m)|0)?0!=(Jp(A,B,C,w,v,t)|0)&1:1)}if(0==(p|0)){p=j}else{u=0;e=2538;break}}}if(2538==e||2537==e){return u}}function nL(b,c,d){var g;g=a[ij>>2];var f=a[Kp>>2];if((g|0)<(f|0)){f=g}else{g=f+20|0;f=h;if((a[Kp>>2]|0)<(g|0)){var e=a[kg>>2];0==(e|0)?(e=Gb(52*g|0),a[kg>>2]=e,0==(e|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=543,a[j+8>>2]=xL|0,j)),S())):(e=mc(e,52*g|0),a[kg>>2]=e,0==(e|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=549,a[j+8>>2]=yL|0,j)),S()));a[Kp>>2]=g}h=f;f=a[ij>>2]}a[ij>>2]=f+1|0;e=a[kg>>2];g=e>>2;e=e+52*f|0;a[e>>2]=0;a[g+(13*f|0)+1]=b;a[g+(13*f|0)+2]=c;a[g+(13*f|0)+4]=0;a[g+(13*f|0)+5]=c;a[g+(13*f|0)+6]=d;a[g+(13*f|0)+8]=0;a[g+(13*f|0)+9]=d;a[g+(13*f|0)+10]=b;a[g+(13*f|0)+12]=0;a[g+(13*f|0)+3]=e;a[g+(13*f|0)+7]=e;a[g+(13*f|0)+11]=e}function Jp(a,b,c,d,f,e){var l=c-a,k=d-b,h=f-a,j=e-b;return 3!=(od(a,b,c,d,f,e)|0)?0:(0>h*l+j*k?0:h*h+j*j<=l*l+k*k)&1}function Hp(c,d){var i=c+24|0,g=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(1e-7>g&-1e-7>2],b[1]=a[e+4>>2],f[0]);1e-7>i&-1e-7>2],b[1]=a[e+4>>2],f[0]),i=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),1e-7>e&-1e-7i&-1e-7>2]=b[0],a[d+4>>2]=b[1],e=1)):(e=c+8|0,g=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])/(2*i),i=e*e-g/i,0>i?e=0:0==i?(f[0]=-e,a[d>>2]=b[0],a[d+4>>2]=b[1],e=1):(i=$c(i)-e,f[0]=i,a[d>>2]=b[0],a[d+4>>2]=b[1],g=d+8|0,f[0]=-2*e-i,a[g>>2]=b[0],a[g+4>>2]=b[1],e=2));return e}var h=c+8|0,i=c+16|0,l=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])/(3*g),h=h/g,k=i*i,l=2*i*k-i*h+l/g,g=h/3-k,h=l*l,g=h+4*g*g*g;if(0>g){h=.5*$c(h-g);g=Cf($c(-g),-l);h=2*(0>h?-1*kj(-h,.3333333333333333):kj(h,.3333333333333333));l=h*se(g/3);f[0]=l;a[d>>2]=b[0];a[d+4>>2]=b[1];var k=h*se((g+6.283185307179586)/3),n=d+8|0;f[0]=k;a[n>>2]=b[0];a[n+4>>2]=b[1];g=h*se((g-3.141592653589793-3.141592653589793)/3);h=d+16|0;f[0]=g;a[h>>2]=b[0];a[h+4>>2]=b[1];g=3}else{h=.5*($c(g)-l),l=-l-h,h=0>h?-1*kj(-h,.3333333333333333):kj(h,.3333333333333333),l=0>l?-1*kj(-l,.3333333333333333):kj(l,.3333333333333333),l=h+l,f[0]=l,a[d>>2]=b[0],a[d+4>>2]=b[1],0>2]=b[0],a[h+4>>2]=b[1],h=d+8|0,f[0]=g,a[h>>2]=b[0],a[h+4>>2]=b[1],g=3)}h=l;for(l=0;;){k=(l<<3)+d|0;f[0]=h-i;a[k>>2]=b[0];a[k+4>>2]=b[1];l=l+1|0;if((l|0)>=(g|0)){e=g;break}h=(l<<3)+d|0;h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])}return e}function zL(c,d,i,g){var i=i>>2,e,h=a[((c-1+g)%g<<2>>2)+i],l=a[(c<<2>>2)+i],k=a[((c+1)%g<<2>>2)+i],n=h|0,j=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),h=h+8|0,p=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),h=l|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=l+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),n=k|0,m=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),k=k+8|0,v=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),t=1==(mg(j,p,h,l,m,v)|0),n=a[(d<<2>>2)+i],k=n|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=n+8|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);if(0==((t?(1==(mg(h,l,k,n,j,p)|0)?1==(mg(k,n,h,l,m,v)|0):0)&1:2==(mg(h,l,k,n,m,v)|0)&1)|0)){var u;return 0}for(p=0;;){if((p|0)>=(g|0)){u=1;e=2614;break}j=p+1|0;m=(j|0)%(g|0);if((p|0)==(c|0)|(m|0)==(c|0)|(p|0)==(d|0)|(m|0)==(d|0)){p=j}else{var p=a[(p<<2>>2)+i],w=a[(m<<2>>2)+i],A=p|0,B=p+8|0;a:{var p=h,m=l,v=k,t=n,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),B=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]),C=mg(p,m,v,t,A,B);if(3!=(C|0)){var y=w|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),D=w+8|0,F=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),D=mg(p,m,v,t,y,F);if(3!=(D|0)){var E=mg(A,B,y,F,p,m);if(3!=(E|0)&&(y=mg(A,B,y,F,v,t),3!=(y|0))){p=(1==(C|0)^1==(D|0)?1==(E|0)^1==(y|0):0)&1;break a}}}0!=(Lp(p,m,v,t,A,B)|0)?p=1:(C=w|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),w=w+8|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),p=0!=(Lp(p,m,v,t,C,w)|0)?1:0==(Lp(A,B,C,w,p,m)|0)?0!=(Lp(A,B,C,w,v,t)|0)&1:1)}if(0==(p|0)){p=j}else{u=0;e=2616;break}}}if(2616==e||2614==e){return u}}function Nv(b){var c=h;if((a[Qv>>2]|0)<(b|0)){var d=a[Sh>>2];0==(d|0)?(d=Gb(b<<4),a[Sh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=584,a[j+8>>2]=Kv|0,j)),S())):(d=mc(d,b<<4),a[Sh>>2]=d,0==(d|0)&&(Va(a[oa>>2],dd|0,(j=h,h+=12,a[j>>2]=Pd|0,a[j+4>>2]=590,a[j+8>>2]=Lv|0,j)),S()));a[Qv>>2]=b}h=c}function AL(b,c,d,g){var f,e,l,k;k=b>>2;var n=h;h+=48;var j;if(3<(c|0)){for(e=0;;){if((e|0)>=(c|0)){j=2645;break}l=e+1|0;f=(e+2|0)%(c|0);if(0==(zL(e,f,b,c)|0)){e=l}else{break}}2645==j&&S();j=(l|0)%(c|0);l=n>>2;e=a[(e<<2>>2)+k]>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];l=(n+16|0)>>2;e=a[(j<<2>>2)+k]>>2;a[l]=a[e];a[l+1]=a[e+1];a[l+2]=a[e+2];a[l+3]=a[e+3];e=(n+32|0)>>2;f=a[(f<<2>>2)+k]>>2;a[e]=a[f];a[e+1]=a[f+1];a[e+2]=a[f+2];a[e+3]=a[f+3];J[d](g,n|0);f=0<(c|0);a:do{if(f){for(l=e=0;;){if((e|0)!=(j|0)&&(a[(l<<2>>2)+k]=a[(e<<2>>2)+k],l=l+1|0),e=e+1|0,(e|0)==(c|0)){break a}}}}while(0);AL(b,c-1|0,d,g)}else{c=n>>2,b=a[k]>>2,a[c]=a[b],a[c+1]=a[b+1],a[c+2]=a[b+2],a[c+3]=a[b+3],c=(n+16|0)>>2,b=a[k+1]>>2,a[c]=a[b],a[c+1]=a[b+1],a[c+2]=a[b+2],a[c+3]=a[b+3],b=(n+32|0)>>2,k=a[k+2]>>2,a[b]=a[k],a[b+1]=a[k+1],a[b+2]=a[k+2],a[b+3]=a[k+3],J[d](g,n|0)}h=n}function mg(a,b,c,d,f,e){a=(b-d)*(f-c)-(e-d)*(a-c);return 0a?1:3}function Lp(a,b,c,d,f,e){var l=c-a,k=d-b,h=f-a,j=e-b;return 3!=(mg(a,b,c,d,f,e)|0)?0:(0>h*l+j*k?0:h*h+j*j<=l*l+k*k)&1}function Ht(b,c,d){var g,f,e,l,k,h;g=3*c|0;var j=g-2|0,p=a[Rv>>2];(j|0)>(a[Sv>>2]|0)&&(p=0==(p|0)?Gb(j<<4):mc(p,j<<4),a[Rv>>2]=p,a[Sv>>2]=j);h=p>>2;k=b>>2;a[h]=a[k];a[h+1]=a[k+1];a[h+2]=a[k+2];a[h+3]=a[k+3];ck(p+16|0,b);c=c-1|0;if(1<(c|0)){h=1;for(k=2;!(l=((k<<4)+p|0)>>2,f=(h<<4)+b|0,e=f>>2,a[l]=a[e],a[l+1]=a[e+1],a[l+2]=a[e+2],a[l+3]=a[e+3],l=(k+1<<4)+p|0,e=l>>2,ck(l,f),f=((k+2<<4)+p|0)>>2,a[f]=a[e],a[f+1]=a[e+1],a[f+2]=a[e+2],a[f+3]=a[e+3],h=h+1|0,(h|0)==(c|0));){k=k+3|0}k=c;c=g-4|0}else{k=1,c=2}g=((c<<4)+p|0)>>2;k=(k<<4)+b|0;b=k>>2;a[g]=a[b];a[g+1]=a[b+1];a[g+2]=a[b+2];a[g+3]=a[b+3];ck((c+1<<4)+p|0,k);a[d+4>>2]=j;a[d>>2]=p}function ro(b){var c=a[b>>2]<<28>>28;return 3==(c|0)?a[a[b+16>>2]+12>>2]:2==(c|0)?a[a[a[a[b+16>>2]+20>>2]+16>>2]+8>>2]:1==(c|0)?a[a[a[b+20>>2]+16>>2]+4>>2]:0}function mb(b,c){if(-1>=(c|0)){var d;return 0}return d=a[a[b+4>>2]+(c<<2)>>2]}function fc(b,c,d){b>>=2;0==(d|0)?(c=0==(c|0)?1024:c,a[b+3]=1,d=Gb(c),a[b]=d):(a[b]=d,a[b+3]=0);a[b+2]=d+c|0;a[b+1]=d;m[d]=0}function na(b,c){var d,g=b+8|0;d=(b|0)>>2;var f=a[d],e=a[g>>2]-f|0,l=e<<1,e=e+c|0,l=e>>>0>l>>>0?e:l,e=b+4|0,k=a[e>>2]-f|0,h=b+12|0;0==(a[h>>2]|0)?(f=Gb(l),tf(f,a[d],k),a[h>>2]=1):f=mc(f,l);a[d]=f;a[e>>2]=f+k|0;a[g>>2]=f+l|0}function db(b,c){var d=Ba(c),g;g=(b+4|0)>>2;var f=a[g];(f+d|0)>>>0>a[b+8>>2]>>>0&&(na(b,d),f=a[g]);tf(f,c,d);a[g]=a[g]+d|0}function uc(b){0!=(a[b+12>>2]|0)&&G(a[b>>2])}function BL(b,c,d){var g,f=Yc(1,16);g=f>>2;a[g]=Dc(c);a[g+1]=Dc(d);m[f+12|0]=1;c=b+4|0;d=rc(a[c>>2]);a[g+2]=d;b=(b+8|0)>>2;g=a[b];g=0==(g|0)?Gb((d<<2)+8|0):mc(g,(d<<2)+8|0);a[b]=g;a[g+(d<<2)>>2]=f;a[a[b]+(d+1<<2)>>2]=0;c=a[c>>2];J[a[c>>2]](c,f,1);return f}function ui(b,c,d){var g,f=$(b,c);if(0==(f|0)){var e=1,l=BL(ro(b),c,d);g=2857}else{var c=f+4|0,k=a[c>>2];if(0==(ka(k,d)|0)){var h=f}else{dc(k),a[c>>2]=Dc(d),e=0,l=f,g=2857}}if(2857==g){if(0==(l|0)){h=0}else{d=a[b>>2]<<28>>28;if(2==(d|0)){CL(a[a[b+12>>2]+20>>2],l,e)}else{if(1==(d|0)){DL(a[b+20>>2],l,e)}else{if(3==(d|0)){if(d=l,g=b+36|0,f=a[g>>2],0==(f|0)){ng(b|0,d,e)}else{if(b=ra(a[f+20>>2]),0!=(b|0)){for(;!(ng(Yd(b)|0,d,e),b=ba(a[a[g>>2]+20>>2],b),0==(b|0));){}}}}}}h=l}}return h}function $(b,c){var d=a[ro(b)+4>>2];return J[a[d>>2]](d,c,512)}function DL(b,c,d){var g=ra(b),f=0==(g|0);a:do{if(!f){for(var e=g;;){if(ng(e|0,c,d),e=ba(b,e),0==(e|0)){break a}}}}while(0);g=b+36|0;f=a[g>>2];if(0==(f|0)){if(g=a[b+40>>2],0!=(g|0)){for(;!(ng(a[g>>2]|0,c,d),g=a[g+8>>2],0==(g|0));){}}}else{if(b=ra(a[f+20>>2]),0!=(b|0)){for(;;){f=a[Yd(b)+40>>2];e=0==(f|0);a:do{if(!e){for(var l=f;;){if(ng(a[l>>2]|0,c,d),l=a[l+8>>2],0==(l|0)){break a}}}}while(0);b=ba(a[a[g>>2]+20>>2],b);if(0==(b|0)){break}}}}}function CL(b,c,d){var g=ra(b),f=0==(g|0);a:do{if(!f){for(var e=g;;){var l=Ib(b,e),h=0==(l|0);b:do{if(!h){for(var n=l;;){if(ng(n|0,c,d),n=yb(b,n),0==(n|0)){break b}}}}while(0);e=ba(b,e);if(0==(e|0)){break a}}}}while(0);g=b+36|0;f=a[g>>2];if(0==(f|0)){if(b=a[b+40>>2],0!=(b|0)){for(;!(ng(a[b+4>>2]|0,c,d),b=a[b+8>>2],0==(b|0));){}}}else{if(b=ra(a[f+20>>2]),0!=(b|0)){for(;;){f=a[Yd(b)+40>>2];e=0==(f|0);a:do{if(!e){for(l=f;;){if(ng(a[l+4>>2]|0,c,d),l=a[l+8>>2],0==(l|0)){break a}}}}while(0);b=ba(a[a[g>>2]+20>>2],b);if(0==(b|0)){break}}}}}function Mp(b,c,d){b=0==(b|0)?a[qa+12>>2]:b;return(b|0)!=(a[b+32>>2]|0)?0:c=ui(b|0,c,d)}function xi(b,c,d){b=0==(b|0)?a[qa+12>>2]:b;return(b|0)!=(a[b+32>>2]|0)?0:c=ui(a[a[b+40>>2]>>2]|0,c,d)}function Th(b,c,d){b=0==(b|0)?a[qa+12>>2]:b;return(b|0)!=(a[b+32>>2]|0)?0:c=ui(a[a[b+40>>2]+4>>2]|0,c,d)}function Tv(b){Kc(a[b+4>>2]);var c=b+8|0,d=a[c>>2];if(0!=(d|0)){var g=a[d>>2],f=0==(g|0);a:do{if(f){var e=d}else{for(var l=0,h=g;;){l=l+1|0;dc(a[h>>2]);dc(a[h+4>>2]);G(h);var n=a[c>>2],h=a[n+(l<<2)>>2];if(0==(h|0)){e=n;break a}}}}while(0);G(e)}G(b)}function Uv(b){var c,d=Yc(1,12);c=d>>2;a[c]=b;a[c+1]=Nc(EL,a[Xc>>2]);a[c+2]=0;return d}function Vv(b,c){var d=rc(a[c+4>>2]);if(0<(d|0)){for(var g=c+8|0,f=0;;){var e=a[a[g>>2]+(f<<2)>>2],l=BL(b,a[e>>2],a[e+4>>2]);m[l+12|0]=m[e+12|0];m[l+13|0]=m[e+13|0];f=f+1|0;if((f|0)==(d|0)){break}}}}function V(a,b){return mb(a,FL(a,b))}function FL(b,c){var d=$(b,c);return 0==(d|0)?-1:d=a[d+8>>2]}function yd(a,b,c){qc(a,FL(a,b),c)}function qc(b,c,d){if(-1>=(c|0)){return-1}var g=(c<<2)+a[b+4>>2]|0;dc(a[g>>2]);a[g>>2]=Dc(d);b=a[b+8>>2]+((c|0)/8&-1)|0;m[b]=(m[b]&255|1<<(c&7))&255;return 0}function $J(b,c,d,g){var f=$(b,c);0==(f|0)?(g=0==(g|0)?Y|0:g,f=a[b>>2]<<28>>28,c=2==(f|0)?Th(a[a[b+12>>2]+20>>2],c,g):3==(f|0)?Mp(a[b+32>>2],c,g):1==(f|0)?xi(a[b+20>>2],c,g):0):c=f;qc(b,a[c+8>>2],d)}function po(b,c){var d,g=a[b>>2]<<28>>28,f=2==(g|0);if((g|0)==(a[c>>2]<<28>>28|0)){var g=0,e=a[ro(b)+8>>2];a:for(;;){for(g=0==(g|0);;){if(!g){break a}var l=e+4|0,e=a[e>>2];d=e>>2;if(0==(e|0)){break a}if(!f){break}if(0==(a[d+2]|0)){e=l}else{break}}g=$(c,a[d]);if(0==(g|0)){break}g=qc(c,a[g+8>>2],mb(b,a[d+2]));e=l}}}function ng(b,c,d){var g=a[c+8>>2];if(0==(d|0)){0==(m[a[b+8>>2]+((g|0)/8&-1)|0]<<24>>24&1<<(g&7)|0)&&(b=b+4|0,dc(a[a[b>>2]+(g<<2)>>2]),c=Dc(a[c+4>>2]),a[a[b>>2]+(g<<2)>>2]=c)}else{var d=(b+4|0)>>2,f=a[d],f=0==(f|0)?Gb((g<<2)+4|0):mc(f,(g<<2)+4|0);a[d]=f;c=Dc(a[c+4>>2]);a[a[d]+(g<<2)>>2]=c;0==(g&7|0)&&(b=b+8|0,c=a[b>>2],g=(g|0)/8&-1,d=g+1|0,c=0==(c|0)?Gb(d):mc(c,d),a[b>>2]=c,m[c+g|0]=0)}}function Kr(b,c,d){var g=b+24|0,f=lj(a[g>>2],c,d,0);return 0!=(f|0)?f:0!=(a[b>>2]&16|0)?0:b=lj(a[g>>2],d,c,0)}function lj(b,c,d,g){var f,e=h;h+=32;f=e>>2;var l=e+28|0;a[l>>2]=g;a[f+4]=c;a[f+3]=d;g=0!=(g|0);a[f+1]=g?l:0;f=a[b>>2];l=e|0;if(g){return c=J[f](b,l,4),h=e,c}b=J[f](b,l,8);if(0==(b|0)||(a[b+16>>2]|0)==(c|0)&&(a[b+12>>2]|0)==(d|0)){return h=e,b}h=e;return 0}function GL(b,c){var d=a[c>>2];16==(d&240|0)&&(a[c>>2]=d&-241|32);Pl(b,c)}function Pl(b,c){var d=b+24|0,g=a[d>>2],f=c|0;if(0==(J[a[g>>2]](g,f,4)|0)){g=c+16|0;mj(b,a[g>>2]);var e=c+12|0;mj(b,a[e>>2]);var l=b+28|0,h=a[l>>2];J[a[h>>2]](h,f,1);d=a[d>>2];J[a[d>>2]](d,f,1);d=a[l>>2];f=J[a[d>>2]](d,f,16);0!=(f|0)&&(a[f+16>>2]|0)==(a[g>>2]|0)&&(a[f+12>>2]|0)==(a[e>>2]|0)&&(f=a[c>>2],268435456>f<<24>>>0&&(a[c>>2]=f&-241|16));if(0==(a[b>>2]&64|0)&&(g=a[b+36>>2],f=a[g+20>>2],g=Og(f,g),0!=(g|0))){for(;!(Pl(Yd(a[g+16>>2]),c),g=Ql(f,g),0==(g|0));){}}}}function Ok(a,b){if(0==(a|0)|0==(b|0)){var c=0}else{c=Ib(a,b),c=0!=(c|0)?c:Og(a,b)}return c}function Ib(b,c){var d,g=h;h+=28;d=g>>2;if(0==(b|0)|0==(c|0)){return h=g,0}a[d+4]=c;a[d+3]=0;a[d+1]=0;d=a[b+28>>2];d=J[a[d>>2]](d,g|0,8);if(0==(d|0)){return h=g,d}h=g;return(a[d+16>>2]|0)==(c|0)?d:0}function Og(b,c){var d,g=h;h+=28;d=g>>2;if(0==(b|0)|0==(c|0)){return h=g,0}a[d+3]=c;a[d+4]=0;a[d+1]=0;d=a[b+24>>2];d=J[a[d>>2]](d,g|0,8);if(0==(d|0)){return h=g,d}h=g;return(a[d+12>>2]|0)==(c|0)?d:0}function Pk(b,c,d){var g;if(0==(b|0)|0==(c|0)|0==(d|0)){var f;return 0}var e=(a[c+16>>2]|0)==(d|0);a:do{if(e){var l=a[b+28>>2],l=J[a[l>>2]](l,c|0,8);if(0!=(l|0)&&(a[l+16>>2]|0)==(d|0)){return f=l}for(var l=b+24|0,h=Og(b,d);;){if(0==(h|0)){var n=0;break a}var j=a[h+12>>2];if(!((j|0)==(a[h+16>>2]|0)&(j|0)==(d|0))){n=h;break a}j=a[l>>2];h=J[a[j>>2]](j,h|0,8)}}else{if((a[c+12>>2]|0)==(d|0)){n=a[b+24>>2],n=J[a[n>>2]](n,c|0,8)}else{return f=0}}}while(0);b=b+24|0;for(c=n;;){if(0==(c|0)){f=0;g=101;break}var e=a[c+12>>2],p=(e|0)==(d|0);if(!((e|0)==(a[c+16>>2]|0)&p)){g=99;break}e=a[b>>2];c=J[a[e>>2]](e,c|0,8)}if(99==g){return p?c:0}if(101==g){return f}}function yb(b,c){var d=a[b+28>>2],d=J[a[d>>2]](d,c|0,8);return 0==(d|0)?d:(a[d+16>>2]|0)==(a[c+16>>2]|0)?d:0}function Ql(b,c){var d=a[b+24>>2],d=J[a[d>>2]](d,c|0,8);return 0==(d|0)?d:(a[d+12>>2]|0)==(a[c+12>>2]|0)?d:0}function Wv(b,c,d,g){var f,e=Yc(1,a[qa+8>>2]);f=e>>2;a[e>>2]=a[e>>2]&-16|2;a[f+4]=c;a[f+3]=d;d=(b+16|0)>>2;b=a[d]+20|0;c=a[b>>2];a[b>>2]=c+1|0;a[f+5]=c;c=rc(a[a[a[d]+8>>2]+4>>2]);if(0==(c|0)){return a[f+1]=0,a[f+2]=0,e}b=(e+4|0)>>2;a[b]=Yc(c,4);a[f+2]=Yc((c+7|0)/8&-1,1);if(0>=(c|0)){return e}f=g+4|0;if(0==(g|0)){for(g=0;!(f=Dc(a[a[a[a[a[d]+8>>2]+8>>2]+(g<<2)>>2]+4>>2]),a[a[b]+(g<<2)>>2]=f,g=g+1|0,(g|0)==(c|0));){}}else{for(g=0;!(d=Dc(a[a[f>>2]+(g<<2)>>2]),a[a[b]+(g<<2)>>2]=d,g=g+1|0,(g|0)==(c|0));){}}return e}function uh(b,c,d){var g,f,e=h;h+=128;g=(b+40|0)>>2;f=a[a[g]+4>>2];var l=a[a[f+4>>2]>>2];a[f+12>>2]=d;a[a[a[g]+4>>2]+16>>2]=c;f=b>>2;do{if(0==(a[f]&32|0)){if(0==m[l]<<24>>24){var k=e|0,n=a[Xv>>2];a[Xv>>2]=n+1|0;Ma(k,dv|0,(j=h,h+=4,a[j>>2]=n,j));a[a[a[a[g]+4>>2]+4>>2]>>2]=k;k=0}else{k=b+24|0;n=lj(a[k>>2],c,d,l);if(0==(n|0)){if(0!=(a[f]&16|0)){k=32;break}f=lj(a[k>>2],d,c,l);if(0==(f|0)){k=32;break}else{c=f}}else{c=n}GL(b,c);b=c;g=a[g];g=g+4|0;g>>=2;g=a[g];g=g+4|0;g>>=2;g=a[g];g>>=2;a[g]=l;h=e;return b}}else{k=b+24|0;n=lj(a[k>>2],c,d,0);if(0==(n|0)){if(0!=(a[f]&16|0)){k=0;break}f=lj(a[k>>2],d,c,0);if(0==(f|0)){k=0;break}else{c=f}}else{c=n}Pl(b,c);b=c;g=a[g];g=g+4|0;g>>=2;g=a[g];g=g+4|0;g>>=2;g=a[g];g>>=2;a[g]=l;h=e;return b}}while(0);c=Wv(b,c,d,a[a[g]+4>>2]);Pl(b,c);b=a[g];d=a[b>>2];a[a[b+4>>2]+16>>2]=d;a[a[a[g]+4>>2]+12>>2]=d;a[c>>2]=a[c>>2]&-241|k;g=a[g];g=(g+4|0)>>2;g=a[g];g=(g+4|0)>>2;g=a[g];a[g>>2]=l;h=e;return c}function HL(b){var c=b|0;a[b>>2]|=15;var d=rc(a[a[a[a[a[b+16>>2]+20>>2]+16>>2]+8>>2]+4>>2]),g=b+4|0,f=a[g>>2];if(0<(d|0)){for(var e=0;;){if(dc(a[f+(e<<2)>>2]),e=e+1|0,f=a[g>>2],(e|0)==(d|0)){l=f;break}}G(l)}else{var l,d=f;G(d)}b=a[(b+8|0)>>2];G(b);G(c)}function Np(b,c){var d,g=h;d=(b+24|0)>>2;var f=a[d],e=c|0;if(0==(J[a[f>>2]](f,e,4)|0)){la(1,IL|0,(j=h,h+=4,a[j>>2]=c,j)),Gn(a[d],70)}else{f=0==(a[b>>2]&64|0);a:do{if(f){var l=a[b+36>>2],k=a[l+20>>2],l=Ib(k,l);if(0!=(l|0)){for(;;){var n=Yd(a[l+12>>2]),m=a[n+24>>2];0!=(J[a[m>>2]](m,e,4)|0)&&Np(n,c);l=yb(k,l);if(0==(l|0)){break a}}}}}while(0);d=a[d];J[a[d>>2]](d,e,2);d=a[b+28>>2];J[a[d>>2]](d,e,2);(a[b+32>>2]|0)==(b|0)&&HL(c)}h=g}function Yd(b){return 0!=(a[a[b+20>>2]+36>>2]|0)?0:b=a[a[b+4>>2]>>2]}function JL(b,c){var d=0==(b|0)?0:a[b>>2],g=a[c+4>>2],g=0==(g|0)?0:a[g>>2];return 0==(d|0)?(0!=(g|0))<<31>>31:0==(g|0)?1:d=ka(d,g)}function Yv(b,c){var d,g=Yc(1,12);d=g>>2;var f=b+40|0;a[d+2]=a[f>>2];if(0==(c|0)){var e=0,l=0}else{e=a[c+4>>2],l=a[c>>2]}l=Zv(b,KL|0,l);a[d]=l;a[d+1]=Wv(b,l,l,e);a[f>>2]=g}function LL(b){var c;c=b+40|0;b=a[c>>2];if(0!=(b|0)){a[c>>2]=a[b+8>>2];var d=b|0,g=a[d>>2];c=(b+4|0)>>2;a[a[c]+12>>2]=g;a[a[c]+16>>2]=g;HL(a[c]);$v(a[d>>2]);G(b)}}function xn(b,c){var d=Op(b,0,c),g=Op(b,0,7);if(0==(d|0)|0==(g|0)){return 0}xi(g,ML|0,0);g=cl(g,b);a[d+36>>2]=g;a[a[g+4>>2]>>2]=d|0;return d}function Op(b,c,d){var g,f=h;if(0==m[qa+31|0]<<24>>24){return la(1,NL|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),h=f,0}var e=Yc(1,a[qa>>2]);g=e>>2;a[e>>2]=d<<4&240|a[e>>2]&-256|3;a[g+5]=Nc(Uh,a[Xc>>2]);a[g+6]=Nc(aw,a[Xc>>2]);a[g+7]=Nc(nj,a[Xc>>2]);d=0==(c|0);a:do{if(d){var l=OL();a[g+4]=l;a[g+8]=e;l=rc(a[a[l+12>>2]+4>>2]);if(0==(l|0)){a[g+1]=0,a[g+2]=0}else{var k=e+4|0;a[k>>2]=Yc(l,4);a[g+2]=Yc((l+7|0)/8&-1,1);if(0<(l|0)){for(var n=0;;){var z=Dc(a[a[a[qa+12>>2]+4>>2]+(n<<2)>>2]);a[a[k>>2]+(n<<2)>>2]=z;n=n+1|0;if((n|0)==(l|0)){break a}}}}}else{if(l=c+16|0,a[g+4]=a[l>>2],a[g+8]=a[c+32>>2],l=rc(a[a[a[l>>2]+12>>2]+4>>2]),0==(l|0)){a[g+1]=0,a[g+2]=0}else{if(k=e+4|0,a[k>>2]=Yc(l,4),a[g+2]=Yc((l+7|0)/8&-1,1),0<(l|0)){n=c+4|0;for(z=0;;){var p=Dc(a[a[n>>2]+(z<<2)>>2]);a[a[k>>2]+(z<<2)>>2]=p;z=z+1|0;if((z|0)==(l|0)){break a}}}}}}while(0);a[g+9]=0;a[g+3]=Dc(b);a[g+10]=0;d?Yv(e,a[e+40>>2]):Yv(e,a[c+40>>2]);h=f;return e}function oo(b,c){var d=a[a[b+36>>2]+20>>2],g=Mi(d,c);if(0==(g|0)){g=Op(c,b,a[b>>2]<<24>>28);if(0==(g|0)){return 0}d=cl(d,c);a[g+36>>2]=d;a[a[d+4>>2]>>2]=g|0;d=g}else{d=Yd(g)}PL(b,d);return d}function PL(b,c){var d=a[b+36>>2],g=a[c+36>>2];0==(d|0)|0==(g|0)||0==(QL(g,d)|0)&&uh(a[d+20>>2],d,g)}function RL(b,c){var d=a[b+36>>2];0==(d|0)?d=0:(d=Mi(a[d+20>>2],c),d=0==(d|0)?0:Yd(d));return d}function QL(b,c){var d=Nc(Uh,a[Xc>>2]),g=SL(d,b,c);Kc(d);return g}function Sf(b){var c,d=b>>2;if(0!=(b|0)){c=b>>2;var g=a[c];if(3==(g&15|0)){g=0==(g&64|0);a:do{if(g){for(var f=b+36|0,e=a[f>>2],l=a[e+20>>2],h=l,n=e;;){e=0;n=Ib(h,n);b:for(;;){for(;;){if(0==(n|0)){break b}var j=yb(h,n),p=n+12|0;if(0==(Ql(h,Og(h,a[p>>2]))|0)){break}else{n=j}}Sf(Yd(a[p>>2]));e=1;n=j}if(0==(e|0)){var m=l;break a}n=a[f>>2]}}else{m=0}}while(0);j=b+40|0;p=0==(a[j>>2]|0);a:do{if(!p){for(;;){if(LL(b),0==(a[j>>2]|0)){break a}}}}while(0);a:do{if(g&&(j=rc(a[a[a[d+4]+12>>2]+4>>2]),0<(j|0))){p=b+4|0;for(f=0;;){if(dc(a[a[p>>2]+(f<<2)>>2]),f=f+1|0,(f|0)==(j|0)){break a}}}}while(0);j=a[d+1];0!=(j|0)&&G(j);j=a[d+2];0!=(j|0)&&G(j);do{if((a[d+8]|0)==(b|0)){j=b;p=ra(j);f=0==(p|0);a:do{if(!f){for(l=p;;){if(h=ba(j,l),Pp(j,l),0==(h|0)){break a}else{l=h}}}}while(0);g&&Sf(a[a[d+9]+20>>2]);j=cc;j=(b+16|0)>>2;Tv(a[a[j]+12>>2]);Tv(a[a[j]+4>>2]);Tv(a[a[j]+8>>2]);Kc(a[a[j]>>2]);G(a[j])}else{g&&bl(m,a[d+9]|0)}}while(0);Kc(a[d+5]);Kc(a[d+6]);Kc(a[d+7]);dc(a[d+3]);a[c]|=15;G(b|0)}}}function bl(b,c){var d=a[c>>2]<<28>>28;1==(d|0)?Pp(b,c):2==(d|0)?Np(b,c):3==(d|0)&&Sf(c)}function Ed(b,c){var d=a[c>>2]<<28>>28;1==(d|0)?d=0!=(TL(b,a[c+16>>2])|0)&1:3==(d|0)?d=QL(a[b+36>>2],a[c+36>>2]):2==(d|0)?(d=a[b+24>>2],d=0!=(J[a[d>>2]](d,c,4)|0)&1):d=0;return d}function gt(b,c){var d=a[c>>2]<<28>>28;1==(d|0)?mj(b,c):2==(d|0)?GL(b,c):3==(d|0)&&PL(b,c)}function Vh(b){return rc(a[b+20>>2])}function UL(b,c){0!=(b|0)&&(a[qa+36>>2]=b);0!=(c|0)&&(a[qa+40>>2]=c)}function SL(b,c,d){var g,f;if((c|0)==(d|0)){var e;return 1}g=(c+20|0)>>2;if(0!=(Kr(a[a[g]+32>>2],c,d)|0)){return 1}var l=b|0;J[a[l>>2]](b,c|0,1);for(c=Ib(a[g],c);;){if(0==(c|0)){e=0;f=354;break}var h=c+12|0;if(0==(J[a[l>>2]](b,a[h>>2]|0,4)|0)&&0!=(SL(b,a[h>>2],d)|0)){e=1;f=353;break}c=yb(a[g],c)}if(353==f||354==f){return e}}function OL(){var b=Yc(1,24);a[b>>2]=Nc(bw,a[Xc>>2]);var c=b+12|0;a[c>>2]=Uv(Yf|0);var d=b+4|0;a[d>>2]=Uv(jh|0);var g=b+8|0;a[g>>2]=Uv(Dg|0);var f=a[qa+12>>2];if(0==(f|0)){return b}Vv(a[c>>2],a[a[f+16>>2]+12>>2]);Vv(a[d>>2],a[a[a[qa+12>>2]+16>>2]+4>>2]);Vv(a[g>>2],a[a[a[qa+12>>2]+16>>2]+8>>2]);return b}function VL(a,b){if(0==(bg(a)|0)){var c=Rl(a,b);return c}m[b]=60;var c=b+1|0,d=m[a],f=0==d<<24>>24;a:do{if(f){var e=b,l=c}else{for(var h=a,n=c,j=d;;){h=h+1|0;m[n]=j;var j=n+1|0,p=m[h];if(0==p<<24>>24){e=n;l=j;break a}else{n=j,j=p}}}}while(0);m[l]=62;m[e+2|0]=0;return b}function Rl(a,b){var c;if(0==(a|0)||0==m[a]<<24>>24){return c=oj|0}m[b]=34;var d=m[a],f=0==(pj(d)|0),e=1,l=0,h=a+1|0,n=d,d=b+1|0,j=0;a:for(;;){var p=l,l=n,s=d;b:for(;;){do{if(0==l<<24>>24){break a}else{if(34==l<<24>>24){m[s]=92;var d=1,v=s+1|0}else{v=95!=l<<24>>24&0==(oC(l&255)|0)&-1>24,d=v|f?v?1:p:0==(pj(l)|0)?1:p,v=s}}}while(0);var t=v+1|0;m[v]=l;var u=h+1|0,w=m[h],A=j+1|0,h=w&255,j=0!=w<<24>>24;do{if(!(e|j^1)){do{if(0==(pj(l)|0)&&0==(ti(l<<24>>24)|0)&&92!=m[v]<<24>>24){break b}}while(0);if(0==(pj(w)|0)&&0==(ti(h)|0)){break b}}}while(0);if(j){if(0!=(A&127|0)){p=d,h=u,l=w,s=t}else{l=m[v];0==(pj(l)|0)?0!=(ti(l<<24>>24)|0)?c=392:92==m[v]<<24>>24&&(c=392):c=392;if(392==c){c=0;if(0!=(pj(w)|0)){e=0;l=d;h=u;n=w;d=t;j=A;continue a}if(0!=(ti(h)|0)){e=0;l=d;h=u;n=w;d=t;j=A;continue a}}m[t]=92;m[v+2|0]=10;p=1;h=u;l=w;s=v+3|0}}else{p=d,h=u,l=0,s=t}j=A}m[t]=92;m[v+2|0]=10;l=e=1;h=u;n=w;d=v+3|0;j=A}m[s]=34;m[s+1|0]=0;return 0!=(p|0)?b:c=-1<(cw(a)|0)?b:a}function hb(b,c){J[a[qa+36>>2]](b,1,Ba(b),c)}function Ge(b,c){var d=h;h+=4;m[d]=b&255;J[a[qa+36>>2]](d,1,1,c);h=d}function xd(a){return VL(a,Sl(a))}function Sl(b){var b=(Ba(b)<<1)+2|0,b=1024>>0?b:1024,c=a[dw>>2];if((b|0)<=(a[ew>>2]|0)){return c}c=0==(c|0)?Gb(b):mc(c,b);a[dw>>2]=c;a[ew>>2]=b;return c}function fw(b,c,d,g,f){var e,l=h;h+=4;a[l>>2]=0;var k=d+20|0,n=a[a[a[k>>2]+16>>2]+4>>2];do{if(0!=(g|0)){var j=n+4|0;if(0<(rc(a[j>>2])|0)){for(var p=n+8|0,s=d|0,v=d+12|0,t=b+40|0,u=0,w=0;;){var A=a[a[p>>2]+(u<<2)>>2];if(0!=m[A+12|0]<<24>>24){e=(A|0)>>2;var B=V(s,a[e]),A=(a[k>>2]|0)==(b|0)?a[A+4>>2]:V(a[a[t>>2]>>2]|0,a[e]);0!=(ka(A,B)|0)&&(0==(w|0)&&(Pg(c,f),hb(xd(a[v>>2]),c),w=1),WL(c,l,a[e],B))}e=w;u=u+1|0;if((u|0)<(rc(a[j>>2])|0)){w=e}else{break}}if(0!=(e|0)){hb(0<(a[l>>2]|0)?Tl|0:Wh|0,c);h=l;return}}}}while(0);0==(Ib(b,d)|0)&&0==(Og(b,d)|0)&&(Pg(c,f),hb(xd(a[d+12>>2]),c),hb(Wh|0,c));h=l}function Pg(a,b){if(0!=(b|0)){for(var c=b;!(c=c-1|0,Ge(9,a),0==(c|0));){}}}function WL(b,c,d,g){var f=a[c>>2];a[c>>2]=f+1|0;hb(0<(f|0)?gw|0:Qp|0,b);hb(xd(d),b);Ge(61,b);hb(xd(g),b)}function hw(b,c,d,g){var f,e=h;h+=4;a[e>>2]=0;var l=a[d+16>>2],k=a[a[a[l+20>>2]+16>>2]+8>>2],n=a[d+4>>2];if(0==(n|0)){var j=Y|0,n=Y|0}else{j=a[n+8>>2],n=a[n+4>>2]}XL(c,a[l+12>>2],n);hb(0!=(a[b>>2]&16|0)?ns|0:os|0,c);XL(c,a[a[d+12>>2]+12>>2],j);if(0==(g|0)){b=Wh|0}else{if(g=k+4|0,0<(rc(a[g>>2])|0)){for(var k=k+8|0,l=d|0,j=b+32|0,n=b+40|0,p=0;;){var s=a[a[k>>2]+(p<<2)>>2];if(0!=m[s+12|0]<<24>>24&&!(0==(p|0)&&32!=(a[d>>2]&240|0))){f=(s|0)>>2;var v=V(l,a[f]),s=(a[j>>2]|0)==(b|0)?a[s+4>>2]:V(a[a[n>>2]+4>>2]|0,a[f]);0!=(ka(s,v)|0)&&WL(c,e,a[f],v)}f=p+1|0;if((f|0)<(rc(a[g>>2])|0)){p=f}else{break}}b=0<(a[e>>2]|0)?Tl|0:Wh|0}else{b=Wh|0}}hb(b,c);h=e}function XL(a,b,c){hb(xd(b),a);0!=(c|0)&&0!=m[c]<<24>>24&&(0!=(bg(c)|0)?(Ge(58,a),hb(VL(c,Sl(c)),a)):(b=Jc(c,58),0==(b|0)?(Ge(58,a),hb(Rl(c,Sl(c)),a)):(m[b]=0,Ge(58,a),hb(Rl(c,Sl(c)),a),Ge(58,a),c=b+1|0,hb(Rl(c,Sl(c)),a),m[b]=58)))}function iw(b,c){var d;0==(a[qa+36>>2]|0)&&(a[qa+36>>2]=182);0==(a[qa+40>>2]|0)&&(a[qa+40>>2]=60);hb(0!=(a[b>>2]&32|0)?YL|0:Y|0,c);hb(0!=(a[b>>2]&16|0)?wv|0:Yf|0,c);d=b+12|0;0!=(td(a[d>>2],jw|0,10)|0)&&(Ge(32,c),hb(xd(a[d>>2]),c));hb(kw|0,c);d=(b+16|0)>>2;lw(a[a[d]+12>>2],c);lw(a[a[d]+4>>2],c);lw(a[a[d]+8>>2],c);var g;d=Yc(1,20);g=d>>2;var f=Nc(Uh,a[Xc>>2]);a[g]=f;var e=a[b+20>>2];a[Ul>>2]=f;Gn(e,230);f=Nc(Rp,a[Xc>>2]);a[g+1]=f;e=a[b+28>>2];a[Ul>>2]=f;Gn(e,230);a[g+4]=Nc(Uh,a[Xc>>2]);a[g+3]=Nc(nj,a[Xc>>2]);f=Nc(Uh,a[Xc>>2]);a[g+2]=f;g=a[a[a[b+36>>2]+20>>2]+20>>2];a[Ul>>2]=f;Gn(g,230);mw(b,c,0,0,d);hb(Sp|0,c);g=d>>2;Kc(a[g]);Kc(a[g+4]);Kc(a[g+1]);Kc(a[g+3]);Kc(a[g+2]);G(d);return J[a[qa+40>>2]](c)}function lw(b,c){var d=b+4|0;if(0<(rc(a[d>>2])|0)){for(var g=b+8|0,f=b|0,e=0,l=0;;){var h=a[a[g>>2]+(e<<2)>>2],j=h+4|0,z=a[j>>2];0==(z|0)?h=l:0==m[z]<<24>>24?h=l:(0==(l|0)?(Ge(9,c),hb(a[f>>2],c),hb(Qp|0,c)):hb(gw|0,c),hb(a[h>>2],c),Ge(61,c),hb(xd(a[j>>2]),c),h=l+1|0);e=e+1|0;if((e|0)<(rc(a[d>>2])|0)){l=h}else{break}}0<(h|0)&&hb(Tl|0,c)}}function pj(a){return 10>((a<<24>>24)-48|0)>>>0?1:46==a<<24>>24||45==a<<24>>24||43==a<<24>>24?1:0}function mw(b,c,d,g,f){var e,l,h,j,m=g+1|0;if(0==(g|0)){Vl(c,m,b|0,0,a[a[b+16>>2]+12>>2]);var p=b+36|0}else{Pg(c,g);h=f+8|0;j=a[h>>2];l=b+36|0;if(0==(J[a[j>>2]](j,a[l>>2]|0,4)|0)){hb(nw|0,c);hb(xd(a[b+12>>2]),c);hb(Wh|0,c);return}j=b+12|0;0==(td(a[j>>2],jw|0,10)|0)?hb(ZL|0,c):(hb(nw|0,c),hb(xd(a[j>>2]),c),hb(kw|0,c));j=(b+16|0)>>2;Vl(c,m,b|0,d|0,a[a[j]+12>>2]);(a[b+32>>2]|0)==(d|0)?e=d=0:(e=a[d+40>>2],d=a[e+4>>2],e=a[e>>2]);p=b+40|0;Vl(c,m,a[a[p>>2]>>2]|0,e|0,a[a[j]+4>>2]);Vl(c,m,a[a[p>>2]+4>>2]|0,d|0,a[a[j]+8>>2]);h=a[h>>2];J[a[h>>2]](h,a[l>>2]|0,2);p=l}h=(f+16|0)>>2;j=a[h];l=(f+12|0)>>2;d=a[l];e=a[a[p>>2]+20>>2];a[h]=Nc(bw,a[Xc>>2]);a[l]=Nc(nj,a[Xc>>2]);var p=Ib(e,a[p>>2]),s=0==(p|0);a:do{if(!s){for(var v=p;;){if(mw(Yd(a[v+12>>2]),c,b,m,f),v=yb(e,v),0==(v|0)){break a}}}}while(0);e=ra(b);p=0==(e|0);a:do{if(!p){for(var s=f|0,v=j|0,t=e;;){var u=a[s>>2],w=t|0;0==(J[a[u>>2]](u,w,4)|0)?(u=a[h],0==(J[a[u>>2]](u,w,4)|0)&&fw(b,c,t,0,m)):(fw(b,c,t,1,m),u=a[s>>2],J[a[u>>2]](u,w,2));J[a[v>>2]](j,w,1);t=ba(b,t);if(0==(t|0)){break a}}}}while(0);e=(b+28|0)>>2;pk(a[e],Rp,0);p=a[e];p=J[a[p>>2]](p,0,128);s=0==(p|0);a:do{if(!s){v=f+4|0;t=d|0;for(w=p;;){var u=w,A=a[v>>2];0==(J[a[A>>2]](A,w,4)|0)?(A=a[l],0==(J[a[A>>2]](A,w,4)|0)&&(Pg(c,m),hw(b,c,u,0))):(Pg(c,m),hw(b,c,u,1),u=a[v>>2],J[a[u>>2]](u,w,2));J[a[t>>2]](d,w,1);u=a[e];w=J[a[u>>2]](u,w,8);if(0==(w|0)){break a}}}}while(0);pk(a[e],nj,0);Kc(a[h]);a[h]=j;Kc(a[l]);a[l]=d;0<(g|0)&&(Pg(c,g),hb(Sp|0,c))}function Vl(b,c,d,g,f){var e,l=f+4|0;if(0<(rc(a[l>>2])|0)){for(var h=f+8|0,j=0==(g|0),f=f|0,z=c+1|0,p=0,s=0;;){var v=a[a[h>>2]+(p<<2)>>2];e=v>>2;if(0==m[v+12|0]<<24>>24){e=s}else{var v=a[e+2],t=mb(d,v);0==(ka(t,j?a[e+1]:mb(g,v))|0)?e=s:(0==(s|0)?(Pg(b,c),hb(a[f>>2],b),hb(Qp|0,b)):(hb($L|0,b),Pg(b,z)),hb(xd(a[e]),b),Ge(61,b),hb(xd(t),b),e=s+1|0)}p=p+1|0;if((p|0)<(rc(a[l>>2])|0)){s=e}else{break}}0<(e|0)&&hb(Tl|0,b)}}function vC(b){a[ow>>2]=b;var c=a[qa+32>>2];var d=0!=(c|0)?c:a[qa+32>>2]=386;a[Gc>>2]=0;c=a[qa+24>>2];0==(c|0)&&(a[Xh>>2]=1024,c=Yc(1024,1),a[qa+24>>2]=c,c=Yc(a[Xh>>2],1),a[Wl>>2]=c,d=a[qa+32>>2],c=a[qa+24>>2]);J[d](c,0,b);D[qa+28>>1]=0}function aM(){var b,c=h;h+=1040;var d,g=c+16;if(0!=m[qa+30|0]<<24>>24){m[qa+30|0]=0;var f;h=c;return-1}for(var e=a[Gc>>2];;){if(0==(e|0)){d=576}else{if(0==m[e]<<24>>24){d=576}else{var l=e}}if(576==d&&(d=0,l=pw(),a[Gc>>2]=l,0==(l|0))){d=577;break}if(1==(a[Qd>>2]|0)){if(0!=(td(l,bM|0,3)|0)){var k=l}else{k=l+3|0,a[Gc>>2]=k}}else{k=l}k=cM(k);a[Gc>>2]=k;var n=m[k];if(0==n<<24>>24){e=k}else{break}}if(577==d){if(!m[Xl]){return h=c,-1}f=m[qw]&255;la(0,dM|0,(j=h,h+=4,a[j>>2]=f,j));h=c;return-1}d=a[Wl>>2];if(34==n<<24>>24){f=eM(k,d),a[Gc>>2]=f,f=Dc(d),a[Yh>>2]=f,f=265}else{if(60==n<<24>>24){fc(c,1024,g|0);l=a[Gc>>2];m[rw]=a[Qd>>2]&255;d=h;g=(c+4|0)>>2;k=c+8|0;l=l+1|0;n=1;b:for(;;){for(;;){e=m[l];if(62==e<<24>>24){f=779;break}else{if(60==e<<24>>24){f=780;break}else{if(0!=e<<24>>24){var z=n,p=e;break}}}l=pw();if(0==(l|0)){break b}}if(779==f){if(f=0,z=n-1|0,0==(z|0)){b=l;f=787;break}else{p=62}}else{780==f&&(f=0,z=n+1|0,p=60)}n=a[g];n>>>0>2]>>>0||(na(c,1),n=a[g]);a[g]=n+1|0;m[n]=p;l=l+1|0;n=z}787!=f&&(f=m[rw]&255,b=a[qj>>2],b=0!=(b|0)?b:Yl|0,la(0,fM|0,(j=h,h+=8,a[j>>2]=f,a[j+4>>2]=b,j)),b=0);h=d;f=b;a[Gc>>2]=0==(f|0)?0:f+1|0;b=(c+4|0)>>2;f=a[b];f>>>0>2]>>>0||(na(c,1),f=a[b]);m[f]=0;f=a[c>>2];a[b]=f;0==(a[Ne>>2]|0)&&gM();0==(f|0)?f=0:(b=a[Ne>>2],b=J[a[b>>2]](b,f-12|0,4),0==(b|0)?(b=Gb(Ba(f)+16|0),a[b+8>>2]=m[Tp]?-2147483647:1,Rf(b+12|0,f),f=a[Ne>>2],J[a[f>>2]](f,b,1)):(f=b+8|0,a[f>>2]=a[f>>2]+1|0),f=b,f=f+12|0);a[Yh>>2]=f;uc(c)}else{f=a[qa+20>>2];if(0!=(f|0)&&(b=Ba(f),0==(td(k,f,b)|0))){return a[Gc>>2]=k+b|0,h=c,263}f=hM(k,d);if(0!=(f|0)){return a[Gc>>2]=f,f=Dc(d),a[Yh>>2]=f,h=c,264}f=m[a[Gc>>2]];b=a[Gc>>2];if(!(0==((33<=(f&255)&&47>=(f&255)||58<=(f&255)&&64>=(f&255)||91<=(f&255)&&96>=(f&255)||123<=(f&255)&&126>=(f&255))|0)|95==f<<24>>24)){return a[Gc>>2]=b+1|0,f=m[b]<<24>>24,h=c,f}if(0==(b|0)){f=0}else{f=b;for(b=d;;){z=m[f];if(0==(oC(m[f]&255)|0)&&!(95==z<<24>>24|0>z<<24>>24)){break}m[b]=z;f=f+1|0;b=b+1|0}m[b]=0}a[Gc>>2]=f;f=cw(d);if(-1!=(f|0)){return h=c,f}f=Dc(d);a[Yh>>2]=f}f=264}h=c;return f}function cw(b){D[rj>>1]=0;var c=m[b];do{if(0==c<<24>>24){var d=0}else{for(var d=b,g=c,f=0;;){var g=0>g<<24>>24?127:g,e=-1>16;a:do{if(e){var l=g&255;do{if(0==((65<=l&&90>=l)|0)){if(0!=((97<=l&&122>=l)|0)){var h=g}else{h=D[rj>>1]=-1;break a}}else{h=vf(l)&255}}while(0);l=D[rj>>1]<<16>>16;h&=255;if(0==(a[iM+(h-97<<2)>>2]&a[Up+(l<<3)+4>>2]|0)){h=D[rj>>1]=-1}else{for(l=D[Up+(l<<3)+2>>1];;){var j=l<<16>>16;if((D[sw+(j<<2)>>1]<<16>>16|0)==(h|0)){break}else{l=l+1&65535}}h=D[sw+(j<<2)+2>>1];D[rj>>1]=h}}else{h=f}}while(0);d=d+1|0;f=m[d];if(0==f<<24>>24){break}else{g=f,f=h}}if(0>h<<16>>16){return b=-1}d=h}}while(0);return b=D[Up+(d<<16>>16<<3)>>1]<<16>>16}function pw(){var b=h;h+=8;for(var c,d=b+4|0,g=0;;){var f=a[Xh>>2];(g+128|0)<(f|0)||(f=f+1024|0,a[Xh>>2]=f,f=mc(a[qa+24>>2],f),a[qa+24>>2]=f,f=mc(a[Wl>>2],a[Xh>>2]),a[Wl>>2]=f,f=a[Xh>>2]);f=J[a[qa+32>>2]](a[qa+24>>2]+g+1|0,f+(g^-1)|0,a[ow>>2]);if(0==(f|0)){var e=g;break}var l=Ba(f);do{if(10==m[f+(l-1)|0]<<24>>24){if(35==m[f]<<24>>24&0==(g|0)){var k=f+1|0,k=0==(td(k,jM|0,4)|0)?f+5|0:k,n=Cd(k,kM|0,(j=h,h+=12,a[j>>2]=Qd,a[j+4>>2]=d,a[j+8>>2]=b,j)),z=a[Qd>>2];do{if(1>(n|0)){a[Qd>>2]=z+1|0}else{if(a[Qd>>2]=z-1|0,1<(n|0)){for(var p=k+a[b>>2]|0,s=p;;){var v=m[s];if(34==v<<24>>24||0==v<<24>>24){break}s=s+1|0}(s|0)!=(p|0)&&(m[s]=0,v=p,p=s-p|0,s=a[tw>>2],(s|0)<(p|0)?(s=0==(s|0)?Gb(p+1|0):mc(a[Zl>>2],p+1|0),a[Zl>>2]=s,a[tw>>2]=p,p=s):p=a[Zl>>2],Rf(p,v),a[qj>>2]=a[Zl>>2])}}}while(0);m[f]=0;k=1;n=0}else{a[Qd>>2]=a[Qd>>2]+1|0;c=l-2|0;var t=f+c|0;92!=m[t]<<24>>24?t=l:(m[t]=0,t=c);c=642}}else{t=l,c=642}}while(0);642==c&&(c=0,k=t,n=t+g|0);if(10==m[f+(k-1)|0]<<24>>24){e=n;break}else{g=n}}if(0>=(e|0)){return h=b,0}d=a[qa+24>>2]+1|0;h=b;return d}function la(b,c){var d=h;h+=4;a[d>>2]=arguments[la.length];var g=uw(b,c,a[d>>2]);h=d;return g}function cM(b){var c;a:for(;;){var d=m[b];do{if(0!=d<<24>>24&&!(0==(ah(d&255)|0)&&0==((0<=(m[b]&255)&&31>=(m[b]&255)||127===(m[b]&255))|0))){b=b+1|0;continue a}}while(0);var g=m[Xl];b:do{if(g){for(var d=b,f=m[b];;){if(0==f<<24>>24){break b}else{var e=d}for(;;){var h=0==f<<24>>24,k=e+1|0;if(!(42!=f<<24>>24&(h^1))){break}e=k;f=m[k]}if(h){d=e}else{if(f=m[k],47==f<<24>>24){break}else{d=k}}}m[Xl]=0;d=e+2|0}else{d=b}}while(0);b=m[d];b:do{if(0==b<<24>>24){var j=d;c=676;break a}else{if(47==b<<24>>24){g=m[d+1|0];if(47==g<<24>>24){g=d,f=0}else{if(42==g<<24>>24){m[Xl]=1;m[qw]=a[Qd>>2]&255;var z=d+2|0;break}else{j=d;c=677;break a}}for(;;){var p=g+1|0;if(f){z=g;break b}g=p;f=0==m[p]<<24>>24}}else{if(0!=(ah(b&255)|0)){z=d}else{if(0==((0<=(m[d]&255)&&31>=(m[d]&255)||127===(m[d]&255))|0)){j=d;c=678;break a}else{z=d}}}}}while(0);if(0==m[z]<<24>>24){j=z;c=679;break}else{b=z}}if(679==c||677==c||678==c||676==c){return j}}function eM(b,c){var d=h,g=m[b],f=b+1|0,e=m[f],l=0==e<<24>>24,k=e<<24>>24!=g<<24>>24&(l^1);a:do{if(k){for(var n=c,z=b,p=f,s=e;;){if(92==s<<24>>24){var s=z+2|0,v=m[s];v<<24>>24==g<<24>>24?(p=s,s=n):92!=v<<24>>24?s=n:(m[n]=92,p=s,s=n+1|0)}else{s=n}n=s+1|0;m[s]=m[p];v=p+1|0;s=m[v];z=0==s<<24>>24;if(s<<24>>24!=g<<24>>24&(z^1)){z=p,p=v}else{var t=n,u=p,w=v,A=z;break a}}}else{t=c,u=b,w=f,A=l}}while(0);A?(g=a[qj>>2],g=0!=(g|0)?g:Yl|0,f=a[Qd>>2],la(0,lM|0,(j=h,h+=8,a[j>>2]=g,a[j+4>>2]=f,j))):w=u+2|0;m[t]=0;h=d;return w}function hM(b,c){var d=h,g,f=m[b];if(45==f<<24>>24){f=b+1|0;m[c]=45;var e=c+1|0,l=f,k=m[f]}else{e=c,l=b,k=f}46==k<<24>>24?(k=l+1|0,m[e]=46,f=e+1|0,l=k,e=1,k=m[k]):(f=e,e=0);var n=10>((k&255)-48|0)>>>0;a:do{if(n){for(var z=l,p=f,s=k;;){var z=z+1|0,v=p+1|0;m[p]=s;s=m[z];if(10>((s&255)-48|0)>>>0){p=v}else{var t=z,u=v,w=1,A=s;break a}}}else{t=l,u=f,w=0,A=k}}while(0);do{if(46==A<<24>>24&0==(e|0)){if(m[u]=46,k=u+1|0,l=t+1|0,f=m[l],10>((f&255)-48|0)>>>0){for(var B=k;;){m[B]=f;var C=B+1|0,y=l+1|0,f=m[y];if(10>((f&255)-48|0)>>>0){B=C,l=y}else{break}}m[C]=0;B=y}else{var D=k,F=l;g=703}}else{D=u,F=t,g=703}}while(0);if(703==g){m[D]=0;if(0==(w|0)){return h=d,0}B=F}g=m[B];if(0==g<<24>>24){return h=d,B}if(0==(ti(g&255)|0)){if(95==m[B]<<24>>24){g=B}else{return h=d,B}}else{g=B}for(;;){var E=g+1|0,M=m[E];if(0==M<<24>>24){break}if(95==M<<24>>24|0!=(ti(M&255)|0)){g=E}else{break}}m[E]=0;g=a[qj>>2];g=0!=(g|0)?g:Yl|0;t=a[Qd>>2];la(0,mM|0,(j=h,h+=20,a[j>>2]=g,a[j+4>>2]=t,a[j+8>>2]=b,a[j+12>>2]=c,a[j+16>>2]=B,j));m[E]=M;h=d;return B}function vw(b){var c=h,d=D[qa+28>>1];D[qa+28>>1]=d+1&65535;if(0==d<<16>>16){var d=a[qj>>2],d=0!=(d|0)?d:Yl|0,g=a[Qd>>2];la(1,nM|0,(j=h,h+=16,a[j>>2]=d,a[j+4>>2]=g,a[j+8>>2]=b,a[j+12>>2]=g,j));var b=h,f,d=a[qa+24>>2]+1|0;if(0!=(a[Gc>>2]|0)){la(3,oM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));for(g=a[Gc>>2];;){var e=g-1|0;if(e>>>0<=d>>>0){break}if(0==(ah(m[e]&255)|0)){g=e}else{f=732;break}}732==f&&(f=m[e],m[e]=0,la(3,d,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),m[e]=f);la(3,pM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));f=a[Gc>>2];d=m[f];m[f]=0;la(3,e,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));m[a[Gc>>2]]=d;la(3,qM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));la(3,a[Gc>>2],(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j))}h=b}h=c}function uw(b,c,d){var g,f=h;h+=4;g=f>>2;a[g]=d;var e=3==(b|0),l=e?a[ww>>2]:2==(b|0)?1:b;a[ww>>2]=l;var k=a[xw>>2];a[xw>>2]=k>>>0>l>>>0?k:l;if(l>>>0>2]>>>0){b=a[Vp>>2];if(0==(b|0)&&(b=wn(),a[Vp>>2]=b,0==(b|0))){return h=f,1}e?e=b:(e=zQa(b),a[sM>>2]=e,e=a[Vp>>2]);tM(e,c,a[g])}else{if(0!=(a[$l>>2]|0)){return uM(b,c,d),h=f,0}e?g=d:(e=1==(b|0)?yw|0:zw|0,Va(a[oa>>2],vM|0,(j=h,h+=4,a[j>>2]=e,j)),g=a[g]);tM(a[oa>>2],c,g)}h=f;return 0}function wM(b){var c=h;h+=4;a[c>>2]=arguments[wM.length];uw(1,b,a[c>>2]);h=c}function uM(b,c,d){var g=h;h+=4;var f;a[g>>2]=d;if(0==(a[sj>>2]|0)&&(d=Gb(a[am>>2]),a[sj>>2]=d,0==(d|0))){Lc(Aw|0,35,1,a[oa>>2]);h=g;return}3!=(b|0)&&(J[a[$l>>2]](1==(b|0)?yw|0:zw|0),J[a[$l>>2]](xM|0));for(;;){b=KQa(a[sj>>2],a[am>>2],c,a[g>>2]);d=a[am>>2];if(-1<(b|0)&(b|0)<(d|0)){f=769;break}d<<=1;b=b+1|0;b=(d|0)>(b|0)?d:b;a[am>>2]=b;if(0==(mc(a[sj>>2],b)|0)){f=771;break}}771==f?(Lc(Aw|0,35,1,a[oa>>2]),h=g):769==f&&(J[a[$l>>2]](a[sj>>2]),h=g)}function Mi(b,c){var d=a[a[b+16>>2]>>2],d=J[a[d>>2]](d,c,512);if(0==(d|0)||(a[b+32>>2]|0)==(b|0)){return d}var g=a[b+20>>2];return d=J[a[g>>2]](g,d,4)}function TL(b,c){var d=h;h+=4;a[d>>2]=c;var g=a[b+20>>2],g=J[a[g>>2]](g,d,512);h=d;return g}function cl(b,c){var d=Mi(a[b+32>>2],c);if(0!=(d|0)){return mj(b,d),d}var d=Zv(b,c,a[a[b+40>>2]>>2]),g=a[a[b+16>>2]>>2];J[a[g>>2]](g,d|0,1);mj(b,d);return d}function Zv(b,c,d){var g,f=Yc(1,a[qa+4>>2]);g=f>>2;a[f>>2]=a[f>>2]&-16|1;a[g+3]=Dc(c);var c=(b+16|0)>>2,e=a[c]+16|0,h=a[e>>2];a[e>>2]=h+1|0;a[g+4]=h;a[g+5]=a[b+32>>2];e=rc(a[a[a[c]+4>>2]+4>>2]);if(0==(e|0)){return a[g+1]=0,a[g+2]=0,f}b=(f+4|0)>>2;a[b]=Yc(e,4);a[g+2]=Yc((e+7|0)/8&-1,1);if(0>=(e|0)){return f}g=d+4|0;if(0==(d|0)){for(d=0;!(g=Dc(a[a[a[a[a[c]+4>>2]+8>>2]+(d<<2)>>2]+4>>2]),a[a[b]+(d<<2)>>2]=g,d=d+1|0,(d|0)==(e|0));){}}else{for(c=0;!(d=Dc(a[a[g>>2]+(c<<2)>>2]),a[a[b]+(c<<2)>>2]=d,c=c+1|0,(c|0)==(e|0));){}}return f}function mj(b,c){if(0==(TL(b,a[c+16>>2])|0)){var d=a[b+20>>2];J[a[d>>2]](d,c|0,1);if(0==(a[b>>2]&64|0)){var g=a[b+36>>2],d=a[g+20>>2],g=Og(d,g);if(0!=(g|0)){for(;!(mj(Yd(a[g+16>>2]),c),g=Ql(d,g),0==(g|0));){}}}}}function Pp(b,c){var d=Ok(b,c),g=0==(d|0);a:do{if(!g){for(var f=d;;){var e=Pk(b,f,c);Np(b,f);if(0==(e|0)){break a}else{f=e}}}}while(0);d=0==(a[b>>2]&64|0);a:do{if(d&&(f=a[b+36>>2],g=a[f+20>>2],e=Ib(g,f),0!=(e|0))){for(f=c|0;;){var h=Yd(a[e+12>>2]),k=a[h+20>>2];0!=(J[a[k>>2]](k,f,4)|0)&&Pp(h,c);e=yb(g,e);if(0==(e|0)){break a}}}}while(0);d=a[b+20>>2];J[a[d>>2]](d,c|0,2);(a[b+32>>2]|0)==(b|0)&&$v(c)}function $v(b){var c=b|0,d=b+20|0,g=a[a[a[d>>2]+16>>2]>>2];J[a[g>>2]](g,c,2);a[b>>2]|=15;dc(a[b+12>>2]);d=a[d>>2];g=0==(a[d>>2]&64|0);a:do{if(g){var f=rc(a[a[a[d+16>>2]+4>>2]+4>>2]);if(0<(f|0)){for(var e=b+4|0,h=0;;){if(dc(a[a[e>>2]+(h<<2)>>2]),h=h+1|0,(h|0)==(f|0)){break a}}}}}while(0);G(a[b+4>>2]);G(a[b+8>>2]);G(c)}function ra(b){b=a[b+20>>2];return J[a[b>>2]](b,0,128)}function ba(b,c){var d=a[b+20>>2];return J[a[d>>2]](d,c|0,8)}function zr(){var b,c,d=h;h+=2032;var g,f=d+2e3,e=d+2008,l=d+2016,k=d+2024,n=d|0,z=d+400|0;a[Wp>>2]=0;a[Qg>>2]=-2;var p=f|0,s=f+4|0,v=e|0,t=e+4|0,u=l|0,w=l+4|0,A=k|0,B=k+4|0,C=0,y=0,T=n,F=n,E=z,M=z,X=200;a:for(;;){D[F>>1]=C&65535;if(((X-1<<1)+T|0)>>>0>F>>>0){var O=T,I=F,J=E,H=M;c=H>>2;var K=X}else{var L=F-T>>1,N=L+1|0;if(9999>>0){g=941;break}var Q=X<<1,S=1e4>>0?1e4:Q,R=Gb(10*S+7|0);if(0==(R|0)){g=941;break}var U=R,W=T;tf(R,W,N<<1);var ca=(((S<<1)+7|0)>>>3<<3)+R|0;tf(ca,E,N<<3);(T|0)!=(n|0)&&G(W);if((S-1|0)>(L|0)){O=U,I=(L<<1)+U|0,J=ca,H=(L<<3)+ca|0,c=H>>2,K=S}else{var Z=U,Y=1;break}}if(9==(C|0)){Z=O;Y=0;break}var V=m[Bw+C|0],ja=V<<24>>24;if(-68==V<<24>>24){g=873}else{var aa=a[Qg>>2];if(-2==(aa|0)){var da=aM(),ea=a[Qg>>2]=da}else{ea=aa}var xa=1>(ea|0)?a[Qg>>2]=0:267>ea>>>0?m[yM+ea|0]&255:2;var $=xa+ja|0;if(80<$>>>0){g=873}else{if((m[Xp+$|0]<<24>>24|0)!=(xa|0)){g=873}else{var ba=m[Yp+$|0],ha=ba<<24>>24;if(1>ba<<24>>24){if(0==ba<<24>>24){g=929}else{var ga=-ha|0;g=874}}else{a[Qg>>2]=-2;var sa=H+8|0,fa=sa,ra=Yh,tb=a[ra+4>>2];a[fa>>2]=a[ra>>2];a[fa+4>>2]=tb;var ya=ha,ka=0==(y|0)?0:y-1|0,wa=I,Ab=sa}}}}if(873==g){var Fa=m[zM+C|0];0==Fa<<24>>24?g=929:(ga=Fa&255,g=874)}b:do{if(874==g){g=0;var Ga=m[AM+ga|0]&255,na=1-Ga|0,ta=a[(na<<3>>2)+c],Ka=(na<<3)+H+4|0,za=a[Ka>>2];if(5==(ga|0)){a[qa+16>>2]=0;var ma=ta,pa=za}else{if(6==(ga|0)){ma=a[c],pa=za}else{if(7==(ga|0)){ma=0,pa=za}else{if(8==(ga|0)){a[tj>>2]=0,a[qa+20>>2]=Af|0,ma=ta,pa=za}else{if(9==(ga|0)){a[tj>>2]=2,a[qa+20>>2]=Af|0,ma=ta,pa=za}else{if(11==(ga|0)){a[tj>>2]=3,a[qa+20>>2]=Bf|0,ma=ta,pa=za}else{if(12==(ga|0)){a[ye>>2]=3,ma=ta,pa=za}else{if(13==(ga|0)){a[ye>>2]=1,a[Zp>>2]=a[a[a[Vc>>2]+40>>2]>>2],ma=ta,pa=za}else{if(10==(ga|0)){a[tj>>2]=1,a[qa+20>>2]=Bf|0,ma=ta,pa=za}else{if(4==(ga|0)){var oa=a[qa+16>>2];0!=(oa|0)&&Sf(oa);a[qa+16>>2]=0;ma=ta;pa=za}else{if(2==(ga|0)){var Ha=H|0,Ra=a[Ha>>2],va=h;h+=128;if(0==(Ra|0)){var Aa=va|0;BM(Aa);var La=Aa}else{La=Ra}var Ea=xn(La,a[tj>>2]);a[qa+16>>2]=Ea;a[ye>>2]=3;Cw(Ea);m[Kf]=1;h=va;dc(a[Ha>>2]);ma=ta;pa=za}else{if(3==(ga|0)){m[qa+30|0]=1,CM(),ma=ta,pa=za}else{if(14==(ga|0)){a[ye>>2]=2,a[bm>>2]=a[a[a[Vc>>2]+40>>2]+4>>2],ma=ta,pa=za}else{if(23==(ga|0)){var Ya=H-16|0,Ma=H|0;Dw(a[Ya>>2],a[Ma>>2]);dc(a[Ya>>2]);dc(a[Ma>>2]);ma=ta;pa=za}else{if(25==(ga|0)){var Za=H|0;Dw(a[Za>>2],Es|0);dc(a[Za>>2]);ma=ta;pa=za}else{if(32==(ga|0)){vw(DM|0),ma=ta,pa=za}else{if(37==(ga|0)){a[ye>>2]=3,ma=ta,pa=za}else{if(38==(ga|0)){a[ye>>2]=3,ma=ta,pa=za}else{if(39==(ga|0)){var Qa=a[H-8>>2],ab=a[cm>>2];a[cm>>2]=0;ma=Qa;pa=ab}else{if(40==(ga|0)){var $a=H|0,jb,Ca=cl(a[Vc>>2],a[$a>>2]);m[Kf]=0;jb=Ca;dc(a[$a>>2]);ma=jb;pa=za}else{if(42==(ga|0)){a[cm>>2]=a[c],ma=ta,pa=za}else{if(43==(ga|0)){var Ia=H-16|0,eb=H|0,ub;var Sa=a[Ia>>2],Pa=a[eb>>2],ua=h;h+=1024;var Oa=Ba(Sa)+Ba(Pa)+2|0;if(1025>(Oa|0)){var Wa=ua|0,pb=Wa,ob=Wa}else{pb=Gb(Oa),ob=ua|0}Rf(pb,Sa);var bb=pb+Ba(pb)|0;Pb=58;m[bb]=Pb&255;Pb>>=8;m[bb+1]=Pb&255;uf(pb,Pa);var qb=Dc(pb);(pb|0)!=(ob|0)&&G(pb);h=ua;ub=qb;a[cm>>2]=ub;dc(a[Ia>>2]);dc(a[eb>>2]);ma=ta;pa=za}else{if(44==(ga|0)){a[ye>>2]=1,a[Zp>>2]=a[c],ma=ta,pa=za}else{if(45==(ga|0)){dc(a[H-16+4>>2]),a[ye>>2]=3,ma=ta,pa=za}else{if(46==(ga|0)){EM(a[c],a[c+1]),ma=ta,pa=za}else{if(47==(ga|0)){a[bm>>2]=a[a[a[a[Te>>2]>>2]+40>>2]+4>>2],a[ye>>2]=2,ma=ta,pa=za}else{if(48==(ga|0)){Ew(),ma=ta,pa=za}else{if(49==(ga|0)){EM(a[c],a[c+1]),ma=ta,pa=za}else{if(50==(ga|0)){a[bm>>2]=a[a[a[a[Te>>2]>>2]+40>>2]+4>>2],a[ye>>2]=2,ma=ta,pa=za}else{if(51==(ga|0)){Ew(),ma=ta,pa=za}else{if(52==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(53==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(55==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(56==(ga|0)){$p(a[c],a[c+1]),ma=ta,pa=za}else{if(58==(ga|0)){aq(f),ma=a[p>>2],pa=a[s>>2]}else{if(59==(ga|0)){FM(),ma=ta,pa=za}else{if(60==(ga|0)){aq(e),ma=a[v>>2],pa=a[t>>2]}else{if(61==(ga|0)){FM(),ma=ta,pa=za}else{if(62==(ga|0)){aq(l),ma=a[u>>2],pa=a[w>>2]}else{if(63==(ga|0)){var Cb=h,kb=a[a[Vc>>2]+12>>2],wb=a[Qd>>2];la(0,GM|0,(j=h,h+=8,a[j>>2]=kb,a[j+4>>2]=wb,j));la(3,HM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));var vb=a[a[dm+(a[uj>>2]-2<<2)>>2]+12>>2];la(3,IM|0,(j=h,h+=4,a[j>>2]=vb,j));h=Cb;aq(k);ma=a[A>>2];pa=a[B>>2]}else{if(64==(ga|0)){b=(H|0)>>2;var xb=RL(a[qa+16>>2],a[b]),Va=a[Vc>>2];if(0==(xb|0)){var nb=oo(Va,a[b])}else{gt(Va,xb|0),nb=xb}Cw(nb);m[Kf]=0;dc(a[b]);ma=ta}else{if(65==(ga|0)){ma=a[c]}else{if(66==(ga|0)){ma=a[c]}else{if(67==(ga|0)){ma=a[c]}else{if(68==(ga|0)){var rb=H-16|0,lb=H|0,Ta;var cb=a[rb>>2],fb=a[lb>>2],Ua=h;h+=1024;var sb=Ba(cb)+Ba(fb)+1|0;if(1025>(sb|0)){var Na=Ua|0,Fb=Na,Db=Na}else{Fb=Gb(sb),Db=Ua|0}Rf(Fb,cb);uf(Fb,fb);var Ob=Dc(Fb);(Fb|0)!=(Db|0)&&G(Fb);h=Ua;Ta=Ob;dc(a[rb>>2]);dc(a[lb>>2]);ma=Ta}else{ma=ta}}}}}pa=za}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}var Eb=(-Ga<<1)+I|0,hb=(na<<3)+H|0;a[hb>>2]=ma;a[Ka>>2]=pa;var Bb=(m[JM+ga|0]&255)-21|0,Ja=D[Eb>>1]<<16>>16,ib=(m[KM+Bb|0]<<24>>24)+Ja|0;do{if(81>ib>>>0&&(m[Xp+ib|0]<<24>>24|0)==(Ja|0)){ya=m[Yp+ib|0]<<24>>24;ka=y;wa=Eb;Ab=hb;break b}}while(0);ya=m[LM+Bb|0]<<24>>24;ka=y;wa=Eb;Ab=hb}else{if(929==g){g=0;do{if(0==(y|0)){a[Wp>>2]=a[Wp>>2]+1|0;vw(MM|0);var db=I,yb=H,mb=V}else{if(3==(y|0)){var Ib=a[Qg>>2];if(1>(Ib|0)){if(0==(Ib|0)){Z=O;Y=1;break a}else{db=I,yb=H,mb=V}}else{a[Qg>>2]=-2,db=I,yb=H,mb=V}}else{db=I,yb=H,mb=V}}}while(0);c:for(;;){do{if(-68!=mb<<24>>24){var Hb=(mb<<24>>24)+1|0;if(81>Hb>>>0&&1==m[Xp+Hb|0]<<24>>24){var ic=m[Yp+Hb|0];if(0>24){break c}}}}while(0);if((db|0)==(O|0)){Z=O;Y=1;break a}var Jb=db-2|0,db=Jb,yb=yb-8|0,mb=m[(D[Jb>>1]<<16>>16)+Bw|0]}var Kb=yb+8|0,Lb=Kb,Mb=Yh,Nb=a[Mb+4>>2];a[Lb>>2]=a[Mb>>2];a[Lb+4>>2]=Nb;ya=ic<<24>>24;ka=3;wa=db;Ab=Kb}}}while(0);C=ya;y=ka;T=O;F=wa+2|0;E=J;M=Ab;X=K}941==g&&(vw(NM|0),Z=T,Y=2);if((Z|0)==(n|0)){return h=d,Y}G(Z);h=d;return Y}function bg(b){return 0==(a[Ne>>2]|0)|0==(b|0)?0:b=(m[Tp]?-2147483648:0)&a[b-4>>2]}function Dw(b,c){if(m[Kf]){var d=a[Vc>>2],d=(a[d+32>>2]|0)==(d|0)?c:Y|0}else{d=Y|0}var g=a[ye>>2];if(2==(g|0)){g=$(a[a[a[Vc>>2]+40>>2]+4>>2]|0,b);if(0==(g|0)){d=Th(a[qa+16>>2],b,d)}else{if(0==m[g+13|0]<<24>>24){d=g}else{if(m[Kf]){if(d=a[Vc>>2],(a[d+32>>2]|0)!=(d|0)){d=g}else{return}}else{d=g}}}qc(a[bm>>2]|0,a[d+8>>2],c)}else{if(1==(g|0)){g=$(a[a[a[Vc>>2]+40>>2]>>2]|0,b);if(0==(g|0)){d=xi(a[qa+16>>2],b,d)}else{if(0!=m[g+13|0]<<24>>24&&m[Kf]){return}d=g}qc(a[Zp>>2]|0,a[d+8>>2],c)}else{if(0==(g|0)||3==(g|0)){g=$(a[Vc>>2]|0,b);if(0==(g|0)){d=Mp(a[qa+16>>2],b,d)}else{if(0!=m[g+13|0]<<24>>24&&m[Kf]){return}d=g}qc(a[Vc>>2]|0,a[d+8>>2],c)}}}}function EM(b,c){var d;d=Yc(1,20);a[d+16>>2]=a[Te>>2];a[Te>>2]=d;var g=Yc(1,12),f=a[Te>>2];d=f>>2;a[d+2]=g;f=f+4|0;a[f>>2]=g;a[g>>2]=b;a[g+4>>2]=c;a[a[f>>2]+8>>2]=0;a[d+3]=m[bq]<<24>>24;g=a[Vc>>2];a[d]=g;Yv(g,a[g+40>>2]);m[bq]=1}function $p(b,c){var d,g=Yc(1,12);d=(a[Te>>2]+8|0)>>2;a[a[d]+8>>2]=g;g=a[a[d]+8>>2];a[d]=g;a[g>>2]=b;a[g+4>>2]=c;a[a[d]+8>>2]=0}function aq(b){a[b>>2]=CM()|0;a[b+4>>2]=0}function FM(){var b=h;h+=128;m[Kf]=0;var c=b|0;BM(c);Cw(oo(a[Vc>>2],c));h=b}function BM(b){var c=h,d=a[Fw>>2];a[Fw>>2]=d+1|0;Ma(b,OM|0,(j=h,h+=4,a[j>>2]=d,j));h=c}function Dc(b){0==(a[Ne>>2]|0)&&gM();if(0==(b|0)){return 0}var c=a[Ne>>2],c=J[a[c>>2]](c,b-12|0,4);0==(c|0)?(c=Gb(Ba(b)+16|0),a[c+8>>2]=1,Rf(c+12|0,b),b=a[Ne>>2],J[a[b>>2]](b,c,1)):(b=c+8|0,a[b>>2]=a[b>>2]+1|0);b=c;return b+12|0}function gM(){var b=Nc(PM,a[Xc>>2]);a[Ne>>2]=b;m[Tp]=1;m[Gw]=1}function dc(b){var c=h,d=a[Ne>>2];if(!(0==(d|0)|0==(b|0))){if(d=J[a[d>>2]](d,b-12|0,4),0==(d|0)){la(1,QM|0,(j=h,h+=4,a[j>>2]=b,j))}else{var b=d+8|0,g=a[b>>2]-1|0;a[b>>2]=g;m[Gw]&0!=(g|0)||(b=a[Ne>>2],J[a[b>>2]](b,d,2),G(d))}}h=c}function Hw(b){pf(b);var c=a[b+12>>2],d=a[b+16>>2],g=Zh(c,d);0==(g|0)?de(c,d,b):og(b,g)}function RM(b){var c=b+163|0;if(0==m[c]<<24>>24){m[c]=1;c=b+164|0;m[c]=1;var b=b+184|0,d=a[a[b>>2]>>2],g=0==(d|0);a:do{if(!g){for(var f=0,e=d;;){var h=a[e+12>>2];0==m[h+164|0]<<24>>24?0==m[h+163|0]<<24>>24&&RM(h):(Hw(e),f=f-1|0);f=f+1|0;e=a[a[b>>2]+(f<<2)>>2];if(0==(e|0)){break a}}}}while(0);m[c]=0}}function Ew(){var b=a[Te>>2],c=a[b+4>>2],d=c+8|0,g=a[d>>2];if(0==(g|0)){g=b}else{for(var b=c,c=d,f=g;;){var g=a[b+4>>2],d=a[f+4>>2],e=a[b>>2],h=e;1==(a[e>>2]&15|0)?b=0:(b=h,e=ra(h));h=f=a[f>>2];1==(a[f>>2]&15|0)?h=0:f=ra(h);var k=0==(e|0);a:do{if(!k){for(var j=0==(f|0),z=0==(b|0),p=0==(h|0),s=e;;){b:do{if(!j){for(var v=f;;){var t=uh(a[Vc>>2],s,v);if(0!=(t|0)){var u=a[t+12>>2],w=(a[t+16>>2]|0)!=(u|0)&(u|0)==(s|0),u=w?d:g,w=w?g:d;0!=(u|0)&&0!=m[u]<<24>>24&&(qc(t|0,1,u),dc(u));0!=(w|0)&&0!=m[w]<<24>>24&&(qc(t|0,2,w),dc(w))}if(p){break b}v=ba(h,v);if(0==(v|0)){break b}}}}while(0);if(z){break a}s=ba(b,s);if(0==(s|0)){break a}}}}while(0);d=a[c>>2];c=d+8|0;g=a[c>>2];if(0==(g|0)){break}else{b=d,f=g}}g=c=a[Te>>2];c=a[c+4>>2]}if(0==(c|0)){c=g}else{for(;!(g=a[c+8>>2],1==(a[a[c>>2]>>2]&15|0)&&G(c),0==(g|0));){c=g}c=a[Te>>2]}g=a[Vc>>2];(g|0)==(a[c>>2]|0)?(LL(g),c=a[Te>>2],m[bq]=a[c+12>>2]&255,a[Te>>2]=a[c+16>>2],m[Kf]=0,G(c),a[ye>>2]=3):S()}function Cw(b){var c=h,d=a[uj>>2];63<(d|0)?(la(1,SM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe()):(a[uj>>2]=d+1|0,a[dm+(d<<2)>>2]=b,a[Vc>>2]=b,h=c)}function CM(){var b=h,c=a[uj>>2];0==(c|0)&&(la(1,TM|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),Pe());var d=c-1|0;a[uj>>2]=d;var g=a[dm+(d<<2)>>2];if(0>=(d|0)){return a[Vc>>2]=0,h=b,g}c=a[dm+(c-2<<2)>>2];a[Vc>>2]=c;h=b;return g}function UM(){var b=a[$h>>2];if(0<(b|0)){for(var c=a[Id>>2],d=0,g=0,f=0;;){var e=c+36*f|0,h=c+36*f+12|0,k=a[h>>2],j=0==(k|0),m=0==(d|0);a:do{if(j){var p=m?a[e>>2]:g,s=d+1|0}else{if(m){p=g,s=0}else{if((a[e>>2]|0)>(g|0)&0<(k|0)){for(var v=0,t=k;;){var u=a[a[(c+4>>2)+(9*f|0)]+(v<<2)>>2],w=u+4|0;if(0<(a[w>>2]|0)){t=u|0;for(u=0;;){var A=a[a[t>>2]+(u<<2)>>2]+236|0;a[A>>2]=a[A>>2]-d|0;u=u+1|0;if((u|0)>=(a[w>>2]|0)){break}}w=a[h>>2]}else{w=t}v=v+1|0;if((v|0)<(w|0)){t=w}else{p=g;s=d;break a}}}else{p=g,s=d}}}}while(0);f=f+1|0;if((f|0)<(b|0)){d=s,g=p}else{break}}}}function VM(c,d){var i,g=h,e,Xa=a[d+24>>2];WM(c);var l=-1==(Xa|0);i=(d+8|0)>>2;for(var k=d|0,n=0;;){if(!((n|0)<(Xa|0)|l)){e=1151;break}var z=ra(c),p=0==(z|0);a:do{if(!p){for(var s=z;;){if(a[s+236>>2]=0,s=ba(c,s),0==(s|0)){break a}}}}while(0);Iw(c);z=XM(c);f[0]=z;a[i]=b[0];a[i+1]=b[1];0!=m[ld]<<24>>24&&Va(a[oa>>2],YM|0,(j=h,h+=8,f[0]=z,a[j>>2]=b[0],a[j+4>>2]=b[1],j));if(l&&(b[0]=a[i],b[1]=a[i+1],f[0])<=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])){break}z=c;p=fa(Vh(z)<<2);a[em>>2]=p;if(0<(Vh(z)|0)){for(p=0;!(a[a[em>>2]+(p<<2)>>2]=p,p=p+1|0,(p|0)>=(Vh(z)|0));){}}cq(z);ch(a[em>>2],Vh(z),334);ZM(z);n=n+1|0}1151!=e&&(e=d+20|0,a[d+16>>2]=a[e>>2],a[e>>2]=n);Iw(c);cq(c);UM();n=XM(c);f[0]=n;a[i]=b[0];a[i+1]=b[1];h=g}function WM(c){var d,i,g=Cb(24*Vh(c)|0);a[vj>>2]=g;a[ze>>2]=0;var g=ra(c),e=0==(g|0);a:do{if(!e){for(d=g;;){if(a[d+136>>2]=-1,d=ba(c,d),0==(d|0)){break a}}}}while(0);g=ra(c);if(0!=(g|0)){for(;;){i=g;e=g+24|0;if(0==(a[g+220>>2]|0)){var h=fa(4);d=a[ze>>2];var l=a[vj>>2];a[(l>>2)+(6*d|0)]=h;a[h>>2]=i;a[(l+4>>2)+(6*d|0)]=1;i=e+24|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);h=l+24*d+8|0;f[0]=i;a[h>>2]=b[0];a[h+4>>2]=b[1];i=e+32|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);l=l+24*d+16|0;f[0]=i;a[l>>2]=b[0];a[l+4>>2]=b[1];a[e+112>>2]=d;a[ze>>2]=d+1|0}else{if(h=Zb(i),d=h+136|0,l=a[d>>2],-1<(l|0)){d=a[vj>>2];var h=d+24*l+4|0,k=a[h>>2];a[h>>2]=k+1|0;a[a[(d>>2)+(6*l|0)]+(k<<2)>>2]=i;h=e+24|0;i=(d+24*l+8|0)>>2;h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])+(b[0]=a[i],b[1]=a[i+1],f[0]);f[0]=h;a[i]=b[0];a[i+1]=b[1];d=(d+24*l+16|0)>>2;i=(b[0]=a[d],b[1]=a[d+1],f[0]);h=e+32|0;h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]);f[0]=i>2]=l}else{var k=fa(a[h+220>>2]<<2),e=a[ze>>2],l=a[vj>>2],j=l+24*e|0;a[j>>2]=k;a[k>>2]=h;(h|0)==(i|0)?(a[(l+4>>2)+(6*e|0)]=1,i=g+48|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),h=l+24*e+8|0,f[0]=i,a[h>>2]=b[0],a[h+4>>2]=b[1],i=g+56|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),l=l+24*e+16|0,f[0]=i):(a[a[j>>2]+4>>2]=i,a[(l+4>>2)+(6*e|0)]=2,i=h+48|0,k=g+48|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])+(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=l+24*e+8|0,f[0]=i,a[k>>2]=b[0],a[k+4>>2]=b[1],i=h+56|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),h=g+56|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),l=l+24*e+16|0,f[0]=i>2]=b[0];a[l+4>>2]=b[1];a[d>>2]=e;a[g+136>>2]=e;a[ze>>2]=e+1|0}}g=ba(c,g);if(0==(g|0)){break}}}}function XM(c){cq(c);var d=a[$h>>2],i=(d-1)*a[c+260>>2]|0;if(0>=(d|0)){var g,e;return d=0/i}for(var h=a[Id>>2],c=a[c+256>>2],l=0,k=0;;){var j=h+36*k+20|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])+(c*a[(h+16>>2)+(9*k|0)]|0),l=l>2],b[1]=a[j+4>>2],f[0]),k=k+1|0;if((k|0)>=(d|0)){g=l;e=i;break}}return d=g/e}function cq(c){var d,i,g;a[$h>>2]=0;var e=a[Id>>2];if(0!=(e|0)){var h=0<(a[ze>>2]|0);a:do{if(h){i=0;for(var l=e;;){var k=a[(l+4>>2)+(9*i|0)];0!=(k|0)&&(G(k),l=a[Id>>2]);k=a[(l+8>>2)+(9*i|0)];0!=(k|0)&&(G(k),l=a[Id>>2]);i=i+1|0;if((i|0)>=(a[ze>>2]|0)){g=l;break a}}}else{g=e}}while(0);G(g)}e=fa(36*a[ze>>2]|0);a[Id>>2]=e;e=a[ze>>2];h=0<(e|0);a:do{if(h){g=0;for(i=e;;){if(i=fa(i<<2),a[(a[Id>>2]+4>>2)+(9*g|0)]=i,i=fa(a[ze>>2]<<2),l=a[Id>>2],a[(l+8>>2)+(9*g|0)]=i,a[(l>>2)+(9*g|0)]=g,i=g+1|0,g=(l+36*g+12|0)>>2,a[g]=0,a[g+1]=0,a[g+2]=0,a[g+3]=0,a[g+4]=0,a[g+5]=0,l=a[ze>>2],(i|0)<(l|0)){g=i,i=l}else{break a}}}}while(0);e=ra(c);h=0==(e|0);a:do{if(!h){for(g=e;;){i=Ib(c,g);l=0==(i|0);b:do{if(!l){for(k=i;;){d=a[a[k+16>>2]+236>>2]+1|0;var j=k+12|0,m=(d|0)<(a[a[j>>2]+236>>2]|0);c:do{if(m){for(var p=a[Id>>2],s=d;;){var v=p+36*s+16|0;a[v>>2]=a[v>>2]+1|0;s=s+1|0;if((s|0)>=(a[a[j>>2]+236>>2]|0)){break c}}}}while(0);k=yb(c,k);if(0==(k|0)){break b}}}}while(0);g=ba(c,g);if(0==(g|0)){break a}}}}while(0);e=a[ze>>2];if(0<(e|0)){c=c+256|0;h=a[vj>>2];g=0;for(l=a[$h>>2];!(i=(a[a[(h>>2)+(6*g|0)]>>2]+236|0)>>2,d=a[i],k=d+1|0,(k|0)>(l|0)&&(l=a[$h>>2]=k),k=h+24*g+8|0,j=72*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=a[Id>>2],d=(k+36*d+20|0)>>2,m=(b[0]=a[d],b[1]=a[d+1],f[0]),f[0]=m+j+((0>31&a[c>>2]|0),a[d]=b[0],a[d+1]=b[1],j=a[i],d=(k+36*j+28|0)>>2,m=(b[0]=a[d],b[1]=a[d+1],f[0]),p=h+24*g+16|0,p=72*(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),m>2)+(9*d|0)]+(a[(k+12>>2)+(9*d|0)]<<2)>>2]=h+24*g|0,i=k+36*a[i]+12|0,a[i>>2]=a[i>>2]+1|0,g=g+1|0,(g|0)>=(e|0));){}}}function ZM(c){var d,i,g,e=a[$h>>2],h=a[em>>2];d=a[Id>>2];i=d>>2;for(var l=0;(l|0)<(e|0);){var k=a[h+(l<<2)>>2],j=l+1|0;if(2>(a[i+(9*k|0)+3]|0)){l=j}else{g=1215;break}}if(1215==g){if((e|0)>(j|0)){var z=d+36*a[h+(j<<2)>>2]+20|0,p=k,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])}else{var p=k,z=0}}if((l|0)!=(e|0)){ch(a[i+(9*p|0)+1],a[i+(9*p|0)+3],14);k=a[Id>>2];i=k+36*p+20|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);if(z>.25*i){if(z<.75*i){var s=z}else{g=1220}}else{g=1220}1220==g&&(s=.5*i);g=a[(k+12>>2)+(9*p|0)];if(0<(g|0)){c=c+256|0;for(l=e=i=z=0;;){var v,h=a[(k+8>>2)+(9*p|0)];do{if(0==(a[h+(l<<2)>>2]|0)){var t=a[a[(k+4>>2)+(9*p|0)]+(l<<2)>>2];d=(t+8|0)>>2;var u=72*(b[0]=a[d],b[1]=a[d+1],f[0]),w=a[c>>2]&(0>31|0,j=0==(z|0);if(e+u+w<=s|j){d=e+u+w,u=i,w=j?1:z,t=j?t:v,j=k}else{var j=v+4|0,A=a[j>>2];if(0<(A|0)){for(var u=t+4|0,w=v|0,t=t|0,B=0,C=a[u>>2];;){if(0<(C|0)){for(C=0;;){m[de(a[a[w>>2]+(B<<2)>>2],a[a[t>>2]+(C<<2)>>2],0)+124|0]=1;var C=C+1|0,y=a[u>>2];if((C|0)>=(y|0)){break}}C=y;A=a[j>>2]}B=B+1|0;if((B|0)>=(A|0)){break}}j=a[Id>>2];u=a[(j+8>>2)+(9*p|0)]}else{u=h,j=k}a[u+(l<<2)>>2]=1;u=j+36*p+12|0;a[u>>2]=a[u>>2]-1|0;u=j+36*p+16|0;a[u>>2]=a[u>>2]+1|0;u=72*(b[0]=a[d],b[1]=a[d+1],f[0])+(a[c>>2]|0);d=(j+36*p+20|0)>>2;u=(b[0]=a[d],b[1]=a[d+1],f[0])-u;f[0]=u;a[d]=b[0];a[d+1]=b[1];d=e;u=i;w=z;t=v}}else{d=e,u=i+1|0,w=z,t=v,j=k}}while(0);l=l+1|0;if((l|0)<(u+g|0)){v=t,z=w,i=u,e=d,k=j}else{break}}}}}function $M(b){var c=b+4|0;if(0>=(a[c>>2]|0)){var d;return 0}for(var b=b|0,g=0,f=0;;){var e=a[a[b>>2]+(f<<2)>>2],h=a[e+20>>2],e=Ib(h,e),k=0==(e|0);a:do{if(k){var j=g}else{for(var m=g,p=e;;){if(m=m+1|0,p=yb(h,p),0==(p|0)){j=m;break a}}}}while(0);f=f+1|0;if((f|0)<(a[c>>2]|0)){g=j}else{d=j;break}}return d}function aN(b){var c=a[dj>>2];return 0!=(c|0)&&(b=mb(b|0,a[c+8>>2]),0!=(b|0)&&0!=m[b]<<24>>24&&0==re(b)<<24>>24)?1:0}function bN(c,d){var i,g=(c|0)/2&-1|0;i=(d+104|0)>>2;var e=(b[0]=a[i],b[1]=a[i+1],f[0])+g;f[0]=e;a[i]=b[0];a[i+1]=b[1];i=(d+112|0)>>2;g=(b[0]=a[i],b[1]=a[i+1],f[0])+g;f[0]=g;a[i]=b[0];a[i+1]=b[1]}function cN(b){Jw(b);var c=ra(b);if(0!=(c|0)){for(;;){var d=Ib(b,c),g=0==(d|0);a:do{if(!g){for(var f=d;;){var e=f,h=0==(a[f+180>>2]|0);b:do{if(h&&0==(aN(e)|0)){var k=f+16|0,j=Zb(a[k>>2]),m=f+12|0,p=Zb(a[m>>2]);if((j|0)!=(p|0)){do{if(0==(a[j+216>>2]|0)&&0==(a[p+216>>2]|0)){h=Zh(j,p);0==(h|0)?de(j,p,e):og(e,h);break b}}while(0);dN(b,a[k>>2],a[m>>2],e)}}}while(0);f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}}function dN(b,c,d,g){var f=a[g+16>>2],e=a[f+216>>2],h=a[g+12>>2],k=a[h+216>>2],e=(0==(e|0)?0:a[f+236>>2]-a[a[e+272>>2]+236>>2]|0)-(0==(k|0)?0:a[h+236>>2]-a[a[k+272>>2]+236>>2]|0)+(D[g+178>>1]&65535)|0;0<(e|0)?(f=e|0,e=0):(f=0,e=-e|0);b=Lf(b);m[b+162|0]=2;c=Zb(c);d=Zb(d);h=g+164|0;c=Zc(b,c,e,10*ib[h>>2]&-1);a[Zc(b,d,f,ib[h>>2]&-1)+128>>2]=g;a[c+128>>2]=g}function wj(b,c,d,g){var f=a[a[c+16>>2]+236>>2],e=a[a[c+12>>2]+236>>2],f=(f|0)>(e|0)?f:e,e=c+180|0;0!=(a[e>>2]|0)&&sa(dq|0,149,eN|0,Kw|0);a[e>>2]=d;for(var b=b+256|0,g=0==(g|0),e=c+162|0,h=c+164|0,c=c+176|0;;){if(!g){var k=d+176|0;D[k>>1]=D[k>>1]+D[c>>1]&65535}k=d+162|0;D[k>>1]=D[k>>1]+D[e>>1]&65535;k=d+164|0;ib[k>>2]+=ib[h>>2];d=d+12|0;k=a[d>>2];if((a[k+236>>2]|0)==(f|0)){break}bN(a[b>>2],k);d=a[a[a[d>>2]+184>>2]>>2];if(0==(d|0)){break}}}function fN(b,c){return!(0==(b|0)|0==(c|0))&&(a[b+16>>2]|0)==(a[c+16>>2]|0)&&(a[b+12>>2]|0)==(a[c+12>>2]|0)&&(a[b+108>>2]|0)==(a[c+108>>2]|0)&&0!=(fm(b,c)|0)?1:0}function Lw(b){var c,d,g,f,e,h=b+216|0;a[h>>2]=0;e=(b+240|0)>>2;a[e]=0;Jw(b);var k=b+208|0,j=1>(a[k>>2]|0);a:do{if(!j){var z=b+212|0;for(f=1;;){if(gN(b,a[a[z>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[k>>2]|0)){break a}}}}while(0);k=ra(b);j=0==(k|0);a:do{if(!j){for(z=k;;){f=Ib(b,z);var p=0==(f|0);b:do{if(!p){for(var s=f;;){var v=a[s+12>>2]+166|0;g=m[v];3>g<<24>>24&&(m[v]=g+1&255);v=a[s+16>>2]+166|0;g=m[v];3>g<<24>>24&&(m[v]=g+1&255);s=yb(b,s);if(0==(s|0)){break b}}}}while(0);z=ba(b,z);if(0==(z|0)){break a}}}}while(0);k=ra(b);j=0==(k|0);a:do{if(!j){for(z=k;;){f=z;0==(a[z+216>>2]|0)&&(f|0)==(Zb(f)|0)&&(Mw(b,f),a[e]=a[e]+1|0);p=Ib(b,z);s=0==(p|0);b:do{if(!s){v=0;f=v>>2;var t=p;for(g=t>>2;;){var u=t,w=t+24|0,A=0==(a[g+45]|0);c:do{if(A){if(d=7==m[a[u+16>>2]+165|0]<<24>>24?1:7==m[a[u+12>>2]+165|0]<<24>>24,d&=1,0!=(d|0)){0==(fN(v,u)|0)?(hN(b,u),d=u):(d=a[f+45],0!=(d|0)?(wj(b,u,d,0),Rg(u)):(a[a[g+4]+236>>2]|0)==(a[a[g+3]+236>>2]|0)&&(og(u,v),Rg(u)),d=v)}else{d=(t+16|0)>>2;var B=a[d];do{if(0!=(v|0)&&(B|0)==(a[f+4]|0)&&(c=a[g+3],(c|0)==(a[f+3]|0))){if((a[B+236>>2]|0)==(a[c+236>>2]|0)){og(u,v);Rg(u);d=v;break c}if(0==(a[w+84>>2]|0)&&0==(a[f+27]|0)&&0!=(fm(u,v)|0)){0==m[Wi]<<24>>24?(wj(b,u,a[f+45],1),Rg(u)):m[w+100|0]=6;d=v;break c}}}while(0);c=(t+12|0)>>2;if((B|0)==(a[c]|0)){Rg(u),d=u}else{var B=Zb(B),C=Zb(a[c]),y=a[d];if((y|0)!=(B|0)){d=v}else{var D=a[c];if((D|0)!=(C|0)){d=v}else{var F=a[y+236>>2],E=a[D+236>>2];if((F|0)==(E|0)){gm(b,u)}else{if((E|0)>(F|0)){hm(b,B,C,u)}else{C=B=Kr(b,D,y);do{if(!(0==(B|0)|(B|0)==(t|0))&&(y=B+24|0,D=y+156|0,0==(a[D>>2]|0)&&hm(b,a[B+16>>2],a[B+12>>2],C),0==(a[w+84>>2]|0)&&0==(a[y+84>>2]|0)&&0!=(fm(u,C)|0))){0==m[Wi]<<24>>24?(Rg(u),wj(b,u,a[D>>2],1)):(m[w+100|0]=6,m[y+137|0]=1);d=v;break c}}while(0);hm(b,a[c],a[d],u)}}d=u}}}}}else{d=u}}while(0);g=yb(b,t);if(0==(g|0)){break b}else{v=d,f=v>>2,t=g,g=t>>2}}}}while(0);z=ba(b,z);if(0==(z|0)){break a}}}}while(0);(a[b+32>>2]|0)!=(b|0)&&(b=b+224|0,e=a[b>>2],e=0==(e|0)?Cb(4):wb(e,4),a[b>>2]=e,a[e>>2]=a[h>>2])}function hN(b,c){var d=iN(a[c+16>>2]),g=iN(a[c+12>>2]),f=(a[d+236>>2]|0)>(a[g+236>>2]|0),e=f?g:d,g=f?d:g;if((a[e+216>>2]|0)!=(a[g+216>>2]|0)){if(d=Zh(e,g),0!=(d|0)){wj(b,c,d,1)}else{if(d=g+236|0,(a[e+236>>2]|0)!=(a[d>>2]|0)){hm(b,e,g,c);for(e=c+180|0;;){e=a[e>>2];if(0==(e|0)){break}g=a[e+12>>2];if((a[g+236>>2]|0)>(a[d>>2]|0)){break}m[e+124|0]=5;e=a[g+184>>2]}}}}}function hm(c,d,i,g){var e=0==(a[g+108>>2]|0)?-1:(a[i+236>>2]+a[d+236>>2]|0)/2&-1,h=g+180|0;0!=(a[h>>2]|0)&&sa(dq|0,90,Nw|0,jN|0);var l=a[d+236>>2]+1|0,k=i+236|0,j=a[k>>2],z=(l|0)>(j|0);a:do{if(!z){for(var p=d,s=l,v=j;;){if((s|0)<(v|0)){if((s|0)==(e|0)){var v=c,t=g,u=cc,u=t+108|0,w=a[u>>2],A=w+24|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0]),w=w+32|0,B=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),w=Lf(v);a[w+120>>2]=a[u>>2];u=w+104|0;f[0]=a[a[a[w+20>>2]+32>>2]+256>>2]|0;a[u>>2]=b[0];a[u+4>>2]=b[1];0==m[t+126|0]<<24>>24&&(u=(w+96|0)>>2,0==(a[a[v+32>>2]+152>>2]&1|0)?(f[0]=B,a[u]=b[0],a[u+1]=b[1],v=w+112|0,f[0]=A):(f[0]=A,a[u]=b[0],a[u+1]=b[1],v=w+112|0,f[0]=B),a[v>>2]=b[0],a[v+4>>2]=b[1]);v=w}else{v=c,t=Lf(v),bN(a[v+256>>2],t),v=t}a[v+236>>2]=s}else{v=i}p=de(p,v,g);t=p+164|0;ib[t>>2]*=a[((kN(a[p+12>>2])<<2)+lN>>2)+(3*kN(a[p+16>>2])|0)]|0;s=s+1|0;t=a[k>>2];if((s|0)>(t|0)){break a}else{p=v,v=t}}}}while(0);0==(a[h>>2]|0)&&sa(dq|0,104,Nw|0,mN|0)}function iN(b){return 7==m[b+165|0]<<24>>24?a[a[a[b+216>>2]+276>>2]+(a[b+236>>2]<<2)>>2]:Zb(b)}function nN(b){var c,d;d=(b+32|0)>>2;var g=a[d],f=ra(b);if(0!=(f|0)){for(;;){var e=Ok(a[d],f),h=0==(e|0);a:do{if(!h){var k=0,j=e;for(c=j>>2;;){var m=j;if(0==(Ed(b,j|0)|0)){var p=j,s=0==(fN(k,p)|0),v=j+16|0,t=a[v>>2],u=a[t+236>>2],w=j+12|0,A=a[w>>2],B=a[A+236>>2],C=(u|0)==(B|0);s?C?(u=oN(t,A),0==(u|0)?gm(g,p):((j|0)!=(u|0)&&(pN(p,a[p+16>>2]+208|0),0==(a[c+45]|0)&&og(p,u)),m=k)):(0==(a[c+45]|0)?(sa(Ow|0,234,qN|0,rN|0),p=a[w>>2],u=a[v>>2],k=p,p=a[p+236>>2],t=u,u=a[u+236>>2]):(k=A,p=B),(p|0)>(u|0)?sN(t,k,m):sN(k,t,m)):(a[c+45]=C?k:0,m=a[k+180>>2],0!=(m|0)&&(wj(b,p,m,0),pN(p,a[p+16>>2]+208|0)),m=k)}else{m=k}j=Pk(a[d],j,f);if(0==(j|0)){break a}else{k=m,c=j>>2}}}}while(0);f=ba(b,f);if(0==(f|0)){break}}}}function sN(b,c,d){var g=tN(b),f=tN(c);uN(g,f,d,a[d+180>>2],(g|0)==(b|0)&(f|0)==(c|0)?1:5)}function vN(b){var c,d,g;g=(b+32|0)>>2;var f=a[g],e=b+244|0,h=D[e>>1];0>16?(m[a[f+220>>2]+44*((h<<16>>16)-1)+33|0]=0,c=D[e>>1]):c=h;var e=c<<16>>16,h=b+246|0,k=c<<16>>16>D[h>>1]<<16>>16;a:do{if(k){var j=e}else{d=(b+220|0)>>2;var z=b+276|0;c=(f+220|0)>>2;for(var p=b,s=e;;){var v=a[a[a[z>>2]+(s<<2)>>2]+240>>2];Pw(f,s,v,a[(a[d]>>2)+(11*s|0)]);var t=a[d],u=0<(a[(t>>2)+(11*s|0)]|0);b:do{if(u){for(var w=0,A=v,B=t;;){if(B=a[a[(B+4>>2)+(11*s|0)]+(w<<2)>>2],a[a[(a[c]+4>>2)+(11*s|0)]+(A<<2)>>2]=B,a[B+240>>2]=A,a[B+20>>2]=a[g],Qw(p,B),Mw(a[g],B),B=a[g]+240|0,a[B>>2]=a[B>>2]+1|0,w=w+1|0,B=a[d],(w|0)<(a[(B>>2)+(11*s|0)]|0)){A=A+1|0}else{var C=B;break b}}}else{C=t}}while(0);a[(C+4>>2)+(11*s|0)]=(v<<2)+a[(a[c]+4>>2)+(11*s|0)]|0;m[a[c]+44*s+33|0]=0;s=s+1|0;if((s|0)>(D[h>>1]<<16>>16|0)){j=s;break a}}}}while(0);(j|0)<(D[f+246>>1]<<16>>16|0)&&(m[a[f+220>>2]+44*j+33|0]=0);b=b+280|0;m[b]=1}function wN(b){var c=D[b+244>>1],d=b+246|0;if(c<<16>>16<=D[d>>1]<<16>>16){for(var g=b+276|0,b=b+32|0,c=c<<16>>16;;){var f=a[a[g>>2]+(c<<2)>>2],e=f+184|0,h=a[a[e>>2]>>2],k=0==(h|0);a:do{if(!k){for(var j=h;;){if(pf(j),j=a[a[e>>2]>>2],0==(j|0)){break a}}}}while(0);e=f+176|0;h=a[a[e>>2]>>2];k=0==(h|0);a:do{if(!k){for(j=h;;){if(pf(j),j=a[a[e>>2]>>2],0==(j|0)){break a}}}}while(0);Qw(a[b>>2],f);a[a[g>>2]+(c<<2)>>2]=0;c=c+1|0;if((c|0)>(D[d>>1]<<16>>16|0)){break}}}}function Jw(b){var c=h,d=ra(b),g=0==(d|0);a:do{if(!g){for(var f=d;;){if(7==m[f+165|0]<<24>>24&&YE(f),a[f+216>>2]=0,f=ba(b,f),0==(f|0)){break a}}}}while(0);d=b+208|0;if(1<=(a[d>>2]|0)){g=b+212|0;b=b+12|0;for(f=1;;){var e=a[a[g>>2]+(f<<2)>>2],l=e,k=ra(l),n=0==(k|0);a:do{if(!n){for(var z=e+272|0,p=e,s=k;;){var v=ba(l,s),t=s+24|0,u=t+141|0,w=0==m[u]<<24>>24;b:do{if(w){var A=s,B=a[z>>2];(Zb(A)|0)!=(A|0)&&sa(qo|0,198,xN|0,yN|0);a[A+224>>2]=B;B=B+220|0;a[B>>2]=a[B>>2]+a[A+220>>2]|0;a[t+192>>2]=e;m[u]=7;A=Ib(l,s);if(0!=(A|0)){for(;;){var B=a[A+180>>2],C=0==(B|0);c:do{if(!C){for(var y=B;;){if(0==(y|0)){break c}var y=y+12|0,D=a[y>>2];if(1!=m[D+162|0]<<24>>24){break c}a[D+216>>2]=e;y=a[a[a[y>>2]+184>>2]>>2]}}}while(0);A=yb(l,A);if(0==(A|0)){break b}}}}else{A=a[b>>2],la(0,zN|0,(j=h,h+=8,a[j>>2]=a[s+12>>2],a[j+4>>2]=A,j)),bl(p,s|0)}}while(0);if(0==(v|0)){break a}else{s=v}}}}while(0);f=f+1|0;if((f|0)>(a[d>>2]|0)){break}}}h=c}function gN(b,c){var d,g;g=(c+246|0)>>1;d=(c+276|0)>>2;a[d]=fa((D[g]<<16>>16<<2)+8|0);var f=c+244|0,e=D[f>>1],h=e<<16>>16>D[g]<<16>>16;a:do{if(!h){for(var k=b,j=c,z=0,p=e<<16>>16;;){var s=Lf(k),v=s;a[a[d]+(p<<2)>>2]=v;a[s+236>>2]=p;m[s+165|0]=7;a[s+216>>2]=j;0!=(z|0)&&(z=de(z,s,0)+162|0,D[z>>1]=1e3*D[z>>1]&65535);p=p+1|0;if((p|0)>(D[g]<<16>>16|0)){break a}else{z=v}}}}while(0);e=ra(c);h=0==(e|0);a:do{if(!h){for(k=e;;){j=a[a[d]+(a[k+236>>2]<<2)>>2];v=j+220|0;a[v>>2]=a[v>>2]+1|0;v=Ib(c,k);z=0==(v|0);b:do{if(!z){p=j+184|0;for(s=v;;){var t=a[a[s+16>>2]+236>>2],u=s+12|0,w=(t|0)<(a[a[u>>2]+236>>2]|0);c:do{if(w){for(var A=t;;){var B=a[a[p>>2]>>2]+176|0;D[B>>1]=D[B>>1]+1&65535;A=A+1|0;if((A|0)>=(a[a[u>>2]+236>>2]|0)){break c}}}}while(0);s=yb(c,s);if(0==(s|0)){break b}}}}while(0);k=ba(c,k);if(0==(k|0)){break a}}}}while(0);f=D[f>>1];e=D[g];if(f<<16>>16<=e<<16>>16){for(f=f<<16>>16;!(h=a[a[d]+(f<<2)>>2]+220|0,k=a[h>>2],1<(k|0)&&(a[h>>2]=k-1|0,e=D[g]),f=f+1|0,(f|0)>(e<<16>>16|0));){}}}function AN(b,c,d,g){var f=a[c+216>>2],e=f+281|0,h=d+1|0;if((m[e]<<24>>24|0)!=(h|0)){var k=f+244|0,j=D[k>>1],c=(f+246|0)>>1,z=D[c];if(j<<16>>16>z<<16>>16){var b=j,p=z}else{z=f+276|0;for(j=j<<16>>16;!(Rw(b,a[a[z>>2]+(j<<2)>>2]),j=j+1|0,p=D[c],(j|0)>(p<<16>>16|0));){}b=D[k>>1]}p=b<<16>>16>p<<16>>16;a:do{if(!p){k=f+276|0;z=g;for(j=b<<16>>16;;){if(Sw(z,a[a[k>>2]+(j<<2)>>2],d),j=j+1|0,(j|0)>(D[c]<<16>>16|0)){break a}}}}while(0);m[e]=h&255}}function Tw(b){var c=ra(b);if(0!=(c|0)){for(;;){a[c+216>>2]=0;var d=Ib(b,c),g=0==(d|0);a:do{if(!g){for(var f=d;;){var e=a[f+180>>2],h=0==(e|0);b:do{if(!h){for(var k=e;;){if(0==(k|0)){break b}var k=k+12|0,j=a[k>>2];if(1!=m[j+162|0]<<24>>24){break b}a[j+216>>2]=0;k=a[a[a[k>>2]+184>>2]>>2]}}}while(0);f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}Uw(b)}function Uw(b){var c=b+208|0,d=1>(a[c>>2]|0);a:do{if(!d){for(var g=b+212|0,f=1;;){if(Uw(a[a[g>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[c>>2]|0)){break a}}}}while(0);c=ra(b);if(0!=(c|0)){for(;;){d=c+216|0;0==(a[d>>2]|0)&&(a[d>>2]=b);d=Ib(b,c);g=0==(d|0);a:do{if(!g){for(f=d;;){var e=a[f+180>>2],h=0==(e|0);b:do{if(!h){for(var k=e;;){if(0==(k|0)){break b}var k=k+12|0,j=a[k>>2];if(1!=m[j+162|0]<<24>>24){break b}var z=j+216|0;0==(a[z>>2]|0)?(a[z>>2]=b,k=a[k>>2]):k=j;k=a[a[k+184>>2]>>2]}}}while(0);f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}}function tN(b){var c=a[b+216>>2];return 0==(c|0)||0!=m[c+280|0]<<24>>24?b:b=a[a[c+276>>2]+(a[b+236>>2]<<2)>>2]}function Pw(b,c,d,g){var f,e,b=(b+220|0)>>2,h=a[b];e=h>>2;var k=a[e+(11*c|0)+1];f=k>>2;if(1>(g|0)){d=d-g|0;k=d+1|0;e=a[e+(11*c|0)];var j=(k|0)<(e|0);a:do{if(j){for(var m=d,p=k;;){var s=a[(p<<2>>2)+f],m=m+g|0;a[s+240>>2]=m;a[(m<<2>>2)+f]=s;var s=p+1|0,m=a[b],v=a[(m>>2)+(11*c|0)];if((s|0)<(v|0)){m=p,p=s}else{var t=m,u=v;break a}}}else{t=h,u=e}}while(0);g=g-1|0;h=g+u|0;if((h|0)<(u|0)){for(t=h;;){if(a[(t<<2>>2)+f]=0,t=t+1|0,u=a[b],(t|0)>=(a[(u>>2)+(11*c|0)]|0)){w=u;A=g;break}}c=(w+44*c|0)>>2;b=a[c];b=A+b|0}else{var w,A,c=t+44*c|0,c=c>>2,b=a[c],b=g+b|0}}else{A=a[e+(11*c|0)]-1|0;w=(A|0)>(d|0);a:do{if(w){t=g-1|0;for(u=A;;){if(h=a[(u<<2>>2)+f],e=t+u|0,a[h+240>>2]=e,a[(e<<2>>2)+f]=h,u=u-1|0,(u|0)<=(d|0)){break a}}}}while(0);f=d+1|0;(f|0)<(g+d|0)&&li((f<<2)+k|0,(g<<2)-4|0);w=a[b];c=w+44*c|0;c>>=2;b=a[c];b=(g-1|0)+b|0}a[c]=b}function uN(c,d,i,g,e){var h,l;l=(c+236|0)>>2;h=(d+236|0)>>2;(a[l]|0)<(a[h]|0)||sa(Ow|0,109,BN|0,CN|0);if(!((a[g+16>>2]|0)==(c|0)&&(a[g+12>>2]|0)==(d|0))){if(1>1]<<16>>16){a[i+180>>2]=0;var k=a[h],j=a[l];if(1==(k-j|0)){var z=Zh(c,d);if(0!=(z|0)&&0!=(fm(i,z)|0)){og(i,z);if(0!=m[c+162|0]<<24>>24||0!=m[d+162|0]<<24>>24){return}Rg(i);return}}if((j|0)<(k|0)){z=c+20|0;e&=255;for(l=k;;){if((j|0)<(l-1|0)){l=g+12|0;var k=a[z>>2],p=a[l>>2],s=p+236|0,v=a[s>>2],t=p+240|0;Pw(k,v,a[t>>2],2);var u=Lf(k),w=p+104|0,w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),A=u+104|0;f[0]=w;a[A>>2]=b[0];a[A+4>>2]=b[1];p=p+112|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]);w=u+112|0;f[0]=p;a[w>>2]=b[0];a[w+4>>2]=b[1];a[u+236>>2]=a[s>>2];s=a[t>>2]+1|0;a[u+240>>2]=s;k=a[a[(a[k+220>>2]+4>>2)+(11*v|0)]+(s<<2)>>2]=u}else{k=d,l=g+12|0}m[de(c,k,i)+124|0]=e;g=g+176|0;D[g>>1]=D[g>>1]-1&65535;j=j+1|0;v=a[h];if((j|0)<(v|0)){g=a[a[a[l>>2]+184>>2]>>2],c=k,l=v}else{break}}}}else{k=1==(a[h]-a[l]|0);a:do{if(k){s=c;t=d;v=p=Zh(s,t);u=i;do{if(0!=(p|0)&&0!=(fm(u,p)|0)){a[i+180>>2]=v;m[p+124|0]=e&255;g=p+176|0;D[g>>1]=D[g>>1]+1&65535;if(0!=m[c+162|0]<<24>>24){break a}if(0!=m[d+162|0]<<24>>24){break a}Rg(u);break a}}while(0);a[i+180>>2]=0;v=de(s,t,u);m[v+124|0]=e&255}else{v=g}}while(0);k=a[h];if(1<(k-a[l]|0)){(a[v+16>>2]|0)==(c|0)?(g=v,h=k):(g=i+180|0,a[g>>2]=0,c=de(c,a[v+12>>2],i),a[g>>2]=c,pf(v),g=c,h=a[h]);c=a[g+12>>2];l=(a[c+236>>2]|0)==(h|0);a:do{if(l){z=g,j=c}else{for(k=c;;){if(k=a[a[k+184>>2]>>2],v=a[k+12>>2],(a[v+236>>2]|0)==(h|0)){z=k;j=v;break a}else{k=v}}}}while(0);(j|0)!=(d|0)&&(m[de(a[z+16>>2],d,i)+124|0]=e&255,pf(z))}}}}function xj(c,d,i){var g=i|0;(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])>c?d=0:(g=i+16|0,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])>2],b[1]=a[c+4>>2],f[0])>d?d=0:(i=i+24|0,d=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])>=d)));return d&1}function yj(c,d,i,g,e){var h=c|0;f[0]=.5*(d+g);a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=.5*(i+e);a[c>>2]=b[0];a[c+4>>2]=b[1]}function DN(c,d){var i,g,e,m,l,k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,M,X,O,H,I,J,K,L,N,S,Q,R,U,W,ca,Z,Y,$,ja,aa,da,ea,xa,ba,fa=h;h+=224;var ha,ga=fa+64,ra=fa+80,ka=fa+96,qa=fa+112,tb=fa+128,ya=fa+144,na=fa+160,wa=fa+176,Ab=fa+192,Fa=fa+208,Ga=d|0,oa=EN(c,V(Ga,eq|0)),ta=EN(c,V(Ga,fq|0)),Ka=0!=(ta|0),za=0==(oa|0);if(!(za&(Ka^1))){var ma=d+24|0,pa=a[ma>>2];if(0!=(pa|0)){if(1<(a[pa+4>>2]|0)){var Ba=a[a[d+12>>2]+12>>2];la(0,FN|0,(j=h,h+=8,a[j>>2]=a[a[d+16>>2]+12>>2],a[j+4>>2]=Ba,j))}else{var Ha=a[pa>>2],Ra=a[Ha+4>>2];ba=(d+12|0)>>2;var va=a[ba];xa=(d+16|0)>>2;var Aa=a[xa],La=Cb(48);ea=(Ha+12|0)>>2;a[La+12>>2]=a[ea];da=(Ha+8|0)>>2;a[La+8>>2]=a[da];do{if(za){ha=1647}else{var Ea=oa+52|0,Ya=va+32|0,Ma=va+40|0;if(0==(xj((b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),(b[0]=a[Ma>>2],b[1]=a[Ma+4>>2],f[0]),Ea)|0)){var Za=a[a[xa]+12>>2],Qa=a[a[ba]+12>>2],ab=V(Ga,eq|0);la(0,GN|0,(j=h,h+=12,a[j>>2]=Za,a[j+4>>2]=Qa,a[j+8>>2]=ab,j));ha=1647}else{aa=(Ha|0)>>2;var $a=a[aa],jb=$a|0,Ca=(b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0]),Ia=$a+8|0,eb=(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0]);if(0!=(xj(Ca,eb,Ea)|0)){var ub=Aa+32|0,Sa=Aa+40|0;if(0!=(xj((b[0]=a[ub>>2],b[1]=a[ub+4>>2],f[0]),(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),Ea)|0)){var Pa=a[a[xa]+12>>2],ua=a[a[ba]+12>>2],Oa=V(Ga,eq|0);la(0,HN|0,(j=h,h+=12,a[j>>2]=Pa,a[j+4>>2]=ua,a[j+8>>2]=Oa,j));ha=1647}else{if(0==(a[da]|0)){sa(zj|0,364,im|0,Vw|0);var Wa=a[aa],pb=Wa|0,ob=Wa+8|0,bb=(b[0]=a[pb>>2],b[1]=a[pb+4>>2],f[0]),qb=(b[0]=a[ob>>2],b[1]=a[ob+4>>2],f[0])}else{bb=Ca,qb=eb}ja=(Ha+16|0)>>2;$=(Ha+24|0)>>2;jm(ga,bb,qb,(b[0]=a[ja],b[1]=a[ja+1],f[0]),(b[0]=a[$],b[1]=a[$+1],f[0]),Ea);var wb=ga|0,kb=(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),hb=ga+8|0,vb=(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0]),xb=a[aa],Va=xb+48|0;f[0]=kb;a[Va>>2]=b[0];a[Va+4>>2]=b[1];var nb=xb+56|0;f[0]=vb;a[nb>>2]=b[0];a[nb+4>>2]=b[1];var rb=a[aa]+16|0;yj(ra,kb,vb,(b[0]=a[ja],b[1]=a[ja+1],f[0]),(b[0]=a[$],b[1]=a[$+1],f[0]));Y=rb>>2;Z=ra>>2;a[Y]=a[Z];a[Y+1]=a[Z+1];a[Y+2]=a[Z+2];a[Y+3]=a[Z+3];var lb=a[aa],Ta=lb+16|0,cb=(b[0]=a[Ta>>2],b[1]=a[Ta+4>>2],f[0]),fb=lb+24|0,Ua=(b[0]=a[fb>>2],b[1]=a[fb+4>>2],f[0]);yj(ka,cb,Ua,(b[0]=a[ja],b[1]=a[ja+1],f[0]),(b[0]=a[$],b[1]=a[$+1],f[0]));ca=lb>>2;W=ka>>2;a[ca]=a[W];a[ca+1]=a[W+1];a[ca+2]=a[W+2];a[ca+3]=a[W+3];var sb=a[aa],Na=sb+16|0,Fb=sb+24|0;yj(qa,(b[0]=a[Na>>2],b[1]=a[Na+4>>2],f[0]),(b[0]=a[Fb>>2],b[1]=a[Fb+4>>2],f[0]),kb,vb);U=(sb+32|0)>>2;R=qa>>2;a[U]=a[R];a[U+1]=a[R+1];a[U+2]=a[R+2];a[U+3]=a[R+3];var Db=a[ea],Ob=0==(Db|0)?3:Hn(d,a[aa],0,0,La,Db)+3|0}}else{for(var Eb=Ra-1|0,db=0;(db|0)<(Eb|0);){if(0==(Ww((db<<4)+a[aa]|0,Ea)|0)){db=db+3|0}else{break}}var Bb=a[ea],Ja=0!=(Bb|0);if((db|0)==(Eb|0)){Ja||sa(zj|0,382,im|0,Xw|0);Q=(La+32|0)>>2;var ib=a[aa],yb=Ha+32|0,mb=(b[0]=a[yb>>2],b[1]=a[yb+4>>2],f[0]),Hb=Ha+40|0,Ib=(b[0]=a[Hb>>2],b[1]=a[Hb+4>>2],f[0]),Jb=(Eb<<4)+ib|0,ic=(Eb<<4)+ib+8|0;jm(tb,mb,Ib,(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),(b[0]=a[ic>>2],b[1]=a[ic+4>>2],f[0]),Ea);S=tb>>2;a[Q]=a[S];a[Q+1]=a[S+1];a[Q+2]=a[S+2];a[Q+3]=a[S+3];Ob=Eb}else{Ob=(Ja?Hn(d,a[aa],0,db,La,Bb):db)+3|0}}}}}while(0);if(1647==ha){var Kb=Ra-1|0;0!=(a[ea]|0)&&(N=(La+32|0)>>2,L=(Ha+32|0)>>2,a[N]=a[L],a[N+1]=a[L+1],a[N+2]=a[L+2],a[N+3]=a[L+3]);Ob=Kb}a:do{if(Ka){var Gb=ta+52|0,Lb=Aa+32|0,Mb=Aa+40|0;if(0==(xj((b[0]=a[Lb>>2],b[1]=a[Lb+4>>2],f[0]),(b[0]=a[Mb>>2],b[1]=a[Mb+4>>2],f[0]),Gb)|0)){var Nb=a[a[xa]+12>>2],Pb=a[a[ba]+12>>2],Wb=V(Ga,fq|0);la(0,IN|0,(j=h,h+=12,a[j>>2]=Nb,a[j+4>>2]=Pb,a[j+8>>2]=Wb,j));ha=1670}else{K=(Ha|0)>>2;var Vb=a[K],Tb=(Ob<<4)+Vb|0,Yb=(b[0]=a[Tb>>2],b[1]=a[Tb+4>>2],f[0]),Sb=(Ob<<4)+Vb+8|0,$b=(b[0]=a[Sb>>2],b[1]=a[Sb+4>>2],f[0]);if(0!=(xj(Yb,$b,Gb)|0)){var Zb=va+32|0,ec=va+40|0;if(0!=(xj((b[0]=a[Zb>>2],b[1]=a[Zb+4>>2],f[0]),(b[0]=a[ec>>2],b[1]=a[ec+4>>2],f[0]),Gb)|0)){var lc=a[a[xa]+12>>2],Xb=a[a[ba]+12>>2],kc=V(Ga,fq|0);la(0,JN|0,(j=h,h+=12,a[j>>2]=lc,a[j+4>>2]=Xb,a[j+8>>2]=kc,j));ha=1670}else{if(0==(a[ea]|0)){sa(zj|0,424,im|0,Xw|0);var ac=a[K],Hc=(Ob<<4)+ac|0,nc=(Ob<<4)+ac+8|0,uc=(b[0]=a[Hc>>2],b[1]=a[Hc+4>>2],f[0]),qc=(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0])}else{uc=Yb,qc=$b}J=(La+32|0)>>2;I=(La+40|0)>>2;jm(ya,uc,qc,(b[0]=a[J],b[1]=a[J+1],f[0]),(b[0]=a[I],b[1]=a[I+1],f[0]),Gb);var Qb=ya|0,tc=(b[0]=a[Qb>>2],b[1]=a[Qb+4>>2],f[0]),Sc=ya+8|0,gc=(b[0]=a[Sc>>2],b[1]=a[Sc+4>>2],f[0]),dc=Ob-3|0,bc=a[K],jc=(dc<<4)+bc|0;f[0]=tc;a[jc>>2]=b[0];a[jc+4>>2]=b[1];var oc=(dc<<4)+bc+8|0;f[0]=gc;a[oc>>2]=b[0];a[oc+4>>2]=b[1];var rc=Ob-1|0,Ac=(rc<<4)+a[K]|0;yj(na,tc,gc,(b[0]=a[J],b[1]=a[J+1],f[0]),(b[0]=a[I],b[1]=a[I+1],f[0]));H=Ac>>2;O=na>>2;a[H]=a[O];a[H+1]=a[O+1];a[H+2]=a[O+2];a[H+3]=a[O+3];var fc=a[K],mc=(rc<<4)+fc|0,Bc=(b[0]=a[mc>>2],b[1]=a[mc+4>>2],f[0]),Cc=(rc<<4)+fc+8|0,fd=(b[0]=a[Cc>>2],b[1]=a[Cc+4>>2],f[0]);yj(wa,Bc,fd,(b[0]=a[J],b[1]=a[J+1],f[0]),(b[0]=a[I],b[1]=a[I+1],f[0]));X=((Ob<<4)+fc|0)>>2;M=wa>>2;a[X]=a[M];a[X+1]=a[M+1];a[X+2]=a[M+2];a[X+3]=a[M+3];var Ec=a[K],yc=(rc<<4)+Ec|0,Fc=(rc<<4)+Ec+8|0;yj(Ab,(b[0]=a[yc>>2],b[1]=a[yc+4>>2],f[0]),(b[0]=a[Fc>>2],b[1]=a[Fc+4>>2],f[0]),tc,gc);E=((Ob-2<<4)+Ec|0)>>2;F=Ab>>2;a[E]=a[F];a[E+1]=a[F+1];a[E+2]=a[F+2];a[E+3]=a[F+3];var vc=a[da],Tc=0==(vc|0)?dc:In(d,a[K],dc,dc,La,vc)}}else{var Kc=fa|0;D=fa>>2;y=(fa+16|0)>>2;C=(fa+32|0)>>2;B=(fa+48|0)>>2;for(var Mc=Ob;;){if(0>=(Mc|0)){ha=1663;break}A=((Mc<<4)+a[K]|0)>>2;a[D]=a[A];a[D+1]=a[A+1];a[D+2]=a[A+2];a[D+3]=a[A+3];var id=Mc-1|0;w=((id<<4)+a[K]|0)>>2;a[y]=a[w];a[y+1]=a[w+1];a[y+2]=a[w+2];a[y+3]=a[w+3];var zc=Mc-2|0;u=((zc<<4)+a[K]|0)>>2;a[C]=a[u];a[C+1]=a[u+1];a[C+2]=a[u+2];a[C+3]=a[u+3];var Ic=Mc-3|0;t=((Ic<<4)+a[K]|0)>>2;a[B]=a[t];a[B+1]=a[t+1];a[B+2]=a[t+2];a[B+3]=a[t+3];if(0==(Ww(Kc,Gb)|0)){Mc=Ic}else{ha=1662;break}}do{if(1662==ha){v=((Mc<<4)+a[K]|0)>>2;a[v]=a[D];a[v+1]=a[D+1];a[v+2]=a[D+2];a[v+3]=a[D+3];s=((id<<4)+a[K]|0)>>2;a[s]=a[y];a[s+1]=a[y+1];a[s+2]=a[y+2];a[s+3]=a[y+3];p=((zc<<4)+a[K]|0)>>2;a[p]=a[C];a[p+1]=a[C+1];a[p+2]=a[C+2];a[p+3]=a[C+3];z=((Ic<<4)+a[K]|0)>>2;a[z]=a[B];a[z+1]=a[B+1];a[z+2]=a[B+2];a[z+3]=a[B+3];var Dc=Ic}else{if(1663==ha){if(0!=(Mc|0)){Dc=Mc-3|0}else{0==(a[da]|0)&&sa(zj|0,447,im|0,Vw|0);n=(La+16|0)>>2;var Gc=a[K],Nc=Ha+16|0,Qc=(b[0]=a[Nc>>2],b[1]=a[Nc+4>>2],f[0]),Yc=Ha+24|0,Rc=(b[0]=a[Yc>>2],b[1]=a[Yc+4>>2],f[0]),Td=Gc|0,Lc=Gc+8|0;jm(Fa,Qc,Rc,(b[0]=a[Td>>2],b[1]=a[Td+4>>2],f[0]),(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0]),Gb);k=Fa>>2;a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];Tc=0;break a}}}}while(0);var Pc=a[da],Tc=0==(Pc|0)?Dc:In(d,a[K],Dc,Ob-3|0,La,Pc)}}}else{ha=1670}}while(0);1670==ha&&(0!=(a[da]|0)&&(l=(La+16|0)>>2,m=(Ha+16|0)>>2,a[l]=a[m],a[l+1]=a[m+1],a[l+2]=a[m+2],a[l+3]=a[m+3]),Tc=0);var Xc=Ob-Tc+1|0;e=(La+4|0)>>2;a[e]=Xc;var Jc=Cb(Xc<<4);a[La>>2]=Jc;var ad=0<(a[e]|0),jd=Ha|0;a:do{if(ad){for(var md=0,Oc=Tc,Vc=Jc;;){g=((md<<4)+Vc|0)>>2;i=((Oc<<4)+a[jd>>2]|0)>>2;a[g]=a[i];a[g+1]=a[i+1];a[g+2]=a[i+2];a[g+3]=a[i+3];var Zc=md+1|0;if((Zc|0)>=(a[e]|0)){break a}md=Zc;Oc=Oc+1|0;Vc=a[La>>2]}}}while(0);G(a[jd>>2]);G(Ha);a[a[ma>>2]>>2]=La}}}h=fa}function EN(b,c){var d=h;if(0==(c|0)){var g=0}else{0==m[c]<<24>>24?g=0:(g=RL(b,c),0==(g|0)&&la(0,KN|0,(j=h,h+=4,a[j>>2]=c,j)))}h=d;return g}function jm(c,d,i,g,e,m){var l=h;h+=400;var k=l+100,n=l+200,z=l+300,p=m|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),s=m+8|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=m+16|0,v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]),m=m+24|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);if(p>g){var t=((p-d)*(i-e)/(d-g)&-1|0)+i;if(!(tm)){z=c|0;f[0]=p;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=t;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}if(vm){var u=v}else{z=c|0;f[0]=v;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=t;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}else{u=p}if(s>e){if(u=((s-i)*(d-g)/(i-e)&-1|0)+d,uv){t=s}else{z=c|0;f[0]=u;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=s;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}if(mv){t=m}else{z=c|0;f[0]=u;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=m;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l;return}}d=gq(d,i,l|0);g=gq(g,e,k|0);n=gq(p,s,n|0);z=gq(v,m,z|0);la(1,LN|0,(j=h,h+=16,a[j>>2]=d,a[j+4>>2]=g,a[j+8>>2]=n,a[j+12>>2]=z,j));sa(zj|0,78,MN|0,vd|0);z=c|0;f[0]=u;a[z>>2]=b[0];a[z+4>>2]=b[1];c=c+8|0;f[0]=t;a[c>>2]=b[0];a[c+4>>2]=b[1];h=l}function Ww(c,d){var i,g,e,j,l=h;h+=128;var k=l|0;g=l>>2;j=c>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];g=(l+16|0)>>2;j=(c+16|0)>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];g=(l+32|0)>>2;j=(c+32|0)>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];g=(l+48|0)>>2;j=(c+48|0)>>2;a[g]=a[j];a[g+1]=a[j+1];a[g+2]=a[j+2];a[g+3]=a[j+3];j=(d|0)>>2;i=(b[0]=a[j],b[1]=a[j+1],f[0]);e=(d+8|0)>>2;g=(d+24|0)>>2;i=hq(c,0,1,i,(b[0]=a[e],b[1]=a[e+1],f[0]),(b[0]=a[g],b[1]=a[g+1],f[0]));if(0<=i&2>i){Ld(l+64,k,3,i,c,0);var n=i}else{n=2}i=(d+16|0)>>2;var m=(b[0]=a[i],b[1]=a[i+1],f[0]),m=hq(c,0,1e,h=l,k&1}Ld(l+112,k,3,j,c,0);k=2>j;h=l;return k&1}function hq(c,d,i,g,e,j){var l=h;h+=144;var k,n=l+64,m=l+128,p=NN(c,g);if(1==(p|0)){k=1717}else{if(0==(p|0)){return h=l,-1}}if(1717==k&&(k=c+48|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),((0>k?k-.5:k+.5)&-1|0)==((0>g?g-.5:g+.5)&-1|0))){return g=c+56|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),h=l,gj?-1:i}k=l|0;n|=0;Ld(m,c,3,.5,k,n);c=.5*(d+i);d=hq(k,d,c,g,e,j);if(0<=d){return h=l,d}i=hq(n,c,i,g,e,j);h=l;return i}function ON(c,d){var i=c+8|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=id&1,g=c+24|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=gd&1,g=c+40|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=gd&1,i=((g|0)!=(e|0)&0!=(e|0)&1)+((e|0)!=(i|0)&0!=(i|0)&1)+(0==(i|0)&1)|0,e=c+56|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(ed&1|0)!=(g|0);g=e&0!=(g|0);return i=(g&1)+i|0}function NN(c,d){var i=c|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),i=id&1,g=c+16|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=gd&1,g=c+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=gd&1,i=((g|0)!=(e|0)&0!=(e|0)&1)+((e|0)!=(i|0)&0!=(i|0)&1)+(0==(i|0)&1)|0,e=c+48|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);if(ed&1|0)!=(g|0);g=e&0!=(g|0);return i=(g&1)+i|0}function PN(b){return(1==m[b+162|0]<<24>>24?1!=(a[b+180>>2]|0)?0:1!=(a[b+188>>2]|0)?0:0==(a[b+120>>2]|0):0)&1}function QN(b){return(1==m[b+162|0]<<24>>24?1!=(a[b+188>>2]|0)?0:1!=(a[b+180>>2]|0)?0:0==(a[b+120>>2]|0):0)&1}function iq(c,d,i,g,e,j){var l=h;h+=144;var k,n=l+64,m=l+128,p=ON(c,g);if(1==(p|0)){k=1764}else{if(0==(p|0)){return h=l,-1}}if(1764==k&&(k=c+56|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),((0>k?k-.5:k+.5)&-1|0)==((0>g?g-.5:g+.5)&-1|0))){return g=c+48|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),h=l,gj?-1:i}k=l|0;n|=0;Ld(m,c,3,.5,k,n);c=.5*(d+i);d=iq(k,d,c,g,e,j);if(0<=d){return h=l,d}i=iq(n,c,i,g,e,j);h=l;return i}function gq(c,d,i){var g=h;Ma(i,RN|0,(j=h,h+=16,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));h=g;return i}function SN(b){var c,d;if(2<=((D[b+246>>1]<<16>>16)-(D[b+244>>1]<<16>>16)|0)){c=(b+220|0)>>2;var g=a[c];do{if(0==(a[g+88>>2]|0)){var f=1,e=g;d=1791}else{for(var h=1,k=2,j=g;;){var m=a[(j>>2)+(11*h|0)],p=0<(m|0);a:do{if(p){for(var s=0,v=j,t=m;;){var u=a[(v+4>>2)+(11*h|0)],w=a[u+(s<<2)>>2];do{if(0==PN(w)<<24>>24){var A=v,B=t}else{A=w+176|0;for(B=s;;){var C=B+1|0;if((C|0)>=(t|0)){break}var y;y=a[a[A>>2]>>2];var T=a[u+(C<<2)>>2],F=a[a[T+176>>2]>>2];y=0==PN(T)<<24>>24?0:(a[y+16>>2]|0)!=(a[F+16>>2]|0)?0:(0==Yw(y,F)<<24>>24?0:0==(Aj(y+28|0,F+28|0)|0))&1;if(0==y<<24>>24){break}else{B=C}}1<(C-s|0)?(Zw(b,h,s,B,1),A=B=a[c],B=a[(B>>2)+(11*h|0)]):(A=v,B=t)}}while(0);s=s+1|0;if((s|0)<(B|0)){v=A,t=B}else{var E=A;break a}}}else{E=j}}while(0);j=k+1|0;if(0==(a[(E>>2)+(11*j|0)]|0)){break}else{h=k,k=j,j=E}}0<(k|0)&&(f=k,e=E,d=1791)}}while(0);a:do{if(1791==d){for(;;){d=a[(e>>2)+(11*f|0)];g=0<(d|0);b:do{if(g){h=0;k=e;for(C=d;;){E=a[(k+4>>2)+(11*f|0)];j=a[E+(h<<2)>>2];do{if(0==QN(j)<<24>>24){m=k,p=C}else{m=j+184|0;for(p=h;;){var M=p+1|0;if((M|0)>=(C|0)){break}s=a[a[m>>2]>>2];v=a[E+(M<<2)>>2];t=a[a[v+184>>2]>>2];s=0==QN(v)<<24>>24?0:(a[s+12>>2]|0)!=(a[t+12>>2]|0)?0:(0==Yw(s,t)<<24>>24?0:0==(Aj(s+68|0,t+68|0)|0))&1;if(0==s<<24>>24){break}else{p=M}}1<(M-h|0)?(Zw(b,f,h,p,0),m=p=a[c],p=a[(p>>2)+(11*f|0)]):(m=k,p=C)}}while(0);h=h+1|0;if((h|0)<(p|0)){k=m,C=p}else{var G=m;break b}}}else{G=e}}while(0);f=f-1|0;if(0<(f|0)){e=G,d=1791}else{break a}}}}while(0);c=b+208|0;if(1<=(a[c>>2]|0)){b=b+212|0;for(M=1;!($w(a[a[b>>2]+(M<<2)>>2]),M=M+1|0,(M|0)>(a[c>>2]|0));){}}}}function Zw(b,c,d,g,f){var e,h;e=(b+220|0)>>2;var k=a[e],j=a[(k+4>>2)+(11*c|0)],m=a[j+(d<<2)>>2],d=d+1|0,p=(d|0)>(g|0);a:do{if(p){var s=k}else{for(var v=1==(f|0),t=b,u=m+184|0,w=m,A=m+176|0,B=d,C=j;;){C=a[C+(B<<2)>>2];b:do{if(v){var y=C+184|0,D=a[a[y>>2]>>2];if(0!=(D|0)){for(var F=C+176|0;;){for(var E=a[u>>2],M=D+12|0,G=0;;){var O=a[E+(G<<2)>>2];if(0==(O|0)){h=1827;break}if((a[O+12>>2]|0)==(a[M>>2]|0)){var H=O;break}else{G=G+1|0}}1827==h&&(h=0,H=de(w,a[M>>2],D));E=a[a[F>>2]>>2];M=0==(E|0);c:do{if(!M){G=H;for(O=E;;){if(og(O,G),pf(O),O=a[a[F>>2]>>2],0==(O|0)){break c}}}}while(0);pf(D);D=a[a[y>>2]>>2];if(0==(D|0)){break b}}}}else{if(y=C+176|0,D=a[a[y>>2]>>2],0!=(D|0)){for(F=C+184|0;;){E=a[A>>2];M=D+16|0;for(G=0;;){O=a[E+(G<<2)>>2];if(0==(O|0)){h=1835;break}if((a[O+16>>2]|0)==(a[M>>2]|0)){var I=O;break}else{G=G+1|0}}1835==h&&(h=0,I=de(a[M>>2],w,D));E=a[a[F>>2]>>2];M=0==(E|0);c:do{if(!M){G=I;for(O=E;;){if(og(O,G),pf(O),O=a[a[F>>2]>>2],0==(O|0)){break c}}}}while(0);pf(D);D=a[a[y>>2]>>2];if(0==(D|0)){break b}}}}}while(0);(a[C+180>>2]|0)!=(-a[C+188>>2]|0)&&sa(TN|0,113,UN|0,VN|0);Qw(t,C);B=B+1|0;C=a[e];if((B|0)>(g|0)){s=C;break a}C=a[(C+4>>2)+(11*c|0)]}}}while(0);b=g+1|0;g=s+44*c|0;if((b|0)<(a[g>>2]|0)){for(;;){if(s=a[(s+4>>2)+(11*c|0)],g=a[s+(b<<2)>>2],a[s+(d<<2)>>2]=g,a[g+240>>2]=d,d=d+1|0,b=b+1|0,s=a[e],g=s+44*c|0,(b|0)>=(a[g>>2]|0)){J=d;K=g;break}}a[K>>2]=J}else{var J=d,K;a[g>>2]=J}e=a[e];c=a[(e+44*c+4|0)>>2];J=(J<<2)+c|0;a[J>>2]=0}function WN(b,c){var d=(a[c+236>>2]<<2)+b|0,g=a[d>>2];if(0==(g|0)||(a[g+240>>2]|0)>(a[c+240>>2]|0)){a[d>>2]=c}}function Yw(b,c){var d=0==m[b+124|0]<<24>>24;a:do{if(d){var g=b}else{for(var f=b;;){if(f=a[f+128>>2],0==m[f+124|0]<<24>>24){g=f;break a}}}}while(0);d=0==m[c+124|0]<<24>>24;a:do{if(d){var e=c}else{for(f=c;;){if(f=a[f+128>>2],0==m[f+124|0]<<24>>24){e=f;break a}}}}while(0);return 0!=m[g+161|0]<<24>>24||0!=m[e+161|0]<<24>>24?0:g=0<((a[a[g+16>>2]+236>>2]-a[a[g+12>>2]+236>>2])*(a[a[e+16>>2]+236>>2]-a[a[e+12>>2]+236>>2])|0)&1}function jq(b,c){var d;a[Bj>>2]=b;var g=m[pg]+1&255;m[pg]=0==g<<24>>24?1:g;a[b+228>>2]=0;a[b+240>>2]=0;var f=ra(b);if(0!=(f|0)){for(g=0<(c|0);;){var e=f;if(g){d=f+24|0;var h=a[d+192>>2];if(0==(h|0)){d=1886}else{var k=a[a[h+276>>2]+(a[d+212>>2]<<2)>>2];d=1887}}else{d=1886}1886==d&&(d=0,(e|0)==(Zb(e)|0)&&(k=e,d=1887));if(1887==d&&m[k+163|0]<<24>>24!=m[pg]<<24>>24){a[a[Bj>>2]+216>>2]=0;a[kq>>2]=0;Cj(k);var h=a[Bj>>2],j=h+228|0,e=a[j>>2];d=e+1|0;a[j>>2]=d;h=a[h+224>>2];d=0==(h|0)?Cb(d<<2):wb(h,d<<2);h=a[Bj>>2];a[h+224>>2]=d;a[d+(e<<2)>>2]=a[h+216>>2]}f=ba(b,f);if(0==(f|0)){break}}}}function Cj(b){var c=a[Bj>>2],d=c+240|0;a[d>>2]=a[d>>2]+1|0;m[b+163|0]=m[pg];var d=a[kq>>2],g=b+172|0;0==(d|0)?(a[g>>2]=0,a[c+216>>2]=b):(a[g>>2]=d,a[d+168>>2]=b);a[kq>>2]=b;c=b+168|0;a[c>>2]=0;var f=a[(b+184|0)>>2],e=0==(f|0),g=a[(b+176|0)>>2],d=a[(b+192|0)>>2],c=a[(b+200|0)>>2];a:do{if(!e){var h=a[f>>2];if(0!=(h|0)){for(var k=0;;){var j=a[h+12>>2],h=(j|0)==(b|0)?a[h+16>>2]:j;m[h+163|0]<<24>>24!=m[pg]<<24>>24&&(h|0)==(Zb(h)|0)&&Cj(h);k=k+1|0;h=a[f+(k<<2)>>2];if(0==(h|0)){break a}}}}}while(0);f=0==(g|0);a:do{if(!f&&(k=a[g>>2],0!=(k|0))){for(e=0;;){if(h=a[k+12>>2],k=(h|0)==(b|0)?a[k+16>>2]:h,m[k+163|0]<<24>>24!=m[pg]<<24>>24&&(k|0)==(Zb(k)|0)&&Cj(k),e=e+1|0,k=a[g+(e<<2)>>2],0==(k|0)){break a}}}}while(0);g=0==(d|0);a:do{if(!g&&(e=a[d>>2],0!=(e|0))){for(f=0;;){if(k=a[e+12>>2],e=(k|0)==(b|0)?a[e+16>>2]:k,m[e+163|0]<<24>>24!=m[pg]<<24>>24&&(e|0)==(Zb(e)|0)&&Cj(e),f=f+1|0,e=a[d+(f<<2)>>2],0==(e|0)){break a}}}}while(0);if(0!=(c|0)&&(g=a[c>>2],0!=(g|0))){for(d=0;!(f=a[g+12>>2],g=(f|0)==(b|0)?a[g+16>>2]:f,m[g+163|0]<<24>>24!=m[pg]<<24>>24&&(g|0)==(Zb(g)|0)&&Cj(g),d=d+1|0,g=a[c+(d<<2)>>2],0==(g|0));){}}}function XN(b){var c=ra(b),d=0==(c|0);a:do{if(!d){for(var g=c;;){var f=g,e=f>>2;hF(f);et(f,a[a[e+5]+152>>2]&1);a[e+45]=0;a[e+44]=fa(20);a[e+47]=0;a[e+46]=fa(20);a[e+51]=0;a[e+50]=fa(12);a[e+49]=0;a[e+48]=fa(12);a[e+53]=0;a[e+52]=fa(12);a[e+55]=1;g=ba(b,g);if(0==(g|0)){break a}}}}while(0);c=ra(b);if(0!=(c|0)){for(;;){d=Ib(b,c);g=0==(d|0);a:do{if(!g){for(f=d;;){var e=f,h=cc,k=cc;kF(e);var j=e|0,z=Xb(j,a[Kg>>2],1,0),k=(e+164|0)>>2;ib[k]=z;var h=a[Gh>>2],p=jc(a[e+16>>2]|0,h,Y|0),s=jc(a[e+12>>2]|0,h,Y|0),h=(e+162|0)>>1;D[h]=1;D[e+176>>1]=1;0!=m[p]<<24>>24&(p|0)==(s|0)&&(D[h]=1e3,ib[k]=100*z);0!=(aN(e)|0)&&(D[h]=0,ib[k]=0);m[e+160|0]=Zf(j,a[$u>>2],0)&255;D[e+178>>1]=Zf(j,a[Hh>>2],1)&65535;f=yb(b,f);if(0==(f|0)){break a}}}}while(0);c=ba(b,c);if(0==(c|0)){break}}}}function ax(b){var c=a[b+216>>2],d;if(0!=(c|0)){for(d=c>>2;;){var g=a[d+42],f=c,e=a[f+180>>2],h=0<(e|0);a:do{if(h){for(var k=f+176|0,j=e;;){var j=j-1|0,z=a[a[k>>2]+(j<<2)>>2];pf(z);G(z|0);if(0>=(j|0)){break a}}}}while(0);e=a[f+188>>2];if(0<(e|0)){for(f=f+184|0;!(e=e-1|0,h=a[a[f>>2]+(e<<2)>>2],pf(h),G(h|0),0>=(e|0));){}}1==m[c+162|0]<<24>>24&&(f=a[d+46],0!=(f|0)&&G(f),d=a[d+44],0!=(d|0)&&G(d),G(c|0));if(0==(g|0)){break}else{c=g,d=c>>2}}}c=ra(b);if(0!=(c|0)){for(;;){g=c;d=Ib(b,c);f=0==(d|0);a:do{if(!f){for(e=d;;){h=e;k=cc;k=(h+24|0)>>2;z=a[k];if(0!=(z|0)){j=0<(a[z+4>>2]|0);z=a[z>>2];b:do{if(j){for(var p=0,s=z;;){G(a[(s>>2)+(12*p|0)]);var p=p+1|0,v=a[k],s=a[v>>2];if((p|0)>=(a[v+4>>2]|0)){var t=s;break b}}}else{t=z}}while(0);G(t);G(a[k])}a[k]=0;vh(a[h+108>>2]);vh(a[h+120>>2]);vh(a[h+112>>2]);vh(a[h+116>>2]);h=(h+24|0)>>2;for(k=h+40;h>1];f=(b+246|0)>>1;var n=d<<16>>16>D[f]<<16>>16;a:do{if(n){g=b+276|0,g>>=2}else{for(var z=b+276|0,p=d<<16>>16;;){if(a[a[z>>2]+(p<<2)>>2]=0,p=p+1|0,(p|0)>(D[f]<<16>>16|0)){g=z;g>>=2;break a}}}}while(0);$N(b);d=ra(b);n=0==(d|0);a:do{if(!n){for(z=d;;){WN(a[g],z);var p=Ib(b,z),s=0==(p|0);b:do{if(!s){for(var v=p;;){for(var t=v;!(c=a[t+180>>2],0==(c|0));){t=c}t=t+12|0;c=a[t>>2];var u=v+12|0,w=(a[c+236>>2]|0)<(a[a[u>>2]+236>>2]|0);c:do{if(w){for(var A=t,B=c;;){if(WN(a[g],B),A=a[a[a[A>>2]+184>>2]>>2]+12|0,B=a[A>>2],(a[B+236>>2]|0)>=(a[a[u>>2]+236>>2]|0)){break c}}}}while(0);v=yb(b,v);if(0==(v|0)){break b}}}}while(0);z=ba(b,z);if(0==(z|0)){break a}}}}while(0);n=b+32|0;d=(b+220|0)>>2;z=b+12|0;for(k=D[k>>1]<<16>>16;(k|0)<=(D[f]<<16>>16|0);){p=a[a[g]+(k<<2)>>2];s=(a[p+240>>2]<<2)+a[(a[a[n>>2]+220>>2]+4>>2)+(11*k|0)]|0;if((a[s>>2]|0)!=(p|0)){l=1983;break}a[(a[d]+4>>2)+(11*k|0)]=s;p=0;s=-1;a:for(;;){v=a[d];if((p|0)>=(a[(v>>2)+(11*k|0)]|0)){break}v=a[a[(v+4>>2)+(11*k|0)]+(p<<2)>>2];if(0==(v|0)){break}t=0==m[v+162|0]<<24>>24;b:do{if(t){if(0==(Ed(b,v|0)|0)){break a}else{c=p}}else{u=a[a[v+176>>2]>>2];for(c=u>>2;;){if(0==(u|0)){c=s;break b}u=a[c+32];if(0==(u|0)){break}else{c=u>>2}}c=0==(Ed(b,a[c+4]|0)|0)?s:0==(Ed(b,a[c+3]|0)|0)?s:p}}while(0);p=p+1|0;s=c}-1==(s|0)&&la(0,aO|0,(j=h,h+=8,a[j>>2]=a[z>>2],a[j+4>>2]=k,j));a[(a[d]>>2)+(11*k|0)]=s+1|0;k=k+1|0}1983==l&&S();f=b+208|0;if(1<=(a[f>>2]|0)){b=b+212|0;for(l=1;!($w(a[a[b>>2]+(l<<2)>>2]),l=l+1|0,(l|0)>(a[f>>2]|0));){}}h=e}function Aj(c,d){var i=h,g=c,c=h;h+=40;for(var g=g>>2,e=c>>2,j=g+10;g>=2;e=d>>2;for(j=g+10;g>24){return h=i,0!=g<<24>>24&1}if(0==g<<24>>24){return h=i,-1}g=c|0;e=d|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])&-1;if(0!=(g|0)){return h=i,g}g=c+8|0;e=d+8|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])&-1;h=i;return g}function YN(b){var c=b>>2,d=b+24|0,g=a[c+44];0!=(g|0)&&G(g);g=a[c+46];0!=(g|0)&&G(g);g=a[c+48];0!=(g|0)&&G(g);g=a[c+50];0!=(g|0)&&G(g);g=a[c+52];0!=(g|0)&&G(g);vh(a[c+30]);c=a[d>>2];if(0!=(c|0)){J[a[a[c+4>>2]+4>>2]](b)}b=d>>2;for(d=b+70;b(a[c>>2]|0),f=b+212|0,e=a[f>>2];a:do{if(g){var h=e}else{for(var k=1,j=e;;){if(j=a[j+(k<<2)>>2],m[j+250|0]=0,ax(j),k=k+1|0,j=a[f>>2],(k|0)>(a[c>>2]|0)){h=j;break a}}}}while(0);0!=(h|0)&&G(h);c=a[b+276>>2];0!=(c|0)&&G(c);c=a[b+224>>2];0!=(c|0)&&G(c);c=(b+220|0)>>2;g=a[c];do{if(0!=(g|0)){f=b+244|0;h=D[f>>1];e=b+246|0;if(h<<16>>16>D[e>>1]<<16>>16){f=h,e=g}else{h=h<<16>>16;for(k=g;;){G(a[(k+12>>2)+(11*h|0)]);h=h+1|0;if((h|0)>(D[e>>1]<<16>>16|0)){break}k=a[c]}f=D[f>>1];e=a[c]}-1==f<<16>>16?G(e-44|0):G(e)}}while(0);if((a[b+32>>2]|0)!=(b|0)){b=d>>2;for(d=b+61;b>2;if(0==(c|0)){var c=a[f+4],e=a[f+3],b=(c|0)!=(e|0)?(a[c+236>>2]|0)==(a[e+236>>2]|0)?2:1:0!=m[b+56|0]<<24>>24?4:0==m[b+96|0]<<24>>24?8:4}else{b=c}a[f+43]=b|g|(0==(d|0)?2==(b|0)?(a[a[f+4]+240>>2]|0)<(a[a[f+3]+240>>2]|0)?16:32:1==(b|0)?(a[a[f+4]+236>>2]|0)<(a[a[f+3]+236>>2]|0)?16:32:16:d)}function bx(c,d){var i,g,e,Xa,l,k,n,z,p,s,v,t=h;h+=388;var u,w=t+184,A=t+368,B=D[c+164>>1]&14;if(0!=(B|0)){Tw(c);var C=h,y=a[km>>2];a[km>>2]=y+1|0;if(0>=(y|0)){var F=Cb(4800);a[Ch>>2]=F;0==(F|0)&&(la(1,bO|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),S());a[Yo>>2]=300;a[ml>>2]=0;a[nl>>2]=0;0!=m[ld]<<24>>24&&mk(ih)}h=C;var E=fa(92),H=a[c+256>>2];a[A+8>>2]=(H|0)/4&-1;var M=A+12|0;a[M>>2]=H;var I=fa(512);v=(A+4|0)>>2;a[v]=0;s=(A|0)>>2;a[s]=0;var O=c+244|0,K=D[O>>1],L=K<<16>>16;p=(c+246|0)>>1;var ia=D[p];if(K<<16>>16>ia<<16>>16){var N=I,Q=0,R=11520,U=L}else{for(var W=c+220|0,Z=I,Y=0,V=0,ca=L,$=a[W>>2],ka=ia;;){z=($+44*ca|0)>>2;var zb=a[z],ja=zb+V|0,aa=$+44*ca+4|0,da=a[a[aa>>2]>>2];if(0==(da|0)){var ea=zb}else{var xa=a[s]|0,qa=da+32|0,na=da+104|0,ha=(b[0]=a[qa>>2],b[1]=a[qa+4>>2],f[0])-(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]);a[s]=(xa>2]+(ea-1<<2)>>2];if(0!=(ga|0)){var va=a[v]|0,Rb=ga+32|0,Aa=ga+112|0,tb=(b[0]=a[Rb>>2],b[1]=a[Rb+4>>2],f[0])+(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0]);a[v]=(va>tb?va:tb)&-1}}a[s]=a[s]-16|0;a[v]=a[v]+16|0;if(0<(a[z]|0)){for(var ya=Z,Ba=Y,wa=0,Ab=$;;){var Fa=a[a[(Ab+4>>2)+(11*ca|0)]+(wa<<2)>>2],Ga=a[Fa+128>>2];if(0!=(Ga|0)){n=(Ga+108|0)>>2;var Ea=a[n];if(0==(Ea|0)){sa(cO|0,318,dO|0,eO|0);var ta=a[n]}else{ta=Ea}k=(ta+56|0)>>2;l=(Fa+32|0)>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];m[a[n]+81|0]=1}var Ka=Fa+162|0;if(0==m[Ka]<<24>>24){u=2106}else{if(0==J[a[ke+4>>2]](Fa)<<24>>24){var za=Ba,ma=ya}else{u=2106}}a:do{if(2106==u){u=0;var pa=Fa+184|0,Ma=a[a[pa>>2]>>2],Ha=0==(Ma|0);b:do{if(Ha){var Ra=ya,Qa=Ba}else{for(var Pa=ya,La=Ba,db=0,Ya=Ma;;){var hb=m[Ya+124|0];if(4==hb<<24>>24||6==hb<<24>>24){var Za=La,ib=Pa}else{lq(Ya,1,16,64);var ab=La+1|0;a[Pa+(La<<2)>>2]=Ya;if(0!=(ab&127|0)){Za=ab,ib=Pa}else{var $a=0==(Pa|0)?Cb((La<<2)+516|0):wb(Pa,(La<<2)+516|0),Za=ab,ib=$a}}var jb=db+1|0,Ca=a[a[pa>>2]+(jb<<2)>>2];if(0==(Ca|0)){Ra=ib;Qa=Za;break b}else{Pa=ib,La=Za,db=jb,Ya=Ca}}}}while(0);var Ia=Fa+192|0,eb=a[Ia>>2],ub=0==(eb|0);b:do{if(ub){var Sa=Qa,mb=Ra}else{var ua=a[eb>>2];if(0==(ua|0)){Sa=Qa,mb=Ra}else{for(var Oa=Ra,Wa=Qa,pb=0,ob=ua;;){lq(ob,2,0,128);var bb=Wa+1|0;a[Oa+(Wa<<2)>>2]=ob;var qb=0==(bb&127|0)?0==(Oa|0)?Cb((Wa<<2)+516|0):wb(Oa,(Wa<<2)+516|0):Oa,Hb=pb+1|0,kb=a[a[Ia>>2]+(Hb<<2)>>2];if(0==(kb|0)){Sa=bb;mb=qb;break b}else{Oa=qb,Wa=bb,pb=Hb,ob=kb}}}}}while(0);var Gb=Fa+208|0,vb=a[Gb>>2];if(0==(vb|0)){za=Sa,ma=mb}else{if(0==m[Ka]<<24>>24){Xa=(Fa+112|0)>>2;var xb=(b[0]=a[Xa],b[1]=a[Xa+1],f[0]),Jb=Fa+244|0;f[0]=a[Jb>>2]|0;a[Xa]=b[0];a[Xa+1]=b[1];a[Jb>>2]=xb&-1}var nb=a[vb>>2];if(0==(nb|0)){za=Sa,ma=mb}else{for(var rb=mb,lb=Sa,Ta=0,cb=nb;;){lq(cb,0,0,128);var fb=lb+1|0;a[rb+(lb<<2)>>2]=cb;var Ua=0==(fb&127|0)?0==(rb|0)?Cb((lb<<2)+516|0):wb(rb,(lb<<2)+516|0):rb,sb=Ta+1|0,Na=a[a[Gb>>2]+(sb<<2)>>2];if(0==(Na|0)){za=fb;ma=Ua;break a}else{rb=Ua,lb=fb,Ta=sb,cb=Na}}}}}}while(0);var Fb=wa+1|0,Db=a[W>>2];if((Fb|0)<(a[(Db>>2)+(11*ca|0)]|0)){ya=ma,Ba=za,wa=Fb,Ab=Db}else{break}}var Ob=ma,Eb=za,Kb=Db,Bb=D[p]}else{Ob=Z,Eb=Y,Kb=$,Bb=ka}var Ja=ca+1|0;if((Ja|0)>(Bb<<16>>16|0)){break}else{Z=Ob,Y=Eb,V=ja,ca=Ja,$=Kb,ka=Bb}}N=Ob;Q=Eb;R=(ja<<5)+11520|0;U=Ja}var Lb=N;ch(Lb,Q,322);var Mb=E+84|0;a[Mb>>2]=fa(R);var Nb=A+16|0;a[Nb>>2]=fa(U<<5);var Pb=2==(B|0);a:do{if(Pb){var Wb=a[c+216>>2];if(0!=(Wb|0)){for(var Tb=Wb;;){1==m[Tb+162|0]<<24>>24&&0!=(a[Tb+120>>2]|0)&&fO(Tb);var ic=a[Tb+168>>2];if(0==(ic|0)){break a}else{Tb=ic}}}}}while(0);var Yb=0<(Q|0);a:do{if(Yb){var Sb=w|0,$b=w+16|0,Zb=w+12|0,ec=w+28|0,pc=w+68|0,dc=w+124|0,Vb=w+128|0;e=(c+220|0)>>2;for(var Xb=N,kc=c,rc=t|0,ac=t+16|0,nc=t+12|0,gc=t+28|0,lc=t+68|0,uc=t+124|0,qc=t+128|0,bc=0;;){var Hc=a[N+(bc<<2)>>2],jc=lm(Hc),fc=0==m[Hc+56|0]<<24>>24?0==m[Hc+96|0]<<24>>24?jc:Hc:Hc;g=fc>>2;if(0==(a[g+43]&32|0)){var mc=fc}else{for(var Qb=(fc|0)>>2,tc=rc>>2,Sc=Qb+46;Qb>2]=a[g+3];a[nc>>2]=a[g+4];Qb=(fc+68|0)>>2;tc=gc>>2;for(Sc=Qb+10;Qb>2;tc=lc>>2;for(Sc=Qb+10;Qb>2]=fc;mc=t}for(var Ac=mc+68|0,Cc=Hc+108|0,Ec=Hc+125|0,Ic=mc+28|0,oc=Hc+172|0,Fc=bc,vc=1;;){var Dc=Fc+1|0,Kc=(Dc|0)<(Q|0);if(!Kc){break}var Bc=(Dc<<2)+N|0,zc=a[Bc>>2];if((jc|0)!=(lm(zc)|0)){break}if(0==m[Ec]<<24>>24){var fd=0==m[zc+56|0]<<24>>24?0==m[zc+96|0]<<24>>24?jc:zc:zc;i=fd>>2;if(0==(a[i+43]&32|0)){var Gc=fd}else{Qb=(fd|0)>>2;tc=Sb>>2;for(Sc=Qb+46;Qb>2]=a[i+3];a[Zb>>2]=a[i+4];Qb=(fd+68|0)>>2;tc=ec>>2;for(Sc=Qb+10;Qb>2;tc=pc>>2;for(Sc=Qb+10;Qb>2]=fd;Gc=w}if(0!=(Aj(Ic,Gc+28|0)|0)){break}if(0!=(Aj(Ac,Gc+68|0)|0)){break}if(2==(a[oc>>2]&15|0)&&(a[Cc>>2]|0)!=(a[zc+108>>2]|0)){break}if(0!=(a[a[Bc>>2]+172>>2]&64|0)){break}}Fc=Dc;vc=vc+1|0}var yc=a[Hc+16>>2],Nc=a[Hc+12>>2],Yc=(yc|0)==(Nc|0),Tc=a[yc+236>>2];b:do{if(Yc){if((Tc|0)==(D[p]<<16>>16|0)){if(0<(Tc|0)){var Lc=a[a[(a[e]+4>>2)+(11*(Tc-1)|0)]>>2]+40|0,Mc=yc+40|0,id=(b[0]=a[Lc>>2],b[1]=a[Lc+4>>2],f[0])-(b[0]=a[Mc>>2],b[1]=a[Mc+4>>2],f[0])&-1}else{var Oc=yc+96|0,id=(b[0]=a[Oc>>2],b[1]=a[Oc+4>>2],f[0])&-1}}else{if((Tc|0)==(D[O>>1]<<16>>16|0)){var Pc=yc+40|0,Xc=a[a[(a[e]+4>>2)+(11*(Tc+1)|0)]>>2]+40|0,id=(b[0]=a[Pc>>2],b[1]=a[Pc+4>>2],f[0])-(b[0]=a[Xc>>2],b[1]=a[Xc+4>>2],f[0])&-1}else{var Qc=a[e],Rc=a[a[(Qc+4>>2)+(11*(Tc-1)|0)]>>2]+40|0,Jc=(b[0]=a[Rc>>2],b[1]=a[Rc+4>>2],f[0]),Vc=yc+40|0,Zc=(b[0]=a[Vc>>2],b[1]=a[Vc+4>>2],f[0]),ad=Jc-Zc&-1,$c=a[a[(Qc+4>>2)+(11*(Tc+1)|0)]>>2]+40|0,bd=Zc-(b[0]=a[$c>>2],b[1]=a[$c+4>>2],f[0])&-1,id=(ad|0)<(bd|0)?ad:bd}}UH(0,Xb,bc,vc,a[M>>2]|0,(id|0)/2&-1|0,ke);if(0<(vc|0)){for(var cd=0;;){var ed=a[a[N+(cd+bc<<2)>>2]+108>>2];0!=(ed|0)&&al(kc,ed);var pd=cd+1|0;if((pd|0)==(vc|0)){break b}else{cd=pd}}}}else{(Tc|0)==(a[Nc+236>>2]|0)?gO(A,E,N,bc,vc,B):hO(A,E,N,bc,vc,B)}}while(0);if(Kc){bc=Dc}else{break a}}}}while(0);var jd=a[c+216>>2],md=0==(jd|0);a:do{if(!md){for(var qd=c,dd=jd;;){if(1==m[dd+162|0]<<24>>24){var od=dd+120|0;0!=(a[od>>2]|0)&&(fO(dd),al(qd,a[od>>2]))}var Uc=a[dd+168>>2];if(0==(Uc|0)){break a}else{dd=Uc}}}}while(0);if(0!=(d|0)){var yd=ra(c);if(0!=(yd|0)){for(var sd=yd;;){var Bd=Ib(c,sd),Fd=0==(Bd|0);a:do{if(!Fd){for(var vd=Bd;;){if(0!=J[a[ke>>2]](vd)<<24>>24){var kd=a[vd+24>>2];if(0!=(kd|0)){var Md=kd,td=cc,Cd=a[Md+4>>2],Gd=Cb(48*Cd|0),td=(Md|0)>>2;if(0<(Cd|0)){for(var Ld=Gd,nd=a[td]+48*(Cd-1)|0,zd=0;;){var wd=nd,xd=Ld,Ed=cc,Wd=cc,we=cc,pe=cc,Hd=cc,Kd=cc,Dd=a[wd+4>>2],Yd=Cb(Dd<<4),$d=0<(Dd|0);b:do{if($d){for(var Ye=Yd,Ad=(Dd-1<<4)+a[wd>>2]|0,Ud=0;;){Kd=Ye>>2;Hd=Ad>>2;a[Kd]=a[Hd];a[Kd+1]=a[Hd+1];a[Kd+2]=a[Hd+2];a[Kd+3]=a[Hd+3];var Vd=Ud+1|0;if((Vd|0)==(Dd|0)){break b}else{Ye=Ye+16|0,Ad=Ad-16|0,Ud=Vd}}}}while(0);a[xd>>2]=Yd;a[xd+4>>2]=Dd;a[xd+8>>2]=a[wd+12>>2];a[xd+12>>2]=a[wd+8>>2];pe=(xd+16|0)>>2;we=(wd+32|0)>>2;a[pe]=a[we];a[pe+1]=a[we+1];a[pe+2]=a[we+2];a[pe+3]=a[we+3];Wd=(xd+32|0)>>2;Ed=(wd+16|0)>>2;a[Wd]=a[Ed];a[Wd+1]=a[Ed+1];a[Wd+2]=a[Ed+2];a[Wd+3]=a[Ed+3];var be=zd+1|0;if((be|0)==(Cd|0)){break}else{Ld=Ld+48|0,nd=nd-48|0,zd=be}}for(var Pd=0,gd=a[td];;){G(a[(gd>>2)+(12*Pd|0)]);var ud=Pd+1|0,de=a[td];if((ud|0)==(Cd|0)){Id=de;break}else{Pd=ud,gd=de}}le=Id}else{var Id=a[td],le=Id}G(le);a[td]=Gd}}var ae=yb(c,vd);if(0==(ae|0)){break a}else{vd=ae}}}}while(0);var Nd=ba(c,sd);if(0==(Nd|0)){break}else{sd=Nd}}}}var ce=0!=(a[Zk>>2]|0)|0!=(a[$k>>2]|0);a:do{if(ce){var Qd=c,se=ra(Qd);if(0!=(se|0)){for(var Ae=c,he=se;;){var Ee=0==(a[Zk>>2]|0);b:do{if(!Ee){var xe=Og(Qd,he);if(0!=(xe|0)){for(var qe=xe;;){var re=qe+112|0;0!=(a[re>>2]|0)&&(Eu(qe,1),al(Ae,a[re>>2]));var Ce=Ql(Qd,qe);if(0==(Ce|0)){break b}else{qe=Ce}}}}}while(0);var Ge=0==(a[$k>>2]|0);b:do{if(!Ge){var ue=Ib(Qd,he);if(0!=(ue|0)){for(var ge=ue;;){var ze=ge+116|0;0!=(a[ze>>2]|0)&&(Eu(ge,0),al(Ae,a[ze>>2]));var De=yb(Qd,ge);if(0==(De|0)){break b}else{ge=De}}}}}while(0);var me=ba(Qd,he);if(0==(me|0)){break a}else{he=me}}}}}while(0);G(Lb);G(a[Mb>>2]);G(E);G(a[Nb>>2]);var te=h,Be=a[km>>2]-1|0;a[km>>2]=Be;if(0>=(Be|0)&&(G(a[Ch>>2]),0!=m[ld]<<24>>24)){var He=a[oa>>2],Ie=a[ml>>2],Ke=a[nl>>2],Le=Jn();Va(He,iO|0,(j=h,h+=16,a[j>>2]=Ie,a[j+4>>2]=Ke,f[0]=Le,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}h=te;a[Ah>>2]=1}h=t}function fO(c){var d;if(0!=(a[c+180>>2]|0)){for(d=a[c+184>>2];;){var i=a[d>>2];if(0==m[i+124|0]<<24>>24){break}else{d=i+128|0}}d=(i+108|0)>>2;var i=a[d],g=0==(a[a[c+20>>2]+152>>2]&1|0)?i+24|0:i+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=c+32|0,g=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+.5*g,i=i+56|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+40|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);i=a[d]+64|0;f[0]=c;a[i>>2]=b[0];a[i+4>>2]=b[1];m[a[d]+81|0]=1}}function lm(b){for(;;){var c=a[b+180>>2];if(0==(c|0)){var d=b;break}else{b=c}}for(;!(b=a[d+128>>2],0==(b|0));){d=b}return d}function jO(c,d){var i,g,e,j,l=h;h+=368;j=l>>2;var k=l+184;e=k>>2;var n=a[c>>2],z=a[d>>2],p=a[n+172>>2],s=p&15,v=a[z+172>>2],t=v&15;if((s|0)!=(t|0)){return h=l,t-s|0}t=lm(n);g=t>>2;s=lm(z);i=s>>2;var u=a[g+4],w=a[g+3],A=a[u+236>>2]-a[w+236>>2]|0,B=a[i+4],C=a[i+3],y=a[B+236>>2]-a[C+236>>2]|0,A=-1<(A|0)?A:-A|0,y=-1<(y|0)?y:-y|0;if((A|0)!=(y|0)){return h=l,A-y|0}u=u+32|0;w=w+32|0;w=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]);B=B+32|0;C=C+32|0;w&=-1;w=-1<(w|0)?w:-w|0;C=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])-(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])&-1;C=-1<(C|0)?C:-C|0;if((w|0)!=(C|0)){return h=l,w-C|0}g=a[g+5];i=a[i+5];if((g|0)!=(i|0)){return h=l,g-i|0}0==m[n+56|0]<<24>>24?(t=i=0==m[n+96|0]<<24>>24?t:n,i=a[i+172>>2]):(t=n,i=p);if(0==(i&32|0)){j=t}else{i=(t|0)>>2;g=(l|0)>>2;for(C=i+46;i>2];a[j+3]=a[t+16>>2];i=(t+68|0)>>2;g=(l+28|0)>>2;for(C=i+10;i>2;g=(l+68|0)>>2;for(C=i+10;i>24?(s=t=0==m[z+96|0]<<24>>24?s:z,t=a[t+172>>2]):(s=z,t=v);if(0==(t&32|0)){e=s}else{i=(s|0)>>2;g=(k|0)>>2;for(C=i+46;i>2];a[e+3]=a[s+16>>2];i=(s+68|0)>>2;g=(k+28|0)>>2;for(C=i+10;i>2;g=(k+68|0)>>2;for(C=i+10;i>2]-a[z+20>>2]|0:p-v|0;h=l;return n}function gO(c,d,i,g,e,j){var l,k,n,z=h;h+=1580;var p;n=z>>2;var s=z+184,v=z+188,t=z+884,u=a[i+(g<<2)>>2];k=u>>2;if(0==(a[k+43]&32|0)){n=u}else{var w=(u|0)>>2;l=(z|0)>>2;for(var A=w+46;w>2;l=(z+28|0)>>2;for(A=w+10;w>2;l=(z+68|0)>>2;for(A=w+10;w>2;if(0!=m[u+125|0]<<24>>24){kO(i,g,e,a[k+3],a[k+4],j)}else{if(0!=(a[k+27]|0)){lO(c,d,n,j)}else{if(2==(j|0)){cx(a[k+4],a[k+3],i,g,e,2)}else{u=m[n+61|0];w=m[n+101|0];do{if(1!=u<<24>>24|4==w<<24>>24&&1!=w<<24>>24|4==u<<24>>24){var B=a[k+4],C=a[k+3],y=a[B+20>>2],A=a[B+236>>2];if(0<(A|0)){l=a[y+220>>2]>>2;var y=(0==(m[y+149|0]&1)<<24>>24?-1:-2)+A|0,D=a[a[l+(11*y|0)+1]>>2]+40|0,F=B+40|0,A=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(a[l+(11*y|0)+4]|0)-(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0])-(a[l+(11*A|0)+5]|0)}else{A=a[y+260>>2]|0}y=e+1|0;l=(a[c+12>>2]|0)/y;A/=y;mm(c,d,B,n,v,1);mm(c,d,C,n,t,0);for(var B=v+52|0,C=t+52|0,y=8==(j|0),D=d+80|0,E=0;;){if((E|0)>=(e|0)){p=2272;break}var F=a[i+(E+g<<2)>>2],M=a[B>>2],G=M-1|0,O=(G<<5)+v+56|0,O=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]),H=(G<<5)+v+72|0,H=(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),G=(G<<5)+v+80|0,I=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]);f[0]=O;a[Z>>2]=b[0];a[Z+4>>2]=b[1];f[0]=I;a[Z+8>>2]=b[0];a[Z+12>>2]=b[1];var E=E+1|0,J=E|0,G=J*l;f[0]=H+G;a[Z+16>>2]=b[0];a[Z+20>>2]=b[1];H=I+J*A;f[0]=H;a[Z+24>>2]=b[0];a[Z+28>>2]=b[1];f[0]=O;a[Z+32>>2]=b[0];a[Z+36>>2]=b[1];f[0]=H;a[Z+40>>2]=b[0];a[Z+44>>2]=b[1];I=a[C>>2]-1|0;O=(I<<5)+t+72|0;O=(b[0]=a[O>>2],b[1]=a[O+4>>2],f[0]);f[0]=O;a[Z+48>>2]=b[0];a[Z+52>>2]=b[1];f[0]=H+A;a[Z+56>>2]=b[0];a[Z+60>>2]=b[1];J=(I<<5)+t+56|0;J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0]);I=(I<<5)+t+80|0;I=(b[0]=a[I>>2],b[1]=a[I+4>>2],f[0]);f[0]=O;a[Z+80>>2]=b[0];a[Z+84>>2]=b[1];f[0]=I;a[Z+72>>2]=b[0];a[Z+76>>2]=b[1];f[0]=J-G;a[Z+64>>2]=b[0];a[Z+68>>2]=b[1];f[0]=H;a[Z+88>>2]=b[0];a[Z+92>>2]=b[1];M=0<(M|0);a:do{if(M){for(G=0;;){if(bd(d,(G<<5)+v+56|0),G=G+1|0,(G|0)>=(a[B>>2]|0)){break a}}}}while(0);bd(d,Z|0);bd(d,Z+32|0);bd(d,Z+64|0);M=a[C>>2];G=0<(M|0);a:do{if(G){for(O=M;;){if(O=O-1|0,bd(d,(O<<5)+t+56|0),0>=(O|0)){break a}}}}while(0);M=y?ff(d,s,0):ff(d,s,1);G=a[s>>2];if(0==(G|0)){p=2276;break}Wd(F,a[F+12>>2],M,G,ke);a[D>>2]=0}if(2272==p){h=z;return}if(2276==p){h=z;return}}}while(0);mO(c,d,i,g,e,n,8==(j|0)&1)}}}h=z}function hO(c,d,i,g,e,j){var l,k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,M,G,O,H,I,K,L,N,Q,S,R,U,W,Y,ca,V,$,ba,ja,aa,da,ea,xa,fa,la,ha,ga,ka,sa,ra,qa,ya,na,wa,Ab,Fa,Ga=h;h+=2276;var oa;Fa=Ga>>2;var ta=Ga+4;Ab=ta>>2;var Ka=Ga+188;wa=Ka>>2;var za=Ga+372,ma=Ga+556,pa=Ga+1252,va=Ga+1948,Ha=Ga+1980;na=Ha>>2;var Ra=Ga+1984;ya=Ra>>2;var Ba=Ga+1988,Aa=Ga+2020,La=Ga+2052,Ea=Ga+2084,Ya=Ga+2116,Ma=Ga+2148,Za=Ga+2180,Qa=Ga+2212,ab=Ga+2244;if(0==(a[le>>2]|0)){var $a=Cb(32e3);a[le>>2]=$a;var jb=Cb(32e3);a[Dj>>2]=jb;a[ai>>2]=2e3;a[mq>>2]=2e3}var Ca=a[i+(g<<2)>>2];qa=(Ca+16|0)>>2;var Ia=a[qa],eb=a[Ia+20>>2];ra=(Ca+12|0)>>2;var ub=a[ra],Sa=a[Ia+236>>2]-a[ub+236>>2]|0;do{if(1<((-1<(Sa|0)?Sa:-Sa|0)|0)){for(var Pa=Ca|0,ua=Pa>>2,Oa=(ta|0)>>2,Wa=ua+46;ua>2]&32|0),ob=Ka|0,ua=Pa>>2,Oa=ob>>2,Wa=ua+46;ua>2,Oa=db>>2,Wa=ua+10;ua>2,Oa=hb>>2,Wa=ua+10;ua>2,Oa=xb>>2,Wa=ua+10;ua>2];if(0==(nb|0)){break}else{ib=nb}}var rb=a[ib+12>>2];a[Ab+3]=rb;m[ta+96|0]=0;m[ta+124|0]=1;sa=(ta+68|0)>>2;a[sa]=0;a[sa+1]=0;a[sa+2]=0;a[sa+3]=0;a[Ab+32]=Ca;var lb=1,Ta=ta,cb=qb,fb=rb}else{if(0==(a[Ca+172>>2]&32|0)){lb=0,Ta=Ca,cb=Ia,fb=ub}else{for(var Ua=ta|0,ua=(Ca|0)>>2,Oa=Ua>>2,Wa=ua+46;ua>2,Oa=Fb>>2,Wa=ua+10;ua>2,Oa=Db>>2,Wa=ua+10;ua>2],Ga);a[ya]=Eb;if(0==(Eb|0)){var Va=a[Ta+16>>2],Bb=a[Ta+12>>2];oa=2291}}else{Va=cb,Bb=fb,oa=2291}if(2291==oa){var Ja=8==(j|0);a[ya]=0;a[Fa]=Bb;Sg(Ba,c,Va,0,Ta);ka=ma>>2;ga=Ba>>2;a[ka]=a[ga];a[ka+1]=a[ga+1];a[ka+2]=a[ga+2];a[ka+3]=a[ga+3];a[ka+4]=a[ga+4];a[ka+5]=a[ga+5];a[ka+6]=a[ga+6];a[ka+7]=a[ga+7];ha=va>>2;a[ha]=a[ga];a[ha+1]=a[ga+1];a[ha+2]=a[ga+2];a[ha+3]=a[ga+3];a[ha+4]=a[ga+4];a[ha+5]=a[ga+5];a[ha+6]=a[ga+6];a[ha+7]=a[ga+7];vl(d,Ta,1,ma,nm(Va));la=(ma+52|0)>>2;var mb=a[la]-1|0,yb=(mb<<5)+ma+80|0,Hb=(b[0]=a[yb>>2],b[1]=a[yb+4>>2],f[0]);fa=(va+24|0)>>2;f[0]=Hb;a[fa]=b[0];a[fa+1]=b[1];var Gb=(mb<<5)+ma+64|0,Jb=(b[0]=a[Gb>>2],b[1]=a[Gb+4>>2],f[0]);xa=(va+8|0)>>2;f[0]=Jb;a[xa]=b[0];a[xa+1]=b[1];var Kb=Va+40|0;bi(Aa,va,1,(b[0]=a[Kb>>2],b[1]=a[Kb+4>>2],f[0])-a[(a[a[Va+20>>2]+220>>2]+16>>2)+(11*a[Va+236>>2]|0)]&-1);ea=Aa>>2;a[ha]=a[ea];a[ha+1]=a[ea+1];a[ha+2]=a[ea+2];a[ha+3]=a[ea+3];a[ha+4]=a[ea+4];a[ha+5]=a[ea+5];a[ha+6]=a[ea+6];a[ha+7]=a[ea+7];da=(va|0)>>2;aa=(va+16|0)>>2;if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var Ib=a[la];a[la]=Ib+1|0;ja=((Ib<<5)+ma+56|0)>>2;a[ja]=a[ha];a[ja+1]=a[ha+1];a[ja+2]=a[ha+2];a[ja+3]=a[ha+3];a[ja+4]=a[ha+4];a[ja+5]=a[ha+5];a[ja+6]=a[ha+6];a[ja+7]=a[ha+7]}}ba=La>>2;var Lb=eb+149|0;$=Ea>>2;V=pa>>2;ca=Ya>>2;Y=(pa+52|0)>>2;var Mb=d+56|0,Nb=d+69|0;W=Ma>>2;var Pb=d+16|0,Tb=d+29|0,Wb=-1,Yb=0,Vb=Va,Sb=Ta,$b=Bb;a:for(;;){for(var Zb=0,bc=Wb,ec=Yb,fc=Vb,lc=Sb,dc=0,Xb=$b;;){if(1!=m[Xb+162|0]<<24>>24){break a}if(0!=J[a[ke+4>>2]](Xb)<<24>>24){break a}var kc=dc|1,rc=(dc<<5)+Z|0;dx(La,c,eb,a[fc+236>>2]);U=rc>>2;a[U]=a[ba];a[U+1]=a[ba+1];a[U+2]=a[ba+2];a[U+3]=a[ba+3];a[U+4]=a[ba+4];a[U+5]=a[ba+5];a[U+6]=a[ba+6];a[U+7]=a[ba+7];if(0==(Zb|0)){var jc;for(var ac=cc,nc=Xb+32|0,Qb=Xb,tc=0;;){var gc=a[a[a[Qb+184>>2]>>2]+12>>2];if(1!=m[gc+162|0]<<24>>24){ac=2393;break}if(1!=(a[gc+188>>2]|0)){ac=2396;break}if(1!=(a[gc+180>>2]|0)){ac=2394;break}var uc=gc+32|0;if((b[0]=a[uc>>2],b[1]=a[uc+4>>2],f[0])!=(b[0]=a[nc>>2],b[1]=a[nc+4>>2],f[0])){ac=2395;break}else{Qb=gc,tc=tc+1|0}}jc=2396==ac||2393==ac||2395==ac||2394==ac?tc:cc;var mc=(jc|0)<((0!=(m[Lb]&1)<<24>>24?5:3)|0),qc=mc&1^1,vc=mc?bc:1,oc=mc?jc:jc-2|0}else{qc=Zb,vc=bc,oc=ec}if(!(0==(qc|0)|0<(vc|0))){break}var Ac=(kc<<5)+Z|0;Sg(Ea,c,Xb,lc,a[a[Xb+184>>2]>>2]);R=Ac>>2;a[R]=a[$];a[R+1]=a[$+1];a[R+2]=a[$+2];a[R+3]=a[$+3];a[R+4]=a[$+4];a[R+5]=a[$+5];a[R+6]=a[$+6];a[R+7]=a[$+7];var zc=a[a[a[Fa]+184>>2]>>2],Dc=a[zc+16>>2],Cc=a[zc+12>>2];a[Fa]=Cc;Zb=qc;bc=vc-1|0;ec=oc;fc=Dc;lc=zc;dc=dc+2|0;Xb=Cc}Sg(Ya,c,Xb,lc,a[a[Xb+184>>2]>>2]);a[V]=a[ca];a[V+1]=a[ca+1];a[V+2]=a[ca+2];a[V+3]=a[ca+3];a[V+4]=a[ca+4];a[V+5]=a[ca+5];a[V+6]=a[ca+6];a[V+7]=a[ca+7];xl(d,lc,1,pa,nm(a[lc+12>>2]));var Bc=a[Fa],Ec=Bc+40|0;bi(va,(a[Y]-1<<5)+pa+56|0,4,(b[0]=a[Ec>>2],b[1]=a[Ec+4>>2],f[0])+a[(a[a[Bc+20>>2]+220>>2]+20>>2)+(11*a[Bc+236>>2]|0)]&-1);if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var Fc=a[Y];a[Y]=Fc+1|0;S=((Fc<<5)+pa+56|0)>>2;a[S]=a[ha];a[S+1]=a[ha+1];a[S+2]=a[ha+2];a[S+3]=a[ha+3];a[S+4]=a[ha+4];a[S+5]=a[ha+5];a[S+6]=a[ha+6];a[S+7]=a[ha+7]}}f[0]=1.5707963267948966;a[Mb>>2]=b[0];a[Mb+4>>2]=b[1];m[Nb]=1;ex(d,Sb,lc,ma,pa,kc);if(Ja){var Ic=ff(d,Ha,0);oa=2310}else{var yc=ff(d,Ha,1);if(Ob){var Gc=a[na];if(4<(Gc|0)){Q=(yc+16|0)>>2;N=yc>>2;a[Q]=a[N];a[Q+1]=a[N+1];a[Q+2]=a[N+2];a[Q+3]=a[N+3];L=(yc+32|0)>>2;var Kc=(Gc-1<<4)+yc|0;K=Kc>>2;a[L]=a[K];a[L+1]=a[K+1];a[L+2]=a[K+2];a[L+3]=a[K+3];ck(yc+48|0,Kc);var Tc=a[na]=4,Nc=yc}else{var Mc=yc,Lc=Gc;oa=2311}}else{Ic=yc,oa=2310}}2310==oa&&(oa=0,Mc=Ic,Lc=a[na],oa=2311);if(2311==oa){if(oa=0,0==(Lc|0)){oa=2367;break}else{Tc=Lc,Nc=Mc}}var Oc=a[ya],Pc=Oc+Tc|0;if((Pc|0)>(a[ai>>2]|0)){a[ai>>2]=Pc<<1;var Xc=wb(a[le>>2],Pc<<5),Qc=a[le>>2]=Xc}else{Qc=a[le>>2]}if(0<(Tc|0)){for(var Yc=1<(Tc|0)?Tc:1,Rc=0,Vc=Oc;;){I=((Vc<<4)+Qc|0)>>2;H=((Rc<<4)+Nc|0)>>2;a[I]=a[H];a[I+1]=a[H+1];a[I+2]=a[H+2];a[I+3]=a[H+3];var Zc=Rc+1|0;if((Zc|0)<(Tc|0)){Rc=Zc,Vc=Vc+1|0}else{break}}a[ya]=Oc+Yc|0}var Jc,ad=a[a[a[Fa]+184>>2]>>2],cd=Qc,$c=cc,bd=cc,dd=cc,jd=cc,md=cc,ed=Ra>>2,ld=a[ed],pd=0==(oc|0);b:do{if(pd){var Uc=ad}else{for(var od=oc,qd=ad;;){var sd=od-1|0,td=a[a[a[qd+12>>2]+184>>2]>>2];if(0==(sd|0)){Uc=td;break b}else{od=sd,qd=td}}}}while(0);a[ed]=ld+1|0;md=((ld<<4)+cd|0)>>2;jd=((ld-1<<4)+cd|0)>>2;a[md]=a[jd];a[md+1]=a[jd+1];a[md+2]=a[jd+2];a[md+3]=a[jd+3];var vd=a[ed];a[ed]=vd+1|0;dd=((vd<<4)+cd|0)>>2;a[dd]=a[jd];a[dd+1]=a[jd+1];a[dd+2]=a[jd+2];a[dd+3]=a[jd+3];bd=((a[ed]<<4)+cd|0)>>2;$c=(a[Uc+16>>2]+32|0)>>2;a[bd]=a[$c];a[bd+1]=a[$c+1];a[bd+2]=a[$c+2];a[bd+3]=a[$c+3];Jc=Uc;fx(Sb,d);var kd=a[Jc+16>>2];O=kd>>2;var wd=a[Jc+12>>2];a[Fa]=wd;Sg(Ma,c,kd,a[a[O+44]>>2],Jc);a[ka]=a[W];a[ka+1]=a[W+1];a[ka+2]=a[W+2];a[ka+3]=a[W+3];a[ka+4]=a[W+4];a[ka+5]=a[W+5];a[ka+6]=a[W+6];a[ka+7]=a[W+7];vl(d,Jc,1,ma,nm(kd));var xd=kd+40|0;bi(va,(a[la]-1<<5)+ma+56|0,1,(b[0]=a[xd>>2],b[1]=a[xd+4>>2],f[0])-a[(a[a[O+5]+220>>2]+16>>2)+(11*a[O+59]|0)]&-1);if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var yd=a[la];a[la]=yd+1|0;G=((yd<<5)+ma+56|0)>>2;a[G]=a[ha];a[G+1]=a[ha+1];a[G+2]=a[ha+2];a[G+3]=a[ha+3];a[G+4]=a[ha+4];a[G+5]=a[ha+5];a[G+6]=a[ha+6];a[G+7]=a[ha+7]}}f[0]=-1.5707963267948966;a[Pb>>2]=b[0];a[Pb+4>>2]=b[1];m[Tb]=1;Wb=vc;Yb=oc;Vb=kd;Sb=Jc;$b=wd}if(2367==oa){h=Ga;return}var Bd=dc|1,Cd=(dc<<5)+Z|0;dx(Za,c,eb,a[fc+236>>2]);M=Cd>>2;E=Za>>2;a[M]=a[E];a[M+1]=a[E+1];a[M+2]=a[E+2];a[M+3]=a[E+3];a[M+4]=a[E+4];a[M+5]=a[E+5];a[M+6]=a[E+6];a[M+7]=a[E+7];Sg(Qa,c,Xb,lc,0);F=Qa>>2;a[V]=a[F];a[V+1]=a[F+1];a[V+2]=a[F+2];a[V+3]=a[F+3];a[V+4]=a[F+4];a[V+5]=a[F+5];a[V+6]=a[F+6];a[V+7]=a[F+7];a[ha]=a[F];a[ha+1]=a[F+1];a[ha+2]=a[F+2];a[ha+3]=a[F+3];a[ha+4]=a[F+4];a[ha+5]=a[F+5];a[ha+6]=a[F+6];a[ha+7]=a[F+7];var nd=0!=(lb|0),zd=lc+12|0;xl(d,nd?Ka:lc,1,pa,nm(a[zd>>2]));var Ed=a[Y]-1|0,Fd=(Ed<<5)+pa+80|0,Ld=(b[0]=a[Fd>>2],b[1]=a[Fd+4>>2],f[0]);f[0]=Ld;a[fa]=b[0];a[fa+1]=b[1];var Hd=(Ed<<5)+pa+64|0,Md=(b[0]=a[Hd>>2],b[1]=a[Hd+4>>2],f[0]);f[0]=Md;a[xa]=b[0];a[xa+1]=b[1];var Gd=a[Fa],Qd=Gd+40|0;bi(ab,va,4,(b[0]=a[Qd>>2],b[1]=a[Qd+4>>2],f[0])+a[(a[a[Gd+20>>2]+220>>2]+20>>2)+(11*a[Gd+236>>2]|0)]&-1);D=ab>>2;a[ha]=a[D];a[ha+1]=a[D+1];a[ha+2]=a[D+2];a[ha+3]=a[D+3];a[ha+4]=a[D+4];a[ha+5]=a[D+5];a[ha+6]=a[D+6];a[ha+7]=a[D+7];if((b[0]=a[da],b[1]=a[da+1],f[0])<(b[0]=a[aa],b[1]=a[aa+1],f[0])){if((b[0]=a[xa],b[1]=a[xa+1],f[0])<(b[0]=a[fa],b[1]=a[fa+1],f[0])){var Kd=a[Y];a[Y]=Kd+1|0;y=((Kd<<5)+pa+56|0)>>2;a[y]=a[ha];a[y+1]=a[ha+1];a[y+2]=a[ha+2];a[y+3]=a[ha+3];a[y+4]=a[ha+4];a[y+5]=a[ha+5];a[y+6]=a[ha+6];a[y+7]=a[ha+7]}}ex(d,Sb,lc,ma,pa,Bd);var Dd=Ja?ff(d,Ha,0):ff(d,Ha,1),Pd=a[na];if(Ob&4<(Pd|0)){C=(Dd+16|0)>>2;B=Dd>>2;a[C]=a[B];a[C+1]=a[B+1];a[C+2]=a[B+2];a[C+3]=a[B+3];A=(Dd+32|0)>>2;var Yd=(Pd-1<<4)+Dd|0;w=Yd>>2;a[A]=a[w];a[A+1]=a[w+1];a[A+2]=a[w+2];a[A+3]=a[w+3];ck(Dd+48|0,Yd);var Id=a[na]=4}else{if(0!=(Pd|0)){Id=Pd}else{h=Ga;return}}var Ad=a[ya],Ud=Ad+Id|0;if((Ud|0)>(a[ai>>2]|0)){a[ai>>2]=Ud<<1;var Vd=wb(a[le>>2],Ud<<5);a[le>>2]=Vd}if(0<(Id|0)){for(var be=a[le>>2],de=1<(Id|0)?Id:1,gd=0,ud=Ad;;){u=((ud<<4)+be|0)>>2;t=((gd<<4)+Dd|0)>>2;a[u]=a[t];a[u+1]=a[t+1];a[u+2]=a[t+2];a[u+3]=a[t+3];var $d=gd+1|0;if(($d|0)<(Id|0)){gd=$d,ud=ud+1|0}else{break}}a[ya]=Ad+de|0}fx(Sb,d);a[Fa]=nd?a[wa+3]:a[zd>>2]}if(1==(e|0)){Wd(Ta,a[Fa],a[le>>2],a[ya],ke)}else{var ae=c+12|0,Nd=a[ya],ce=Nd-1|0,he=1<(ce|0);a:do{if(he){for(var qe=(a[ae>>2]*(e-1)|0)/2&-1|0,se=a[le>>2],ge=1;;){v=((ge<<4)+se|0)>>2;var Ae=(b[0]=a[v],b[1]=a[v+1],f[0])-qe;f[0]=Ae;a[v]=b[0];a[v+1]=b[1];var xe=ge+1|0;if((xe|0)<(ce|0)){ge=xe}else{break a}}}}while(0);var re=a[ai>>2];if((re|0)>(a[mq>>2]|0)){a[mq>>2]=re;var Ce=wb(a[Dj>>2],re<<4),ue=a[Dj>>2]=Ce}else{ue=a[Dj>>2]}var ze=0<(Nd|0);a:do{if(ze){for(var De=a[le>>2],me=0;;){s=((me<<4)+ue|0)>>2;p=((me<<4)+De|0)>>2;a[s]=a[p];a[s+1]=a[p+1];a[s+2]=a[p+2];a[s+3]=a[p+3];var Be=me+1|0;if((Be|0)<(Nd|0)){me=Be}else{break a}}}}while(0);Wd(Ta,a[Fa],ue,Nd,ke);if(1<(e|0)){for(var Ee=za|0,Ge=za+16|0,He=za+12|0,Ie=za+28|0,te=za+68|0,Ke=za+124|0,Le=za+128|0,Me=1;;){var ye=a[i+(Me+g<<2)>>2];z=ye>>2;if(0==(a[z+43]&32|0)){var Oe=ye}else{ua=(ye|0)>>2;Oa=Ee>>2;for(Wa=ua+46;ua>2]=a[z+3];a[He>>2]=a[z+4];ua=(ye+68|0)>>2;Oa=Ie>>2;for(Wa=ua+10;ua>2;Oa=te>>2;for(Wa=ua+10;ua>2]=ye;Oe=za}a:do{if(he){for(var Ve=a[le>>2],Pe=1;;){n=((Pe<<4)+Ve|0)>>2;var We=(a[ae>>2]|0)+(b[0]=a[n],b[1]=a[n+1],f[0]);f[0]=We;a[n]=b[0];a[n+1]=b[1];var Re=Pe+1|0;if((Re|0)==(ce|0)){break a}else{Pe=Re}}}}while(0);var Se=a[Dj>>2];a:do{if(ze){for(var Ze=a[le>>2],Ne=0;;){k=((Ne<<4)+Se|0)>>2;l=((Ne<<4)+Ze|0)>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];var Te=Ne+1|0;if((Te|0)==(Nd|0)){break a}else{Ne=Te}}}}while(0);Wd(Oe,a[Oe+12>>2],Se,Nd,ke);var Ue=Me+1|0;if((Ue|0)==(e|0)){break}else{Me=Ue}}}}h=Ga}function nm(b){return(1==m[b+162|0]<<24>>24?1<(a[b+180>>2]|0)?1:1<(a[b+188>>2]|0):0)&1}function dx(c,d,i,g){var e,h,l,k,j;h=a[d+16>>2];j=((g<<5)+h|0)>>2;var m=(b[0]=a[j],b[1]=a[j+1],f[0]);k=((g<<5)+h+8|0)>>2;var p=(b[0]=a[k],b[1]=a[k+1],f[0]);l=((g<<5)+h+16|0)>>2;var s=(b[0]=a[l],b[1]=a[l+1],f[0]);h=((g<<5)+h+24|0)>>2;e=(b[0]=a[h],b[1]=a[h+1],f[0]);m==s?(e=a[i+220>>2]>>2,i=a[a[e+(11*g|0)+1]>>2],p=g+1|0,s=a[d>>2]|0,m=a[a[e+(11*p|0)+1]>>2]+40|0,p=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])+(a[e+(11*p|0)+5]|0),d=a[d+4>>2]|0,i=i+40|0,g=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(a[e+(11*g|0)+4]|0),f[0]=s,a[j]=b[0],a[j+1]=b[1],f[0]=p,a[k]=b[0],a[k+1]=b[1],f[0]=d,a[l]=b[0],a[l+1]=b[1],f[0]=g,a[h]=b[0],a[h+1]=b[1],l=s,k=p,j=d):(l=m,k=p,j=s,g=e);h=c|0;f[0]=l;a[h>>2]=b[0];a[h+4>>2]=b[1];l=c+8|0;f[0]=k;a[l>>2]=b[0];a[l+4>>2]=b[1];l=c+16|0;f[0]=j;a[l>>2]=b[0];a[l+4>>2]=b[1];c=c+24|0;f[0]=g;a[c>>2]=b[0];a[c+4>>2]=b[1]}function nO(c,d,i){var g,e,j,l,k,n,z,p,s,v,t,u,w,A=h;h+=64;var B,C=A+16,y=A+32,D=A+48,F=0==m[c+124|0]<<24>>24;a:do{if(F){var E=c;w=E>>2}else{for(var G=c;;){var H=a[G+128>>2];if(0==m[H+124|0]<<24>>24){E=H;w=E>>2;break a}else{G=H}}}}while(0);var O=a[w+3];u=O>>2;var I=a[w+4],J=a[u+59]-a[I+236>>2]|0,K=-1<(J|0)?J:-J|0;if(2==(K|0)){B=2413}else{if(1==(K|0)){var L=0;h=A;return L}}if(2413==B&&0!=(m[a[u+5]+149|0]&1)<<24>>24){return L=0,h=A,L}if((a[c+16>>2]|0)==(I|0)){a[i>>2]=O;var N=I+32|0,Q=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=I+40|0,R=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]),U=E+28|0,W=E+36|0;qf(A,Q,R,(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]),(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]));var V=A|0,ca=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),Y=A+8|0,Z=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),$=O+32|0,ja=(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),aa=O+40|0,da=(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),ea=E+68|0,ba=E+76|0;qf(C,ja,da,(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]));var fa=C|0,la=C+8|0,ha=ca,ga=Z,ka=(b[0]=a[fa>>2],b[1]=a[fa+4>>2],f[0]),sa=(b[0]=a[la>>2],b[1]=a[la+4>>2],f[0])}else{a[i>>2]=I;var ra=O+32|0,na=(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0]),ya=O+40|0,qa=(b[0]=a[ya>>2],b[1]=a[ya+4>>2],f[0]),wa=E+68|0,oa=E+76|0;qf(y,na,qa,(b[0]=a[wa>>2],b[1]=a[wa+4>>2],f[0]),(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]));var Fa=y|0,Ga=(b[0]=a[Fa>>2],b[1]=a[Fa+4>>2],f[0]),va=y+8|0,ta=(b[0]=a[va>>2],b[1]=a[va+4>>2],f[0]),Ka=I+32|0,za=(b[0]=a[Ka>>2],b[1]=a[Ka+4>>2],f[0]),ma=I+40|0,pa=(b[0]=a[ma>>2],b[1]=a[ma+4>>2],f[0]),Ba=E+28|0,Ha=E+36|0;qf(D,za,pa,(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0]),(b[0]=a[Ha>>2],b[1]=a[Ha+4>>2],f[0]));var Ra=D|0,Aa=D+8|0,ha=Ga,ga=ta,ka=(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),sa=(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0])}var Ea=a[w+27];if(0==(Ea|0)){var La=d+16|0,Ma=d|0;f[0]=ha;a[Ma>>2]=b[0];a[Ma+4>>2]=b[1];var Ya=d+8|0;f[0]=ga;a[Ya>>2]=b[0];a[Ya+4>>2]=b[1];t=La>>2;v=d>>2;a[t]=a[v];a[t+1]=a[v+1];a[t+2]=a[v+2];a[t+3]=a[v+3];var Qa=d+48|0,Za=d+32|0,Pa=Za|0;f[0]=ka;a[Pa>>2]=b[0];a[Pa+4>>2]=b[1];var ab=d+40|0;f[0]=sa;a[ab>>2]=b[0];a[ab+4>>2]=b[1];s=Qa>>2;p=Za>>2;a[s]=a[p];a[s+1]=a[p+1];a[s+2]=a[p+2];a[s+3]=a[p+3];L=4;h=A;return L}var $a=Ea+24|0,jb=(b[0]=a[$a>>2],b[1]=a[$a+4>>2],f[0]),Ca=Ea+32|0,Ia=(b[0]=a[Ca>>2],b[1]=a[Ca+4>>2],f[0]),eb=0==(a[a[u+5]+152>>2]&1|0),ub=eb?Ia:jb,Sa=Ea+56|0,Va=(b[0]=a[Sa>>2],b[1]=a[Sa+4>>2],f[0]),ua=Ea+64|0,Oa=(b[0]=a[ua>>2],b[1]=a[ua+4>>2],f[0]),Wa=.5*(eb?jb:Ia);if(0==(0<((sa-ga)*(Va-ha)-(Oa-ga)*(ka-ha)&-1|0)&1|0)){var pb=Va-Wa,ob=Oa+.5*ub}else{pb=Va+Wa,ob=Oa-.5*ub}var bb=d+16|0,qb=d|0;f[0]=ha;a[qb>>2]=b[0];a[qb+4>>2]=b[1];var db=d+8|0;f[0]=ga;a[db>>2]=b[0];a[db+4>>2]=b[1];z=bb>>2;n=d>>2;a[z]=a[n];a[z+1]=a[n+1];a[z+2]=a[n+2];a[z+3]=a[n+3];var kb=d+32|0,hb=d+48|0,vb=d+64|0,xb=vb|0;f[0]=pb;a[xb>>2]=b[0];a[xb+4>>2]=b[1];var ib=d+72|0;f[0]=ob;a[ib>>2]=b[0];a[ib+4>>2]=b[1];k=hb>>2;l=vb>>2;a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];j=kb>>2;a[j]=a[l];a[j+1]=a[l+1];a[j+2]=a[l+2];a[j+3]=a[l+3];var nb=d+80|0,rb=d+96|0,lb=rb|0;f[0]=ka;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=d+104|0;f[0]=sa;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];e=nb>>2;g=rb>>2;a[e]=a[g];a[e+1]=a[g+1];a[e+2]=a[g+2];a[e+3]=a[g+3];L=7;h=A;return L}function Sg(c,d,i,g,e){var h,l=i>>2,k=d>>2,j;h=a[l+5]>>2;var d=i+32|0,z=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),d=i+104|0,p=z-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-4,d=a[l+59],s=a[l+60],v=a[h+55],t=oO(v,d,s,g,e,-1);if(0==(t|0)){var t=0<=p,u=a[k],p=((t?p+.5:p-.5)&-1|0)<(u|0)?t?p+.5&-1:p-.5&-1:u}else{u=gx(i,t),0==(u|0)?(u=t+32|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])+(a[t+244>>2]|0),t=0==m[t+162|0]<<24>>24?u+.5*(a[h+64]|0):u+(a[k+2]|0)):(t=u+68|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])+(a[k+2]|0)),p=tp?p-.5:p+.5)&-1}p|=0;if(t=1==m[i+162|0]<<24>>24){if(0==(a[l+30]|0)){j=2448}else{var w=z+10}}else{j=2448}2448==j&&(w=i+112|0,w=z+(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])+4);g=oO(v,d,s,g,e,1);0==(g|0)?(h=0<=w,k=a[k+1],w=((h?w+.5:w-.5)&-1|0)>(k|0)?h?w+.5&-1:w-.5&-1:k):(e=gx(i,g),0==(e|0)?(e=g+32|0,j=g+104|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),k=0==m[g+162|0]<<24>>24?e-.5*(a[h+64]|0):e-(a[k+2]|0)):(h=e+52|0,k=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])-(a[k+2]|0)),w=k>w?k:w,w=(0>w?w-.5:w+.5)&-1);w|=0;t?0==(a[l+30]|0)?l=w:(l=i+112|0,l=w-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])):l=w;i=i+40|0;w=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);i=w-(a[(v+16>>2)+(11*d|0)]|0);d=w+(a[(v+20>>2)+(11*d|0)]|0);v=c|0;f[0]=p;a[v>>2]=b[0];a[v+4>>2]=b[1];v=c+8|0;f[0]=i;a[v>>2]=b[0];a[v+4>>2]=b[1];i=c+16|0;f[0]=l;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+24|0;f[0]=d;a[c>>2]=b[0];a[c+4>>2]=b[1]}function bi(c,d,i,g){var e,j=h;h+=64;e=d>>2;d=h;h+=32;a[d>>2]=a[e];a[d+4>>2]=a[e+1];a[d+8>>2]=a[e+2];a[d+12>>2]=a[e+3];a[d+16>>2]=a[e+4];a[d+20>>2]=a[e+5];a[d+24>>2]=a[e+6];a[d+28>>2]=a[e+7];e=j+32;if(1==(i|0)){e=d|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);var l=d+16|0,d=d+8|0;pO(j,e,g|0,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));g=j|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=j+8|0;d=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);e=j+16|0;var g=j+24|0,k=d,n=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),m=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])}else{4==(i|0)&&(l=d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=d+24|0,d=d+16|0,pO(e,l,(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),g|0),g=e|0,l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=e+8|0,d=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),g=e+16|0,e=e+24|0,k=d,n=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),m=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]))}g=c|0;f[0]=l;a[g>>2]=b[0];a[g+4>>2]=b[1];g=c+8|0;f[0]=k;a[g>>2]=b[0];a[g+4>>2]=b[1];g=c+16|0;f[0]=n;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+24|0;f[0]=m;a[c>>2]=b[0];a[c+4>>2]=b[1];h=j}function ex(b,c,d,g,f,e){var h=hx(c,-1),c=hx(c,1);0!=(h|0)&&yl(h);0!=(c|0)&&yl(c);h=ix(d,-1);d=ix(d,1);0!=(h|0)&&yl(h);0!=(d|0)&&yl(d);d=g+52|0;h=0<(a[d>>2]|0);a:do{if(h){for(c=0;;){if(bd(b,(c<<5)+g+56|0),c=c+1|0,(c|0)>=(a[d>>2]|0)){break a}}}}while(0);g=a[b+80>>2]+1|0;d=e-3+g|0;h=0<(e|0);a:do{if(h){for(c=0;;){if(bd(b,(c<<5)+Z|0),c=c+1|0,(c|0)==(e|0)){break a}}}}while(0);e=a[f+52>>2];if(0<(e|0)){for(;!(e=e-1|0,bd(b,(e<<5)+f+56|0),0>=(e|0));){}}qO(b,g,d)}function rO(c,d,i,g){var e=c+32|0;f[0]=i|0;a[e>>2]=b[0];a[e+4>>2]=b[1];e=c+104|0;f[0]=i-d|0;a[e>>2]=b[0];a[e+4>>2]=b[1];c=c+112|0;f[0]=g-i|0;a[c>>2]=b[0];a[c+4>>2]=b[1]}function hx(b,c){var d,g=a[a[b+16>>2]+184>>2],f=a[g>>2];if(0==(f|0)){var e;return 0}var h=a[a[b+12>>2]+240>>2],k=0,j=0,m=f;for(d=m>>2;;){var p=a[a[d+3]+240>>2];do{if(1>((p-h)*c|0)){f=k}else{if(0==(a[d+6]|0)){f=a[d+32];if(0==(f|0)){f=k;break}if(0==(a[f+24>>2]|0)){f=k;break}}f=0!=(k|0)&&0>=((a[a[k+12>>2]+240>>2]-p)*c|0)?k:m}}while(0);j=j+1|0;d=a[g+(j<<2)>>2];if(0==(d|0)){e=f;break}else{k=f,m=d,d=m>>2}}return e}function ix(b,c){var d,g=a[a[b+12>>2]+176>>2],f=a[g>>2];if(0==(f|0)){var e;return 0}var h=a[a[b+16>>2]+240>>2],k=0,j=0,m=f;for(d=m>>2;;){var p=a[a[d+4]+240>>2];do{if(1>((p-h)*c|0)){f=k}else{if(0==(a[d+6]|0)){f=a[d+32];if(0==(f|0)){f=k;break}if(0==(a[f+24>>2]|0)){f=k;break}}f=0!=(k|0)&&0>=((a[a[k+16>>2]+240>>2]-p)*c|0)?k:m}}while(0);j=j+1|0;d=a[g+(j<<2)>>2];if(0==(d|0)){e=f;break}else{k=f,m=d,d=m>>2}}return e}function qO(c,d,i){var g,e,h,l,k,j,m=d-1|0,p=i+1|0,s=(m|0)<(p|0);a:do{if(s){g=c+84|0;for(e=m;;){l=a[g>>2];k=((e<<5)+l|0)>>2;h=(b[0]=a[k],b[1]=a[k+1],f[0]);if(0==(e-d&1|0)){l=((e<<5)+l+16|0)>>2;var v=(b[0]=a[l],b[1]=a[l+1],f[0]);h>2,v=(b[0]=a[l],b[1]=a[l+1],f[0]),h+16>v&&(h=.5*(h+v)&-1,f[0]=h-8|0,a[k]=b[0],a[k+1]=b[1],f[0]=h+8|0,a[l]=b[0],a[l+1]=b[1])}k=e+1|0;if((k|0)==(p|0)){break a}else{e=k}}}}while(0);m=c+80|0;if(0<(a[m>>2]-1|0)){c=c+84|0;for(g=0;;){k=a[c>>2];e=(g<<5)+k|0;p=g+1|0;s=(p<<5)+k|0;if((g|0)<(d|0)|(g|0)>(i|0)){j=2538}else{if(0!=(g-d&1|0)){j=2538}else{h=e|0;l=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])+16;h=((p<<5)+k+16|0)>>2;if(l>(b[0]=a[h],b[1]=a[h+1],f[0])){f[0]=l,a[h]=b[0],a[h+1]=b[1]}h=(g<<5)+k+16|0;l=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])-16;h=(s|0)>>2;if(l<(b[0]=a[h],b[1]=a[h+1],f[0])){f[0]=l,a[h]=b[0],a[h+1]=b[1]}}}2538==j&&(j=0,(p|0)>=(d|0)&(g|0)<(i|0)&&0==(p-d&1|0)&&(e=(e|0)>>2,h=(b[0]=a[e],b[1]=a[e+1],f[0])+16,l=(p<<5)+k+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),h>l&&(f[0]=l-16,a[e]=b[0],a[e+1]=b[1]),g=((g<<5)+k+16|0)>>2,k=(b[0]=a[g],b[1]=a[g+1],f[0])-16,s|=0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),k>2]-1|0)){g=p}else{break}}}}function pO(c,d,i,g,e){var h=c|0;f[0]=d;a[h>>2]=b[0];a[h+4>>2]=b[1];d=c+8|0;f[0]=i;a[d>>2]=b[0];a[d+4>>2]=b[1];i=c+16|0;f[0]=g;a[i>>2]=b[0];a[i+4>>2]=b[1];c=c+24|0;f[0]=e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function sO(c,d){var i=c+52|0,i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]),g=d+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);if(i>g){return 0}i=c+68|0;if(g>(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])){return 0}i=c+60|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);g=d+40|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);if(i>g){return 0}i=c+76|0;i=g<=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);return i&1}function tO(b,c,d,g){var f,b=b>>2,e,c=(a[b+60]|0)>(c|0);if(1!=(a[b+47]|0)){var h;return 0}var k=0==(g|0);a:do{if(!k){k=0;f=g;for(g=a[a[b+46]>>2];;){if(2<=(k|0)){break a}var j=a[g+12>>2],g=j>>2,z=a[f+12>>2];f=z>>2;if((j|0)==(z|0)){break a}if(c^(a[g+60]|0)>(a[f+60]|0)){h=1;break}if(1!=(a[g+47]|0)){break a}if(0==m[j+162|0]<<24>>24){break a}if(1!=(a[f+47]|0)){break a}if(0==m[z+162|0]<<24>>24){break a}k=k+1|0;f=a[a[f+46]>>2];g=a[a[g+46]>>2]}return h}}while(0);if(1!=(a[b+45]|0)|0==(d|0)){return 0}k=0;g=d;for(d=a[a[b+44]>>2];;){if(2<=(k|0)){h=0;e=2589;break}b=a[d+16>>2];d=b>>2;j=a[g+16>>2];g=j>>2;if((b|0)==(j|0)){h=0;e=2582;break}if(c^(a[d+60]|0)>(a[g+60]|0)){h=1;e=2584;break}if(1!=(a[d+45]|0)){h=0;e=2585;break}if(0==m[b+162|0]<<24>>24){h=0;e=2583;break}if(1!=(a[g+45]|0)){h=0;e=2586;break}if(0==m[j+162|0]<<24>>24){h=0;e=2588;break}k=k+1|0;g=a[a[g+44]>>2];d=a[a[d+44]>>2]}if(2583==e||2584==e||2582==e||2589==e||2585==e||2586==e||2588==e){return h}}function qf(c,d,i,g,e){var h=c|0;f[0]=d+g;a[h>>2]=b[0];a[h+4>>2]=b[1];c=c+8|0;f[0]=i+e;a[c>>2]=b[0];a[c+4>>2]=b[1]}function fx(c,d){var i=d+84|0,g=d+80|0,e=c,h=0;a:for(;;){e=a[e+12>>2];if(1!=m[e+162|0]<<24>>24){break}if(0!=J[a[ke+4>>2]](e)<<24>>24){break}for(var l=a[g>>2],k=e+40|0;;){if((h|0)>=(l|0)){break a}var j=a[i>>2],z=(h<<5)+j+8|0,p=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),z=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);if(p>z){h=h+1|0}else{break}}l=(h<<5)+j+24|0;if((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])>=z){var l=0==(a[e+120>>2]|0),k=(h<<5)+j|0,p=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=p&-1,s=(h<<5)+j+16|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);l?rO(e,k,.5*(p+s)&-1,s&-1):(l=e+112|0,rO(e,k,s&-1,s+(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1))}e=a[a[e+184>>2]>>2]}}function oO(b,c,d,g,f,e){for(var h,k=b+44*c|0,b=b+44*c+4|0,c=d;;){c=c+e|0;if(-1>=(c|0)){var j=0;h=2613;break}if((c|0)>=(a[k>>2]|0)){j=0;h=2617;break}var z=a[a[b>>2]+(c<<2)>>2],p=m[z+162|0];if(1==p<<24>>24){if(0!=(a[z+120>>2]|0)){j=z;h=2614;break}}else{if(0==p<<24>>24){j=z;h=2615;break}}if(0==tO(z,d,g,f)<<24>>24){j=z;h=2616;break}}if(2615==h||2617==h||2616==h||2614==h||2613==h){return j}}function gx(b,c){if(0==m[b+162|0]<<24>>24){var d=a[b+216>>2],g=d}else{d=a[a[a[b+184>>2]>>2]+128>>2],g=a[a[d+12>>2]+216>>2],d=a[a[d+16>>2]+216>>2]}if(0==m[c+162|0]<<24>>24){var f=a[c+216>>2];return 0==(f|0)|(f|0)==(d|0)|(f|0)==(g|0)?0:f}var f=a[a[a[c+184>>2]>>2]+128>>2],e=a[a[f+16>>2]+216>>2];if(!(0==(e|0)|(e|0)==(d|0)|(e|0)==(g|0))&&0!=(sO(e,c)|0)){return e}f=a[a[f+12>>2]+216>>2];return 0==(f|0)|(f|0)==(d|0)|(f|0)==(g|0)?0:0==(sO(f,c)|0)?0:f}function kO(c,d,i,g,e,j){var l,k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,G,I,O,H,J,K,L,N,S,Q=h;h+=176;var R,U=Q+16,W=Q+32,V=Q+96,ca=Q+112,Y=Q+128,Z=Q+144,$=Q+160,ja=a[e+20>>2];do{if(0<(i|0)){for(var aa=0,da=0,ea=0;;){var ba=a[c+(ea+d<<2)>>2],fa=(0!=(a[ba+108>>2]|0)&1)+aa|0;if(0==m[ba+56|0]<<24>>24){if(0==m[ba+96|0]<<24>>24){var ka=da}else{R=2633}}else{R=2633}2633==R&&(R=0,ka=1);var ha=ea+1|0;if((ha|0)==(i|0)){break}else{aa=fa,da=ka,ea=ha}}if(0==(ka|0)){if(0==(fa|0)){break}uO(e,g,c,d,i,j,fa);h=Q;return}var ga=vO(ja),la=oo(ga,wO|0);yd(la|0,nq|0,jx|0);var sa=g+32|0,ra=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0])&-1,na=e+32|0,ya=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0])&-1;S=(ja+152|0)>>2;for(var qa=0==(a[S]&1|0),wa=qa?g:e,oa=qa?e:g,Fa=xO(la,oa),Ga=xO(ga,wa),va=0,ta=0;;){for(var Ka=(va+d<<2)+c|0;;){var za=a[Ka>>2];if(0==m[za+124|0]<<24>>24){break}else{Ka=za+128|0}}var ma;if((a[za+16>>2]|0)==(oa|0)){var pa=za,Ba=uh(ga,Fa,Ga);po(pa|0,Ba|0);ma=Ba}else{var Ha=za,Ra=uh(ga,Ga,Fa);po(Ha|0,Ra|0);ma=Ra}var Ea=ma;a[za+132>>2]=Ea|0;if(0==(ta|0)){if(0!=m[za+56|0]<<24>>24){var Aa=0}else{0!=m[za+96|0]<<24>>24?Aa=0:(a[Ea+132>>2]=za|0,Aa=Ea)}}else{Aa=ta}var La=va+1|0;if((La|0)==(i|0)){break}else{va=La,ta=Aa}}var Ma=0==(Aa|0)?uh(ga,Fa,Ga):Aa;qc(Ma|0,a[a[Kg>>2]+8>>2],yO|0);a[ga+172>>2]=a[ja+172>>2];var Ya=ga;JF(Ya,j);XN(ga);kx(ga,0);lx(Ya,0);zO(Ya,0);N=(oa+32|0)>>2;var Qa=Fa+32|0;L=Qa>>2;K=(Ga+32|0)>>2;var Za=a[ga+216>>2],Pa=0==(Za|0);a:do{if(!Pa){for(var ab=.5*((b[0]=a[K],b[1]=a[K+1],f[0])+(b[0]=a[L],b[1]=a[L+1],f[0]))&-1,$a=oa+112|0,jb=wa+32|0,Ca=(b[0]=a[$a>>2],b[1]=a[$a+4>>2],f[0]),Ia=(b[0]=a[N],b[1]=a[N+1],f[0]),eb=wa+104|0,ub=ra|0,Sa=ab|0,Va=ya|0,ua=.5*((b[0]=a[jb>>2],b[1]=a[jb+4>>2],f[0])+(Ia-Ca)+(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]))&-1|0,Oa=Fa+40|0,Wa=Ga+40|0,pb=Za;;){if((pb|0)==(Fa|0)){f[0]=ub,a[Oa>>2]=b[0],a[Oa+4>>2]=b[1],f[0]=Sa,a[L]=b[0],a[L+1]=b[1]}else{if((pb|0)==(Ga|0)){f[0]=Va,a[Wa>>2]=b[0],a[Wa+4>>2]=b[1],f[0]=Sa,a[K]=b[0],a[K+1]=b[1]}else{var ob=pb+40|0;f[0]=ua;a[ob>>2]=b[0];a[ob+4>>2]=b[1]}}var bb=a[pb+168>>2];if(0==(bb|0)){break a}else{pb=bb}}}}while(0);mx(ga);bx(ga,0);Bt(Ya,1);var qb=0==(a[S]&1|0),db=(b[0]=a[N],b[1]=a[N+1],f[0]);if(qb){var kb=oa+40|0,ib=Fa+40|0,vb=Qa,xb=(b[0]=a[kb>>2],b[1]=a[kb+4>>2],f[0])-(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0])}else{var hb=oa+40|0,vb=Fa+40|0,xb=(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0])+(b[0]=a[L],b[1]=a[L+1],f[0])}var nb=db-(b[0]=a[vb>>2],b[1]=a[vb+4>>2],f[0]);J=Q>>2;H=U>>2;O=V>>2;I=W>>2;var rb=W|0;G=ca>>2;E=(W+16|0)>>2;F=Y>>2;D=(W+32|0)>>2;y=(W+48|0)>>2;C=Z>>2;var lb=ja+52|0;B=$>>2;for(var Ta=ja,cb=0;;){for(var fb=(cb+d<<2)+c|0;;){var Ua=a[fb>>2];if(0==m[Ua+124|0]<<24>>24){break}else{fb=Ua+128|0}}var sb=a[Ua+132>>2];A=sb>>2;do{if(!((sb|0)==(Ma|0)&0==(a[A+33]|0))){var Na=a[a[A+6]>>2];w=(Na+4|0)>>2;var Fb=Au(Ua,a[w]);a[Fb+8>>2]=a[Na+8>>2];var Db=a[S]&1,wb=Na+16|0,Eb=Na+24|0;ci(Q,(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0]),(b[0]=a[Eb>>2],b[1]=a[Eb+4>>2],f[0]),nb,xb,Db);u=(Fb+16|0)>>2;a[u]=a[J];a[u+1]=a[J+1];a[u+2]=a[J+2];a[u+3]=a[J+3];a[Fb+12>>2]=a[Na+12>>2];var Cb=a[S]&1,Bb=Na+32|0,Ja=Na+40|0;ci(U,(b[0]=a[Bb>>2],b[1]=a[Bb+4>>2],f[0]),(b[0]=a[Ja>>2],b[1]=a[Ja+4>>2],f[0]),nb,xb,Cb);t=(Fb+32|0)>>2;a[t]=a[H];a[t+1]=a[H+1];a[t+2]=a[H+2];a[t+3]=a[H+3];v=(Fb|0)>>2;s=(Na|0)>>2;for(var mb=0;(mb|0)<(a[w]|0);){var yb=(mb<<4)+a[v]|0,Gb=a[s],Hb=a[S]&1,Jb=(mb<<4)+Gb|0,Kb=(mb<<4)+Gb+8|0;ci(V,(b[0]=a[Jb>>2],b[1]=a[Jb+4>>2],f[0]),(b[0]=a[Kb>>2],b[1]=a[Kb+4>>2],f[0]),nb,xb,Hb);p=yb>>2;a[p]=a[O];a[p+1]=a[O+1];a[p+2]=a[O+2];a[p+3]=a[O+3];a[I]=a[O];a[I+1]=a[O+1];a[I+2]=a[O+2];a[I+3]=a[O+3];var Ib=mb+1|0;if((Ib|0)>=(a[w]|0)){break}var Mb=(Ib<<4)+a[v]|0,Lb=a[s],Nb=a[S]&1,Pb=(Ib<<4)+Lb|0,Tb=(Ib<<4)+Lb+8|0;ci(ca,(b[0]=a[Pb>>2],b[1]=a[Pb+4>>2],f[0]),(b[0]=a[Tb>>2],b[1]=a[Tb+4>>2],f[0]),nb,xb,Nb);z=Mb>>2;a[z]=a[G];a[z+1]=a[G+1];a[z+2]=a[G+2];a[z+3]=a[G+3];a[E]=a[G];a[E+1]=a[G+1];a[E+2]=a[G+2];a[E+3]=a[G+3];var Sb=mb+2|0,Wb=(Sb<<4)+a[v]|0,Vb=a[s],Yb=a[S]&1,Xb=(Sb<<4)+Vb|0,$b=(Sb<<4)+Vb+8|0;ci(Y,(b[0]=a[Xb>>2],b[1]=a[Xb+4>>2],f[0]),(b[0]=a[$b>>2],b[1]=a[$b+4>>2],f[0]),nb,xb,Yb);n=Wb>>2;a[n]=a[F];a[n+1]=a[F+1];a[n+2]=a[F+2];a[n+3]=a[F+3];a[D]=a[F];a[D+1]=a[F+1];a[D+2]=a[F+2];a[D+3]=a[F+3];var Zb=mb+3|0,ac=a[s],dc=a[S]&1,bc=(Zb<<4)+ac|0,ec=(Zb<<4)+ac+8|0;ci(Z,(b[0]=a[bc>>2],b[1]=a[bc+4>>2],f[0]),(b[0]=a[ec>>2],b[1]=a[ec+4>>2],f[0]),nb,xb,dc);a[y]=a[C];a[y+1]=a[C+1];a[y+2]=a[C+2];a[y+3]=a[C+3];xk(lb,rb);mb=Zb}k=(Ua+108|0)>>2;var fc=a[k];if(0!=(fc|0)){var gc=a[A+27],jc=a[S]&1,kc=gc+56|0,mc=gc+64|0;ci($,(b[0]=a[kc>>2],b[1]=a[kc+4>>2],f[0]),(b[0]=a[mc>>2],b[1]=a[mc+4>>2],f[0]),nb,xb,jc);l=(fc+56|0)>>2;a[l]=a[B];a[l+1]=a[B+1];a[l+2]=a[B+2];a[l+3]=a[B+3];m[a[k]+81|0]=1;al(Ta,a[k])}}}while(0);var nc=cb+1|0;if((nc|0)==(i|0)){break}else{cb=nc}}var Qb=ga;a[dj>>2]=a[nx>>2];a[di>>2]=a[ox>>2];a[Ej>>2]=a[px>>2];a[Kg>>2]=a[qx>>2];a[Hh>>2]=a[rx>>2];a[Gh>>2]=a[sx>>2];a[Ah>>2]=a[tx>>2];ax(Qb);Sf(Qb);h=Q;return}}while(0);cx(e,g,c,d,i,j);h=Q}function lO(c,d,i,g){var e,j,l,k,n,z,p,s,v,t,u=h;h+=1540;for(var w=u+696,A=u+1392,B=u+1396,C=u+1508,y=u+1524,D=a[i+16>>2],F=i+12|0,E=a[F>>2],G=a[D+20>>2],I=a[i+180>>2];;){var O=a[I+180>>2];if(0==(O|0)){break}else{I=O}}var H=a[I+16>>2];t=(i+108|0)>>2;var J=H+32|0;v=(a[t]+56|0)>>2;s=J>>2;a[v]=a[s];a[v+1]=a[s+1];a[v+2]=a[s+2];a[v+3]=a[s+3];m[a[t]+81|0]=1;do{if(2==(g|0)){var K=D+32|0,L=(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0]),N=D+40|0,Q=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),S=i+28|0,R=i+36|0;qf(C,L,Q,(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]),(b[0]=a[R>>2],b[1]=a[R+4>>2],f[0]));var U=C|0,W=(b[0]=a[U>>2],b[1]=a[U+4>>2],f[0]),V=C+8|0,ca=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]),Y=E+32|0,$=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),ba=E+40|0,ja=(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]),aa=i+68|0,da=i+76|0;qf(y,$,ja,(b[0]=a[aa>>2],b[1]=a[aa+4>>2],f[0]),(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]));var ea=y|0,fa=(b[0]=a[ea>>2],b[1]=a[ea+4>>2],f[0]),ka=y+8|0,la=(b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0]),ha=a[t],ga=ha+56|0,sa=(b[0]=a[ga>>2],b[1]=a[ga+4>>2],f[0]),ra=ha+64|0,na=ha+32|0,qa=(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0])-.5*(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),ya=B+16|0,oa=B|0,wa=B|0;f[0]=W;a[wa>>2]=b[0];a[wa+4>>2]=b[1];var va=B+8|0;f[0]=ca;a[va>>2]=b[0];a[va+4>>2]=b[1];p=ya>>2;z=B>>2;a[p]=a[z];a[p+1]=a[z+1];a[p+2]=a[z+2];a[p+3]=a[z+3];var Fa=B+32|0,Ga=B+48|0,Aa=B+64|0,ta=Aa|0;f[0]=sa;a[ta>>2]=b[0];a[ta+4>>2]=b[1];var Ka=B+72|0;f[0]=qa;a[Ka>>2]=b[0];a[Ka+4>>2]=b[1];n=Ga>>2;k=Aa>>2;a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];l=Fa>>2;a[l]=a[k];a[l+1]=a[k+1];a[l+2]=a[k+2];a[l+3]=a[k+3];var za=B+80|0,ma=B+96|0,pa=ma|0;f[0]=fa;a[pa>>2]=b[0];a[pa+4>>2]=b[1];var Ea=B+104|0;f[0]=la;a[Ea>>2]=b[0];a[Ea+4>>2]=b[1];j=za>>2;e=ma>>2;a[j]=a[e];a[j+1]=a[e+1];a[j+2]=a[e+2];a[j+3]=a[e+3];a[A>>2]=7;var Ha=oa,Ra=7}else{var Ba=J|0,Ma=(b[0]=a[Ba>>2],b[1]=a[Ba+4>>2],f[0]),La=H+104|0,Qa=Ma-(b[0]=a[La>>2],b[1]=a[La+4>>2],f[0]),Ya=H+112|0,Pa=Ma+(b[0]=a[Ya>>2],b[1]=a[Ya+4>>2],f[0]),Za=H+40|0,Va=(b[0]=a[Za>>2],b[1]=a[Za+4>>2],f[0]),ab=H+96|0,$a=Va+.5*(b[0]=a[ab>>2],b[1]=a[ab+4>>2],f[0]),jb=a[D+236>>2],Ca=a[G+220>>2],Ia=D+40|0,eb=(Va-(a[(Ca+16>>2)+(11*jb|0)]|0)-(b[0]=a[Ia>>2],b[1]=a[Ia+4>>2],f[0])+a[(Ca+20>>2)+(11*jb|0)]&-1|0)/6&-1,ub=$a-(5>(eb|0)?5:eb|0);mm(c,d,D,i,u,1);mm(c,d,E,i,w,0);var Sa=u+52|0,db=a[Sa>>2],ua=db-1|0,Oa=(ua<<5)+u+56|0,Wa=(b[0]=a[Oa>>2],b[1]=a[Oa+4>>2],f[0]);f[0]=Wa;a[Z>>2]=b[0];a[Z+4>>2]=b[1];var pb=(ua<<5)+u+80|0,ob=(b[0]=a[pb>>2],b[1]=a[pb+4>>2],f[0]);f[0]=ob;a[Z+8>>2]=b[0];a[Z+12>>2]=b[1];f[0]=Qa;a[Z+16>>2]=b[0];a[Z+20>>2]=b[1];f[0]=ub;a[Z+24>>2]=b[0];a[Z+28>>2]=b[1];f[0]=Wa;a[Z+32>>2]=b[0];a[Z+36>>2]=b[1];f[0]=ub;a[Z+40>>2]=b[0];a[Z+44>>2]=b[1];var bb=w+52|0,qb=a[bb>>2]-1|0,ib=(qb<<5)+w+72|0,kb=(b[0]=a[ib>>2],b[1]=a[ib+4>>2],f[0]);f[0]=kb;a[Z+48>>2]=b[0];a[Z+52>>2]=b[1];f[0]=$a;a[Z+56>>2]=b[0];a[Z+60>>2]=b[1];f[0]=Pa;a[Z+64>>2]=b[0];a[Z+68>>2]=b[1];f[0]=ub;a[Z+88>>2]=b[0];a[Z+92>>2]=b[1];var hb=(qb<<5)+w+80|0,vb=(b[0]=a[hb>>2],b[1]=a[hb+4>>2],f[0]);f[0]=vb;a[Z+72>>2]=b[0];a[Z+76>>2]=b[1];f[0]=kb;a[Z+80>>2]=b[0];a[Z+84>>2]=b[1];var xb=0<(db|0);a:do{if(xb){for(var mb=0;;){bd(d,(mb<<5)+u+56|0);var nb=mb+1|0;if((nb|0)<(a[Sa>>2]|0)){mb=nb}else{break a}}}}while(0);bd(d,Z|0);bd(d,Z+32|0);bd(d,Z+64|0);var rb=a[bb>>2],lb=0<(rb|0);a:do{if(lb){for(var Ta=rb;;){var cb=Ta-1|0;bd(d,(cb<<5)+w+56|0);if(0<(cb|0)){Ta=cb}else{break a}}}}while(0);var fb=8==(g|0)?ff(d,A,0):ff(d,A,1),Ua=a[A>>2];if(0!=(Ua|0)){Ha=fb,Ra=Ua}else{h=u;return}}}while(0);Wd(i,a[F>>2],Ha,Ra,ke);h=u}function cx(c,d,i,g,e,j){var l,k,n,m,p,s,v,t,u,w,A,B,C,y,D=h;h+=320;var F=D+160,E=D+176,G=D+192,I=D+208,O=D+224,H=D+240,J=D+256,K=D+272,L=D+288,N=D+304,Q=a[i+(g<<2)>>2],S=c+32|0,S=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);m=c+40|0;m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);p=Q+28|0;s=Q+36|0;qf(F,S,m,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]));S=F|0;S=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);F=F+8|0;F=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]);m=d+32|0;m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);d=d+40|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);p=Q+68|0;Q=Q+76|0;qf(E,m,d,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),(b[0]=a[Q>>2],b[1]=a[Q+4>>2],f[0]));Q=E|0;Q=(b[0]=a[Q>>2],b[1]=a[Q+4>>2],f[0]);E=E+8|0;E=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]);if(1<(e|0)){var c=c+96|0,d=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),c=d/(e-1|0),R=.5*d}else{if(0<(e|0)){R=c=0}else{h=D;return}}var U=D|0,W=D+8|0;l=D+16|0;var V=l|0,Y=D+24|0,Z=(2*S+Q)/3;y=(D+32|0)>>2;C=O>>2;B=(D+48|0)>>2;A=H>>2;w=(D+64|0)>>2;u=J>>2;var $=(2*Q+S)/3;t=(D+80|0)>>2;v=K>>2;s=(D+96|0)>>2;p=L>>2;m=(D+112|0)>>2;var d=N>>2,ba=D+128|0,ja=D+136|0,aa=D+144|0,da=D+152|0,ea=D|0;n=l>>2;k=G>>2;l=I>>2;for(var fa=D+48|0,ka=D+56|0,la=0,R=F-R;;){var ha=a[i+(la+g<<2)>>2];f[0]=S;a[U>>2]=b[0];a[U+4>>2]=b[1];f[0]=F;a[W>>2]=b[0];a[W+4>>2]=b[1];if(8==(j|0)||2==(j|0)){Tg(G,Z,R);a[n]=a[k];a[n+1]=a[k+1];a[n+2]=a[k+2];a[n+3]=a[k+3];Tg(I,$,R);a[y]=a[l];a[y+1]=a[l+1];a[y+2]=a[l+2];a[y+3]=a[l+3];f[0]=Q;a[fa>>2]=b[0];a[fa+4>>2]=b[1];f[0]=E;a[ka>>2]=b[0];a[ka+4>>2]=b[1];var ga=4}else{f[0]=S,a[V>>2]=b[0],a[V+4>>2]=b[1],f[0]=F,a[Y>>2]=b[0],a[Y+4>>2]=b[1],Tg(O,Z,R),a[y]=a[C],a[y+1]=a[C+1],a[y+2]=a[C+2],a[y+3]=a[C+3],Tg(H,Z,R),a[B]=a[A],a[B+1]=a[A+1],a[B+2]=a[A+2],a[B+3]=a[A+3],Tg(J,Z,R),a[w]=a[u],a[w+1]=a[u+1],a[w+2]=a[u+2],a[w+3]=a[u+3],Tg(K,$,R),a[t]=a[v],a[t+1]=a[v+1],a[t+2]=a[v+2],a[t+3]=a[v+3],Tg(L,$,R),a[s]=a[p],a[s+1]=a[p+1],a[s+2]=a[p+2],a[s+3]=a[p+3],Tg(N,$,R),a[m]=a[d],a[m+1]=a[d+1],a[m+2]=a[d+2],a[m+3]=a[d+3],f[0]=Q,a[ba>>2]=b[0],a[ba+4>>2]=b[1],f[0]=E,a[ja>>2]=b[0],a[ja+4>>2]=b[1],f[0]=Q,a[aa>>2]=b[0],a[aa+4>>2]=b[1],f[0]=E,a[da>>2]=b[0],a[da+4>>2]=b[1],ga=10}Wd(ha,a[ha+12>>2],ea,ga,ke);la=la+1|0;if((la|0)==(e|0)){break}else{R+=c}}h=D}function Tg(c,d,i){var g=c|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];c=c+8|0;f[0]=i;a[c>>2]=b[0];a[c+4>>2]=b[1]}function mO(c,d,i,g,e,j,l){var k,n=h;h+=1396;var m,p=n+4,s=n+700,v=a[j+16>>2],t=a[j+12>>2];k=a[v+20>>2];var u=a[v+236>>2];if((u|0)<(D[k+246>>1]<<16>>16|0)){k=a[k+220>>2]>>2;var w=u+1|0,A=v+40|0,B=a[a[k+(11*w|0)+1]>>2]+40|0;k=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-(a[k+(11*u|0)+6]|0)-((b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])+(a[k+(11*w|0)+7]|0))}else{k=a[k+260>>2]|0}w=e+1|0;u=(a[c+12>>2]|0)/w;k/=w;ux(c,d,v,j,p,1);ux(c,d,t,j,s,0);c=p+52|0;j=s+52|0;l=0==(l|0);v=d+80|0;for(w=0;;){if((w|0)>=(e|0)){m=2738;break}var t=a[i+(w+g<<2)>>2],A=a[c>>2],B=A-1|0,C=(B<<5)+p+56|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),y=(B<<5)+p+64|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),B=(B<<5)+p+72|0,F=(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0]);f[0]=C;a[Z>>2]=b[0];a[Z+4>>2]=b[1];f[0]=y;a[Z+24>>2]=b[0];a[Z+28>>2]=b[1];var w=w+1|0,E=w|0,B=E*u;f[0]=F+B;a[Z+16>>2]=b[0];a[Z+20>>2]=b[1];y-=E*k;f[0]=y;a[Z+8>>2]=b[0];a[Z+12>>2]=b[1];f[0]=C;a[Z+32>>2]=b[0];a[Z+36>>2]=b[1];f[0]=y;a[Z+56>>2]=b[0];a[Z+60>>2]=b[1];F=a[j>>2]-1|0;C=(F<<5)+s+72|0;C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]);f[0]=C;a[Z+48>>2]=b[0];a[Z+52>>2]=b[1];f[0]=y-k;a[Z+40>>2]=b[0];a[Z+44>>2]=b[1];E=(F<<5)+s+56|0;E=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0]);F=(F<<5)+s+64|0;F=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]);f[0]=C;a[Z+80>>2]=b[0];a[Z+84>>2]=b[1];f[0]=F;a[Z+88>>2]=b[0];a[Z+92>>2]=b[1];f[0]=E-B;a[Z+64>>2]=b[0];a[Z+68>>2]=b[1];f[0]=y;a[Z+72>>2]=b[0];a[Z+76>>2]=b[1];A=0<(A|0);a:do{if(A){for(B=0;;){if(bd(d,(B<<5)+p+56|0),B=B+1|0,(B|0)>=(a[c>>2]|0)){break a}}}}while(0);bd(d,Z|0);bd(d,Z+32|0);bd(d,Z+64|0);A=a[j>>2];B=0<(A|0);a:do{if(B){for(C=A;;){if(C=C-1|0,bd(d,(C<<5)+s+56|0),0>=(C|0)){break a}}}}while(0);A=l?ff(d,n,1):ff(d,n,0);B=a[n>>2];if(0==(B|0)){m=2739;break}Wd(t,a[t+12>>2],A,B,ke);a[v>>2]=0}2738==m?h=n:2739==m&&(h=n)}function mm(c,d,i,g,e,j){var l,k=h;h+=96;l=k+32;var n=k+64,m=a[i+20>>2];Sg(l,c,i,0,g);c=e>>2;l>>=2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];c=k>>2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];a[e+48>>2]=4;0==j<<24>>24?xl(d,g,2,e,0):vl(d,g,2,e,0);d=(e+52|0)>>2;j=a[d]-1|0;g=(j<<5)+e+80|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(k+24|0)>>2;f[0]=l;a[g]=b[0];a[g+1]=b[1];j=(j<<5)+e+64|0;l=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=(k+8|0)>>2;f[0]=l;a[j]=b[0];a[j+1]=b[1];l=i+40|0;bi(n,k,4,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+a[(a[m+220>>2]+20>>2)+(11*a[i+236>>2]|0)]&-1);i=n>>2;a[c]=a[i];a[c+1]=a[i+1];a[c+2]=a[i+2];a[c+3]=a[i+3];a[c+4]=a[i+4];a[c+5]=a[i+5];a[c+6]=a[i+6];a[c+7]=a[i+7];i=k|0;n=k+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])){if((b[0]=a[j],b[1]=a[j+1],f[0])<(b[0]=a[g],b[1]=a[g+1],f[0])){i=a[d],a[d]=i+1|0,e=((i<<5)+e+56|0)>>2,a[e]=a[c],a[e+1]=a[c+1],a[e+2]=a[c+2],a[e+3]=a[c+3],a[e+4]=a[c+4],a[e+5]=a[c+5],a[e+6]=a[c+6],a[e+7]=a[c+7]}}h=k}function ux(c,d,i,g,e,j){var l,k=h;h+=96;l=k+32;var n=k+64,m=a[i+20>>2];Sg(l,c,i,0,g);c=e>>2;l>>=2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];c=k>>2;a[c]=a[l];a[c+1]=a[l+1];a[c+2]=a[l+2];a[c+3]=a[l+3];a[c+4]=a[l+4];a[c+5]=a[l+5];a[c+6]=a[l+6];a[c+7]=a[l+7];a[e+48>>2]=1;0==j<<24>>24?xl(d,g,2,e,0):vl(d,g,2,e,0);d=(e+52|0)>>2;j=a[d]-1|0;g=(j<<5)+e+80|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(k+24|0)>>2;f[0]=l;a[g]=b[0];a[g+1]=b[1];j=(j<<5)+e+64|0;l=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=(k+8|0)>>2;f[0]=l;a[j]=b[0];a[j+1]=b[1];l=i+40|0;bi(n,k,1,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-a[(a[m+220>>2]+20>>2)+(11*a[i+236>>2]|0)]&-1);i=n>>2;a[c]=a[i];a[c+1]=a[i+1];a[c+2]=a[i+2];a[c+3]=a[i+3];a[c+4]=a[i+4];a[c+5]=a[i+5];a[c+6]=a[i+6];a[c+7]=a[i+7];i=k|0;n=k+16|0;if((b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])<(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])){if((b[0]=a[j],b[1]=a[j+1],f[0])<(b[0]=a[g],b[1]=a[g+1],f[0])){i=a[d],a[d]=i+1|0,e=((i<<5)+e+56|0)>>2,a[e]=a[c],a[e+1]=a[c+1],a[e+2]=a[c+2],a[e+3]=a[c+3],a[e+4]=a[c+4],a[e+5]=a[c+5],a[e+6]=a[c+6],a[e+7]=a[c+7]}}h=k}function uO(c,d,i,g,e,j,l){var k,n,z,p,s,v,t,u,w,A,B,C,y,D,F,E,M,I,O=h;h+=196;var H,J=O+4,K=O+164,L=O+180,N=a[i+(g<<2)>>2],Q=fa(e<<2),S=0<(e|0);a:do{if(S){for(var R=0;;){a[Q+(R<<2)>>2]=a[i+(R+g<<2)>>2];var U=R+1|0;if((U|0)==(e|0)){break a}else{R=U}}}}while(0);ch(Q,e,364);var W=c+32|0,V=(b[0]=a[W>>2],b[1]=a[W+4>>2],f[0]),Y=c+40|0,Z=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]),$=N+28|0,ba=N+36|0;qf(K,V,Z,(b[0]=a[$>>2],b[1]=a[$+4>>2],f[0]),(b[0]=a[ba>>2],b[1]=a[ba+4>>2],f[0]));var ja=K|0,aa=(b[0]=a[ja>>2],b[1]=a[ja+4>>2],f[0]),da=K+8|0,ea=(b[0]=a[da>>2],b[1]=a[da+4>>2],f[0]),ka=d+32|0,la=(b[0]=a[ka>>2],b[1]=a[ka+4>>2],f[0]),sa=d+40|0,ha=(b[0]=a[sa>>2],b[1]=a[sa+4>>2],f[0]),ga=N+68|0,ra=N+76|0;qf(L,la,ha,(b[0]=a[ga>>2],b[1]=a[ga+4>>2],f[0]),(b[0]=a[ra>>2],b[1]=a[ra+4>>2],f[0]));var na=L|0,qa=(b[0]=a[na>>2],b[1]=a[na+4>>2],f[0]),oa=L+8|0,ya=(b[0]=a[oa>>2],b[1]=a[oa+4>>2],f[0]),va=c+112|0,wa=aa+(b[0]=a[va>>2],b[1]=a[va+4>>2],f[0]),Aa=d+104|0,Fa=qa-(b[0]=a[Aa>>2],b[1]=a[Aa+4>>2],f[0]),Ga=.5*(wa+Fa);I=(J|0)>>2;f[0]=aa;a[I]=b[0];a[I+1]=b[1];M=(J+8|0)>>2;f[0]=ea;a[M]=b[0];a[M+1]=b[1];E=(J+16|0)>>2;f[0]=aa;a[E]=b[0];a[E+1]=b[1];F=(J+24|0)>>2;f[0]=ea;a[F]=b[0];a[F+1]=b[1];D=(J+32|0)>>2;f[0]=qa;a[D]=b[0];a[D+1]=b[1];y=(J+40|0)>>2;f[0]=ya;a[y]=b[0];a[y+1]=b[1];C=(J+48|0)>>2;f[0]=qa;a[C]=b[0];a[C+1]=b[1];B=(J+56|0)>>2;f[0]=ya;a[B]=b[0];a[B+1]=b[1];var Ea=J|0;Wd(N,a[N+12>>2],Ea,4,ke);A=(N+108|0)>>2;var ta=a[A]+56|0;f[0]=Ga;a[ta>>2]=b[0];a[ta+4>>2]=b[1];var Ka=a[A],za=Ka+32|0,ma=ea+.5*((b[0]=a[za>>2],b[1]=a[za+4>>2],f[0])+6),pa=Ka+64|0;f[0]=ma;a[pa>>2]=b[0];a[pa+4>>2]=b[1];m[a[A]+81|0]=1;var Ba=ea+3,Ha=a[A],Ra=Ha+32|0,Ma=Ba+(b[0]=a[Ra>>2],b[1]=a[Ra+4>>2],f[0]),Qa=Ha+24|0,La=.5*(b[0]=a[Qa>>2],b[1]=a[Qa+4>>2],f[0]),Pa=Ga-La,Ya=Ga+La;w=(J+64|0)>>2;u=(J+72|0)>>2;t=(J+80|0)>>2;v=(J+88|0)>>2;s=(J+96|0)>>2;p=(J+104|0)>>2;z=(J+112|0)>>2;n=(J+120|0)>>2;for(var Va=4==(j|0)&1,Za=Ma,db=Ba,ab=1;;){var $a,jb;if((ab|0)>=(l|0)){break}var Ca=a[i+(ab+g<<2)>>2];if(0==(ab&1|0)){f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=Pa;a[E]=b[0];a[E+1]=b[1];f[0]=ea;a[F]=b[0];a[F+1]=b[1];f[0]=Pa;a[D]=b[0];a[D+1]=b[1];f[0]=Za;a[y]=b[0];a[y+1]=b[1];f[0]=Ya;a[C]=b[0];a[C+1]=b[1];f[0]=Za;a[B]=b[0];a[B+1]=b[1];f[0]=Ya;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=qa;a[t]=b[0];a[t+1]=b[1];f[0]=ya;a[v]=b[0];a[v+1]=b[1];f[0]=qa;a[s]=b[0];a[s+1]=b[1];var Ia=Za+6;f[0]=Ia;a[p]=b[0];a[p+1]=b[1];f[0]=aa;a[z]=b[0];a[z+1]=b[1];f[0]=Ia;a[n]=b[0];a[n+1]=b[1];var eb=a[Ca+108>>2]+32|0,ub=(b[0]=a[eb>>2],b[1]=a[eb+4>>2],f[0]),Sa=jb,ib=$a,ua=Za+(ub+6),Oa=db,Wa=Za+.5*ub+6}else{var pb=Ca+108|0,ob=a[pb>>2];if(1==(ab|0)){var bb=ob+24|0,qb=.5*(b[0]=a[bb>>2],b[1]=a[bb+4>>2],f[0]),hb=Ga+qb,kb=Ga-qb}else{hb=jb,kb=$a}var mb=ob+32|0,vb=db-((b[0]=a[mb>>2],b[1]=a[mb+4>>2],f[0])+6);f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=aa;a[E]=b[0];a[E+1]=b[1];var xb=vb-6;f[0]=xb;a[F]=b[0];a[F+1]=b[1];f[0]=qa;a[D]=b[0];a[D+1]=b[1];f[0]=xb;a[y]=b[0];a[y+1]=b[1];f[0]=qa;a[C]=b[0];a[C+1]=b[1];f[0]=ya;a[B]=b[0];a[B+1]=b[1];f[0]=hb;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=hb;a[t]=b[0];a[t+1]=b[1];f[0]=vb;a[v]=b[0];a[v+1]=b[1];f[0]=kb;a[s]=b[0];a[s+1]=b[1];f[0]=vb;a[p]=b[0];a[p+1]=b[1];f[0]=kb;a[z]=b[0];a[z+1]=b[1];f[0]=ea;a[n]=b[0];a[n+1]=b[1];var wb=a[pb>>2]+32|0,Sa=hb,ib=kb,ua=Za,Oa=vb,Wa=vb+.5*(b[0]=a[wb>>2],b[1]=a[wb+4>>2],f[0])}var nb=Ft(aa,ea,qa,ya,Ea,8,O,Va),rb=a[O>>2];if(0==(rb|0)){H=2780;break}k=(Ca+108|0)>>2;var lb=a[k]+56|0;f[0]=Ga;a[lb>>2]=b[0];a[lb+4>>2]=b[1];var Ta=a[k]+64|0;f[0]=Wa;a[Ta>>2]=b[0];a[Ta+4>>2]=b[1];m[a[k]+81|0]=1;Wd(Ca,a[Ca+12>>2],nb,rb,ke);jb=Sa;$a=ib;Za=ua;db=Oa;ab=ab+1|0}if(2780!=H){for(var cb=(2*wa+Fa)/3,fb=(wa+2*Fa)/3,Ua=jb,sb=$a,Na=Za,Fb=db,Db=ab;(Db|0)<(e|0);){var Cb=a[i+(Db+g<<2)>>2];if(0==(Db&1|0)){f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=Pa;a[E]=b[0];a[E+1]=b[1];f[0]=ea;a[F]=b[0];a[F+1]=b[1];f[0]=Pa;a[D]=b[0];a[D+1]=b[1];f[0]=Na;a[y]=b[0];a[y+1]=b[1];f[0]=Ya;a[C]=b[0];a[C+1]=b[1];f[0]=Na;a[B]=b[0];a[B+1]=b[1];f[0]=Ya;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=qa;a[t]=b[0];a[t+1]=b[1];f[0]=ya;a[v]=b[0];a[v+1]=b[1];f[0]=qa;a[s]=b[0];a[s+1]=b[1];var Eb=Na+6,yb=Ua,Bb=sb,Ja=Eb,Gb=Fb,Hb=Eb,Ib=aa,Jb=Eb}else{var Kb=1==(Db|0),Lb=Kb?cb:sb,Mb=Kb?fb:Ua,Nb=Fb-6;f[0]=aa;a[I]=b[0];a[I+1]=b[1];f[0]=ea;a[M]=b[0];a[M+1]=b[1];f[0]=aa;a[E]=b[0];a[E+1]=b[1];var Pb=Nb-6;f[0]=Pb;a[F]=b[0];a[F+1]=b[1];f[0]=qa;a[D]=b[0];a[D+1]=b[1];f[0]=Pb;a[y]=b[0];a[y+1]=b[1];f[0]=qa;a[C]=b[0];a[C+1]=b[1];f[0]=ya;a[B]=b[0];a[B+1]=b[1];f[0]=Mb;a[w]=b[0];a[w+1]=b[1];f[0]=ya;a[u]=b[0];a[u+1]=b[1];f[0]=Mb;a[t]=b[0];a[t+1]=b[1];f[0]=Nb;a[v]=b[0];a[v+1]=b[1];f[0]=Lb;a[s]=b[0];a[s+1]=b[1];yb=Mb;Bb=Lb;Ja=Na;Gb=Nb;Hb=ea;Ib=Lb;Jb=Nb}f[0]=Jb;a[p]=b[0];a[p+1]=b[1];f[0]=Ib;a[z]=b[0];a[z+1]=b[1];f[0]=Hb;a[n]=b[0];a[n+1]=b[1];var Tb=Ft(aa,ea,qa,ya,Ea,8,O,Va),Sb=a[O>>2];if(0==(Sb|0)){H=2781;break}Wd(Cb,a[Cb+12>>2],Tb,Sb,ke);Ua=yb;sb=Bb;Na=Ja;Fb=Gb;Db=Db+1|0}2781!=H&&G(Q)}h=O}function vO(c){var d,i=xn(AO|0,a[c>>2]>>>4&1);Mp(i,nq|0,Y|0);var g=fa(96),e=i+44|0;d=e>>2;a[e>>2]=g;var h=c+44|0,l=a[h>>2]|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);f[0]=l;a[g>>2]=b[0];a[g+4>>2]=b[1];g=a[h>>2]+24|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);h=a[e>>2]+24|0;f[0]=g;a[h>>2]=b[0];a[h+4>>2]=b[1];m[e+107|0]=m[c+151|0];a[d+27]=a[c+152>>2]&1^1;a[d+53]=a[c+256>>2];a[d+54]=a[c+260>>2];c=c+32|0;e=a[a[c>>2]+16>>2];g=a[a[e+4>>2]+8>>2];d=a[g>>2];if(0==(d|0)){c=e}else{for(e=g;!(e=e+4|0,xi(i,a[d>>2],a[d+4>>2]),d=a[e>>2],0==(d|0));){}c=a[a[c>>2]+16>>2]}c=a[a[c+8>>2]+8>>2];d=a[c>>2];e=0==(d|0);a:do{if(!e){g=c;for(h=d;;){if(g=g+4|0,Th(i,a[h>>2],a[h+4>>2]),h=a[g>>2],0==(h|0)){break a}}}}while(0);c=(i+40|0)>>2;0==($(a[a[c]+4>>2]|0,wi|0)|0)&&Th(i,wi|0,Y|0);0==($(a[a[c]+4>>2]|0,vi|0)|0)&&Th(i,vi|0,Y|0);a[nx>>2]=a[dj>>2];a[ox>>2]=a[di>>2];a[px>>2]=a[Ej>>2];a[qx>>2]=a[Kg>>2];a[rx>>2]=a[Hh>>2];a[sx>>2]=a[Gh>>2];a[tx>>2]=a[Ah>>2];a[dj>>2]=0;d=$(a[a[c]+4>>2]|0,vx|0);a[di>>2]=d;d=$(a[a[c]+4>>2]|0,wx|0);a[Ej>>2]=d;c=$(a[a[c]+4>>2]|0,vp|0);a[Kg>>2]=c;if(0!=(c|0)){return a[Hh>>2]=0,a[Gh>>2]=0,i}c=Th(i,vp|0,Y|0);a[Kg>>2]=c;a[Hh>>2]=0;a[Gh>>2]=0;return i}function xO(b,c){var d=h,g=cl(b,a[c+12>>2]),f=g|0;po(c|0,f);if(2!=(ts(c)|0)){return h=d,g}var e=c+120|0,l=Cb(Ba(a[a[e>>2]>>2])+3|0);Ma(l,BO|0,(j=h,h+=4,a[j>>2]=a[a[e>>2]>>2],j));yd(f,dh|0,l);h=d;return g}function ci(a,b,c,d,f,e){0==(e|0)?(e=b,b=c):(e=c,b=-b);qf(a,e,b,d,f)}function CO(b,c,d,g,f,e){var h;if(!(0<(d|0)&0<(e|0))){var k;return 0}if((d|0)<(e|0)){for(b=0;;){f=a[c+(b<<2)>>2];if(0==(f|0)){k=0;h=2824;break}if((a[f+12>>2]|0)==(g|0)){k=f;h=2825;break}else{b=b+1|0}}if(2825==h||2824==h){return k}}else{for(c=0;;){g=a[f+(c<<2)>>2];if(0==(g|0)){k=0;h=2826;break}if((a[g+16>>2]|0)==(b|0)){k=g;h=2827;break}else{c=c+1|0}}if(2826==h||2827==h){return k}}}function Fj(b,c){var d,g;d=(b+4|0)>>2;for(var f=a[d],e=b|0,h=0;;){if((h|0)>=(f|0)){g=2833;break}var k=a[e>>2],j=(h<<2)+k|0;if((a[j>>2]|0)==(c|0)){break}else{h=h+1|0}}2833!=g&&(g=f-1|0,a[d]=g,a[j>>2]=a[k+(g<<2)>>2],a[a[e>>2]+(a[d]<<2)>>2]=0)}function DO(a,b){var c=a+176|0;D[c>>1]=D[c>>1]-D[b+176>>1]&65535;c=a+162|0;D[c>>1]=D[c>>1]-D[b+162>>1]&65535;c=a+164|0;ib[c>>2]-=ib[b+164>>2]}function Zh(b,c){return CO(b,a[b+184>>2],a[b+188>>2],c,a[c+176>>2],a[c+180>>2])}function oN(b,c){return CO(b,a[b+192>>2],a[b+196>>2],c,a[c+200>>2],a[c+204>>2])}function xx(b){var c,d;d=(b+16|0)>>2;c=a[d]>>2;var g=a[c+46];c=0==(g|0)?Cb((a[c+47]<<2)+8|0):wb(g,(a[c+47]<<2)+8|0);a[a[d]+184>>2]=c;c=a[d]+188|0;g=a[c>>2];a[c>>2]=g+1|0;a[a[a[d]+184>>2]+(g<<2)>>2]=b;d=a[d];a[a[d+184>>2]+(a[d+188>>2]<<2)>>2]=0;d=(b+12|0)>>2;c=a[d]>>2;g=a[c+44];c=0==(g|0)?Cb((a[c+45]<<2)+8|0):wb(g,(a[c+45]<<2)+8|0);a[a[d]+176>>2]=c;c=a[d]+180|0;g=a[c>>2];a[c>>2]=g+1|0;a[a[a[d]+176>>2]+(g<<2)>>2]=b;d=a[d];a[a[d+176>>2]+(a[d+180>>2]<<2)>>2]=0;return b}function pf(b){0==(b|0)&&sa(qg|0,117,EO|0,oq|0);Fj(a[b+16>>2]+184|0,b);Fj(a[b+12>>2]+176|0,b)}function Rg(b){var c,d;d=(b+16|0)>>2;c=a[d]>>2;var g=a[c+52];c=0==(g|0)?Cb((a[c+53]<<2)+8|0):wb(g,(a[c+53]<<2)+8|0);a[a[d]+208>>2]=c;c=a[d]+212|0;g=a[c>>2];a[c>>2]=g+1|0;a[a[a[d]+208>>2]+(g<<2)>>2]=b;b=a[d];a[a[b+208>>2]+(a[b+212>>2]<<2)>>2]=0}function pN(b,c){var d,g,f;g=(c+4|0)>>2;var e=a[g];d=(c|0)>>2;for(var h=a[d],k=0;(k|0)<(e|0);){if((a[h+(k<<2)>>2]|0)==(b|0)){f=2869;break}else{k=k+1|0}}2869!=f&&(f=0==(h|0)?Cb((e<<2)+8|0):wb(h,(e<<2)+8|0),a[d]=f,e=a[g],a[g]=e+1|0,a[f+(e<<2)>>2]=b,a[a[d]+(a[g]<<2)>>2]=0)}function pq(b,c,d){var g=fa(184);a[g+16>>2]=b;a[g+12>>2]=c;m[g+124|0]=1;if(0==(d|0)){return ib[g+164>>2]=1,D[g+162>>1]=1,D[g+176>>1]=1,D[g+178>>1]=1,g}a[g+20>>2]=a[d+20>>2];D[g+176>>1]=D[d+176>>1];D[g+162>>1]=D[d+162>>1];ib[g+164>>2]=ib[d+164>>2];D[g+178>>1]=D[d+178>>1];var f=d+16|0;if((a[f>>2]|0)==(b|0)){for(var b=(d+28|0)>>2,e=(g+28|0)>>2,h=b+10;b>2]|0)==(b|0)){b=(d+68|0)>>2;e=(g+28|0)>>2;for(h=b+10;b>2]|0)==(c|0)){b=(d+68|0)>>2;e=(g+68|0)>>2;for(h=b+10;b>2]|0)==(c|0)){b=(d+28|0)>>2;e=(g+68|0)>>2;for(h=b+10;b>2]|0)&&(a[c>>2]=g);a[g+128>>2]=d;return g}function de(a,b,c){return xx(pq(a,b,c))}function Mw(b,c){var d=b+216|0,g=a[d>>2],f=c+168|0;a[f>>2]=g;0!=(g|0)&&(a[g+172>>2]=c);a[d>>2]=c;a[c+172>>2]=0;(a[f>>2]|0)==(c|0)&&sa(qg|0,215,FO|0,GO|0)}function Qw(b,c){for(var d=b+216|0;;){var g=a[d>>2];if(0==(g|0)|(g|0)==(c|0)){break}else{d=g+168|0}}0==(g|0)&&sa(qg|0,231,HO|0,IO|0);var g=c+168|0,f=a[g>>2],d=c+172|0;0==(f|0)?g=0:(a[f+172>>2]=a[d>>2],g=a[g>>2]);d=a[d>>2];0==(d|0)?a[b+216>>2]=g:a[d+168>>2]=g}function Lf(c){var d,i=fa(304);d=i>>2;a[d+3]=JO|0;a[d+5]=c;m[i+162|0]=1;var g=i+112|0;f[0]=1;a[g>>2]=b[0];a[g+4>>2]=b[1];g=i+104|0;f[0]=1;a[g>>2]=b[0];a[g+4>>2]=b[1];g=i+96|0;f[0]=1;a[g>>2]=b[0];a[g+4>>2]=b[1];a[d+55]=1;a[d+45]=0;a[d+44]=fa(20);a[d+47]=0;a[d+46]=fa(20);Mw(c,i);c=c+240|0;a[c>>2]=a[c>>2]+1|0;return i}function gm(b,c){var d,g;g=(c+16|0)>>2;d=a[g]>>2;var f=a[d+48];d=0==(f|0)?Cb((a[d+49]<<2)+8|0):wb(f,(a[d+49]<<2)+8|0);a[a[g]+192>>2]=d;d=a[g]+196|0;f=a[d>>2];a[d>>2]=f+1|0;a[a[a[g]+192>>2]+(f<<2)>>2]=c;g=a[g];a[a[g+192>>2]+(a[g+196>>2]<<2)>>2]=0;g=(c+12|0)>>2;d=a[g]>>2;f=a[d+50];d=0==(f|0)?Cb((a[d+51]<<2)+8|0):wb(f,(a[d+51]<<2)+8|0);a[a[g]+200>>2]=d;d=a[g]+204|0;f=a[d>>2];a[d>>2]=f+1|0;a[a[a[g]+200>>2]+(f<<2)>>2]=c;g=a[g];a[a[g+200>>2]+(a[g+204>>2]<<2)>>2]=0;m[b+248|0]=1;m[a[b+32>>2]+248|0]=1}function yx(b){0==(b|0)&&sa(qg|0,272,KO|0,oq|0);var c=a[b+128>>2];0!=(c|0)&&(c=c+180|0,(a[c>>2]|0)==(b|0)&&(a[c>>2]=0));Fj(a[b+16>>2]+192|0,b);Fj(a[b+12>>2]+200|0,b)}function og(b,c){var d=h,g=b+180|0,f=a[g>>2];if((f|0)==(c|0)){la(0,LO|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j))}else{0!=(f|0)&&sa(qg|0,343,MO|0,Kw|0);a[g>>2]=c;g=c+178|0;f=D[b+178>>1];(D[g>>1]&65535)<(f&65535)&&(D[g>>1]=f);for(var g=b+176|0,f=b+162|0,e=b+164|0,l=c;;){var k=l+176|0;D[k>>1]=D[k>>1]+D[g>>1]&65535;k=l+162|0;D[k>>1]=D[k>>1]+D[f>>1]&65535;k=l+164|0;ib[k>>2]+=ib[e>>2];l=a[l+180>>2];if(0==(l|0)){break}}}h=d}function NO(b){var c;c=(b+180|0)>>2;var d=a[c];if(0!=(d|0)){for(var g=d;;){DO(g,b);d=a[g+180>>2];for(0==D[g+176>>1]<<16>>16&&OO(g);1==m[g+124|0]<<24>>24;){g=a[g+12>>2];if(1!=m[g+162|0]<<24>>24){break}if(1!=(a[g+188>>2]|0)){break}g=a[a[g+184>>2]>>2];DO(g,b)}if(0==(d|0)){break}else{g=d}}}a[c]=0}function PO(b,c,d,g){var f=(b|0)>(c|0);a[d>>2]=f?c:b;a[g>>2]=f?b:c}function OO(b){0==(b|0)&&sa(qg|0,128,QO|0,oq|0);var c=b+16|0,d=a[c>>2],g=d+184|0,f=a[a[g>>2]>>2],e=0==(f|0);a:do{if(!e){for(var h=0,k=g,j=f,m=d;;){if((j|0)==(b|0)&&(Fj(k,b),m=a[c>>2]),h=h+1|0,k=m+184|0,j=a[a[k>>2]+(h<<2)>>2],0==(j|0)){break a}}}}while(0);c=b+12|0;f=a[c>>2];g=f+176|0;e=a[a[g>>2]>>2];if(0!=(e|0)){for(d=0;!((e|0)==(b|0)&&(Fj(g,b),f=a[c>>2]),d=d+1|0,g=f+176|0,e=a[a[g>>2]+(d<<2)>>2],0==(e|0));){}}}function RO(c){var d,i,g,e,h=c+216|0,l=a[h>>2],k=0==(l|0);a:do{if(!k){for(var j=l;;){var z=j+192|0,p=a[z>>2],s=0==(p|0);b:do{if(!s){var v=a[p>>2];if(0!=(v|0)){i=0;for(var t=p;;){g=a[v+16>>2]>>2;d=a[a[v+12>>2]+240>>2];var u=a[g+60],w=(u|0)<(d|0),A=w?d:u;g=a[a[g+5]+220>>2]+44*a[g+59]+4|0;for(d=w?u:d;;){var B=d+1|0;if((B|0)>=(A|0)){break}d=a[a[g>>2]+(B<<2)>>2];u=m[d+162|0];if(0==u<<24>>24){break}else{if(1!=u<<24>>24){d=B;continue}}if(0==(a[d+120>>2]|0)){d=B}else{break}}0!=((B|0)==(A|0)&1|0)&&(m[v+125|0]=1,t=a[z>>2]);i=i+1|0;v=a[t+(i<<2)>>2];if(0==(v|0)){break b}}}}}while(0);j=a[j+168>>2];if(0==(j|0)){break a}}}}while(0);l=a[c+220>>2];0==(a[l+40>>2]|0)?0<(a[c+208>>2]|0)&&(e=29):e=29;a:do{if(29==e){k=a[l+4>>2];B=0;b:for(;;){j=a[k+(B<<2)>>2];if(0==(j|0)){break a}j=a[j+200>>2];for(z=0;;){p=a[j+(z<<2)>>2];if(0==(p|0)){break}if(0!=(a[p+108>>2]|0)&&0==m[p+125|0]<<24>>24){break b}z=z+1|0}B=B+1|0}SO(c)}}while(0);TO(c);l=a[h>>2];if(0==(l|0)){return 0}e=c+152|0;for(h=0;;){k=l+192|0;B=a[k>>2];j=0==(B|0);a:do{if(j){var C=h}else{z=a[B>>2];p=0==(z|0);b:do{if(p){var y=h}else{s=h;i=0;for(v=z;;){if(t=a[v+108>>2],0!=(t|0)&&(0==m[v+125|0]<<24>>24?(zx(v),s=1):(t=0==(a[e>>2]&1|0)?t+24|0:t+32|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),v=v+144|0,f[0]=t,a[v>>2]=b[0],a[v+4>>2]=b[1])),i=i+1|0,v=a[a[k>>2]+(i<<2)>>2],0==(v|0)){y=s;break b}}}}while(0);z=l+212|0;if(0<(a[z>>2]|0)){p=l+208|0;s=y;for(v=0;;){t=a[a[p>>2]+(v<<2)>>2];i=t>>2;A=a[i+4];g=a[i+3];if((a[A+236>>2]|0)!=(a[g+236>>2]|0)|(A|0)==(g|0)){d=s}else{for(d=t;!(u=a[d+180>>2],0==(u|0));){d=u}u=m[d+125|0];m[t+125|0]=u;w=a[i+27];0==(w|0)?d=s:0==u<<24>>24?(zx(t),d=1):(u=0==(a[e>>2]&1|0)?w+24|0:w+32|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0]),d=(d+144|0)>>2,w=(b[0]=a[d],b[1]=a[d+1],f[0]),f[0]=u>w?u:w,a[d]=b[0],a[d+1]=b[1],d=s)}i=v+1|0;if((i|0)<(a[z>>2]|0)){s=d,v=i}else{C=d;break a}}}else{C=y}}}while(0);l=a[l+168>>2];if(0==(l|0)){break}else{h=C}}if(0==(C|0)){return 0}qq(c);return C}function SO(b){var c;c=(b+244|0)>>1;0!=D[c]<<16>>16&&sa(Ax|0,190,UO|0,VO|0);var d=b+246|0,g=(D[d>>1]<<16>>16)+3|0,b=(b+220|0)>>2,f=a[b],g=(0==(f|0)?Cb(44*g|0):wb(f,44*g|0))+44|0;a[b]=g;f=D[d>>1];d=f<<16>>16;f=-1>16;a:do{if(f){for(var e=d,h=g;;){for(var k=e-1|0,j=(h+44*k|0)>>2,h=(h+44*e|0)>>2,m=j+11;j>2)+(11*p|0)]=0;a[(a[b]>>2)+(11*p|0)]=0;s=fa(8);a[(a[b]+12>>2)+(11*p|0)]=s;a[(a[b]+4>>2)+(11*p|0)]=s;a[(a[b]+40>>2)+(11*p|0)]=0;a[(a[b]+20>>2)+(11*p|0)]=1;a[(a[b]+16>>2)+(11*p|0)]=1;a[(a[b]+28>>2)+(11*p|0)]=1;a[(a[b]+24>>2)+(11*p|0)]=1;D[c]=D[c]-1&65535}function zx(c){var d,i,g,e,h,l,k,j;j=(c+108|0)>>2;if(0!=(a[j]|0)){k=(c+16|0)>>2;l=a[k]>>2;var z=a[l+5];i=a[l+59];h=(z+220|0)>>2;e=(c+12|0)>>2;var p=WO(a[h],a[a[e]+240>>2],i,a[l+60]);l=i-1|0;g=a[h]>>2;d=a[a[g+(11*l|0)+1]>>2];0==(d|0)?(d=a[a[g+(11*i|0)+1]>>2]+40|0,g=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+(a[g+(11*i|0)+5]|0)+(a[z+260>>2]|0)):(i=d+40|0,g=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0])-(a[g+(11*l|0)+4]|0));g&=-1;p=XO(z,l,p);d=a[j];i=d+24|0;i=(b[0]=a[i>>2],b[1]=a[i+4>>2],f[0]);d=d+32|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);var s=0==(a[z+152>>2]&1|0),z=s?d:i,v=p+96|0;f[0]=z;a[v>>2]=b[0];a[v+4>>2]=b[1];z=.5*z&-1;s=.5*(s?i:d);i=(p+112|0)>>2;f[0]=s;a[i]=b[0];a[i+1]=b[1];d=(p+104|0)>>2;f[0]=s;a[d]=b[0];a[d+1]=b[1];a[p+120>>2]=a[j];j=p+40|0;f[0]=z+g|0;a[j>>2]=b[0];a[j+4>>2]=b[1];j=de(p,a[k],c);g=-(b[0]=a[d],b[1]=a[d+1],f[0]);d=j+28|0;f[0]=g;a[d>>2]=b[0];a[d+4>>2]=b[1];k=a[k]+112|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);g=j+68|0;f[0]=k;a[g>>2]=b[0];a[g+4>>2]=b[1];m[j+124|0]=4;k=de(p,a[e],c);j=(b[0]=a[i],b[1]=a[i+1],f[0]);g=k+28|0;f[0]=j;a[g>>2]=b[0];a[g+4>>2]=b[1];e=a[e]+104|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);j=k+68|0;f[0]=e;a[j>>2]=b[0];a[j+4>>2]=b[1];m[k+124|0]=4;e=a[h];k=e+44*l+16|0;(a[k>>2]|0)<(z|0)?(a[k>>2]=z,h=a[h]):h=e;h=h+44*l+20|0;(a[h>>2]|0)<(z|0)&&(a[h>>2]=z);a[p+128>>2]=c|0}}function WO(b,c,d,g){var f=h;h+=24;var e=f+16,j=f+20,k=d-1|0,d=a[(b+4>>2)+(11*k|0)],n=a[(b>>2)+(11*k|0)],b=f+8|0;a[b>>2]=-1;k=f|0;a[k>>2]=-1;var m=f+12|0;a[m>>2]=n;var p=f+4|0;a[p>>2]=n;PO(g,c,e,j);for(var c=a[e>>2],j=a[j>>2],e=n,g=0,s=-1,v=n;;){n=e-1|0;if((g|0)>(n|0)){var t=s,u=v;break}Bx(a[d+(g<<2)>>2],k,c,j);(g|0)!=(n|0)&&Bx(a[d+(n<<2)>>2],k,c,j);v=a[p>>2];s=a[k>>2];if(2>(v-s|0)){t=s;u=v;break}else{e=n,g=g+1|0}}(t|0)>(u|0)?(t=a[m>>2]+a[b>>2]|0,t=(t+1|0)/2&-1):(t=(u+t|0)+1|0,t=(t|0)/2&-1);h=f;return t}function XO(b,c,d){var g,f;f=(b+220|0)>>2;var e=a[f];g=e+44*c|0;e=a[(e+4>>2)+(11*c|0)];e=0==(e|0)?Cb((a[g>>2]<<2)+8|0):wb(e,(a[g>>2]<<2)+8|0);g=e>>2;a[(a[f]+4>>2)+(11*c|0)]=e;var h=a[(a[f]>>2)+(11*c|0)],k=(h|0)>(d|0);a:do{if(k){for(var j=h;;){var m=j-1|0,p=a[(m<<2>>2)+g];a[(j<<2>>2)+g]=p;j=p+240|0;a[j>>2]=a[j>>2]+1|0;if((m|0)>(d|0)){j=m}else{break a}}}}while(0);h=Lf(b);b=(d<<2)+e|0;a[b>>2]=h;a[h+240>>2]=d;a[h+236>>2]=c;c=a[f]+44*c|0;d=a[c>>2]+1|0;a[c>>2]=d;a[(d<<2>>2)+g]=0;return a[b>>2]}function Bx(b,c,d,g){var c=c>>2,f=b>>2,e=h;h+=8;var j,k=e+4;if(1==m[b+162|0]<<24>>24){if(b=a[f+60],0!=(a[f+45]|0)){j=a[f+46];var n=a[j>>2];if(0!=(n|0)){for(var z=f=k=0;;){var p=a[a[n+12>>2]+240>>2];if((p|0)>(d|0)){var p=(p|0)<(g|0)?z:1,s=f}else{p=z,s=1}k=k+1|0;n=a[j+(k<<2)>>2];if(0==(n|0)){break}else{f=s,z=p}}0!=s<<24>>24&0==p<<24>>24&&(a[c]=b+1|0);0!=p<<24>>24&0==s<<24>>24&&(a[c+1]=b-1|0)}}else{if(2!=(a[f+47]|0)&&sa(Ax|0,63,YO|0,ZO|0),p=a[f+46],PO(a[a[a[p>>2]+12>>2]+240>>2],a[a[a[p+4>>2]+12>>2]+240>>2],e,k),p=a[k>>2],(p|0)>(d|0)){if(s=a[e>>2],(s|0)<(g|0)){if(k=(s|0)<(d|0),f=(p|0)>(g|0),!(k&f)){k?j=114:(s|0)==(d|0)&(p|0)<(g|0)&&(j=114);114==j&&(a[c+2]=b);if(!f&&!((p|0)==(g|0)&(s|0)>(d|0))){h=e;return}a[c+3]=b}}else{a[c+1]=b,a[c+3]=b}}else{a[c]=b,a[c+2]=b}}}h=e}function Cx(b){var c=b+276|0,d=a[c>>2];if(0!=(d|0)){var g=D[b+244>>1],f=b+246|0;if(g<<16>>16<=D[f>>1]<<16>>16){b=b+220|0;for(g=g<<16>>16;;){a[d+(g<<2)>>2]=a[a[(a[b>>2]+4>>2)+(11*g|0)]>>2];d=g+1|0;if((d|0)>(D[f>>1]<<16>>16|0)){break}g=d;d=a[c>>2]}}}}function lx(c,d){0!=m[ld]<<24>>24&&mk(ih);m[rq]=0;a[sd>>2]=c;var i=(rc(a[a[c+32>>2]+28>>2])<<2)+4|0,g=fa(i);a[om>>2]=g;i=fa(i);a[pm>>2]=i;a[qm>>2]=8;a[rm>>2]=24;f[0]=.995;a[sm>>2]=b[0];a[sm+4>>2]=b[1];i=V(c|0,$O|0);0!=(i|0)&&(i=wg(i,xc),0>2]|0)*i,a[qm>>2]=1>g?1:g&-1,i*=a[rm>>2]|0,a[rm>>2]=1>i?1:i&-1));Lw(c);jq(c,1);Dx(c);sq(c);a[Ex>>2]=D[c+244>>1]<<16>>16;a[Fx>>2]=D[c+246>>1]<<16>>16;i=c+228|0;g=0<(a[i>>2]|0);a:do{if(g){for(var e=0,h=0;;){var j=c,k=e;a[j+216>>2]=a[a[j+224>>2]+(k<<2)>>2];if(0<(k|0)){var n=D[j+244>>1],k=j+246|0;if(n<<16>>16<=D[k>>1]<<16>>16){j=j+220|0;for(n=n<<16>>16;;){var z=a[j>>2],p=z+44*n+4|0;a[p>>2]=(a[(z>>2)+(11*n|0)]<<2)+a[p>>2]|0;a[(a[j>>2]>>2)+(11*n|0)]=0;n=n+1|0;if((n|0)>(D[k>>1]<<16>>16|0)){break}}}}h=tq(c,0,d)+h|0;e=e+1|0;if((e|0)>=(a[i>>2]|0)){var s=h;break a}}}else{s=0}}while(0);aP(c);i=c+208|0;if(1>(a[i>>2]|0)){var v=s}else{g=c+212|0;for(e=1;;){var v=bP(a[a[g>>2]+(e<<2)>>2],d)+s|0,s=e+1|0,t=a[i>>2];if((s|0)>(t|0)){break}else{e=s,s=v}}if(0<(t|0)){t=V(c|0,cP|0);if(0!=(t|0)&&0==re(t)<<24>>24){Gx(c,v);return}Tw(c);m[rq]=1;v=tq(c,2,d)}}Gx(c,v)}function tq(c,d,i){var g=h;if(1<(d|0)){var e=tm(),Xa=c+216|0;Hx(a[Xa>>2]);var l=e}else{l=2147483647,Xa=c+216|0}for(var e=c+32|0,k=l;;){var n;if(3<=(d|0)){var z=k,p=l,s=n;break}n=a[rm>>2];if(2>(d|0)){n=4<(n|0)?4:n;(a[e>>2]|0)==(c|0)&&Ix(c,d);0==(d|0)&&Jx(c);Kx(c);var v=tm();(v|0)>(k|0)?l=k:(Hx(a[Xa>>2]),l=v)}else{(l|0)>(k|0)&&dP(c),v=l=k}for(var k=l,t=v,u=0,l=0;(l|0)<(n|0);){0!=m[ld]<<24>>24&&Va(a[oa>>2],eP|0,(j=h,h+=20,a[j>>2]=d,a[j+4>>2]=l,a[j+8>>2]=u,a[j+12>>2]=t,a[j+16>>2]=k,j));v=u+1|0;if((u|0)>=(a[qm>>2]|0)|0==(t|0)){break}t=c;u=2>(l%4|0)&1;if(0==(l&1|0)){var w=D[t+244>>1],A=1,B=t+246|0,w=(w<<16>>16)+(w<<16>>16<=D[a[sd>>2]+244>>1]<<16>>16&1)|0}else{w=D[t+246>>1],A=-1,B=t+244|0,w=((w<<16>>16>=D[a[sd>>2]+246>>1]<<16>>16)<<31>>31)+(w<<16>>16)|0}B=(D[B>>1]<<16>>16)+A|0;if((w|0)!=(B|0)){for(;!(fP(t,w,u,gP(t,w,w-A|0)&255),w=w+A|0,(w|0)==(B|0));){}}u^=1;uq(t,u);t=tm();(t|0)>(k|0)?u=k:(Hx(a[Xa>>2]),u=t,v=(t|0)<(b[0]=a[sm>>2],b[1]=a[sm+4>>2],f[0])*(k|0)?0:v);k=u;u=v;l=l+1|0}if(0==(t|0)){z=k;p=0;s=n;break}else{l=t,d=d+1|0}}(p|0)>(z|0)&&dP(c);0<(z|0)&&(uq(c,0),z=tm());if(0!=(i|0)&0<(s|0)){i=0}else{return h=g,z}for(;!(hP(c),i=i+1|0,(i|0)==(s|0));){}h=g;return z}function aP(b){var c,d=h,g;c=(b+228|0)>>2;if(2<=(a[c]|0)){for(var f=b+224|0,e=0,l=0;;){var k=a[a[f>>2]+(l<<2)>>2];0!=(e|0)&&(a[e+168>>2]=k);a[k+172>>2]=e;for(e=k;!(k=a[e+168>>2],0==(k|0));){e=k}l=l+1|0;if((l|0)>=(a[c]|0)){break}}a[c]=1;a[b+216>>2]=a[a[f>>2]>>2];D[b+244>>1]=a[Ex>>2]&65535;D[b+246>>1]=a[Fx>>2]&65535}l=D[b+244>>1];f=b+246|0;if(l<<16>>16<=D[f>>1]<<16>>16){c=(b+220|0)>>2;b=b+12|0;for(l=l<<16>>16;;){e=a[c];a[(e>>2)+(11*l|0)]=a[(e+8>>2)+(11*l|0)];e=a[c];a[(e+4>>2)+(11*l|0)]=a[(e+12>>2)+(11*l|0)];for(e=0;;){var n=a[c],z=a[(n>>2)+(11*l|0)];if((e|0)>=(z|0)){break}k=a[a[(n+4>>2)+(11*l|0)]+(e<<2)>>2];if(0==(k|0)){g=206;break}a[k+240>>2]=e;e=e+1|0}206==g&&(g=0,0==m[ld]<<24>>24?k=n:(Va(a[oa>>2],iP|0,(j=h,h+=16,a[j>>2]=a[b>>2],a[j+4>>2]=l,a[j+8>>2]=e,a[j+12>>2]=z,j)),k=a[c]),a[(k>>2)+(11*l|0)]=e);l=l+1|0;if((l|0)>(D[f>>1]<<16>>16|0)){break}}}h=d}function bP(b,c){Lw(b);a[b+228>>2]=1;a[a[b+224>>2]>>2]=a[b+216>>2];Dx(b);Ix(b,0);vN(b);nN(b);wN(b);sq(b);Jx(b);Kx(b);var d=tq(b,2,c),g=b+208|0;if(1>(a[g>>2]|0)){var f=d;Cx(b);return f}for(var e=b+212|0,h=1;;){if(d=bP(a[a[e>>2]+(h<<2)>>2],c)+d|0,h=h+1|0,(h|0)>(a[g>>2]|0)){f=d;break}}Cx(b);return f}function Gx(c,d){var i=h,g=a[pm>>2];0!=(g|0)&&(G(g),a[pm>>2]=0);g=a[om>>2];0!=(g|0)&&(G(g),a[om>>2]=0);var g=c+208|0,e=1>(a[g>>2]|0);a:do{if(!e){for(var Xa=c+212|0,l=1;;){if(qq(a[a[Xa>>2]+(l<<2)>>2]),l=l+1|0,(l|0)>(a[g>>2]|0)){break a}}}}while(0);g=D[c+244>>1];e=c+246|0;Xa=g<<16>>16>D[e>>1]<<16>>16;a:do{if(!Xa){for(var l=c+220|0,k=g<<16>>16;;){var n=a[l>>2],z=0<(a[(n>>2)+(11*k|0)]|0);b:do{if(z){for(var p=0,s=n;;){s=a[a[(s+4>>2)+(11*k|0)]+(p<<2)>>2];a[s+240>>2]=p;var s=s+192|0,v=a[s>>2],t=0==(v|0);c:do{if(!t){var u=a[v>>2];if(0!=(u|0)){for(var w=0,A=u,u=v;;){if(4==m[A+124|0]<<24>>24&&(yx(A),G(A|0),w=w-1|0,u=a[s>>2]),w=w+1|0,A=a[u+(w<<2)>>2],0==(A|0)){break c}}}}}while(0);p=p+1|0;s=a[l>>2];if((p|0)>=(a[(s>>2)+(11*k|0)]|0)){var B=s;break b}}}else{B=n}}while(0);n=a[(B+40>>2)+(11*k|0)];0!=(n|0)&&(G(a[n+8>>2]),G(n));k=k+1|0;if((k|0)>(D[e>>1]<<16>>16|0)){break a}}}}while(0);0!=m[ld]<<24>>24&&(B=a[oa>>2],g=a[c+12>>2],e=Jn(),Va(B,jP|0,(j=h,h+=16,a[j>>2]=g,a[j+4>>2]=d,f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)));h=i}function TO(b){Cx(b);var c=b+208|0;if(1<=(a[c>>2]|0)){for(var b=b+212|0,d=1;!(TO(a[a[b>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>(a[c>>2]|0));){}}}function qq(b){var c;c=b+208|0;var d=1>(a[c>>2]|0);a:do{if(!d){for(var g=b+212|0,f=1;;){if(qq(a[a[g>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[c>>2]|0)){break a}}}}while(0);c=(b+276|0)>>2;var e=a[c];if(0!=(e|0)){var h=D[b+244>>1],d=b+246|0;if(h<<16>>16<=D[d>>1]<<16>>16){g=b+32|0;f=b+220|0;for(h=h<<16>>16;;){var k=a[e+(h<<2)>>2],e=kP(b,k,-1),k=kP(b,k,1);a[a[c]+(h<<2)>>2]=e;e=e+240|0;a[(a[f>>2]+4>>2)+(11*h|0)]=(a[e>>2]<<2)+a[(a[a[g>>2]+220>>2]+4>>2)+(11*h|0)]|0;a[(a[f>>2]>>2)+(11*h|0)]=a[k+240>>2]+1-a[e>>2]|0;h=h+1|0;if((h|0)>(D[d>>1]<<16>>16|0)){break}e=a[c]}}}}function kP(a,b,c){var d=lP(b,c);if(0==(d|0)){var f;return b}for(;;){if(b=0==(Lx(a,d)|0)?0==(Mx(a,d)|0)?b:d:d,d=lP(d,c),0==(d|0)){f=b;break}}return f}function Nx(b,c){var d,g,f=a[c+12>>2],e=a[f+192>>2],h=0==(e|0);g=(c+16|0)>>2;a:do{if(!h){for(h=0;;){d=a[e+(h<<2)>>2];if(0==(d|0)){break a}if((a[d+12>>2]|0)==(a[g]|0)){break}else{h=h+1|0}}og(c,d);f=c+180|0;0==(a[f>>2]|0)&&(a[f>>2]=d);4==m[d+124|0]<<24>>24&&(d=d+128|0,0==(a[d>>2]|0)&&(a[d>>2]=c));d=a[g]>>2;f=a[d+52];d=0==(f|0)?Cb((a[d+53]<<2)+8|0):wb(f,(a[d+53]<<2)+8|0);a[a[g]+208>>2]=d;d=a[g]+212|0;f=a[d>>2];a[d>>2]=f+1|0;a[a[a[g]+208>>2]+(f<<2)>>2]=c;g=a[g];a[a[g+208>>2]+(a[g+212>>2]<<2)>>2]=0;return}}while(0);g=pq(f,a[g],c);m[g+124|0]=4==m[c+124|0]<<24>>24?4:3;a[g+108>>2]=a[c+108>>2];gm(b,g)}function um(b,c){var d=a[b+236>>2],g=b+240|0,f=a[g>>2],e=c+240|0,h=a[e>>2];a[g>>2]=h;g=a[sd>>2]+220|0;a[a[(a[g>>2]+4>>2)+(11*d|0)]+(h<<2)>>2]=b;a[e>>2]=f;a[a[(a[g>>2]+4>>2)+(11*d|0)]+(f<<2)>>2]=c}function kN(a){return 1==m[a+162|0]<<24>>24?2:a=2>m[a+166|0]<<24>>24&1}function Dx(b){var c,d;d=(b+246|0)>>1;var g=fa((D[d]<<16>>16<<2)+8|0);c=ra(b);var f=0==(c|0);a:do{if(!f){for(var e=c;;){var h=(a[e+236>>2]<<2)+g|0;a[h>>2]=a[h>>2]+1|0;var h=Ib(b,e),k=0==(h|0);b:do{if(!k){for(var j=h;;){var m=a[a[j+16>>2]+236>>2],p=a[a[j+12>>2]+236>>2],s=(m|0)>(p|0),v=s?m:p,m=(s?p:m)+1|0,p=(m|0)<(v|0);c:do{if(p){for(s=m;;){var t=(s<<2)+g|0;a[t>>2]=a[t>>2]+1|0;s=s+1|0;if((s|0)>=(v|0)){break c}}}}while(0);j=yb(b,j);if(0==(j|0)){break b}}}}while(0);e=ba(b,e);if(0==(e|0)){break a}}}}while(0);f=fa(44*(D[d]<<16>>16)+88|0);c=(b+220|0)>>2;a[c]=f;b=D[b+244>>1];if(b<<16>>16<=D[d]<<16>>16){for(b=b<<16>>16;;){e=(b<<2)+g|0;h=a[e>>2];a[(f>>2)+(11*b|0)]=h;a[(a[c]+8>>2)+(11*b|0)]=h;f=fa((a[e>>2]<<2)+4|0);a[(a[c]+4>>2)+(11*b|0)]=f;a[(a[c]+12>>2)+(11*b|0)]=f;b=b+1|0;if((b|0)>(D[d]<<16>>16|0)){break}f=a[c]}}G(g)}function Ix(b,c){var d,g=h,f=ZE(a[b+240>>2]),e=b+216|0;d=a[e>>2];var l=0==(d|0);a:do{if(!l){for(var k=d;;){if(m[k+163|0]=0,k=a[k+168>>2],0==(k|0)){break a}}}}while(0);l=b+244|0;k=D[l>>1];d=(b+246|0)>>1;var n=k<<16>>16>D[d]<<16>>16;a:do{if(!n){for(var z=b+220|0,p=k<<16>>16;;){if(a[(a[z>>2]>>2)+(11*p|0)]=0,p=p+1|0,(p|0)>(D[d]<<16>>16|0)){break a}}}}while(0);e=a[e>>2];k=0==(e|0);a:do{if(!k){for(var n=0==(c|0),z=b,p=f,s=e;;){var v=0==(a[a[(n?s+176|0:s+184|0)>>2]>>2]|0);b:do{if(v){var t=s+163|0;if(0==m[t]<<24>>24&&(m[t]=1,Rk(f,s),t=Sk(f),0!=(t|0))){for(;;){if(7==m[t+165|0]<<24>>24?AN(z,t,c,p):(Rw(b,t),Sw(f,t,c)),t=Sk(f),0==(t|0)){break b}}}}}while(0);s=a[s+168>>2];if(0==(s|0)){break a}}}}while(0);0!=(Sk(f)|0)&&la(1,mP|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));l=D[l>>1];e=l<<16>>16>D[d]<<16>>16;a:do{if(!e){k=b+152|0;n=b+220|0;z=a[sd>>2];for(p=l<<16>>16;;){m[a[z+220>>2]+44*p+33|0]=0;s=0==(a[k>>2]&1|0);b:do{if(!s&&(v=a[n>>2],t=a[(v>>2)+(11*p|0)],0<(t|0))){for(var v=a[(v+4>>2)+(11*p|0)],t=t-1|0,u=(t|0)/2&-1,w=0;;){if(um(a[v+(w<<2)>>2],a[v+(t-w<<2)>>2]),w=w+1|0,(w|0)>(u|0)){break b}}}}while(0);p=p+1|0;if((p|0)>(D[d]<<16>>16|0)){break a}}}}while(0);(a[b+32>>2]|0)==(b|0)&&0<(tm()|0)&&uq(b,0);G(a[f>>2]);G(f);h=g}function Sw(b,c,d){if(0==(d|0)){var d=c+188|0,g=a[d>>2];if(0<(g|0)){for(var c=c+184|0,f=0;;){var e=a[a[c>>2]+(f<<2)>>2]+12|0,h=a[e>>2]+163|0;0==m[h]<<24>>24&&(m[h]=1,Rk(b,a[e>>2]),g=a[d>>2]);f=f+1|0;if((f|0)>=(g|0)){break}}}}else{if(d=c+180|0,g=a[d>>2],0<(g|0)){c=c+176|0;for(f=0;!(e=a[a[c>>2]+(f<<2)>>2]+16|0,h=a[e>>2]+163|0,0==m[h]<<24>>24&&(m[h]=1,Rk(b,a[e>>2]),g=a[d>>2]),f=f+1|0,(f|0)>=(g|0));){}}}}function tm(){var b,c=a[sd>>2],d=D[c+244>>1],g=c+246|0,f=D[g>>1];if(d<<16>>16>=f<<16>>16){var e;return 0}b=(c+220|0)>>2;for(var h=0,d=d<<16>>16;;){var k=a[b];0==m[k+44*d+33|0]<<24>>24?(f=nP(c,d),a[(a[b]+36>>2)+(11*d|0)]=f,m[a[b]+44*d+33|0]=1,k=f,f=D[g>>1]):k=a[(k+36>>2)+(11*d|0)];h=k+h|0;d=d+1|0;if((d|0)>=(f<<16>>16|0)){e=h;break}}return e}function uq(b,c){var d,g=b+244|0,f=D[g>>1];d=(b+246|0)>>1;var e=D[d],h=f<<16>>16>e<<16>>16;a:do{if(h){var k=e,j=b+220|0}else{for(var z=b+220|0,p=f<<16>>16;;){m[a[z>>2]+44*p+32|0]=1;var p=p+1|0,s=D[d];if((p|0)>(s<<16>>16|0)){k=s;j=z;break a}}}}while(0);for(f=k;;){e=D[g>>1];if(e<<16>>16>f<<16>>16){break}e=e<<16>>16;for(h=0;;){if(0==m[a[j>>2]+44*e+32|0]<<24>>24){var v=h,t=f}else{v=oP(b,e,c)+h|0,t=D[d]}f=e+1|0;if((f|0)>(t<<16>>16|0)){break}else{e=f,h=v,f=t}}if(0<(v|0)){f=t}else{break}}}function nP(b,c){var d,g;d=(b+220|0)>>2;var f=a[d],e=a[(f+4>>2)+(11*c|0)],h=c+1|0,k=a[(a[a[sd>>2]+220>>2]>>2)+(11*h|0)];(a[Ox>>2]|0)>(k|0)||(f=k+1|0,a[Ox>>2]=f,k=a[Gj>>2],f=0==(k|0)?Cb(f<<2):wb(k,f<<2),a[Gj>>2]=f,f=a[d]);k=0<(a[(f>>2)+(11*h|0)]|0);a:do{if(k){for(var j=a[Gj>>2],z=0;;){a[j+(z<<2)>>2]=0;var z=z+1|0,p=a[d];if((z|0)>=(a[(p>>2)+(11*h|0)]|0)){var s=p;break a}}}else{s=f}}while(0);f=0<(a[(s>>2)+(11*c|0)]|0);a:do{if(f){for(var v=k=0,j=0,z=s;;){var t=0<(k|0),u=(j<<2)+e|0,w=a[a[u>>2]+184>>2],p=a[w>>2];b:do{if(t){if(0==(p|0)){var A=k,B=z,C=v}else{for(var y=a[Gj>>2],F=0,E=v,G=p;;){var I=a[a[G+12>>2]+240>>2]+1|0,H=(I|0)>(k|0);c:do{if(H){var O=E}else{for(var J=D[G+162>>1]<<16>>16,K=E,L=I;;){if(K=J*a[y+(L<<2)>>2]+K|0,L=L+1|0,(L|0)>(k|0)){O=K;break c}}}}while(0);F=F+1|0;G=a[w+(F<<2)>>2];if(0==(G|0)){var N=O;g=390;break b}else{E=O}}}}else{N=v,g=390}}while(0);do{if(390==g){g=0;if(0==(p|0)){A=k,B=z}else{A=a[Gj>>2];B=1;C=k;for(v=p;;){var t=a[a[v+12>>2]+240>>2],Q=(t|0)>(C|0)?t:C,C=(t<<2)+A|0;a[C>>2]=(D[v+162>>1]<<16>>16)+a[C>>2]|0;v=a[a[a[u>>2]+184>>2]+(B<<2)>>2];if(0==(v|0)){break}B=B+1|0;C=Q}A=Q;B=a[d]}C=N}}while(0);j=j+1|0;u=a[(B>>2)+(11*c|0)];if((j|0)<(u|0)){k=A,v=C,z=B}else{break}}if(0<(u|0)){k=a[(B+4>>2)+(11*c|0)];j=C;for(z=0;;){if(p=a[k+(z<<2)>>2],j=0==m[p+161|0]<<24>>24?j:Px(a[p+184>>2],1)+j|0,z=z+1|0,(z|0)>=(u|0)){S=j;R=B;break a}}}else{var S=C,R=B}}else{S=0,R=s}}while(0);d=a[(R>>2)+(11*h|0)];if(0>=(d|0)){var U;return S}h=a[(R+4>>2)+(11*h|0)];for(R=0;;){if(g=a[h+(R<<2)>>2],S=0==m[g+161|0]<<24>>24?S:Px(a[g+176>>2],-1)+S|0,R=R+1|0,(R|0)>=(d|0)){U=S;break}}return U}function Rw(b,c){var d,g,f=h,e=a[c+236>>2];g=(b+220|0)>>2;d=a[g]>>2;var l=a[d+(11*e|0)];if(1>(a[d+(11*e|0)+2]|0)){var k=a[c+12>>2];la(1,pP|0,(j=h,h+=16,a[j>>2]=a[b+12>>2],a[j+4>>2]=k,a[j+8>>2]=e,a[j+12>>2]=l,j));S()}a[a[d+(11*e|0)+1]+(l<<2)>>2]=c;d=c+240|0;a[d>>2]=l;l=a[g]+44*e|0;a[l>>2]=a[l>>2]+1|0;l=a[g];(a[(l>>2)+(11*e|0)]|0)>(a[(l+8>>2)+(11*e|0)]|0)&&sa(rg|0,1028,qP|0,rP|0);l=a[d>>2];d=a[(a[a[sd>>2]+220>>2]+8>>2)+(11*e|0)];(l|0)>(d|0)&&S();(e|0)<(D[b+244>>1]<<16>>16|0)&&S();(e|0)>(D[b+246>>1]<<16>>16|0)&&S();g=a[g];((l<<2)+a[(g+4>>2)+(11*e|0)]|0)>>>0>((d<<2)+a[(g+12>>2)+(11*e|0)]|0)>>>0?S():h=f}function Px(c,d){var i,g=0<(d|0),e=a[c>>2];if(0==(e|0)){var h;return 0}var j=0,k=0;a:for(;;){var k=k+1|0,n=a[c+(k<<2)>>2],m=0==(n|0);b:do{if(g){if(m){h=j;i=436;break a}for(var p=a[a[e+12>>2]+240>>2],s=e+28|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=e+162|0,t=j,u=k,w=n;;){var A=w+28|0,t=0>(a[a[w+12>>2]+240>>2]-p|0)*((b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-s)?(D[w+162>>1]<<16>>16)*(D[v>>1]<<16>>16)+t|0:t,u=u+1|0,w=a[c+(u<<2)>>2];if(0==(w|0)){var B=t;break b}}}else{if(m){h=j;i=437;break a}p=a[a[e+16>>2]+240>>2];s=e+68|0;s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]);v=e+162|0;t=j;u=k;for(w=n;;){if(A=w+68|0,t=0>(a[a[w+16>>2]+240>>2]-p|0)*((b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-s)?(D[w+162>>1]<<16>>16)*(D[v>>1]<<16>>16)+t|0:t,u=u+1|0,w=a[c+(u<<2)>>2],0==(w|0)){B=t;break b}}}}while(0);if(m){h=B;i=438;break}else{j=B,e=n}}if(436==i||437==i||438==i){return h}}function vq(b,c,d){var g=a[c+216>>2],f=a[d+216>>2],e=(g|0)!=(f|0);if(m[rq]){if(e){return 1}}else{if(!(0==(g|0)|e^1|0==(f|0))){return 7==m[c+165|0]<<24>>24&&1==m[c+162|0]<<24>>24||7==m[d+165|0]<<24>>24&&1==m[d+162|0]<<24>>24?0:1}}g=a[(a[b+220>>2]+40>>2)+(11*a[c+236>>2]|0)];if(0==(g|0)){return 0}b=0==(a[b+152>>2]&1|0);return c=m[a[g+8>>2]+a[g+4>>2]*a[(b?c:d)+284>>2]+a[(b?d:c)+284>>2]|0]<<24>>24}function vm(c,d){var i,g=a[d>>2];if(0==(g|0)){var e;return 0}for(var h=a[c+176>>2],j=a[h>>2],k=0==(j|0),n=d,m=0;;){var p=D[g+162>>1]<<16>>16,s=a[a[g+16>>2]+240>>2];a:do{if(k){var v=m}else{for(var t=g+28|0,u=h,w=m,A=j;;){var B=a[a[A+16>>2]+240>>2];if(0<(B-s|0)){i=464}else{if((B|0)!=(s|0)){var C=w}else{A=A+28|0,(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])>(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])?i=464:C=w}}464==i&&(i=0,C=(D[a[u>>2]+162>>1]<<16>>16)*p+w|0);u=u+4|0;A=a[u>>2];if(0==(A|0)){v=C;break a}else{w=C}}}}while(0);n=n+4|0;g=a[n>>2];if(0==(g|0)){e=v;break}else{m=v}}return e}function wm(c,d){var i,g=a[d>>2];if(0==(g|0)){var e;return 0}for(var h=a[c+184>>2],j=a[h>>2],k=0==(j|0),n=d,m=0;;){var p=D[g+162>>1]<<16>>16,s=a[a[g+12>>2]+240>>2];a:do{if(k){var v=m}else{for(var t=g+68|0,u=h,w=m,A=j;;){var B=a[a[A+12>>2]+240>>2];if(0<(B-s|0)){i=477}else{if((B|0)!=(s|0)){var C=w}else{A=A+68|0,(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])>(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])?i=477:C=w}}477==i&&(i=0,C=(D[a[u>>2]+162>>1]<<16>>16)*p+w|0);u=u+4|0;A=a[u>>2];if(0==(A|0)){v=C;break a}else{w=C}}}}while(0);n=n+4|0;g=a[n>>2];if(0==(g|0)){e=v;break}else{m=v}}return e}function sP(b){for(b>>=2;;){var c=a[b+32];if(0==(c|0)){break}else{b=c,b>>=2}}return(a[a[b+4]+216>>2]|0)!=(a[a[b+3]+216>>2]|0)&1}function lP(b,c){var d=a[b+240>>2];return 0<=(c|0)?d=a[a[(a[a[sd>>2]+220>>2]+4>>2)+(11*a[b+236>>2]|0)]+(d+1<<2)>>2]:0>=(d|0)?0:d=a[a[(a[a[sd>>2]+220>>2]+4>>2)+(11*a[b+236>>2]|0)]+(d-1<<2)>>2]}function oP(b,c,d){var g,f,e,h;h=(b+220|0)>>2;m[a[h]+44*c+32|0]=0;var k=0<(c|0),j=c+1|0,d=0!=(d|0),z=b+244|0,p=c-1|0,s=b+246|0;e=g=0;a:for(;;){for(f=e;;){var v=a[h];if((f|0)>=(a[(v>>2)+(11*c|0)]-1|0)){break a}var t=a[(v+4>>2)+(11*c|0)],v=a[t+(f<<2)>>2];e=v>>2;var u=f+1|0,t=a[t+(u<<2)>>2];f=t>>2;(a[e+60]|0)<(a[f+60]|0)||sa(rg|0,523,tP|0,Qx|0);if(0!=(vq(b,v,t)|0)){f=u}else{if(k){var w=vm(v,a[f+44]),A=vm(t,a[e+44])}else{w=A=0}0<(a[(a[h]>>2)+(11*j|0)]|0)&&(w=wm(v,a[f+46])+w|0,A=wm(t,a[e+46])+A|0);if((A|0)<(w|0)){break}if(d&0<(w|0)&(A|0)==(w|0)){break}else{f=u}}}um(v,t);e=w-A+g|0;g=(a[sd>>2]+220|0)>>2;m[a[g]+44*c+33|0]=0;m[a[h]+44*c+32|0]=1;(D[z>>1]<<16>>16|0)<(c|0)&&(m[a[g]+44*p+33|0]=0,m[a[h]+44*p+32|0]=1);(D[s>>1]<<16>>16|0)>(c|0)&&(m[a[g]+44*j+33|0]=0,m[a[h]+44*j+32|0]=1);g=e;e=u}return g}function sq(b){var c=h,d=a[Yu>>2];if(0!=(d|0)|0!=(a[El>>2]|0)){if(d=jc(b|0,d,0),0==(d|0)){var g=a[b+36>>2],d=a[g+20>>2],g=Ib(d,g),f=0==(g|0);a:do{if(!f){for(var e=g;;){var l=Yd(a[e+12>>2]);0==(0==(td(a[l+12>>2],Rx|0,7)|0)&1|0)&&sq(l);e=yb(d,e);if(0==(e|0)){break a}}}}while(0);if(0!=(a[El>>2]|0)){d=h;g=ra(b);if(0!=(g|0)){for(;;){f=g;e=jc(g|0,a[El>>2],0);l=0==(e|0);a:do{if(!l){var k=m[e];do{if(105==k<<24>>24){if(0==(ka(e,Ep|0)|0)){wq(b,f,0);break a}}else{if(111==k<<24>>24){if(0==(ka(e,Sx|0)|0)){wq(b,f,1);break a}}else{if(0==k<<24>>24){break a}}}}while(0);k=a[g+12>>2];la(1,uP|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=k,j))}}while(0);g=ba(b,g);if(0==(g|0)){break}}}h=d}}else{g=m[d];if(111==g<<24>>24){if(0==(ka(d,Sx|0)|0)){vP(b,1);h=c;return}}else{if(105==g<<24>>24){if(0==(ka(d,Ep|0)|0)){vP(b,0);h=c;return}}else{if(0==g<<24>>24){h=c;return}}}la(1,wP|0,(j=h,h+=4,a[j>>2]=d,j))}}h=c}function vP(a,b){var c=ra(a);if(0!=(c|0)){for(;!(wq(a,c,b),c=ba(a,c),0==(c|0));){}}}function wq(b,c,d){var g,f=a[om>>2];g=f>>2;if(0==(a[c+216>>2]|0)){d=0!=(d|0);a:do{if(d){var e=c+184|0,h=a[e>>2],k=a[h>>2];if(0==(k|0)){return}for(var j=0,z=0;;){if(0==(sP(k)|0)&&(a[(j<<2>>2)+g]=k,j=j+1|0,h=a[e>>2]),z=z+1|0,k=a[h+(z<<2)>>2],0==(k|0)){var p=j;break a}}}else{e=c+176|0;h=a[e>>2];k=a[h>>2];if(0==(k|0)){return}for(z=j=0;;){if(0==(sP(k)|0)&&(a[(j<<2>>2)+g]=k,j=j+1|0,h=a[e>>2]),z=z+1|0,k=a[h+(z<<2)>>2],0==(k|0)){p=j;break a}}}}while(0);if(2<=(p|0)){a[(p<<2>>2)+g]=0;ch(f,p,120);for(c=1;;){p=a[(c<<2>>2)+g];if(0==(p|0)){break}f=a[(c-1<<2>>2)+g];d?(p=p+12|0,f=f+12|0):(p=p+16|0,f=f+16|0);p=a[p>>2];f=a[f>>2];if(0!=(oN(f,p)|0)){break}f=pq(f,p,0);m[f+124|0]=4;gm(b,f);c=c+1|0}}}}function Lx(a,b){return(0==m[b+162|0]<<24>>24?0!=(Ed(a,b|0)|0):0)&1}function Mx(b,c){do{if(1==m[c+162|0]<<24>>24&&1==(a[c+180>>2]|0)&&1==(a[c+188>>2]|0)){for(var d=a[c+184>>2];;){var g=a[d>>2];if(0==m[g+124|0]<<24>>24){break}else{d=g+128|0}}if(0!=(Ed(b,g|0)|0)){return d=1}}}while(0);return 0}function Hx(c){if(0!=(c|0)){for(;;){var d=c+32|0;f[0]=a[c+240>>2]|0;a[d>>2]=b[0];a[d+4>>2]=b[1];c=a[c+168>>2];if(0==(c|0)){break}}}}function Jx(b){var c,d=D[b+244>>1],g=b+246|0;if(d<<16>>16<=D[g>>1]<<16>>16){c=(b+220|0)>>2;for(var d=d<<16>>16,f=a[c];;){var e=0<(a[(f>>2)+(11*d|0)]|0);a:do{if(e){for(var h=0,k=0,j=f;;){var z=a[a[(j+4>>2)+(11*d|0)]+(k<<2)>>2];m[z+164|0]=0;m[z+163|0]=0;a[z+284>>2]=k;if(0<(a[z+196>>2]|0)&0==(h|0)){var p=a[(a[c]>>2)+(11*d|0)],z=p,s=cc,h=fa(12),s=h>>2;a[s]=z;a[s+1]=p;a[s+2]=fa(p*z|0);a[(a[c]+40>>2)+(11*d|0)]=h;z=1}else{z=h}k=k+1|0;p=a[c];s=a[(p>>2)+(11*d|0)];if((k|0)<(s|0)){h=z,j=p}else{break}}if(0!=(z|0)&0<(s|0)){k=0;for(h=p;;){if(j=a[a[(h+4>>2)+(11*d|0)]+(k<<2)>>2],0==m[j+163|0]<<24>>24&&(Tx(b,j),h=a[c]),k=k+1|0,(k|0)>=(a[(h>>2)+(11*d|0)]|0)){v=h;break a}}}else{var v=p}}else{v=f}}while(0);d=d+1|0;if((d|0)>(D[g>>1]<<16>>16|0)){break}else{f=v}}}}function Kx(b){var c;if(0!=m[b+248|0]<<24>>24){var d=D[b+244>>1],g=b+246|0;if(d<<16>>16<=D[g>>1]<<16>>16){c=(b+220|0)>>2;for(var f=b+152|0,e=0,d=d<<16>>16;;){var h=a[c];if(0<(a[(h>>2)+(11*d|0)]|0)){for(var j=0;;){m[a[a[(h+4>>2)+(11*d|0)]+(j<<2)>>2]+163|0]=0;var n=j+1|0,h=a[c];if((n|0)<(a[(h>>2)+(11*d|0)]|0)){j=n}else{break}}j=(n<<2)+4|0}else{j=4}var e=j=0==(e|0)?Cb(j):wb(e,j),h=a[c],z=0<(a[(h>>2)+(11*d|0)]|0);a:do{if(z){for(var p=0,s=0,v=h;;){var t=a[a[(v+4>>2)+(11*d|0)]+(s<<2)>>2],u=t+204|0,w=a[u>>2],v=0<(w|0);b:do{if(v){for(var A=t+200|0,B=0,C=0,y=w;;){var F=a[a[A>>2]+(C<<2)>>2];0>2]&&(B=(0!=(Lx(b,a[F+16>>2])|Mx(b,a[F+16>>2])|0)&1)+B|0,y=a[u>>2]);C=C+1|0;if((C|0)>=(y|0)){var E=B;break b}}}else{E=0}}while(0);u=t+196|0;w=a[u>>2];v=0<(w|0);b:do{if(v){A=t+192|0;C=B=0;for(y=w;;){if(F=a[a[A>>2]+(C<<2)>>2],0>2]&&(B=(0!=(Lx(b,a[F+12>>2])|Mx(b,a[F+12>>2])|0)&1)+B|0,y=a[u>>2]),C=C+1|0,(C|0)>=(y|0)){var I=B;break b}}}else{I=0}}while(0);do{if(0==(I|E|0)){a[e+(p<<2)>>2]=t,u=p+1|0}else{if(0!=m[t+163|0]<<24>>24|0!=(E|0)){u=p}else{u=(p<<2)+e|0;w=Ux(b,t,u,d);v=0==(a[f>>2]&1|0);b:do{if(v&&(A=p-1+w|0,(p|0)<(A|0))){A=(A<<2)+e|0;for(B=u;;){if(C=a[B>>2],a[B>>2]=a[A>>2],a[A>>2]=C,B=B+4|0,A=A-4|0,B>>>0>=A>>>0){break b}}}}while(0);u=w+p|0}}}while(0);s=s+1|0;t=a[c];w=a[(t>>2)+(11*d|0)];if((s|0)<(w|0)){p=u,v=t}else{break}}if(0!=(u|0)&0<(w|0)){p=a[sd>>2];s=0;for(v=t;;){var H=a[e+(s<<2)>>2];a[a[(v+4>>2)+(11*d|0)]+(s<<2)>>2]=H;a[H+240>>2]=(a[(a[c]+4>>2)+(11*d|0)]-a[(a[p+220>>2]+4>>2)+(11*d|0)]>>2)+s|0;var s=s+1|0,H=a[c],J=a[(H>>2)+(11*d|0)];if((s|0)<(J|0)){v=H}else{break}}if(0<(J|0)){p=0;for(s=H;;){v=a[a[(s+4>>2)+(11*d|0)]+(p<<2)>>2]+192|0;A=a[v>>2];if(0==(A|0)){B=s}else{if(C=a[A>>2],0==(C|0)){B=s}else{B=0;y=C;for(C=A;!((a[a[y+12>>2]+240>>2]|0)<(a[a[y+16>>2]+240>>2]|0)&&(yx(y),Nx(b,y),B=B-1|0,C=a[v>>2]),B=B+1|0,y=a[C+(B<<2)>>2],0==(y|0));){}B=a[c]}}p=p+1|0;if((p|0)<(a[(B>>2)+(11*d|0)]|0)){s=B}else{break a}}}}}}while(0);m[a[a[sd>>2]+220>>2]+44*d+33|0]=0;d=d+1|0;if((d|0)>(D[g>>1]<<16>>16|0)){break}}0!=(j|0)&&G(j)}}}function dP(c){var d=a[c+216>>2],e=0==(d|0);a:do{if(!e){for(var g=d;;){var h=g+32|0;a[g+240>>2]=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])&-1;g=a[g+168>>2];if(0==(g|0)){break a}}}}while(0);e=D[c+244>>1];d=c+246|0;if(e<<16>>16<=D[d>>1]<<16>>16){c=c+220|0;for(e=e<<16>>16;!(m[a[a[sd>>2]+220>>2]+44*e+33|0]=0,g=a[c>>2],ch(a[(g+4>>2)+(11*e|0)],a[(g>>2)+(11*e|0)],380),e=e+1|0,(e|0)>(D[d>>1]<<16>>16|0));){}}}function hP(b){var c,d,g,f=D[b+246>>1],e=b+244|0;if(f<<16>>16>=D[e>>1]<<16>>16){g=(b+220|0)>>2;for(var f=f<<16>>16,h=a[g];;){m[h+44*f+32|0]=0;var h=a[g],j=0<(a[(h>>2)+(11*f|0)]-1|0);a:do{if(j){for(var n=0<(f|0),z=f+1|0,p=0,s=h;;){var v=a[(s+4>>2)+(11*f|0)],s=a[v+(p<<2)>>2];d=s>>2;p=p+1|0;v=a[v+(p<<2)>>2];c=v>>2;(a[d+60]|0)<(a[c+60]|0)||sa(rg|0,474,xP|0,Qx|0);if(0==(vq(b,s,v)|0)){if(n){var t=vm(s,a[c+44]),u=vm(v,a[d+44])}else{u=t=0}0<(a[(a[g]>>2)+(11*z|0)]|0)?(c=wm(s,a[c+46])+t|0,d=wm(v,a[d+46])+u|0):(c=t,d=u);(d|0)>(c|0)||yP(b,f,s,v)}s=a[g];if((p|0)>=(a[(s>>2)+(11*f|0)]-1|0)){var w=s;break a}}}else{w=h}}while(0);f=f-1|0;if((f|0)<(D[e>>1]<<16>>16|0)){break}else{h=w}}}}function yP(b,c,d,g){var f,e=m[d+162|0];if(e<<24>>24!=m[g+162|0]<<24>>24){var b=b+220|0,h=a[b>>2],j=a[(h>>2)+(11*c|0)],n=0<(j|0);do{if(n){for(var z=a[(h+4>>2)+(11*c|0)],p=0,s=0,v=0;;){var t=0==m[a[z+(v<<2)>>2]+162|0]<<24>>24&1,u=t+p|0,t=(t^1)+s|0,v=v+1|0;if((v|0)<(j|0)){p=u,s=t}else{break}}z=0==e<<24>>24;if((u|0)<(t|0)){var w=z?d:g}else{var A=z;f=724}}else{A=0==e<<24>>24,f=724}}while(0);724==f&&(w=A?g:d);f=h+44*c+4|0;a:do{if(n){e=a[f>>2];for(u=0;;){var B;B=(a[e+(u<<2)>>2]|0)==(w|0)?u:B;u=u+1|0;if((u|0)>=(j|0)){var C=B,y=f;break a}}}else{y=f}}while(0);B=0==m[w+162|0]<<24>>24&1;f=C;for(n=0;;){e=f-1|0;if(0>=(f|0)){var D=C,F=0;break}if((m[a[a[y>>2]+(e<<2)>>2]+162|0]<<24>>24|0)==(B|0)){f=e,n=n+1|0}else{D=C;F=0;break}}for(;;){D=D+1|0;if((D|0)>=(j|0)){break}if((m[a[a[y>>2]+(D<<2)>>2]+162|0]<<24>>24|0)==(B|0)){F=F+1|0}else{break}}um(d,g);j=a[b>>2];y=a[(j>>2)+(11*c|0)];b=0<(y|0);c=j+44*c+4|0;a:do{if(b){j=a[c>>2];D=C;for(f=0;;){if(D=(a[j+(f<<2)>>2]|0)==(w|0)?f:D,f=f+1|0,(f|0)>=(y|0)){var E=D,G=c;break a}}}else{E=C,G=c}}while(0);C=E;for(w=0;;){c=C-1|0;if(0>=(C|0)){var I=E,H=0;break}if((m[a[a[G>>2]+(c<<2)>>2]+162|0]<<24>>24|0)==(B|0)){C=c,w=w+1|0}else{I=E;H=0;break}}for(;;){E=I+1|0;if((E|0)>=(y|0)){break}if((m[a[a[G>>2]+(E<<2)>>2]+162|0]<<24>>24|0)==(B|0)){I=E,H=H+1|0}else{break}}G=w-H|0;F=n-F|0;((-1<(G|0)?G:-G|0)|0)>((-1<(F|0)?F:-F|0)|0)&&um(d,g)}}function zP(b){var c,d,b=b>>2;if(0<(a[b+51]|0)){d=a[b+50]>>2;var g=a[a[d]+16>>2],f=a[d+1],e=0==(f|0);a:do{if(e){c=g}else{for(var h=1,j=g,n=f;;){if(n=a[n+16>>2],j=(a[n+240>>2]|0)>(a[j+240>>2]|0)?n:j,h=h+1|0,n=a[(h<<2>>2)+d],0==(n|0)){c=j;break a}}}}while(0);c=a[c+244>>2];if(-1>=(c|0)){return 1}a[b+61]=c+1|0;return 0}if(0>=(a[b+49]|0)){return 1}c=a[b+48]>>2;g=a[a[c]+12>>2];f=a[c+1];e=0==(f|0);a:do{if(e){d=g}else{h=1;j=g;for(n=f;;){if(n=a[n+12>>2],j=(a[n+240>>2]|0)<(a[j+240>>2]|0)?n:j,h=h+1|0,n=a[(h<<2>>2)+c],0==(n|0)){d=j;break a}}}}while(0);c=a[d+244>>2];if(0>=(c|0)){return 1}a[b+61]=c-1|0;return 0}function gP(b,c,d){var g,f,e,h=a[pm>>2];f=h>>2;var b=(b+220|0)>>2,j=a[b],n=a[(j+4>>2)+(11*c|0)];if(0>=(a[(j>>2)+(11*c|0)]|0)){var z;return 0}for(var d=(d|0)>(c|0),j=h+4|0,p=0;;){var s=a[n+(p<<2)>>2];g=s>>2;a:do{if(d){var v=s+184|0,t=a[v>>2],u=a[t>>2];if(0==(u|0)){e=778}else{for(var w=0,A=0;;){if(0>1]<<16>>16&&(a[(A<<2>>2)+f]=m[u+100|0]&255|a[a[u+12>>2]+240>>2]<<8,A=A+1|0,t=a[v>>2]),w=w+1|0,u=a[t+(w<<2)>>2],0==(u|0)){var B=A;e=777;break a}}}}else{if(v=s+176|0,t=a[v>>2],u=a[t>>2],0==(u|0)){e=778}else{for(A=w=0;;){if(0>1]<<16>>16&&(a[(A<<2>>2)+f]=m[u+60|0]&255|a[a[u+16>>2]+240>>2]<<8,A=A+1|0,t=a[v>>2]),w=w+1|0,u=a[t+(w<<2)>>2],0==(u|0)){B=A;e=777;break a}}}}}while(0);777==e&&(e=0,0==(B|0)?e=778:2==(B|0)?a[g+61]=(a[j>>2]+a[f]|0)/2&-1:1==(B|0)?a[g+61]=a[f]:(ch(h,B,18),w=(B|0)/2&-1,0!=(B&1|0)?a[g+61]=a[(w<<2>>2)+f]:(s=a[(w<<2>>2)+f],v=a[(B-1<<2>>2)+f]-s|0,w=a[(w-1<<2>>2)+f],A=w-a[f]|0,a[g+61]=(A|0)==(v|0)?(w+s|0)/2&-1:(A*s+w*v|0)/(A+v|0)&-1)));778==e&&(e=0,a[g+61]=-1);p=p+1|0;g=a[b];s=a[(g>>2)+(11*c|0)];if((p|0)>=(s|0)){break}}if(0<(s|0)){e=f=0,h=g}else{return 0}for(;;){if(B=a[n+(f<<2)>>2],0==(a[B+188>>2]|0)&&0==(a[B+180>>2]|0)&&(e=(zP(B)|e&255)&255,h=a[b]),f=f+1|0,(f|0)>=(a[(h>>2)+(11*c|0)]|0)){z=e;break}}return z}function fP(b,c,d,g){var f,e=a[b+220>>2],h=a[(e+4>>2)+(11*c|0)],j=a[(e>>2)+(11*c|0)];if(0<(j|0)){for(var e=0==(d|0),d=0==(g|d|0),n=0,g=(j<<2)+h|0;;){var j=j-1|0,z=h,p=n;a:for(;;){n=z;b:for(;;){if(n>>>0>=g>>>0){break a}for(;;){if(n>>>0>=g>>>0){break a}var s=a[n>>2],v=a[s+244>>2];if(0>(v|0)){n=n+4|0}else{var t=n,u=0;break}}for(;;){n=0==u<<24>>24;for(z=t;;){var w=z+4|0;if(w>>>0>=g>>>0){break a}var A=a[w>>2];f=A>>2;if(n){break}if(0==(a[f+54]|0)){break}else{z=w}}if(0!=(vq(b,s,A)|0)){n=w;continue b}var B=a[f+61];if(-1<(B|0)){break}t=w;u=0==(a[f+54]|0)?u:1}if((v|0)<=(B|0)&((v|0)!=(B|0)|e)){n=w}else{break}}um(s,A);z=w;p=p+1|0}if(0<(j|0)){n=p,g=d?g-4|0:g}else{break}}0!=(p|0)&&(b=a[sd>>2]+220|0,m[a[b>>2]+44*c+33|0]=0,0<(c|0)&&(m[a[b>>2]+44*(c-1)+33|0]=0))}}function Ux(b,c,d,g){m[c+163|0]=1;var f=0<(a[c+196>>2]|0);a:do{if(f){var e=c+192|0,h=a[a[e>>2]>>2];if(0==(h|0)){var j=0}else{for(var n=b,z=0,p=0;;){if(0!=ib[h+164>>2]){var s=h+12|0,v=a[s>>2];0==m[v+162|0]<<24>>24&0==(Ed(n,v|0)|0)||(s=a[s>>2],p=(a[s+216>>2]|0)!=(a[a[h+16>>2]+216>>2]|0)?p:0!=m[s+163|0]<<24>>24?p:Ux(b,s,(p<<2)+d|0,g)+p|0)}z=z+1|0;h=a[a[e>>2]+(z<<2)>>2];if(0==(h|0)){j=p;break a}}}}else{j=0}}while(0);if((a[c+236>>2]|0)==(g|0)){return a[((j<<2)+d|0)>>2]=c,j+1|0}sa(rg|0,1161,AP|0,BP|0);a[((j<<2)+d|0)>>2]=c;return j+1|0}function Tx(b,c){var d,g,f,e,h=a[(a[b+220>>2]+40>>2)+(11*a[c+236>>2]|0)];m[c+163|0]=1;var j=c+164|0;m[j]=1;var n=0<(a[a[b+32>>2]+208>>2]|0),z=c+192|0;f=a[z>>2];if(0!=(f|0)){var p=a[f>>2];if(0!=(p|0)){var s=h|0;f=(h+4|0)>>2;var h=h+8|0,v=0;for(g=p>>2;;){n?0==(Ed(b,a[g+4]|0)|0)?d=v:0==(Ed(b,a[g+3]|0)|0)?d=v:e=842:e=842;if(842==e){e=0;if(0!=ib[g+41]){d=(p+12|0)>>2;g=a[d];var t=(a[g+284>>2]|0)<(a[s>>2]|0);if(1==m[g+164|0]<<24>>24){t||sa(rg|0,933,xm|0,Vx|0);g=p+16|0;var t=a[a[g>>2]+284>>2],u=a[f];(t|0)<(u|0)?g=t:(sa(rg|0,934,xm|0,Wx|0),u=a[f],g=a[a[g>>2]+284>>2]);m[a[h>>2]+g+u*a[a[d]+284>>2]|0]=1;yx(p);v=v-1|0;4!=m[p+124|0]<<24>>24&&Nx(b,p)}else{t||sa(rg|0,942,xm|0,Vx|0),g=p+16|0,t=a[a[g>>2]+284>>2],p=a[f],(t|0)<(p|0)?g=t:(sa(rg|0,943,xm|0,Wx|0),g=a[a[g>>2]+284>>2],p=a[f]),m[a[h>>2]+a[a[d]+284>>2]+p*g|0]=1,d=a[d],0==m[d+163|0]<<24>>24&&Tx(b,d)}}d=v}v=d+1|0;p=a[a[z>>2]+(v<<2)>>2];if(0==(p|0)){break}else{g=p>>2}}}}m[j]=0}function zO(c,d){if(0!=(a[c+216>>2]|0)){Tw(c);Xx(c);0!=m[Wi]<<24>>24&&SN(c);var e;CP(c);e=a[c+216>>2];if(0!=(e|0)){for(e>>=2;;){var g=a[e+57];0!=(g|0)&&Yx(c,g);g=a[e+58];0!=(g|0)&&Yx(c,g);var g=a[e+52],h=0==(g|0);a:do{if(!h){for(var j=0;;){if(0==(a[g+(j<<2)>>2]|0)){break a}else{j=j+1|0}}}}while(0);e=a[e+42];if(0==(e|0)){break}else{e>>=2}}}0!=(RO(c)|0)&&Xx(c);DP(a[c+216>>2]);EP(c);FP(c);0<(a[c+208>>2]|0)&&(GP(c),Zx(c),HP(c),$x(c));g=a[c+44>>2];3==(a[g+84>>2]|0)&&(e=g+64|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),g=g+72|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),1>2]&1|0)?e:g,Zc(a[c+264>>2],a[c+268>>2],65535>e?e:65535,1e3)));0!=(Oo(c,2,IP(c))|0)&&(JP(c),0!=(Oo(c,2,IP(c))|0)&&sa(by|0,133,KP|0,LP|0));e=a[c+220>>2];h=D[c+244>>1];g=c+246|0;j=D[g>>1];if(h<<16>>16<=j<<16>>16){for(var h=h<<16>>16,l=j;;){j=e+44*h|0;if(0<(a[j>>2]|0)){for(var l=e+44*h+4|0,k=0;;){var n=a[a[l>>2]+(k<<2)>>2],z=n+236|0,n=n+32|0;f[0]=a[z>>2]|0;a[n>>2]=b[0];a[n+4>>2]=b[1];a[z>>2]=h;k=k+1|0;if((k|0)>=(a[j>>2]|0)){break}}j=D[g>>1]}else{j=l}h=h+1|0;if((h|0)>(j<<16>>16|0)){break}else{l=j}}}MP(c,d);NP(c)}}function Xx(c){var d,e,g,h,j=a[c+220>>2];h=j>>2;g=(c+244|0)>>1;var l=D[g];e=(c+246|0)>>1;var k=D[e],n=l<<16>>16>k<<16>>16;a:do{if(!n){for(var z=l<<16>>16,p=k;;){var s=j+44*z|0;if(0<(a[s>>2]|0)){for(var p=j+44*z+4|0,v=j+44*z+28|0,t=j+44*z+20|0,u=j+44*z+24|0,w=j+44*z+16|0,A=0;;){var B=a[a[p>>2]+(A<<2)>>2],C=B+96|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),C=(((0>C?C-.5:C+.5)&-1)+1|0)/2&-1,y=a[B+208>>2],F=0==(y|0);b:do{if(F){var E=C}else{if(d=a[y>>2],0==(d|0)){E=C}else{var G=C,I=0;for(d>>=2;;){if((a[d+4]|0)==(a[d+3]|0)&&(d=a[d+27],0!=(d|0)&&(G|=0,d=d+32|0,d=.5*(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),G=(G>d?G:d)&-1)),I=I+1|0,d=a[y+(I<<2)>>2],0==(d|0)){E=G;break b}else{d>>=2}}}}}while(0);(a[v>>2]|0)<(E|0)&&(a[t>>2]=E,a[v>>2]=E);(a[u>>2]|0)<(E|0)&&(a[w>>2]=E,a[u>>2]=E);y=a[B+216>>2];0!=(y|0)&&(C=(y|0)==(c|0)?0:8,B=B+236|0,F=a[B>>2],(F|0)==(D[y+244>>1]<<16>>16|0)?(F=y+160|0,I=a[F>>2],G=C+E|0,a[F>>2]=(I|0)>(G|0)?I:G,B=a[B>>2]):B=F,(B|0)==(D[y+246>>1]<<16>>16|0)&&(B=y+156|0,y=a[B>>2],C=C+E|0,a[B>>2]=(y|0)>(C|0)?y:C));A=A+1|0;if((A|0)>=(a[s>>2]|0)){break}}s=D[e]}else{s=p}z=z+1|0;if((z|0)>(s<<16>>16|0)){break a}else{p=s}}}}while(0);j=cy(c);n=D[e]<<16>>16;l=a[a[h+(11*n|0)+1]>>2]+40|0;f[0]=a[h+(11*n|0)+4]|0;a[l>>2]=b[0];a[l+4>>2]=b[1];s=n-1|0;z=D[g];if((s|0)<(z<<16>>16|0)){var H=0,J=z}else{l=c+260|0;k=0;E=n;for(n=s;!(J=a[h+(11*n|0)+6]+a[h+(11*E|0)+7]+a[l>>2]|0,H=a[h+(11*E|0)+5]+a[h+(11*n|0)+4]+8|0,H=(J|0)>(H|0)?J:H,0<(a[h+(11*n|0)]|0)?(J=a[a[h+(11*E|0)+1]>>2]+40|0,J=(b[0]=a[J>>2],b[1]=a[J+4>>2],f[0])+(H|0),E=a[a[h+(11*n|0)+1]>>2]+40|0,f[0]=J,a[E>>2]=b[0],a[E+4>>2]=b[1],J=D[g]):J=z,H=(k|0)>(H|0)?k:H,z=n-1|0,(z|0)<(J<<16>>16|0));){k=H,E=n,n=z,z=J}H|=0}l=c+284|0;k=0==m[l]<<24>>24;a:do{if(!k&&(E=D[e]<<16>>16,n=E-1|0,(n|0)>=(J<<16>>16|0))){for(z=J;;){if(0<(a[h+(11*n|0)]|0)&&(E=a[a[h+(11*E|0)+1]>>2]+40|0,E=(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0])+H,z=a[a[h+(11*n|0)+1]>>2]+40|0,f[0]=E,a[z>>2]=b[0],a[z+4>>2]=b[1],z=D[g]),s=n-1|0,(s|0)<(z<<16>>16|0)){break a}else{E=n,n=s}}}}while(0);0!=(j|0)&&0!=(a[c+152>>2]&1|0)&&dy(c,m[l]&255);c=a[c+216>>2];if(0!=(c|0)){for(;!(e=a[a[h+(11*a[c+236>>2]|0)+1]>>2]+40|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),g=c+40|0,f[0]=e,a[g>>2]=b[0],a[g+4>>2]=b[1],c=a[c+168>>2],0==(c|0));){}}}function IP(a){var b=V(a|0,OP|0);return 0==(b|0)?2147483647:a=wg(b,xc)*Vh(a)&-1}function JP(b){var c,d=D[b+244>>1],g=b+246|0,f=D[g>>1];if(d<<16>>16<=f<<16>>16){for(var e=b+220|0,d=d<<16>>16;;){var h=a[e>>2],j=a[(h>>2)+(11*d|0)],n=h+44*d+4|0,z=0,p=0;a:for(;;){if((z|0)>=(j|0)){c=957;break}var s=a[a[n>>2]+(z<<2)>>2],v=a[s+256>>2],t=0==(v|0);b:do{if(!t){for(var u=0;;){var w=a[v+(u<<2)>>2];if(0==(w|0)){break b}if((a[a[w+12>>2]+236>>2]|0)>(d|0)){var A=f;break a}if((a[a[w+16>>2]+236>>2]|0)>(d|0)){A=f;break a}else{u=u+1|0}}}}while(0);v=a[s+248>>2];t=0==(v|0);b:do{if(!t){for(u=0;;){w=a[v+(u<<2)>>2];if(0==(w|0)){break b}if((a[a[w+16>>2]+236>>2]|0)>(d|0)){A=f;break a}if((a[a[w+12>>2]+236>>2]|0)>(d|0)){A=f;break a}else{u=u+1|0}}}}while(0);z=z+1|0;p=s}957==c&&(c=0,0==(p|0)?A=f:(A=a[a[n>>2]>>2],h=a[a[(h+4>>2)+(11*(((d|0)<(f<<16>>16|0)?1:-1)+d)|0)]>>2],0==(h|0)&&sa(by|0,110,PP|0,QP|0),f=Lf(b),m[f+162|0]=2,Zc(f,A,0,0),Zc(f,h,0,0),A=a[A+236>>2],h=a[h+236>>2],a[f+236>>2]=(A|0)<(h|0)?A:h,A=D[g>>1]));d=d+1|0;if((d|0)>(A<<16>>16|0)){break}else{f=A}}}}function MP(c,d){var e,g,h;RP(c,c);var j=0>1]<<16>>16;a:do{if(j){var l=c+44|0,k=a[l>>2];e=a[k+84>>2];if(0!=(e|0)){h=(c+68|0)>>2;g=c+52|0;var n=(b[0]=a[h],b[1]=a[h+1],f[0])-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])&-1;g=(c+76|0)>>2;var m=c+60|0,p=(b[0]=a[g],b[1]=a[g+1],f[0])-(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])&-1,m=c+152|0,s=0==(a[m>>2]&1|0),v=s?p:n,n=s?n:p;4==(e|0)?(e=SP(c),l=a[l>>2]):(e=2==(e|0)&1,l=k);do{if(0==e<<24>>24){if(k=a[l+84>>2],5==(k|0)){k=l+64|0;k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);if(0>=k){break a}k/=(b[0]=a[h],b[1]=a[h+1],f[0]);p=l+72|0;p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])/(b[0]=a[g],b[1]=a[g+1],f[0]);if(!(1>2],b[1]=a[k+4>>2],f[0]),s=(v|0)/(n|0),s>2],b[1]=a[k+4>>2],f[0]);if(0>=k){break a}p=k/(n|0);k=l+72|0;s=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])/(v|0);1>p|1>s?p>2]&1|0))?p:k;g=g?k:p;m=a[c+216>>2];v=0==(m|0);b:do{if(!v){for(n=m;;){if(e=(n+32|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])*g,f[0]=(0>l?l-.5:l+.5)&-1|0,a[e]=b[0],a[e+1]=b[1],e=(n+40|0)>>2,l=(b[0]=a[e],b[1]=a[e+1],f[0])*h,f[0]=(0>l?l-.5:l+.5)&-1|0,a[e]=b[0],a[e+1]=b[1],n=a[n+168>>2],0==(n|0)){break b}}}}while(0);TP(c,g,h)}}}while(0);0!=(d|0)&&UP(c,d)}function NP(b){var b=(b+216|0)>>2,c=a[b];do{if(0==(c|0)){var d=0,g=0}else{for(d=c;;){var g=d+184|0,f=g|0,e=a[f>>2],h=a[e>>2],j=0==(h|0);a:do{if(j){var n=e}else{for(var z=0,p=h;;){G(p|0);var z=z+1|0,s=a[f>>2],p=a[s+(z<<2)>>2];if(0==(p|0)){n=s;break a}}}}while(0);0!=(n|0)&&G(n);f=d+176|0;e=a[f>>2];0!=(e|0)&&G(e);e=d+256|0;h=a[e+4>>2];a[g>>2]=a[e>>2];a[g+4>>2]=h;g=d+248|0;e=a[g+4>>2];a[f>>2]=a[g>>2];a[f+4>>2]=e;d=a[d+168>>2];if(0==(d|0)){break}}d=0;g=a[b]}}while(0);a:for(;;){n=0==(d|0);c=d+168|0;for(f=g;;){if(0==(f|0)){break a}e=a[f+168>>2];if(2!=m[f+162|0]<<24>>24){d=f;g=e;continue a}n?a[b]=e:a[c>>2]=e;G(f|0);f=e}}a[a[b]+172>>2]=0}function Zc(b,c,d,g){var f=fa(184);a[f+16>>2]=b;a[f+12>>2]=c;65535>1]=(0>d?d-.5:d+.5)&65535;ib[f+164>>2]=g|0;xx(f);return f}function VP(c){la(1,WP|0,(j=h,h+=12,f[0]=c,a[j>>2]=b[0],a[j+4>>2]=b[1],a[j+8>>2]=65535,j));Pe()}function fm(c,d){var e=m[c+96|0];if(e<<24>>24!=m[d+96|0]<<24>>24){return 0}var g=c+68|0,h=d+68|0;if((b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])==(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])){if(g=c+76|0,h=d+76|0,!((b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])==(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])|0==e<<24>>24)){return 0}}else{if(0!=e<<24>>24){return 0}}e=c+28|0;g=d+28|0;if((b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])==(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){if(e=c+36|0,g=d+36|0,(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])==(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){return 1}}e=0==m[c+56|0]<<24>>24;return e&1}function XP(c,d,e,g,h){var j=c|0;f[0]=d-g;a[j>>2]=b[0];a[j+4>>2]=b[1];c=c+8|0;f[0]=e-h;a[c>>2]=b[0];a[c+4>>2]=b[1]}function YP(c,d){var e,g=(a[c+32>>2]|0)==(c|0);a:do{if(g){var h=D[c+244>>1],j=D[c+246>>1],l=h<<16>>16>j<<16>>16;b:do{if(l){var k=-2147483647,n=2147483647}else{for(var z=a[c+220>>2],p=j<<16>>16,s=-2147483647,v=2147483647,t=h<<16>>16;;){var u=a[(z>>2)+(11*t|0)];do{if(0==(u|0)){e=v;var w=s}else{if(e=a[(z+4>>2)+(11*t|0)]>>2,w=a[e],0==(w|0)){e=v,w=s}else{var A=m[w+162|0],B=0!=A<<24>>24&1<(u|0);c:do{if(B){for(var y=1;;){var F=a[(y<<2>>2)+e],y=y+1|0,E=m[F+162|0];if(!(0!=E<<24>>24&(y|0)<(u|0))){var G=F,H=E;break c}}}else{G=w,H=A}}while(0);if(0!=H<<24>>24){e=v,w=s}else{w=G+32|0;A=G+104|0;w=(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0])-(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])&-1|0;w=v>2)+e];B=0==m[A+162|0]<<24>>24;c:do{if(B){var I=A}else{for(F=u-2|0;;){if(y=a[(F<<2>>2)+e],0==m[y+162|0]<<24>>24){I=y;break c}else{F=F-1|0}}}}while(0);e=I+32|0;A=I+112|0;A=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])&-1|0;e=w;w=s>A?s:A}}}}while(0);t=t+1|0;if((t|0)>(p|0)){k=w;n=e;break b}else{s=w,v=e}}}}while(0);l=a[c+208>>2];if(1>(l|0)){var J=n,O=k,K=j,L=h}else{z=a[c+212>>2];p=k;v=n;for(s=1;;){if(t=a[z+(s<<2)>>2],u=t+52|0,u=(b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-8&-1|0,v=v>2],b[1]=a[t+4>>2],f[0])+8&-1|0,p=p>t?p:t,s=s+1|0,(s|0)>(l|0)){J=v;O=p;K=j;L=h;break a}}}}else{J=a[a[c+264>>2]+236>>2]|0,O=a[a[c+268>>2]+236>>2]|0,K=D[c+246>>1],L=D[c+244>>1]}}while(0);g=a[d+220>>2];K=a[a[(g+4>>2)+(11*(K<<16>>16)|0)]>>2]+40|0;K=(b[0]=a[K>>2],b[1]=a[K+4>>2],f[0])-(a[c+156>>2]|0);L=a[a[(g+4>>2)+(11*(L<<16>>16)|0)]>>2]+40|0;L=(b[0]=a[L>>2],b[1]=a[L+4>>2],f[0])+(a[c+160>>2]|0);g=c+52|0;f[0]=J;a[g>>2]=b[0];a[g+4>>2]=b[1];J=c+60|0;f[0]=K;a[J>>2]=b[0];a[J+4>>2]=b[1];J=c+68|0;f[0]=O;a[J>>2]=b[0];a[J+4>>2]=b[1];O=c+76|0;f[0]=L;a[O>>2]=b[0];a[O+4>>2]=b[1]}function CP(b){var c=D[b+244>>1],d=b+246|0;if(c<<16>>16<=D[d>>1]<<16>>16){b=(b+220|0)>>2;for(c=c<<16>>16;;){var g=a[b],f=a[(g>>2)+(11*c|0)],e=0<(f|0);a:do{if(e){for(var h=0,j=0,n=g;;){n=a[a[(n+4>>2)+(11*c|0)]+(j<<2)>>2];a[n+240>>2]=h;var h=(6==m[n+165|0]<<24>>24?a[n+220>>2]:1)+h|0,j=j+1|0,n=a[b],z=a[(n>>2)+(11*c|0)];if((j|0)>=(z|0)){var p=h,s=n,v=z;break a}}}else{p=0,s=g,v=f}}while(0);if((p|0)>(v|0)){g=a[(s+4>>2)+(11*c|0)];g=0==(g|0)?Cb((p<<2)+4|0):wb(g,(p<<2)+4|0);a[(a[b]+4>>2)+(11*c|0)]=g;g=a[b];f=a[(g>>2)+(11*c|0)];e=0<(f|0);a:do{if(e){h=f;for(j=g;;){if(h=h-1|0,j=a[(j+4>>2)+(11*c|0)],n=a[j+(h<<2)>>2],a[j+(a[n+240>>2]<<2)>>2]=n,j=a[b],0>=(h|0)){var t=j;break a}}}else{t=g}}while(0);a[(t>>2)+(11*c|0)]=p;a[a[(a[b]+4>>2)+(11*c|0)]+(p<<2)>>2]=0}c=c+1|0;if((c|0)>(D[d>>1]<<16>>16|0)){break}}}}function Yx(c,d){var e,g,j=d>>2,m=h;h+=24;var l=m+8,k=m+16;if(2<=(a[j+55]|0)){var n=d+32|0,z=d+104|0,p=d+40|0;ZP(m,d,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])&-1,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])&-1);n=a[m>>2];z=a[m+4>>2];if(0<(a[j+47]|0)){if(p=a[j+60],g=Og(c,a[a[a[j+46]>>2]+12>>2]),0!=(g|0)){for(var k=l|0,j=l+4|0,s=z,v=n,z=p+1|0,n=g;;){p=n;g=n+16|0;e=a[g>>2];if((e|0)!=(d|0)&&(Zb(e)|0)==(d|0)){$P(l,a[g>>2],v,s,z);v=a[k>>2];s=a[j>>2];NO(p);g=(n+12|0)>>2;e=(a[g]+24|0)>>2;var t=a[e+38];e=0==(t|0)?Cb((a[e+39]<<2)+8|0):wb(t,(a[e+39]<<2)+8|0);a[a[g]+176>>2]=e;e=a[g]+180|0;t=a[e>>2];a[e>>2]=t+1|0;a[a[a[g]+176>>2]+(t<<2)>>2]=p;p=a[g]+24|0;a[a[p+152>>2]+(a[p+156>>2]<<2)>>2]=0;z=z+1|0}p=v;n=Ql(c,n);if(0==(n|0)){break}else{v=p}}}}else{if(p=a[j+60],g=Ib(c,a[a[a[j+44]>>2]+16>>2]),0!=(g|0)){l=k|0;j=k+4|0;s=z;v=n;z=p+1|0;for(n=g;!(p=n,g=n+12|0,e=a[g>>2],(e|0)!=(d|0)&&(Zb(e)|0)==(d|0)&&($P(k,a[g>>2],v,s,z),v=a[l>>2],s=a[j>>2],NO(p),g=(n+16|0)>>2,e=(a[g]+24|0)>>2,t=a[e+40],e=0==(t|0)?Cb((a[e+41]<<2)+8|0):wb(t,(a[e+41]<<2)+8|0),a[a[g]+184>>2]=e,e=a[g]+188|0,t=a[e>>2],a[e>>2]=t+1|0,a[a[a[g]+184>>2]+(t<<2)>>2]=p,p=a[g]+24|0,a[a[p+160>>2]+(a[p+164>>2]<<2)>>2]=0,z=z+1|0),p=v,n=yb(c,n),0==(n|0));){v=p}}}}h=m}function ZP(c,d,e,g){var h=d+20|0;et(d,a[a[h>>2]+152>>2]&1);var j=d+40|0;f[0]=g|0;a[j>>2]=b[0];a[j+4>>2]=b[1];j=d+104|0;e=(e|0)+(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=d+32|0;f[0]=e;a[j>>2]=b[0];a[j+4>>2]=b[1];d=d+112|0;a[c>>2]=e+(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])+a[a[h>>2]+256>>2]&-1;a[c+4>>2]=g}function $P(b,c,d,g,e){var f=a[c+20>>2],h=Zb(c);if((h|0)!=(c|0)){var j;(h|0)==(c|0)&&sa(qg|0,220,ey|0,aQ|0);var n=c+168|0;0!=(a[n>>2]|0)&&sa(qg|0,221,ey|0,bQ|0);j=(h+168|0)>>2;a[n>>2]=a[j];n=a[j];0!=(n|0)&&(a[n+172>>2]=c);n=c+172|0;a[n>>2]=h;a[j]=c}a[c+240>>2]=e;h=a[h+236>>2];a[c+236>>2]=h;a[a[(a[f+220>>2]+4>>2)+(11*h|0)]+(e<<2)>>2]=c;ZP(b,c,d,g)}function RP(b,c){var d=b+208|0;if(1<=(a[d>>2]|0)){for(var g=b+212|0,e=1;!(RP(a[a[g>>2]+(e<<2)>>2],c),e=e+1|0,(e|0)>(a[d>>2]|0));){}}YP(b,c)}function SP(c){var d,e=h;h+=32;var g=e+16;d=(c+44|0)>>2;var j=a[d],m=j+48|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),l=j+56|0,k=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(.001>m|.001>k){return h=e,0}l=j+32|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);j=j+40|0;j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);XP(e,m,k,l,j);m=e|0;k=e+8|0;XP(g,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),l,j);m=g|0;m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);g=g+8|0;l=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=c+68|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);c=c+76|0;c=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);j=m/g;k=l/c;if(!(1>j|1>k)){return h=e,0}j=j>2]=b[0];a[j+4>>2]=b[1];d=a[d]+72|0;f[0]=c*l;a[d>>2]=b[0];a[d+4>>2]=b[1];h=e;return 1}function TP(c,d,e){var g;g=c+208|0;var h=1>(a[g>>2]|0);a:do{if(!h){for(var j=c+212|0,l=1;;){if(TP(a[a[j>>2]+(l<<2)>>2],d,e),l=l+1|0,(l|0)>(a[g>>2]|0)){break a}}}}while(0);g=(c+52|0)>>2;h=(b[0]=a[g],b[1]=a[g+1],f[0])*d;f[0]=h;a[g]=b[0];a[g+1]=b[1];g=(c+60|0)>>2;h=(b[0]=a[g],b[1]=a[g+1],f[0])*e;f[0]=h;a[g]=b[0];a[g+1]=b[1];g=(c+68|0)>>2;d*=(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=d;a[g]=b[0];a[g+1]=b[1];c=(c+76|0)>>2;e*=(b[0]=a[c],b[1]=a[c+1],f[0]);f[0]=e;a[c]=b[0];a[c+1]=b[1]}function UP(c,d){var e=h,g=c+68|0,q=c+52|0,q=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),g=c+76|0,y=c+60|0,y=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),g=q/y;if(0!=m[ld]<<24>>24){Va(a[oa>>2],dQ|0,(j=h,h+=16,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=q*y/1e4,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));q=a[oa>>2];y=ra(c);if(0==(y|0)){var l=0}else{for(var k=0;;){var n=Ib(c,y),z=0==(n|0);b:do{if(z){var p=k}else{for(var s=k,v=n;;){var t=a[a[v+12>>2]+236>>2],u=a[a[v+16>>2]+236>>2];(t|0)!=(u|0)&&(t=t-u|0,s=s-1+(-1<(t|0)?t:-t|0)|0);v=yb(c,v);if(0==(v|0)){p=s;break b}}}}while(0);y=ba(c,y);if(0==(y|0)){l=p;break}else{k=p}}}Va(q,eQ|0,(j=h,h+=4,a[j>>2]=l,j))}l=d|0;l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);if(g>1.1*l){a[d+24>>2]=l*(a[d+20>>2]-a[d+16>>2]|0)/g&-1}else{if(p=d+24|0,g>.8*l){a[p>>2]=0}else{a[p>>2]=-1;if(0==m[ld]<<24>>24){h=e;return}Lc(fQ|0,34,1,a[oa>>2])}}0!=m[ld]<<24>>24&&Va(a[oa>>2],gQ|0,(j=h,h+=4,a[j>>2]=a[d+24>>2],j));h=e}function hQ(c,d){var e,g,h,j,l=a[c+32>>2];j=a[l+220>>2]>>2;var k=D[c+246>>1]<<16>>16,n=D[c+244>>1]<<16>>16,m=a[j+(11*n|0)+5];h=(c+160|0)>>2;var p=a[h];e=m-p|0;var s=a[j+(11*k|0)+4];g=(c+156|0)>>2;var v=a[g],t=s-v|0;if((t+e|0)<(d|0)){m=k-n|0;m=(m+(d+1)|0)/(m+2|0)&-1;e=(D[l+246>>1]<<16>>16)-1|0;l=l+244|0;s=D[l>>1];if((e|0)<(s<<16>>16|0)){j=p}else{v=m;p=e;for(e=s;!(0<(a[j+(11*p|0)]|0)&&(e=(a[a[j+(11*p|0)+1]>>2]+40|0)>>2,s=(b[0]=a[e],b[1]=a[e+1],f[0])+(v|0),f[0]=s,a[e]=b[0],a[e+1]=b[1],e=D[l>>1]),p=p-1|0,(p|0)<(e<<16>>16|0));){v=v+m|0}j=a[h];v=a[g]}a[h]=j+m|0;a[g]=v+m|0}else{j=(d+1|0)/2&-1,(e|0)>(t|0)?(j|0)>(t|0)?(a[g]=s,a[h]=d-t+p|0):(a[g]=j+v|0,a[h]=d-j+p|0):(j|0)>(e|0)?(a[h]=m,a[g]=d-e+v|0):(a[h]=j+p|0,a[g]=d-j+v|0)}}function iQ(c,d){var e,g,h,j,l=a[c+32>>2];g=a[l+220>>2]>>2;var k=D[c+246>>1];e=k<<16>>16;var n=D[c+244>>1],m=n<<16>>16,p=(d+1|0)/2&-1;j=(c+156|0)>>2;var s=a[j]+p-a[g+(11*e|0)+4]|0;if(0<(s|0)){k=k<<16>>16>16;a:do{if(!k){for(var n=s|0,v=e;;){if(0<(a[g+(11*v|0)]|0)){h=(a[a[g+(11*v|0)+1]>>2]+40|0)>>2;var t=(b[0]=a[h],b[1]=a[h+1],f[0])+n;f[0]=t;a[h]=b[0];a[h+1]=b[1]}h=v-1|0;if((h|0)<(m|0)){break a}else{v=h}}}}while(0);e=a[c+160>>2];s=d-p+s+e-a[g+(11*m|0)+5]|0}else{e=a[c+160>>2],s=d-p+e-a[g+(11*m|0)+5]|0}if(0<(s|0)){k=m-1|0;l=l+244|0;n=D[l>>1];if((k|0)<(n<<16>>16|0)){g=e,l=c+160|0}else{m=s|0;s=k;for(e=n;!(0<(a[g+(11*s|0)]|0)&&(e=(a[a[g+(11*s|0)+1]>>2]+40|0)>>2,k=(b[0]=a[e],b[1]=a[e+1],f[0])+m,f[0]=k,a[e]=b[0],a[e+1]=b[1],e=D[l>>1]),s=s-1|0,(s|0)<(e<<16>>16|0));){}l=c+160|0;g=a[l>>2]}m=(d-p|0)+g|0;a[l>>2]=m}else{g=(c+160|0)>>2,m=(d-p|0)+e|0,a[g]=m}g=a[j];p=g+p|0;a[j]=p}function cy(c){var d,e,g=c+32|0,h=a[g>>2],j=a[h+220>>2];e=(c+156|0)>>2;var l=a[e];d=(c+160|0)>>2;var k=a[d],n=c+208|0;if(1>(a[n>>2]|0)){var n=k,m=l,p=0,g=h}else{for(var h=c+212|0,s=c+246|0,v=c+244|0,t=1,u=0;;){var w=a[a[h>>2]+(t<<2)>>2],p=cy(w)|u;D[w+246>>1]<<16>>16==D[s>>1]<<16>>16?(m=a[w+156>>2]+8|0,m=(l|0)>(m|0)?l:m):m=l;D[w+244>>1]<<16>>16==D[v>>1]<<16>>16?(w=a[w+160>>2]+8|0,w=(k|0)>(w|0)?k:w):w=k;t=t+1|0;if((t|0)>(a[n>>2]|0)){break}else{k=w,l=m,u=p}}n=w;g=a[g>>2]}if((g|0)==(c|0)){return a[e]=m,a[d]=n,p}0==(a[c+48>>2]|0)?(a[e]=m,d=a[d]=n,e=m,g=p):(0==(a[g+152>>2]&1|0)?(p=c+92|0,g=c+124|0,p=m+(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])&-1,g=n+(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])&-1):(p=m,g=n),a[e]=p,d=a[d]=g,e=p,g=1);p=j+44*(D[c+244>>1]<<16>>16)+20|0;n=a[p>>2];a[p>>2]=(n|0)>(d|0)?n:d;c=j+44*(D[c+246>>1]<<16>>16)+16|0;j=a[c>>2];a[c>>2]=(j|0)>(e|0)?j:e;return g}function dy(c,d){var e,g,h;h=(c+32|0)>>2;var j=a[h],l=a[j+220>>2];g=(c+156|0)>>2;var k=a[g];e=(c+160|0)>>2;var n=a[e],m=c+208|0;if(1>(a[m>>2]|0)){var m=k,p=n}else{for(var p=c+212|0,j=c+246|0,s=c+244|0,v=1;;){var t=a[a[p>>2]+(v<<2)>>2];dy(t,d);if(D[t+246>>1]<<16>>16==D[j>>1]<<16>>16){var u=a[t+156>>2]+8|0,u=(k|0)>(u|0)?k:u}else{u=k}D[t+244>>1]<<16>>16==D[s>>1]<<16>>16?(t=a[t+160>>2]+8|0,t=(n|0)>(t|0)?n:t):t=n;v=v+1|0;if((v|0)>(a[m>>2]|0)){break}else{k=u,n=t}}m=u;p=t;j=a[h]}a[g]=m;a[e]=p;(j|0)!=(c|0)&&0!=(a[c+48>>2]|0)&&(j=c+140|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),s=c+108|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),u=a[a[(l+4>>2)+(11*(D[c+244>>1]<<16>>16)|0)]>>2]+40|0,v=a[a[(l+4>>2)+(11*(D[c+246>>1]<<16>>16)|0)]>>2]+40|0,m=((j>s?j:s)&-1)-(p+m)-((b[0]=a[u>>2],b[1]=a[u+4>>2],f[0])-(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0])&-1)|0,0<(m|0)&&(0==(d|0)?iQ(c,m):hQ(c,m)));(a[h]|0)!=(c|0)&&(h=l+44*(D[c+244>>1]<<16>>16)+20|0,m=a[h>>2],e=a[e],a[h>>2]=(m|0)>(e|0)?m:e,l=l+44*(D[c+246>>1]<<16>>16)+16|0,e=a[l>>2],g=a[g],a[l>>2]=(e|0)>(g|0)?e:g)}function DP(b){if(0!=(b|0)){for(var c=b,b=c>>2;;){var d=c+176|0,g=d,e=c+248|0,f=a[g>>2],g=a[g+4>>2];a[e>>2]=f;a[e+4>>2]=g;var h=e=c+184|0,c=c+256|0,g=a[h>>2],h=a[h+4>>2];a[c>>2]=g;a[c+4>>2]=h;c=e|0;for(e=0;0!=(a[g+(e<<2)>>2]|0);){e=e+1|0}d|=0;for(g=0;0!=(a[f+(g<<2)>>2]|0);){g=g+1|0}a[b+45]=0;a[d>>2]=fa((g+e<<2)+16|0);a[b+47]=0;a[c>>2]=fa(16);b=a[b+42];if(0==(b|0)){break}else{c=b,b=c>>2}}}}function EP(c){var d,e,g,j,y=h;h+=8;var l;j=y>>2;var k=a[c+220>>2],n=0==(m[c+149|0]&1)<<24>>24;g=(c+256|0)>>2;var z=a[g];a[j]=z;a[j+1]=n?z:5;n=c+246|0;z=D[c+244>>1]<<16>>16;a:for(;;){if((z|0)>(D[n>>1]<<16>>16|0)){l=1254;break}c=(k+44*z+4|0)>>2;a[a[a[c]>>2]+236>>2]=0;var p=k+44*z|0,s=a[((z&1)<<2>>2)+j]|0,v=0,t=0;b:for(;(t|0)<(a[p>>2]|0);){var u=a[a[c]+(t<<2)>>2];e=u>>2;d=(u+112|0)>>2;var w=(b[0]=a[d],b[1]=a[d+1],f[0]);a[e+61]=w&-1;if(0<(a[e+53]|0)){var A=a[e+52],B=a[A>>2],C=0==(B|0);c:do{if(C){var F=0}else{for(var E=0,G=0,H=B;;){if(E=(a[H+16>>2]|0)==(a[H+12>>2]|0)?HQa(H)+E|0:E,G=G+1|0,H=a[A+(G<<2)>>2],0==(H|0)){F=E;break c}}}}while(0);w+=F|0;f[0]=w;a[d]=b[0];a[d+1]=b[1]}A=w;d=t+1|0;w=a[a[c]+(d<<2)>>2];0==(w|0)?w=v:(B=w+104|0,A=A+(b[0]=a[B>>2],b[1]=a[B+4>>2],f[0])+s,Zc(u,w,A,0),A=v+A&-1,a[w+236>>2]=A,w=A|0);A=a[e+32];0!=(A|0)&&(e=a[e+64],B=a[e>>2],C=a[e+4>>2],e=(E=(a[a[B+12>>2]+240>>2]|0)>(a[a[C+12>>2]+240>>2]|0))?B:C,E=E?C:B,B=((D[A+178>>1]&65535)*a[g]|0)/2&-1|0,C=a[E+12>>2],E=a[E+16>>2],0==(fy(E,C)|0)&&(G=E+104|0,H=C+112|0,Zc(C,E,(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+(B+(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]))&-1|0,ib[A+164>>2]&-1)),C=a[e+16>>2],e=a[e+12>>2],0==(fy(e,C)|0)&&(E=e+104|0,G=C+112|0,Zc(C,e,(b[0]=a[E>>2],b[1]=a[E+4>>2],f[0])+(B+(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0]))&-1|0,ib[A+164>>2]&-1)));e=u+196|0;u=u+192|0;for(A=0;;){if((A|0)>=(a[e>>2]|0)){v=w;t=d;continue b}var B=a[a[u>>2]+(A<<2)>>2],E=a[B+16>>2],G=a[B+12>>2],C=(H=(a[E+240>>2]|0)<(a[G+240>>2]|0))?E:G,E=H?G:E,G=C+112|0,H=E+104|0,G=(b[0]=a[G>>2],b[1]=a[G+4>>2],f[0])+(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),H=a[g],I=(D[B+178>>1]&65535)*H+G&-1,J=Zh(C,E);do{if(0==(J|0)){0==(a[B+108>>2]|0)&&Zc(C,E,I|0,ib[B+164>>2]&-1)}else{var K=I|0,L=G+(H|0),N=B+144|0,N=(b[0]=a[N>>2],b[1]=a[N+4>>2],f[0]),Q=0>N,K=(K>L+((Q?N-.5:N+.5)&-1|0)?K:L+((Q?N-.5:N+.5)&-1|0))&-1;if(65535<(K|0)){l=1248;break a}L=J+178|0;N=D[L>>1]&65535;D[L>>1]=((N|0)>(K|0)?N:K)&65535}}while(0);A=A+1|0}}z=z+1|0}1254==l?h=y:1248==l&&VP(K|0)}function FP(c){var d=a[c+216>>2];if(0!=(d|0)){for(;;){var e=d+256|0,g=a[e>>2],h=0==(g|0);a:do{if(!h){var j=a[g>>2];if(0!=(j|0)){for(var l=0,k=j;;){j=Lf(c);m[j+162|0]=2;var n=k+68|0,z=k+28|0,z=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0])&-1,p=0<(z|0),n=p?0:-z|0,z=p?z:0,p=k+16|0,s=k+164|0;Zc(j,a[p>>2],z+1|0,ib[s>>2]&-1);k=k+12|0;Zc(j,a[k>>2],n+1|0,ib[s>>2]&-1);z=a[a[p>>2]+236>>2]-z-1|0;k=a[a[k>>2]+236>>2]-n-1|0;a[j+236>>2]=(z|0)<(k|0)?z:k;l=l+1|0;j=a[a[e>>2]+(l<<2)>>2];if(0==(j|0)){break a}else{k=j}}}}}while(0);d=a[d+168>>2];if(0==(d|0)){break}}}}function ay(c){var d=h;xq(c);var e=a[c+264>>2],g=a[c+268>>2],q=D[c+244>>1],m=c+246|0;if(q<<16>>16<=D[m>>1]<<16>>16){for(var l=c+220|0,k=c+12|0,n=c+132|0,c=c+100|0,q=q<<16>>16;;){var z=a[l>>2];if(0!=(a[(z>>2)+(11*q|0)]|0)){if(z=a[a[(z+4>>2)+(11*q|0)]>>2],0==(z|0)){la(1,jQ|0,(j=h,h+=8,a[j>>2]=a[k>>2],a[j+4>>2]=q,j))}else{var p=z+104|0;Zc(e,z,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])+8+(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),0);z=a[l>>2];z=a[a[(z+4>>2)+(11*q|0)]+(a[(z>>2)+(11*q|0)]-1<<2)>>2];p=z+112|0;Zc(z,g,(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0])+8+(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]),0)}}q=q+1|0;if((q|0)>(D[m>>1]<<16>>16|0)){break}}}h=d}function xq(c){var d,e=c+264|0;if(0==(a[e>>2]|0)){d=(c+32|0)>>2;var g=Lf(a[d]);m[g+162|0]=2;var h=Lf(a[d]);m[h+162|0]=2;if(0!=(a[c+48>>2]|0)&&(d=a[d],(d|0)!=(c|0)&&0==(a[d+152>>2]&1|0))){d=c+84|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);var j=c+116|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);Zc(g,h,(d>j?d:j)&-1|0,0)}a[e>>2]=g;a[c+268>>2]=h}}function GP(b){if((a[b+32>>2]|0)!=(b|0)){ay(b);var c=a[b+264>>2],d=a[b+268>>2],g=Zh(c,d);0==(g|0)?Zc(c,d,1,128):(c=g+164|0,ib[c>>2]+=128)}c=b+208|0;if(1<=(a[c>>2]|0)){b=b+212|0;for(d=1;!(GP(a[a[b>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>(a[c>>2]|0));){}}}function Zx(c){var d,e=D[c+244>>1],g=c+246|0,h=e<<16>>16>D[g>>1]<<16>>16;a:do{if(!h){for(var j=c+220|0,l=c+32|0,k=c+264|0,n=c+268|0,z=e<<16>>16;;){var p=a[j>>2],s=0==(a[(p>>2)+(11*z|0)]|0);b:do{if(!s){var v=a[a[(p+4>>2)+(11*z|0)]>>2];if(0!=(v|0)){for(var v=v+240|0,t=a[v>>2];;){var u=t-1|0;if(0>=(t|0)){break}var w=a[a[(a[a[l>>2]+220>>2]+4>>2)+(11*z|0)]+(u<<2)>>2];if(0==m[w+162|0]<<24>>24){d=1314;break}if(0==(kQ(c,w)|0)){t=u}else{d=1314;break}}1314==d&&(d=0,t=w+112|0,Zc(w,a[k>>2],(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])+8,0));for(v=a[(a[j>>2]>>2)+(11*z|0)]+a[v>>2]|0;;){t=a[a[l>>2]+220>>2];if((v|0)>=(a[(t>>2)+(11*z|0)]|0)){break b}var A=a[a[(t+4>>2)+(11*z|0)]+(v<<2)>>2];if(0==m[A+162|0]<<24>>24){break}if(0!=(kQ(c,A)|0)){break}v=v+1|0}v=A+104|0;Zc(a[n>>2],A,(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0])+8,0)}}}while(0);z=z+1|0;if((z|0)>(D[g>>1]<<16>>16|0)){break a}}}}while(0);d=c+208|0;if(1<=(a[d>>2]|0)){c=c+212|0;for(e=1;!(Zx(a[a[c>>2]+(e<<2)>>2]),e=e+1|0,(e|0)>(a[d>>2]|0));){}}}function HP(c){xq(c);var d=c+208|0;if(1<=(a[d>>2]|0)){for(var e=c+212|0,g=c+264|0,h=c+132|0,j=c+268|0,c=c+100|0,l=1;;){var k=a[a[e>>2]+(l<<2)>>2];xq(k);Zc(a[g>>2],a[k+264>>2],(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])+8,0);Zc(a[k+268>>2],a[j>>2],(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])+8,0);HP(k);l=l+1|0;if((l|0)>(a[d>>2]|0)){break}}}}function $x(b){var c;c=(b+208|0)>>2;if(1<=(a[c]|0)){for(var b=(b+212|0)>>2,d=1;;){xq(a[a[b]+(d<<2)>>2]);var d=d+1|0,g=a[c];if((d|0)>(g|0)){break}}if(1<=(g|0)){for(var d=1,e=g;;){var g=d+1|0,f=(g|0)>(e|0),h=a[b],j=a[h+(d<<2)>>2];a:do{if(f){var n=j}else{for(var m=g,p=h,s=j,v=e;;){var t=a[p+(m<<2)>>2],u=D[s+244>>1]<<16>>16>D[t+244>>1]<<16>>16,w=u?s:t,s=u?t:s,t=D[w+244>>1],u=t<<16>>16;D[s+246>>1]<<16>>16>16?w=v:(p=(a[a[a[(a[s+220>>2]+4>>2)+(11*u|0)]>>2]+240>>2]|0)<(a[a[a[(a[w+220>>2]+4>>2)+(11*u|0)]>>2]+240>>2]|0),Zc(a[(p?s:w)+268>>2],a[(p?w:s)+264>>2],8,0),w=a[c],p=a[b]);m=m+1|0;v=a[p+(d<<2)>>2];if((m|0)>(w|0)){n=v;break a}else{s=v,v=w}}}}while(0);$x(n);e=a[c];if((g|0)>(e|0)){break}else{d=g}}}}}function kQ(b,c){var d;if(1!=m[c+162|0]<<24>>24){return 0}d=a[a[c+256>>2]>>2];for(d>>=2;;){var g=a[d+32];if(0==(g|0)){break}else{d=g,d>>=2}}return 0!=(Ed(b,a[d+4]|0)|0)?0:d=0==(Ed(b,a[d+3]|0)|0)&1}function fy(b,c){var d;if((b|0)==(c|0)){var g;return 1}for(var e=a[b+184>>2],f=0;;){var h=a[e+(f<<2)>>2];if(0==(h|0)){g=0;d=1361;break}if(0==(fy(a[h+12>>2],c)|0)){f=f+1|0}else{g=1;d=1362;break}}if(1361==d||1362==d){return g}}function $N(b){var c,d,g;g=(b+244|0)>>1;D[g]=32767;d=(b+246|0)>>1;D[d]=-1;var e=ra(b);if(0==(e|0)){var f=0}else{for(var h=0;;){var j=e;c=(e+236|0)>>2;var n=a[c];(D[d]<<16>>16|0)<(n|0)&&(D[d]=n&65535,n=a[c]);(D[g]<<16>>16|0)>(n|0)&&(D[g]=n&65535);h=0==(h|0)?j:(a[c]|0)<(a[h+236>>2]|0)?j:h;e=ba(b,e);if(0==(e|0)){f=h;break}}}b=b+272|0;a[b>>2]=f}function Iw(b){var c=V(b|0,lQ|0),c=0==(c|0)?2147483647:wg(c,xc)*Vh(b)&-1,d=b+228|0;if(0<(a[d>>2]|0)){for(var g=b+224|0,e=b+216|0,f=b+208|0,h=0;!(a[e>>2]=a[a[g>>2]+(h<<2)>>2],Oo(b,0==(a[f>>2]|0)&1,c),h=h+1|0,(h|0)>=(a[d>>2]|0));){}}}function kx(b,c){var d=h;h+=8;if(0!=(m[b+149|0]&1)<<24>>24){var g=ra(b),e=0==(g|0);a:do{if(!e){for(var f=g;;){var j=Ib(b,f),k=0==(j|0);b:do{if(!k){for(var n=j;;){var z=n+178|0;D[z>>1]<<=1;n=yb(b,n);if(0==(n|0)){break b}}}}while(0);f=ba(b,f);if(0==(f|0)){break a}}}}while(0);g=b+260|0;a[g>>2]=(a[g>>2]+1|0)/2&-1}if(j=0!=(c|0)){g=ra(b);if(0!=(g|0)){for(;!(a[g+220>>2]=0,g=ba(b,g),0==(g|0));){}}g=ra(b);if(0!=(g|0)){for(;;){e=g+180|0;f=0<(a[e>>2]|0);a:do{if(f){k=g+176|0;for(n=0;;){if(m[a[a[k>>2]+(n<<2)>>2]+124|0]=0,n=n+1|0,(n|0)>=(a[e>>2]|0)){break a}}}}while(0);g=ba(b,g);if(0==(g|0)){break}}}}mQ(b,b);cN(b);nQ(d,b);g=a[d>>2];e=a[d+4>>2];jq(b,0);do{if(j){if(1>=(a[b+228>>2]|0)&&0>=(a[b+208>>2]|0)){f=c;break}a[c+32>>2]=1}f=0}while(0);j=b+228|0;if(0<(a[j>>2]|0)){k=b+224|0;n=b+216|0;for(z=0;;){var p=a[a[k>>2]+(z<<2)>>2];a[n>>2]=p;var s=0==(p|0);a:do{if(!s){for(var v=p;!(m[v+163|0]=0,v=a[v+168>>2],0==(v|0));){}v=a[n>>2];if(0!=(v|0)){for(;;){if(RM(v),v=a[v+168>>2],0==(v|0)){break a}}}}}while(0);z=z+1|0;if((z|0)>=(a[j>>2]|0)){break}}}0!=(oQ(b,g,e)|0)&&jq(b,0);0==(f|0)?Iw(b):VM(b,f);pQ(b,f);qQ(b);h=d}function mQ(b,c){var d=a[c+36>>2],g=a[d+20>>2],d=Ib(g,d);if(0!=(d|0)){for(;;){var e=Yd(a[d+12>>2]),f;f=e;if(0!=(0==(td(a[f+12>>2],Rx|0,7)|0)&1|0)){f=7}else{var h=Ds(V(f|0,nq|0),ei|0,rQ|0);m[f+282|0]=h&255;f=h}0==(f|0)?mQ(b,e):7==(f|0)&100==(a[Dl>>2]|0)?sQ(b,e):tQ(b,e,f);d=yb(g,d);if(0==(d|0)){break}}}}function uQ(b){var c;c=(b+4|0)>>2;var d=a[c];if(-1<(d|0)){for(b|=0;;){if(a[a[b>>2]+(d<<2)>>2]=0,0<(d|0)){d=d-1|0}else{break}}}a[c]=0}function nQ(b,c){var d,g,e;g=(c+236|0)>>2;e=a[g];d=(c+232|0)>>2;var f=a[d],h=0==(f|0);if(0==(e|0)){if(h){a[b>>2]=0;a[b+4>>2]=0;return}e=1425}else{if(h){var j=e;e=1426}else{e=1425}}if(1425==e){if(f=Zb(f),a[d]=f,h=a[g],0==(h|0)){var n=0,z=f}else{j=h,e=1426}}if(1426==e){n=Zb(j);a[g]=n;z=0==(n|0);a:do{if(z){var p=0}else{if(g=5==m[n+165|0]<<24>>24&1,j=n+184|0,e=a[a[j>>2]>>2],0==(e|0)){p=g}else{for(;;){if(f=a[e+12>>2],(f|0)!=(Zb(f)|0)&&sa(ym|0,363,gy|0,vQ|0),Hw(e),e=a[a[j>>2]>>2],0==(e|0)){p=g;break a}}}}}while(0);n=p;z=a[d]}d=0==(z|0);a:do{if(d){var s=0}else{if(p=3==m[z+165|0]<<24>>24&1,g=z+176|0,j=a[a[g>>2]>>2],0==(j|0)){s=p}else{for(;;){if(e=a[j+16>>2],(e|0)!=(Zb(e)|0)&&sa(ym|0,370,gy|0,wQ|0),Hw(j),j=a[a[g>>2]>>2],0==(j|0)){s=p;break a}}}}}while(0);a[b>>2]=s;a[b+4>>2]=n}function oQ(b,c,d){var g=b+236|0;if(0==(a[g>>2]|0)&&0==(a[b+232>>2]|0)){var e;return b=0}var f=ra(b);if(0==(f|0)){return b=0}for(var d=d&65535,h=b+232|0,c=c&65535,j=0;;){var n=f,m=f;if((f|0)==(Zb(m)|0)){if(0==(a[f+188>>2]|0)){var p=a[g>>2];0==(p|0)|(n|0)==(p|0)||(j=de(m,p,0),D[j+178>>1]=d)}0!=(a[f+180>>2]|0)?n=j:(p=a[h>>2],0==(p|0)|(n|0)==(p|0)?n=j:(n=de(p,m,0),D[n+178>>1]=c))}else{n=j}f=ba(b,f);if(0==(f|0)){e=n;break}else{j=n}}return b=0!=(e|0)&1}function pQ(b,c){var d,g,e=ra(b);if(0==(e|0)){D[b+246>>1]=0,D[b+244>>1]=0}else{g=(b+244|0)>>1;D[g]=32767;d=(b+246|0)>>1;D[d]=-1;for(var f=0==(c|0);;){var h=e,j=e,n=Zb(j);do{if((n|0)==(j|0)){var z=a[e+236>>2]}else{var z=e+236|0,p=a[z>>2];if(!f){if(0==(p|0)){p=0}else{z=p;break}}p=p+a[n+236>>2]|0;z=a[z>>2]=p}}while(0);(D[d]<<16>>16|0)<(z|0)?(D[d]=z&65535,n=a[e+236>>2]):n=z;(D[g]<<16>>16|0)>(n|0)&&(D[g]=n&65535);h=m[h+165|0];0==h<<24>>24||6==h<<24>>24||YE(j);e=ba(b,e);if(0==(e|0)){break}}if((a[b+32>>2]|0)==(b|0)){if(100!=(a[Dl>>2]|0)){if(g=a[b+36>>2],d=a[g+20>>2],g=Ib(d,g),0!=(g|0)){for(;!(f=Yd(a[g+12>>2]),7==m[f+282|0]<<24>>24&&sQ(b,f),g=yb(d,g),0==(g|0));){}}}else{if(d=b+208|0,1<=(a[d>>2]|0)){g=b+212|0;for(f=1;!(xQ(a[a[g>>2]+(f<<2)>>2]),f=f+1|0,(f|0)>(a[d>>2]|0));){}}}}}}function qQ(b){var c,d=b+224|0;c=(b+228|0)>>2;var g=a[c],e=0<(g|0);a:do{if(e){for(var f=d|0,h=b+216|0,j=0,n=g;;){var z=a[a[f>>2]+(j<<2)>>2];a[h>>2]=z;if(0!=(z|0)){for(n=z;!(uQ(n+176|0),uQ(n+184|0),m[n+163|0]=0,n=a[n+168>>2],0==(n|0));){}n=a[c]}j=j+1|0;if((j|0)>=(n|0)){break a}}}}while(0);g=ra(b);if(0!=(g|0)){for(;;){e=Ib(b,g);f=0==(e|0);a:do{if(!f){for(h=e;;){j=h+180|0;z=n=a[j>>2];do{if(0!=(n|0)&&(h|0)==(a[n+128>>2]|0)){var p=Ib(b,g),s=0==(p|0);b:do{if(!s){for(var v=p;;){if((h|0)!=(v|0)){var t=v+180|0,u=a[t>>2];0!=(u|0)&(z|0)==(u|0)&&(a[t>>2]=0)}v=yb(b,v);if(0==(v|0)){break b}}}}while(0);G(n|0)}}while(0);a[j>>2]=0;h=yb(b,h);if(0==(h|0)){break a}}}}while(0);g=ba(b,g);if(0==(g|0)){break}}}b=(d|0)>>2;d=a[b];G(d);a[b]=0;a[c]=0}function xQ(b){var c=a[b+272>>2]+236|0,d=b+244|0;D[d>>1]=(D[d>>1]&65535)+a[c>>2]&65535;d=b+246|0;D[d>>1]=(D[d>>1]&65535)+a[c>>2]&65535;c=b+208|0;if(1<=(a[c>>2]|0)){b=b+212|0;for(d=1;!(xQ(a[a[b>>2]+(d<<2)>>2]),d=d+1|0,(d|0)>(a[c>>2]|0));){}}}function sQ(b,c){var d=c+250|0;if(0==m[d]<<24>>24&&(m[d]=1,yQ(b,c),0!=(ra(c)|0))){var g=b+208|0,e=a[g>>2],d=e+1|0;a[g>>2]=d;var g=b+212|0,f=a[g>>2],e=0==(f|0)?fa((e<<2)+8|0):NF(f,e+2|0,4,d);a[g>>2]=e;a[e+(d<<2)>>2]=c;Vu(c);100==(a[Dl>>2]|0)?(kx(c,0),zQ(c)):$N(c)}}function yQ(b,c){var d,g=ra(c),e=0==(g|0);a:do{if(!e){for(var f=c,h=b+212|0,j=b+208|0,n=g;;){var z=ba(c,n),p=n+24|0,n=n|0;if(0==m[p+141|0]<<24>>24){for(var s=1;;){var v=a[j>>2];if((s|0)>=(v|0)){var t=v;break}if(0==(Ed(a[a[h>>2]+(s<<2)>>2],n)|0)){s=s+1|0}else{d=1535;break}}1535==d&&(d=0,t=a[j>>2]);(s|0)<(t|0)&&bl(f,n);a[p+192>>2]=0}else{bl(f,n)}if(0==(z|0)){break a}else{n=z}}}}while(0);g=ra(c);if(0!=(g|0)){for(d=c+32|0;;){e=Ib(a[d>>2],g);f=0==(e|0);a:do{if(!f){for(h=e;;){if(0!=(Ed(c,a[h+12>>2]|0)|0)&>(c,h|0),h=yb(a[d>>2],h),0==(h|0)){break a}}}}while(0);g=ba(c,g);if(0==(g|0)){break}}}}function zQ(b){var c,d=a[b+216>>2];do{if(0==(d|0)){c=1559}else{for(var g=0,e=d;;){var f=0==(a[e+236>>2]|0)?0==m[e+162|0]<<24>>24?e:g:g,e=a[e+168>>2];if(0==(e|0)){break}else{g=f}}if(0==(f|0)){c=1559}else{var h=f}}}while(0);1559==c&&(sa(ym|0,235,hy|0,AQ|0),h=0);a[b+272>>2]=h;d=ra(b);if(0!=(d|0)){for(c=h;!(g=d,2>(a[d+220>>2]|0)|(g|0)==(h|0)||sa(ym|0,239,hy|0,BQ|0),Tk(d,c),m[g+165|0]=7,d=ba(b,d),0==(d|0));){}}}function tQ(b,c,d){var g=ra(c);if(0!=(g|0)){var e=d&255,f=g+165|0;m[f]=e;var h=ba(c,g),j=0==(h|0);a:do{if(!j){for(var n=g,z=h;;){if(Tk(n,z),m[z+165|0]=m[f],z=ba(c,z),0==(z|0)){break a}}}}while(0);if(4==(d|0)||5==(d|0)){c=(b+236|0)>>2,f=a[c],a[c]=0==(f|0)?g:Tk(f,g)}else{if(2==(d|0)||3==(d|0)){c=(b+232|0)>>2,f=a[c],a[c]=0==(f|0)?g:Tk(f,g)}else{return}}5==(d|0)?m[a[b+236>>2]+165|0]=e:3==(d|0)&&(m[a[b+232>>2]+165|0]=e)}}function mx(b){var c=h;h+=120;var d,g=b+40|0,e=$(a[a[g>>2]+4>>2]|0,vx|0);a[di>>2]=e;g=$(a[a[g>>2]+4>>2]|0,wx|0);a[Ej>>2]=g;if(0!=(a[di>>2]|0)|0!=(g|0)&&(e=ra(b),0!=(e|0))){for(g=c|0;;){var f=e;a[Hj>>2]=0;var j=Ok(b,e),k=0==(j|0);a:do{if(!k){for(var n=j;;){var z=n,p=a[di>>2];(a[n+12>>2]|0)==(e|0)&0!=(p|0)?(p=mb(n|0,a[p+8>>2]),0==m[p]<<24>>24?d=1600:iy(g,f,z,p)):d=1600;1600==d&&(d=0,p=a[Ej>>2],(a[n+16>>2]|0)==(e|0)&0!=(p|0)&&(p=mb(n|0,a[p+8>>2]),0!=m[p]<<24>>24&&iy(g,f,z,p)));n=Pk(b,n,e);if(0==(n|0)){break a}}}}while(0);j=0<(a[Hj>>2]|0);a:do{if(j){for(k=0;;){if(n=c+24*k+4|0,1<(a[(c+8>>2)+(6*k|0)]|0)&&CQ(f,n),n=a[n>>2],0!=(n|0)&&G(n),k=k+1|0,(k|0)>=(a[Hj>>2]|0)){break a}}}}while(0);e=ba(b,e);if(0==(e|0)){break}}}h=c}function iy(c,d,e,g){var q,y;y=c>>2;var l=h;h+=8;for(var k=l+4,n=a[Hj>>2],z=0;;){if((z|0)>=(n|0)){q=1624;break}var p=a[y+(6*z|0)];if(m[p]<<24>>24==m[g]<<24>>24&&0==(ka(p,g)|0)){q=1619;break}z=z+1|0}if(1619==q){g=(c+24*z+4|0)>>2,q=a[g],q=0==(q|0)?Cb((a[y+(6*z|0)+2]<<2)+8|0):wb(q,(a[y+(6*z|0)+2]<<2)+8|0),a[g]=q,y=(c+24*z+8|0)>>2,n=a[y],a[y]=n+1|0,a[q+(n<<2)>>2]=e,a[a[g]+(a[y]<<2)>>2]=0}else{if(1624==q){q=n+1|0;a[Hj>>2]=q;if(5<(q|0)){la(1,DQ|0,(j=h,h+=4,a[j>>2]=a[d+12>>2],j));h=l;return}q=(c+24*z+8|0)>>2;a[q]=0;n=fa(8);p=c+24*z+4|0;a[p>>2]=n;var s=a[q];a[q]=s+1|0;a[n+(s<<2)>>2]=e;a[a[p>>2]+(a[q]<<2)>>2]=0;a[y+(6*z|0)]=g;a[y+(6*z|0)+3]=0;y=c+24*z+16|0;f[0]=0;a[y>>2]=b[0];a[y+4>>2]=b[1]}}tk(e,l,k);d=(a[e+12>>2]|0)==(d|0)?a[k>>2]:a[l>>2];0!=(d|0)&&(k=c+24*z+12|0,y=a[k>>2],a[k>>2]=y+1|0,e=0==(y|0)?Cg(e,d):0,c=c+24*z+16|0,f[0]=e,a[c>>2]=b[0],a[c+4>>2]=b[1]);h=l}function CQ(c,d){var e,g,j,y,l,k,n,z,p,s=h;h+=72;var v=s+4,t=s+8;p=(d+4|0)>>2;l=0<(a[p]|0);a:do{if(l){var u=d|0,w=c+32|0;k=c+40|0;for(var A=g=0,B=0;;){var C=a[a[u>>2]+(B<<2)>>2],D=a[C+12>>2],D=(D|0)==(c|0)?a[C+16>>2]:D,C=D+32|0,C=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])-(b[0]=a[w>>2],b[1]=a[w+4>>2],f[0]),D=D+40|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),F=pi(C,D),A=A+C/F;g+=D/F;B=B+1|0;if((B|0)>=(a[p]|0)){j=g;y=A;n=w;z=n>>2;n=k;n>>=2;break a}}}else{y=j=0,n=c+32|0,z=n>>2,n=c+40|0,n>>=2}}while(0);u=pi(y,j);g=(b[0]=a[z],b[1]=a[z+1],f[0]);w=(b[0]=a[n],b[1]=a[n+1],f[0]);k=(c+104|0)>>2;l=(c+112|0)>>2;B=(b[0]=a[k],b[1]=a[k+1],f[0])+(b[0]=a[l],b[1]=a[l+1],f[0]);A=c+96|0;A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])+(a[a[c+20>>2]+260>>2]|0);A=B>A?B:A;B=y/u*A+g;A=j/u*A+w;u=t|0;y=(t|0)>>2;f[0]=g;a[y]=b[0];a[y+1]=b[1];j=(t+8|0)>>2;f[0]=w;a[j]=b[0];a[j+1]=b[1];C=t+16|0;f[0]=(2*g+B)/3;a[C>>2]=b[0];a[C+4>>2]=b[1];C=t+24|0;f[0]=(2*w+A)/3;a[C>>2]=b[0];a[C+4>>2]=b[1];C=t+32|0;f[0]=(2*B+g)/3;a[C>>2]=b[0];a[C+4>>2]=b[1];g=t+40|0;f[0]=(2*A+w)/3;a[g>>2]=b[0];a[g+4>>2]=b[1];w=t+48|0;f[0]=B;a[w>>2]=b[0];a[w+4>>2]=b[1];t=t+56|0;f[0]=A;a[t>>2]=b[0];a[t+4>>2]=b[1];t=h;h+=8;w=a[c+24>>2];0!=(w|0)&&(B=w+4|0,0!=(a[a[B>>2]+12>>2]|0)&&(a[t>>2]=c,a[t+4>>2]=0,w=(c+112|0)>>2,g=(b[0]=a[w],b[1]=a[w+1],f[0])&-1,A=u|0,C=c+32|0,A=(b[0]=a[A>>2],b[1]=a[A+4>>2],f[0])-(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]),C=u+8|0,D=c+40|0,B=J[a[a[B>>2]+12>>2]](t,A,(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0])-(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])),f[0]=g|0,a[w]=b[0],a[w+1]=b[1],jp(t,c,u,B)));h=t;z=(b[0]=a[y],b[1]=a[y+1],f[0])-(b[0]=a[z],b[1]=a[z+1],f[0]);t=(b[0]=a[j],b[1]=a[j+1],f[0])-(b[0]=a[n],b[1]=a[n+1],f[0]);n=(0>z?z-.5:z+.5)&-1|0;z=(0>t?t-.5:t+.5)&-1|0;t=(b[0]=a[k],b[1]=a[k+1],f[0]);t=256*(t+n)/(t+(b[0]=a[l],b[1]=a[l+1],f[0]));t=0<=t?Math.floor(t):Math.ceil(t);if(0<(a[p]|0)){l=d|0;for(k=0;;){j=a[a[l>>2]+(k<<2)>>2];tk(j,s,v);y=0==(j|0);a:do{if(!y){for(u=j;;){w=0==(u|0);b:do{if(!w){B=u;for(g=B>>2;;){A=a[g+3];(A|0)==(c|0)&&(C=B+68|0,f[0]=n,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+76|0,f[0]=z,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+84|0,f[0]=0,a[C>>2]=b[0],a[C+4>>2]=b[1],a[g+23]=0,m[B+96|0]=1,m[B+97|0]=0,m[B+98|0]=0,m[B+99|0]=0,m[B+100|0]=t,m[B+101|0]=0,a[g+26]=0);(a[g+4]|0)==(c|0)&&(C=B+28|0,f[0]=n,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+36|0,f[0]=z,a[C>>2]=b[0],a[C+4>>2]=b[1],C=B+44|0,f[0]=0,a[C>>2]=b[0],a[C+4>>2]=b[1],a[g+13]=0,m[B+56|0]=1,m[B+57|0]=0,m[B+58|0]=0,m[B+59|0]=0,m[B+60|0]=t,m[B+61|0]=0,a[g+16]=0);if(1!=m[B+124|0]<<24>>24){var E=u;e=E>>2;break}if(1!=m[A+162|0]<<24>>24){E=u;e=E>>2;break}if(1!=(a[A+188>>2]|0)){E=u;e=E>>2;break}g=a[a[A+184>>2]>>2];if(0==(g|0)){E=u;e=E>>2;break}else{B=g,g=B>>2}}for(;;){(a[e+3]|0)==(c|0)&&(g=E+68|0,f[0]=n,a[g>>2]=b[0],a[g+4>>2]=b[1],g=E+76|0,f[0]=z,a[g>>2]=b[0],a[g+4>>2]=b[1],g=E+84|0,f[0]=0,a[g>>2]=b[0],a[g+4>>2]=b[1],a[e+23]=0,m[E+96|0]=1,m[E+97|0]=0,m[E+98|0]=0,m[E+99|0]=0,m[E+100|0]=t,m[E+101|0]=0,a[e+26]=0);g=a[e+4];(g|0)==(c|0)&&(B=E+28|0,f[0]=n,a[B>>2]=b[0],a[B+4>>2]=b[1],B=E+36|0,f[0]=z,a[B>>2]=b[0],a[B+4>>2]=b[1],B=E+44|0,f[0]=0,a[B>>2]=b[0],a[B+4>>2]=b[1],a[e+13]=0,m[E+56|0]=1,m[E+57|0]=0,m[E+58|0]=0,m[E+59|0]=0,m[E+60|0]=t,m[E+61|0]=0,a[e+16]=0);if(1!=m[E+124|0]<<24>>24){break b}if(1!=m[g+162|0]<<24>>24){break b}if(1!=(a[g+180>>2]|0)){break b}g=a[a[g+176>>2]>>2];if(0==(g|0)){break b}else{E=g,e=E>>2}}}}while(0);u=a[u+180>>2];if(0==(u|0)){break a}}}}while(0);k=k+1|0;if((k|0)>=(a[p]|0)){break}}}e=c+161|0;m[e]=1;h=s}function fi(b,c,d){var g=h;h+=1024;var e=g|0,f=Ba(d);Ma(e,EQ|0,(j=h,h+=8,a[j>>2]=c,a[j+4>>2]=f,j));b=a[Bd+(b<<2)>>2];db(b,e);db(b,d);d=(b+4|0)>>2;e=a[d];e>>>0>2]>>>0||(na(b,1),e=a[d]);b=e+1|0;a[d]=b;m[e]=32;h=g}function FQ(c){var c=a[a[c+16>>2]+8>>2],d=a[U+20>>2];if((d|0)!=(a[U+16>>2]|0)){var e=a[a[a[Kb>>2]+8>>2]+8>>2];d>>>0>2]>>>0||(na(U+16|0,1),d=a[U+20>>2]);m[d]=0;d=a[U+16>>2];a[U+20>>2]=d;qc(c|0,e,d)}d=a[U+84>>2];(d|0)!=(a[U+80>>2]|0)&&(e=a[a[a[Kb>>2]+12>>2]+8>>2],d>>>0>2]>>>0||(na(U+80|0,1),d=a[U+84>>2]),m[d]=0,d=a[U+80>>2],a[U+84>>2]=d,qc(c|0,e,d));f[0]=1;a[kc+64>>2]=b[0];a[kc+68>>2]=b[1];f[0]=1;a[kc+80>>2]=b[0];a[kc+84>>2]=b[1]}function GQ(c){var c=a[a[c+16>>2]+8>>2],d=a[U+20>>2];if((d|0)!=(a[U+16>>2]|0)){var e=a[a[a[Kb>>2]+16>>2]+8>>2];d>>>0>2]>>>0||(na(U+16|0,1),d=a[U+20>>2]);m[d]=0;d=a[U+16>>2];a[U+20>>2]=d;qc(c|0,e,d)}d=a[U+36>>2];(d|0)!=(a[U+32>>2]|0)&&(e=a[a[a[Kb>>2]+24>>2]+8>>2],d>>>0>2]>>>0||(na(U+32|0,1),d=a[U+36>>2]),m[d]=0,d=a[U+32>>2],a[U+36>>2]=d,qc(c|0,e,d));d=a[U+52>>2];(d|0)!=(a[U+48>>2]|0)&&(e=a[a[a[Kb>>2]+20>>2]+8>>2],d>>>0>2]>>>0||(na(U+48|0,1),d=a[U+52>>2]),m[d]=0,d=a[U+48>>2],a[U+52>>2]=d,qc(c|0,e,d));d=a[U+84>>2];(d|0)!=(a[U+80>>2]|0)&&(e=a[a[a[Kb>>2]+28>>2]+8>>2],d>>>0>2]>>>0||(na(U+80|0,1),d=a[U+84>>2]),m[d]=0,d=a[U+80>>2],a[U+84>>2]=d,qc(c|0,e,d));d=a[U+100>>2];(d|0)!=(a[U+96>>2]|0)&&(e=a[a[a[Kb>>2]+36>>2]+8>>2],d>>>0>2]>>>0||(na(U+96|0,1),d=a[U+100>>2]),m[d]=0,d=a[U+96>>2],a[U+100>>2]=d,qc(c|0,e,d));d=a[U+116>>2];(d|0)!=(a[U+112>>2]|0)&&(e=a[a[a[Kb>>2]+32>>2]+8>>2],d>>>0>2]>>>0||(na(U+112|0,1),d=a[U+116>>2]),m[d]=0,d=a[U+112>>2],a[U+116>>2]=d,qc(c|0,e,d));f[0]=1;a[kc+72>>2]=b[0];a[kc+76>>2]=b[1];f[0]=1;a[kc+88>>2]=b[0];a[kc+92>>2]=b[1];f[0]=1;a[kc+16>>2]=b[0];a[kc+20>>2]=b[1];f[0]=1;a[kc+24>>2]=b[0];a[kc+28>>2]=b[1];f[0]=1;a[kc+48>>2]=b[0];a[kc+52>>2]=b[1];f[0]=1;a[kc+56>>2]=b[0];a[kc+60>>2]=b[1]}function HQ(c,d,e){var g,q,m=h;h+=1024;g=a[a[c+16>>2]+12>>2];zm(c);Am(c);0==(e|0)?(c=a[Bd+(g<<2)>>2],db(c,IQ|0)):(jy(c),c=a[Bd+(g<<2)>>2],db(c,JQ|0));q=(d|0)>>2;g=(d+8|0)>>2;Ap(c,(b[0]=a[q],b[1]=a[q+1],f[0]),(b[0]=a[g],b[1]=a[g+1],f[0]));var e=m|0,l=d+16|0;q=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])-(b[0]=a[q],b[1]=a[q+1],f[0]);d=d+24|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-(b[0]=a[g],b[1]=a[g+1],f[0]);d=0>d?d-.5&-1:d+.5&-1;Ma(e,Hl|0,(j=h,h+=8,a[j>>2]=(0>q?q-.5:q+.5)&-1,a[j+4>>2]=d,j));db(c,e);h=m}function zm(c){var d,e,g,q=h;h+=1040;var y,l=q+1024,c=(c+16|0)>>2;d=a[c];e=d+96|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);g=((a[d+12>>2]<<3)+kc|0)>>2;if(e!=(b[0]=a[g],b[1]=a[g+1],f[0])){f[0]=e,a[g]=b[0],a[g+1]=b[1],d=q|0,Ma(d,KQ|0,(j=h,h+=8,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),fi(a[a[c]+12>>2],ky|0,d),d=a[c]}g=a[d+104>>2];if(0!=(g|0)){fc(l,1024,q|0);var k=a[g>>2],n=0==(k|0);a:do{if(!n){e=(l+4|0)>>2;d=(l+8|0)>>2;for(var z=l|0,p=g,s=k;;){var p=p+4|0,v=m[s];102==v<<24>>24?0!=(ka(s,Hi|0)|0)&&(y=1783):115==v<<24>>24?0!=(ka(s,Cp|0)|0)&&(y=1783):98==v<<24>>24?0!=(ka(s,Wb|0)|0)&&(y=1783):y=1783;if(1783==y){y=0;for(db(l,s);;){var t=s+1|0;if(0==m[s]<<24>>24){break}else{s=t}}if(0!=m[t]<<24>>24){s=a[e];s>>>0>>0||(na(l,1),s=a[e]);v=s+1|0;a[e]=v;m[s]=40;if(0==m[t]<<24>>24){s=v}else{v=t;for(s=0;;){if(0!=(s|0)){var u=a[e];u>>>0>>0||(na(l,1),u=a[e]);a[e]=u+1|0;m[u]=44}for(db(l,v);;){var w=v+1|0;if(0==m[v]<<24>>24){break}else{v=w}}if(0==m[w]<<24>>24){break}else{v=w,s=s+1|0}}s=a[e]}s>>>0>>0||(na(l,1),s=a[e]);a[e]=s+1|0;m[s]=41}s=a[e];s>>>0>>0||(na(l,1),s=a[e]);m[s]=0;s=a[z>>2];a[e]=s;fi(a[a[c]+12>>2],ky|0,s)}s=a[p>>2];if(0==(s|0)){break a}}}}while(0);uc(l)}h=q}function Am(b){b=b+16|0;LQ(a[b>>2]+16|0);fi(a[a[b>>2]+12>>2],ly|0,yq|0)}function Bm(c,d,e,g){var q,y=h;h+=1024;c=a[Bd+(c<<2)>>2];q=(c+4|0)>>2;var l=a[q];l>>>0>2]>>>0||(na(c,1),l=a[q]);a[q]=l+1|0;m[l]=d;d=y|0;Ma(d,MQ|0,(j=h,h+=4,a[j>>2]=g,j));db(c,d);if(0<(g|0)){for(d=0;!(q=(d<<4)+e|0,l=(d<<4)+e+8|0,Ap(c,(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),d=d+1|0,(d|0)==(g|0));){}}h=y}function LQ(b){var c=h,d=m[b+1|0]&255,g=m[b+2|0]&255,e=m[b+3|0]&255;Ma(yq|0,NQ|0,(j=h,h+=16,a[j>>2]=m[b]&255,a[j+4>>2]=d,a[j+8>>2]=g,a[j+12>>2]=e,j));h=c}function jy(b){b=b+16|0;LQ(a[b>>2]+52|0);fi(a[a[b>>2]+12>>2],OQ|0,yq|0)}function PQ(c){var d=a[U+4>>2];if((d|0)==(a[U>>2]|0)){var e=c|0}else{var g=a[a[Kb>>2]>>2],e=c|0;if(0==(g|0)){var d=ac(c,e,Di|0,Y|0,202),g=a[a[Kb>>2]>>2]=d,h=a[U+4>>2]}else{h=d}d=a[g+8>>2];h>>>0>2]>>>0?g=h:(na(U|0,1),g=a[U+4>>2]);m[g]=0;g=a[U>>2];a[U+4>>2]=g;qc(e,d,g)}0!=(a[c+48>>2]|0)&&(c=a[a[a[Kb>>2]+4>>2]+8>>2],d=a[U+68>>2],d>>>0>2]>>>0||(na(U+64|0,1),d=a[U+68>>2]),m[d]=0,d=a[U+64>>2],a[U+68>>2]=d,qc(e,c,d));$J(e,QQ|0,RQ|0,Y|0);uc(U|0);uc(U+16|0);uc(U+32|0);uc(U+48|0);uc(U+64|0);uc(U+80|0);uc(U+96|0);uc(U+112|0);G(a[Kb>>2]);f[0]=1;a[kc>>2]=b[0];a[kc+4>>2]=b[1];f[0]=1;a[kc+32>>2]=b[0];a[kc+36>>2]=b[1]}function SQ(b,c,d){var g=Gb(8232);a[Kb>>2]=g;if(0==(a[b+208>>2]|0)){a[g>>2]=0;var e=g}else{g=ac(b,b|0,Di|0,Y|0,202),e=a[Kb>>2],a[e>>2]=g}g=b+149|0;0==(m[g]&8)<<24>>24?a[e+4>>2]=0:(e=ac(b,b|0,zq|0,Y|0,202),a[a[Kb>>2]+4>>2]=e);var e=b,b=(b+40|0)>>2,f=ac(e,a[a[b]>>2]|0,Di|0,Y|0,212);a[a[Kb>>2]+8>>2]=f;f=ac(e,a[a[b]>>2]|0,zq|0,Y|0,212);a[a[Kb>>2]+12>>2]=f;var f=ac(e,a[a[b]+4>>2]|0,Di|0,Y|0,286),h=a[Kb>>2];a[h+16>>2]=f;0==(d|0)?(a[h+20>>2]=0,d=h):(d=ac(e,a[a[b]+4>>2]|0,TQ|0,Y|0,286),f=a[Kb>>2],a[f+20>>2]=d,d=f);0==(c|0)?a[d+24>>2]=0:(c=ac(e,a[a[b]+4>>2]|0,UQ|0,Y|0,286),d=a[Kb>>2],a[d+24>>2]=c);c=d;0==(m[g]&1)<<24>>24?a[c+28>>2]=0:(c=ac(e,a[a[b]+4>>2]|0,zq|0,Y|0,286),d=a[Kb>>2],a[d+28>>2]=c,c=d);0==(m[g]&2)<<24>>24?a[c+32>>2]=0:(c=ac(e,a[a[b]+4>>2]|0,VQ|0,Y|0,286),d=a[Kb>>2],a[d+32>>2]=c,c=d);0==(m[g]&4)<<24>>24?(a[c+36>>2]=0,g=c+40|0):(g=ac(e,a[a[b]+4>>2]|0,WQ|0,Y|0,286),e=a[Kb>>2],a[e+36>>2]=g,g=e+40|0);fc(U|0,1024,g);g=a[Kb>>2];fc(U+16|0,1024,g+1064|0);g=a[Kb>>2];fc(U+32|0,1024,g+2088|0);g=a[Kb>>2];fc(U+48|0,1024,g+3112|0);g=a[Kb>>2];fc(U+64|0,1024,g+4136|0);g=a[Kb>>2];fc(U+80|0,1024,g+5160|0);g=a[Kb>>2];fc(U+96|0,1024,g+6184|0);g=a[Kb>>2];g=g+7208|0;fc(U+112|0,1024,g)}function Aq(c,d,e){e>>=2;1==(c|0)?(a[d>>2]=1,f[0]=10):2==(c|0)?(a[d>>2]=2,f[0]=10):(a[d>>2]=0,f[0]=0);a[e]=b[0];a[e+1]=b[1]}function XQ(b,c,d,g){var e;a[b>>2]=0;for(var f=a[my>>2],h=195075,j=-1,n=0;(n|0)<(f|0);){var m=(D[ny+(n<<1)>>1]<<16>>16)-c|0,p=(D[oy+(n<<1)>>1]<<16>>16)-d|0,s=(D[py+(n<<1)>>1]<<16>>16)-g|0,m=p*p+m*m+s*s|0;if((m|0)<(h|0)){if(0==(m|0)){var v=n;e=1876;break}else{h=m,j=n}}n=n+1|0}if(1876==e){return v}a[my>>2]=f+1|0;if(256==(f|0)){return j}D[ny+(n<<1)>>1]=c&65535;D[oy+(n<<1)>>1]=d&65535;D[py+(n<<1)>>1]=g&65535;a[b>>2]=1;return n}function YQ(c,d,e,g){var q=h,y=a[a[c+16>>2]+16>>2],l=a[rf>>2],k=g+24|0,n=c+348|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])*(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=0!=(a[c+356>>2]|0)?1.5707963267948966:0,z=a[g+4>>2],z=0==(z|0)?-1:a[z+20>>2],p=m[g+72|0]<<24>>24,p=108==(p|0)?0:114==(p|0)?2:1,d=0>d?d-.5:d+.5,e=0>e?e-.5:e+.5,g=ZQ(a[g>>2]);N(c,$Q|0,(j=h,h+=72,a[j>>2]=4,a[j+4>>2]=p,a[j+8>>2]=y,a[j+12>>2]=l,a[j+16>>2]=0,a[j+20>>2]=z,f[0]=k,a[j+24>>2]=b[0],a[j+28>>2]=b[1],f[0]=n,a[j+32>>2]=b[0],a[j+36>>2]=b[1],a[j+40>>2]=6,f[0]=0,a[j+44>>2]=b[0],a[j+48>>2]=b[1],f[0]=0,a[j+52>>2]=b[0],a[j+56>>2]=b[1],a[j+60>>2]=d&-1,a[j+64>>2]=e&-1,a[j+68>>2]=g,j));h=q}function aR(b,c){var d,g=h;h+=4;var e;d=(c+32|0)>>2;var f=a[d];if(5==(f|0)){for(f=0;;){var l=a[Mf+(f<<2)>>2];if(8==(f|0)){e=1906;break}var k=a[c>>2];if(m[l]<<24>>24==m[k]<<24>>24&&0==(ka(l,k)|0)){break}f=f+1|0}1906!=e&&(a[c>>2]=f)}else{1==(f|0)?(k=c+1|0,l=c+2|0,e=XQ(g,m[c]&255,m[k]&255,m[l]&255)+32|0,0!=(a[g>>2]|0)&&(f=m[c]&255,k=m[k]&255,l=m[l]&255,N(b,bR|0,(j=h,h+=20,a[j>>2]=0,a[j+4>>2]=e,a[j+8>>2]=f,a[j+12>>2]=k,a[j+16>>2]=l,j))),a[c>>2]=e):sa(qy|0,165,cR|0,vd|0)}a[d]=6;h=g}function dR(c,d,e){var g,q=h;h+=12;var m=q+4,l=a[c+16>>2];g=l>>2;var l=l+96|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1,k=a[g+4],n=a[g+13],z=a[rf>>2];Aq(a[g+22],q,m);g=d|0;var p=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(0>p?p-.5:p+.5)&-1;var s=d+8|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=(0>v?v-.5:v+.5)&-1,t=d+16|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0]),p=t-p,d=d+24|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),v=d-v,u=a[q>>2],m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);N(c,eR|0,(j=h,h+=88,a[j>>2]=1,a[j+4>>2]=1,a[j+8>>2]=u,a[j+12>>2]=l,a[j+16>>2]=k,a[j+20>>2]=n,a[j+24>>2]=z,a[j+28>>2]=0,a[j+32>>2]=0!=(e|0)?20:-1,f[0]=m,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,f[0]=0,a[j+48>>2]=b[0],a[j+52>>2]=b[1],a[j+56>>2]=g,a[j+60>>2]=s,a[j+64>>2]=(0>p?p-.5:p+.5)&-1,a[j+68>>2]=(0>v?v-.5:v+.5)&-1,a[j+72>>2]=g,a[j+76>>2]=s,a[j+80>>2]=(0>t?t-.5:t+.5)&-1,a[j+84>>2]=(0>d?d-.5:d+.5)&-1,j));h=q}function fR(c,d,e,g,q,m){var l,k,n,g=h;h+=92;var q=g+4,z=g+12,p=g+76,s=c+16|0,v=a[s>>2],t=v+96|0,t=(b[0]=a[t>>2],b[1]=a[t+4>>2],f[0])&-1,u=a[v+16>>2],w=a[rf>>2],A=3<(e|0);A||sa(qy|0,354,gR|0,hR|0);var B=Gb(140*e+140|0);Aq(a[v+88>>2],g,q);0==(m|0)?(m=-1,s=0,v=4):(m=20,s=a[a[s>>2]+52>>2],v=5);var C=d|0;l=(b[0]=a[C>>2],b[1]=a[C+4>>2],f[0]);C=z+48|0;n=C|0;f[0]=l;a[n>>2]=b[0];a[n+4>>2]=b[1];n=d+8|0;k=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);n=(z+56|0)>>2;f[0]=k;a[n]=b[0];a[n+1]=b[1];var D=Ma(B,Cm|0,(j=h,h+=8,a[j>>2]=(0>l?l-.5:l+.5)&-1,a[j+4>>2]=(0>k?k-.5:k+.5)&-1,j));a:do{if(A){var E=z|0;k=z>>2;l=C>>2;for(var F=p|0,H=p+8|0,I=z+16|0,J=z+24|0,K=z+32|0,L=z+40|0,Q=z+48|0,S=0,R=1,U=B+D|0,W=3;;){a[k]=a[l];a[k+1]=a[l+1];a[k+2]=a[l+2];a[k+3]=a[l+3];var V=S+1|0,Y=(V<<4)+d|0,Y=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]);f[0]=Y;a[I>>2]=b[0];a[I+4>>2]=b[1];V=(V<<4)+d+8|0;V=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]);f[0]=V;a[J>>2]=b[0];a[J+4>>2]=b[1];V=S+2|0;Y=(V<<4)+d|0;Y=(b[0]=a[Y>>2],b[1]=a[Y+4>>2],f[0]);f[0]=Y;a[K>>2]=b[0];a[K+4>>2]=b[1];V=(V<<4)+d+8|0;V=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]);f[0]=V;a[L>>2]=b[0];a[L+4>>2]=b[1];S=S+3|0;V=(S<<4)+d|0;V=(b[0]=a[V>>2],b[1]=a[V+4>>2],f[0]);f[0]=V;a[Q>>2]=b[0];a[Q+4>>2]=b[1];S=(S<<4)+d+8|0;S=(b[0]=a[S>>2],b[1]=a[S+4>>2],f[0]);f[0]=S;a[n]=b[0];a[n+1]=b[1];for(S=1;;){Ld(p,E,3,(S|0)/6,0,0);var V=(b[0]=a[F>>2],b[1]=a[F+4>>2],f[0]),Z=(b[0]=a[H>>2],b[1]=a[H+4>>2],f[0]),V=0>V?V-.5:V+.5,Z=0>Z?Z-.5:Z+.5,Z=U+Ma(U,Cm|0,(j=h,h+=8,a[j>>2]=V&-1,a[j+4>>2]=Z&-1,j))|0,U=S+1|0;if(7==(U|0)){break}else{S=U,U=Z}}R=R+6|0;V=W+3|0;if((V|0)<(e|0)){S=W,U=Z,W=V}else{var $=R;break a}}}else{$=1}}while(0);d=a[g>>2];e=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);N(c,iR|0,(j=h,h+=60,a[j>>2]=3,a[j+4>>2]=v,a[j+8>>2]=d,a[j+12>>2]=t,a[j+16>>2]=u,a[j+20>>2]=s,a[j+24>>2]=w,a[j+28>>2]=0,a[j+32>>2]=m,f[0]=e,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=$,j));N(c,jR|0,(j=h,h+=4,a[j>>2]=B,j));G(B);if(0<($|0)){d=$-1|0;for(e=0;!(N(c,kR|0,(j=h,h+=4,a[j>>2]=0!=(e%d|0)&1,j)),e=e+1|0,(e|0)==($|0));){}}y(c,wd|0);h=g}function ry(c,d,e,g){var q=h,m=0<(e|0);a:do{if(m){for(var l=c,k=0;;){var n=(k<<4)+d|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),n=0>n?n-.5:n+.5,z=(k<<4)+d+8|0,z=(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),z=0>z?z-.5:z+.5;N(l,Cm|0,(j=h,h+=8,a[j>>2]=n&-1,a[j+4>>2]=z&-1,j));k=k+1|0;if((k|0)==(e|0)){break a}}}}while(0);0!=(g|0)&&(e=d|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),d=d+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),N(c,Cm|0,(j=h,h+=8,a[j>>2]=(0>e?e-.5:e+.5)&-1,a[j+4>>2]=(0>d?d-.5:d+.5)&-1,j)));y(c,wd|0);h=q}function ZQ(b){var c=h,d=a[Ij>>2];0==(d|0)&&(a[Bq>>2]=64,d=Gb(64),a[Ij>>2]=d);var g=m[b];if(0==g<<24>>24){return m[d]=0,h=c,d}for(var e=d,d=0;;){var b=b+1|0,f=a[Bq>>2];(d|0)>(f-8|0)?(f<<=1,a[Bq>>2]=f,f=mc(a[Ij>>2],f),a[Ij>>2]=f,f=f+d|0):f=e;-1>24?(92==g<<24>>24&&(m[f]=92,d=d+1|0,f=f+1|0),m[f]=g,d=d+1|0,f=f+1|0):(m[f]=92,Ma(f+1|0,lR|0,(j=h,h+=4,a[j>>2]=g&255,j)),d=d+4|0,f=f+4|0);g=m[b];if(0==g<<24>>24){break}else{e=f}}d=a[Ij>>2];m[f]=0;h=c;return d}function mR(b){var c=a[b+16>>2],d=a[b+64>>2];if(1==(d|0)){var d=c+148|0,g=a[d>>2];0!=(g|0)&&0!=m[g]<<24>>24&&(y(b,sy|0),y(b,nc(a[d>>2])),y(b,gc|0),y(b,nc(a[a[c+8>>2]+12>>2])),y(b,wd|0))}else{3==(d|0)?(c=nc(a[a[c+8>>2]+12>>2]),y(b,nR|0),y(b,c),y(b,oR|0),y(b,c),y(b,ty|0)):0==(d|0)&&(y(b,pR|0),c=c+148|0,d=a[c>>2],0!=(d|0)&&0!=m[d]<<24>>24&&(y(b,sy|0),y(b,nc(a[c>>2])),y(b,wd|0)))}}function Cq(c,d,e,g,q,D,l,k){var n,z=h;if(!(0==(e|0)|0==(g|0))){(a[uy>>2]|0)<(g|0)&&(n=g+10|0,a[uy>>2]=n,n=mc(a[Ue>>2],n<<3),a[Ue>>2]=n);n=0<(g|0);a:do{if(n){for(var p=0;;){var s=(p<<4)+e|0,v=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),s=a[Ue>>2];a[s+(p<<3)>>2]=(0>v?v-.5:v+.5)&-1;v=(p<<4)+e+8|0;v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);a[s+(p<<3)+4>>2]=(0>v?v-.5:v+.5)&-1;p=p+1|0;if((p|0)==(g|0)){break a}}}}while(0);e=c+64|0;p=a[e>>2];s=0==(q|0);do{if(!(0!=(p|0)|s)&&0!=m[q]<<24>>24){if(2==(d|0)){N(c,qR|0,(j=h,h+=4,a[j>>2]=q,j));a:do{if(n){for(d=0;;){if(q=a[Ue>>2],D=a[q+(d<<3)+4>>2],N(c,rR|0,(j=h,h+=8,a[j>>2]=a[q+(d<<3)>>2],a[j+4>>2]=D,j)),d=d+1|0,(d|0)==(g|0)){break a}}}}while(0);y(c,wd|0)}else{0==(d|0)?(e=a[Ue>>2]>>2,g=a[e],d=a[e+3],D=a[e+2],e=a[e+1],N(c,sR|0,(j=h,h+=20,a[j>>2]=q,a[j+4>>2]=g,a[j+8>>2]=d,a[j+12>>2]=D,a[j+16>>2]=e,j))):1==(d|0)?(D=a[Ue>>2]>>2,g=a[D],d=a[D+1],D=a[D+2]-g|0,N(c,tR|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=g,a[j+8>>2]=d,a[j+12>>2]=D,j))):sa(Dq|0,65,Eq|0,vd|0)}h=z;return}}while(0);if(!(1!=(p|0)|s)&&0!=m[q]<<24>>24){0==(d|0)?(g=a[Ue>>2]>>2,d=a[g+3],e=a[g+2],n=a[g+1],N(c,uR|0,(j=h,h+=24,a[j>>2]=a[g],a[j+4>>2]=d,a[j+8>>2]=e,a[j+12>>2]=n,a[j+16>>2]=q,a[j+20>>2]=D,j))):sa(Dq|0,77,Eq|0,vd|0);h=z;return}if(2>(p-2|0)>>>0){1==(d|0)?y(c,vR|0):0==(d|0)?y(c,wR|0):2==(d|0)?y(c,xR|0):sa(Dq|0,93,Eq|0,vd|0);0!=(k|0)&&0!=m[k]<<24>>24&&(y(c,yR|0),y(c,Bo(k)),y(c,ue|0));!s&&0!=m[q]<<24>>24&&(y(c,zR|0),y(c,Bo(q)),y(c,ue|0));0!=(l|0)&&0!=m[l]<<24>>24&&(y(c,vy|0),y(c,nc(l)),y(c,ue|0));0!=(D|0)&&0!=m[D]<<24>>24&&(y(c,AR|0),y(c,nc(D)),y(c,ue|0));y(c,BR|0);y(c,CR|0);a:do{if(2==(d|0)){if(q=a[Ue>>2],D=a[q+4>>2],N(c,DR|0,(j=h,h+=8,a[j>>2]=a[q>>2],a[j+4>>2]=D,j)),1<(g|0)){for(q=1;;){if(D=a[Ue>>2],n=a[D+(q<<3)+4>>2],N(c,ER|0,(j=h,h+=8,a[j>>2]=a[D+(q<<3)>>2],a[j+4>>2]=n,j)),q=q+1|0,(q|0)==(g|0)){break a}}}}else{1==(d|0)?(n=a[Ue>>2]>>2,q=a[n],D=a[n+1],n=a[n+2]-q|0,N(c,FR|0,(j=h,h+=12,a[j>>2]=q,a[j+4>>2]=D,a[j+8>>2]=n,j))):0==(d|0)&&(q=a[Ue>>2]>>2,D=a[q+3],n=a[q+2],l=a[q+1],N(c,GR|0,(j=h,h+=16,a[j>>2]=a[q],a[j+4>>2]=D,a[j+8>>2]=n,a[j+12>>2]=l,j)))}}while(0);3==(a[e>>2]|0)?y(c,Dm|0):y(c,ty|0)}}h=z}function HR(b){var c,d=b>>2,e=h;h+=8;var f=a[d+4];m[Fq]=0;c=(b+12|0)>>2;var D=f+8|0;if(0==(a[a[c]+28>>2]|0)){N(b,IR|0,(j=h,h+=4,a[j>>2]=a[a[D>>2]+12>>2],j));var l=b+64|0;2==(a[l>>2]|0)?y(b,JR|0):y(b,KR|0);if(0==(a[a[c]+20>>2]|0)){if(2==(a[l>>2]|0)){var l=a[d+113],k=a[d+114],n=a[d+115];N(b,wy|0,(j=h,h+=16,a[j>>2]=a[d+112],a[j+4>>2]=l,a[j+8>>2]=k,a[j+12>>2]=n,j))}else{y(b,LR|0)}}y(b,MR|0);np(b,a[a[c]+24>>2],I|0);d=h;l=a[bj>>2];if(0!=(l|0)&&(l=J[a[l>>2]](l,0,128),0!=(l|0))){for(;!(0==m[l+16|0]<<24>>24&&(N(b,NR|0,(j=h,h+=4,a[j>>2]=a[l+12>>2],j)),y(b,OR|0),Pu(b,l),y(b,PR|0),y(b,QR|0)),k=a[bj>>2],l=J[a[k>>2]](k,l,8),0==(l|0));){}}h=d;c=a[a[c]+20>>2];0!=(c|0)&&(d=e|0,a[d>>2]=a[c>>2],a[e+4>>2]=0,np(b,0,d))}a[Gq>>2]=1==m[a[D>>2]+151|0]<<24>>24&1;m[Fq]||(y(b,RR|0),m[Fq]=1);f=a[f+148>>2];0!=(f|0)&&N(b,SR|0,(j=h,h+=4,a[j>>2]=f,j));h=e}function TR(c){var d,e=c>>2,g=h,q=a[e+112],m=a[e+113],l=a[e+114],k=a[e+115];d=(c+12|0)>>2;var n=a[a[d]+28>>2]+1|0;N(c,UR|0,(j=h,h+=8,a[j>>2]=n,a[j+4>>2]=n,j));0==(a[a[d]+20>>2]|0)&&N(c,VR|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=m,a[j+8>>2]=l,a[j+12>>2]=k,j));var z=c+356|0,n=0!=(a[z>>2]|0)?WR|0:XR|0;N(c,YR|0,(j=h,h+=4,a[j>>2]=n,j));n=c+64|0;1==(a[n>>2]|0)&&N(c,ZR|0,(j=h,h+=8,a[j>>2]=l,a[j+4>>2]=k,j));var p=a[e+49],s=a[e+50];N(c,$R|0,(j=h,h+=12,a[j>>2]=a[e+48],a[j+4>>2]=p,a[j+8>>2]=s,j));0==(a[a[d]+20>>2]|0)&&N(c,aS|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=m,a[j+8>>2]=l-q|0,a[j+12>>2]=k-m|0,j));var e=c+480|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),p=c+488|0,p=(b[0]=a[p>>2],b[1]=a[p+4>>2],f[0]),z=a[z>>2],s=c+496|0,s=(b[0]=a[s>>2],b[1]=a[s+4>>2],f[0]),v=c+504|0,v=(b[0]=a[v>>2],b[1]=a[v+4>>2],f[0]);N(c,bS|0,(j=h,h+=36,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=p,a[j+8>>2]=b[0],a[j+12>>2]=b[1],a[j+16>>2]=z,f[0]=s,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=v,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));if(1==(a[n>>2]|0)){if(14399<(l|0)|14399<(k|0)){J[a[a[d]+16>>2]](cS|0,(j=h,h+=12,a[j>>2]=l,a[j+4>>2]=k,a[j+8>>2]=14400,j))}N(c,dS|0,(j=h,h+=16,a[j>>2]=q,a[j+4>>2]=m,a[j+8>>2]=l,a[j+12>>2]=k,j))}h=g}function eS(c,d,e,g){var h;h=(c+16|0)>>2;do{if(0!=(g|0)){var j=a[h],l=j+76|0;if(.5<(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){Nf(c,j+52|0);j=c;y(j,Jj|0);var l=d|0,k=d+8|0;Hd(j,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));y(j,Kj|0);l=1<(e|0);a:do{if(l){for(k=1;;){var n=(k<<4)+d|0,m=(k<<4)+d+8|0;Hd(j,(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]));y(j,Hq|0);k=k+1|0;if((k|0)==(e|0)){break a}}}}while(0);y(j,xy|0)}}}while(0);g=a[h]+40|0;if(.5<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])){Em(c);Nf(c,a[h]+16|0);y(c,Jj|0);h=d|0;g=d+8|0;Hd(c,(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]));y(c,Kj|0);h=1<(e|0);a:do{if(h){for(g=1;;){if(j=(g<<4)+d|0,l=(g<<4)+d+8|0,Hd(c,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),y(c,Hq|0),g=g+1|0,(g|0)==(e|0)){break a}}}}while(0);y(c,fS|0)}}function gS(c,d,e,g,h,j){g=(c+16|0)>>2;do{if(0!=(j|0)){var h=a[g],l=h+76|0;if(.5<(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){Nf(c,h+52|0);h=c;y(h,Jj|0);var l=d|0,k=d+8|0;Hd(h,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]));y(h,Kj|0);l=1<(e|0);a:do{if(l){for(k=1;;){if(kf(h,(k<<4)+d|0,3),y(h,yy|0),k=k+3|0,(k|0)>=(e|0)){break a}}}}while(0);y(h,xy|0)}}}while(0);j=a[g]+40|0;if(.5<(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0])){Em(c);Nf(c,a[g]+16|0);y(c,Jj|0);j=d|0;g=d+8|0;Hd(c,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]));y(c,Kj|0);j=1<(e|0);a:do{if(j){for(g=1;;){if(kf(c,(g<<4)+d|0,3),y(c,yy|0),g=g+3|0,(g|0)>=(e|0)){break a}}}}while(0);y(c,zy|0)}}function Nf(c,d){var e=h;if(0!=(d|0)){var g=a[a[c+16>>2]+4>>2],g=2==(g|0)?jh|0:3==(g|0)?Dg|0:0==(g|0)||1==(g|0)?Yf|0:hS|0,m=d|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),y=d+8|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),l=d+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,iS|0,(j=h,h+=28,f[0]=m,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=y,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=l,a[j+16>>2]=b[0],a[j+20>>2]=b[1],a[j+24>>2]=g,j))}h=e}function Em(c){var d=h,e,g=c+16|0,q=a[g>>2],D=q+96|0,q=a[q+104>>2];gj(c,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]));for(y(c,jS|0);;){if(0==(q|0)){e=2216;break}D=q+4|0;q=a[q>>2];if(0==(q|0)){e=2217;break}if(0!=(ka(q,Cp|0)|0)){for(var l=q;;){var k=l+1|0;if(0==m[l]<<24>>24){break}else{l=k}}l=0==m[k]<<24>>24;a:do{if(!l){for(var n=k;;){for(N(c,kS|0,(j=h,h+=4,a[j>>2]=n,j));;){var z=n+1|0;if(0==m[n]<<24>>24){break}else{n=z}}if(0==m[z]<<24>>24){break a}else{n=z}}}}while(0);0==(ka(q,qh|0)|0)&&(l=a[g>>2]+96|0,f[0]=0,a[l>>2]=b[0],a[l+4>>2]=b[1]);N(c,lS|0,(j=h,h+=4,a[j>>2]=q,j))}q=D}2216==e?h=d:2217==e&&(h=d)}function mS(c,d,e,g){var q=h,D=a[c+16>>2];y(c,nS|0);var l=m[g+72|0]<<24>>24;108==(l|0)?y(c,oS|0):114==(l|0)?y(c,pS|0):y(c,qS|0);l=g+48|0;e=-((b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])+e);N(c,rS|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));d=a[g+4>>2];if(0==(d|0)){N(c,sS|0,(j=h,h+=4,a[j>>2]=a[g+20>>2],j))}else{e=a[a[a[c>>2]+128>>2]+252>>2];if(1==(e|0)){var l=d+16|0,k=d+8|0,e=d|0}else{2==(e|0)?(l=d+32|0,k=d+28|0,e=d+24|0):(l=d+16|0,k=d+8|0,e=d+4|0)}var l=a[l>>2],k=a[k>>2],n=a[d+12>>2];N(c,tS|0,(j=h,h+=4,a[j>>2]=a[e>>2],j));d=a[d+24>>2];0!=(d|0)&&N(c,uS|0,(j=h,h+=4,a[j>>2]=d,j));y(c,ue|0);0!=(k|0)&&N(c,vS|0,(j=h,h+=4,a[j>>2]=k,j));0!=(n|0)&&N(c,wS|0,(j=h,h+=4,a[j>>2]=n,j));0!=(l|0)&&N(c,xS|0,(j=h,h+=4,a[j>>2]=l,j))}d=g+24|0;N(c,yS|0,(j=h,h+=8,f[0]=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));d=D+16|0;D=a[D+48>>2];5==(D|0)?0!=(Lb(a[d>>2],Ac|0)|0)&&N(c,zS|0,(j=h,h+=4,a[j>>2]=a[d>>2],j)):1==(D|0)?(D=m[d+1|0]&255,e=m[d+2|0]&255,N(c,AS|0,(j=h,h+=12,a[j>>2]=m[d]&255,a[j+4>>2]=D,a[j+8>>2]=e,j))):sa(Ay|0,379,BS|0,vd|0);y(c,CS|0);g=(g|0)>>2;g=a[g];g=nc(g);y(c,g);y(c,DS|0);h=q}function Fm(c,d){var e,g=h,q=a[c+16>>2];e=q>>2;y(c,ES|0);if(0==(d|0)){y(c,sg|0)}else{var D=q+52|0;FS(c,D);1==(a[e+21]|0)&&(D=m[D+3|0],0==D<<24>>24||-1==D<<24>>24||N(c,GS|0,(j=h,h+=8,f[0]=(D&255)/255,a[j>>2]=b[0],a[j+4>>2]=b[1],j)))}y(c,HS|0);D=q+16|0;FS(c,D);q=q+96|0;q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]);1!=q&&N(c,IS|0,(j=h,h+=8,f[0]=q,a[j>>2]=b[0],a[j+4>>2]=b[1],j));q=a[e+22];1==(q|0)?N(c,By|0,(j=h,h+=4,a[j>>2]=JS|0,j)):2==(q|0)&&N(c,By|0,(j=h,h+=4,a[j>>2]=KS|0,j));1==(a[e+12]|0)&&(e=m[D+3|0],0==e<<24>>24||-1==e<<24>>24||N(c,LS|0,(j=h,h+=8,f[0]=(e&255)/255,a[j>>2]=b[0],a[j+4>>2]=b[1],j)));y(c,ue|0);h=g}function FS(b,c){var d=h,e=c,c=h;h+=36;for(var e=e>>2,f=c>>2,D=e+9;e>2];5==(e|0)?y(b,a[c>>2]):1==(e|0)?0==m[c+3|0]<<24>>24?y(b,sg|0):(e=a[c>>2],N(b,Iq|0,(j=h,h+=12,a[j>>2]=e&255,a[j+4>>2]=e>>>8&255,a[j+8>>2]=e>>>16&255,j))):sa(Ay|0,86,MS|0,vd|0);h=d}function NS(c,d,e,g){var q=h,D=a[c+16>>2];if(0!=(a[D+88>>2]|0)){var l=g+24|0,k=c+348|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])*(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])&-1;0!=(l|0)&&(Gm(c),y(c,OS|0),Hd(c,d,e-.55*(l|0)),y(c,PS|0),y(c,a[g>>2]),y(c,QS|0),y(c,Lj|0),gi(c,D+16|0),y(c,RS|0),d=a[g+4>>2],d=a[(0==(d|0)?g+20|0:d+4|0)>>2],y(c,ue|0),y(c,d),y(c,ue|0),N(c,SS|0,(j=h,h+=4,a[j>>2]=l,j)),g=m[g+72|0]<<24>>24,108==(g|0)?y(c,TS|0):114==(g|0)&&y(c,US|0),Mj(c),y(c,wd|0))}h=q}function VS(c,d,e){var g,h,j,l=a[c+16>>2];j=(l+88|0)>>2;if(0!=(a[j]|0)){h=d+16|0;var k=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]);h=(d|0)>>2;var n=(b[0]=a[h],b[1]=a[h+1],f[0]);g=d+24|0;var m=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(d+8|0)>>2;var p=(b[0]=a[g],b[1]=a[g+1],f[0]);f[0]=n-(k-n);a[h]=b[0];a[h+1]=b[1];f[0]=p-(m-p);a[g]=b[0];a[g+1]=b[1];Gm(c);y(c,WS|0);kf(c,d,2);y(c,Lj|0);0==(e|0)?0==(a[tg>>2]|0)?y(c,oj|0):y(c,hf|0):gi(c,l+52|0);1==(a[tg>>2]|0)&&(a[tg>>2]=0);y(c,Jq|0);d=l+96|0;gj(c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]));y(c,Cy|0);gi(c,l+16|0);l=a[j];1==(l|0)?(y(c,Hm|0),j=a[j]):j=l;2==(j|0)&&y(c,Im|0);Mj(c);y(c,wd|0)}}function XS(c,d,e,g){var h,j=a[c+16>>2];h=(j+88|0)>>2;0!=(a[h]|0)&&(Gm(c),y(c,YS|0),kf(c,d,e),y(c,Lj|0),0==(g|0)?0==(a[tg>>2]|0)?y(c,oj|0):y(c,hf|0):gi(c,j+52|0),1==(a[tg>>2]|0)&&(a[tg>>2]=0),y(c,Jq|0),d=j+96|0,gj(c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),y(c,Cy|0),gi(c,j+16|0),j=a[h],1==(j|0)?(y(c,Hm|0),h=a[h]):h=j,2==(h|0)&&y(c,Im|0),Mj(c),y(c,wd|0))}function Gm(b){0==m[b+140|0]<<24>>24?y(b,ZS|0):y(b,a[b+144>>2])}function gi(b,c){var d=h,e=c,c=h;h+=36;for(var e=e>>2,f=c>>2,D=e+9;e>2];1==(e|0)?0==m[c+3|0]<<24>>24?y(b,oj|0):(e=a[c>>2],N(b,Iq|0,(j=h,h+=12,a[j>>2]=e&255,a[j+4>>2]=e>>>8&255,a[j+8>>2]=e>>>16&255,j))):5==(e|0)?y(b,a[c>>2]):sa(Dy|0,51,$S|0,vd|0);h=d}function Mj(b){var c,d=h;c=a[b+16>>2]>>2;var e=a[c+3];if(9==(e|0)||2==(e|0)||3==(e|0)){var f=a[a[c+2]>>2]>>8,m=Dg|0,l=1}else{8==(e|0)?(f=a[a[c+2]>>2]>>8,m=jh|0,l=1):0==(e|0)?(f=a[a[c+2]>>2]>>8,m=Yf|0,l=1):4==(e|0)?(f=a[a[c+2]>>2]>>8,m=aT|0,l=0):10==(e|0)?(f=a[a[c+2]>>2]>>8,m=jh|0,l=0):11==(e|0)||6==(e|0)||7==(e|0)?(f=a[a[c+2]>>2]>>8,m=Dg|0,l=0):5==(e|0)?(f=a[a[c+2]>>2]>>8,m=Yf|0,l=0):1==(e|0)?(f=a[a[c+2]>>2]>>8,m=Yf|0,l=1):sa(Dy|0,148,bT|0,vd|0)}N(b,cT|0,(j=h,h+=12,a[j>>2]=l,a[j+4>>2]=m,a[j+8>>2]=f,j));h=d}function Of(b){var c=h;h+=16;var d,e=a[Kq>>2];if(0==(e|0)){a[Lq>>2]=64;var e=Cb(64),f=a[Kq>>2]=e}else{f=e}var e=c+15|0,j=c+14|0,l=b,k=f,n=b=0,z=0,p=0,s=f;a:for(;;){for(var v=0==(b|0),f=l,t=k,l=z,k=p,u=s;;){if(0==(f|0)){d=2456;break a}var w=m[f];if(0==w<<24>>24){d=2455;break a}var A=a[Lq>>2];(n|0)>(A-8|0)?(A<<=1,a[Lq>>2]=A,w=wb(u,A),a[Kq>>2]=w,A=w+n|0,p=m[f]):(A=t,p=w,w=u);if(32==p<<24>>24){d=2433;break}else{if(38==p<<24>>24){d=2432;break}else{if(60==p<<24>>24){var y=wo|0,C=4;d=2447;break}else{if(45==p<<24>>24){var D=k,E=l,F=5,G=kt|0;break}else{if(62==p<<24>>24){var H=4,I=yo|0;d=2449;break}}}}}if(34==p<<24>>24){y=zo|0;C=6;d=2447;break}else{if(39==p<<24>>24){H=5;I=Ao|0;d=2449;break}}if(0<=p<<24>>24){y=f;C=1;d=2447;break}for(var J=0,K=127,L=p&255;;){var N=J+1|0,S=K&L,K=K>>>1;if(K>>>0>>0){J=N,L=S}else{break}}0<(J|0)?(K=N,J=S):(K=l,J=(k<<6)+S|0);K=K-1|0;L=f+1|0;if(0<(K|0)){f=L,t=A,l=K,k=J,u=w}else{d=2443;break}}do{if(2433==d){v?d=2436:32==m[b]<<24>>24?(y=lt|0,C=6,d=2447):d=2436}else{if(2432==d){d=f+1|0;p=m[d];if(35!=p<<24>>24){for(;;){s=d+1|0;if(!(26>(p-97&255)|26>(p-65&255))){var Q=p;break}d=s;p=m[s]}}else{if(d=f+2|0,p=m[d],120==p<<24>>24||88==p<<24>>24){for(d=f+3|0;;){if(p=m[d],10>(p-48&255)|6>(p-97&255)|6>(p-65&255)){d=d+1|0}else{Q=p;break}}}else{for(;;){s=d+1|0;if(10<=(p-48&255)){Q=p;break}d=s;p=m[s]}}}d=59==Q<<24>>24;d&=1;0==(d|0)?(y=xo|0,C=5,d=2447):d=2436}else{if(2443==d){d=0;m[e]=59;p=j;s=3;for(z=J;;){var R=p-1|0;m[p]=((z>>>0)%10|48)&255;var U=Math.floor((z>>>0)/10),V=s+1|0;if(12<(V|0)){d=2445;break a}if(9>>0){p=R,s=V,z=U}else{break}}p=p-2|0;m[R]=35;m[p]=38;if(0==(V|0)){l=L;k=A;b=f;z=K;p=U;s=w;continue a}else{D=U,E=K,F=V,G=p}}else{2449==d&&(d=0,D=k,E=l,F=H,G=I)}}}}while(0);2436==d&&(y=f,C=1,d=2447);2447==d&&(d=0,D=k,E=l,F=C,G=y);n=F+n|0;l=F;b=G;for(v=A;;){l=l-1|0;m[v]=m[b];if(0==(l|0)){break}b=b+1|0;v=v+1|0}l=f+1|0;k=A+F|0;b=f;z=E;p=D;s=w}if(2445==d){Lc(dT|0,46,1,a[oa>>2]),Pe()}else{if(2455==d||2456==d){return m[t]=0,h=c,u}}}function eT(c){var d=h,e=a[c+16>>2],g=c+228|0,q=c+212|0;a[$d>>2]=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])&-1;g=c+220|0;q=c+204|0;a[Ug>>2]=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0])&-1;y(c,fT|0);y(c,gT|0);e=a[a[e+8>>2]+12>>2];0!=m[e]<<24>>24&&(y(c,hT|0),y(c,Of(e)),y(c,iT|0));N(c,jT|0,(j=h,h+=4,a[j>>2]=a[c+164>>2]*a[c+160>>2]|0,j));y(c,kT|0);y(c,lT|0);y(c,mT|0);y(c,nT|0);y(c,oT|0);y(c,pT|0);y(c,qT|0);y(c,rT|0);y(c,sT|0);y(c,tT|0);y(c,uT|0);y(c,vT|0);y(c,wT|0);y(c,Ey|0);y(c,Fy|0);y(c,Jm|0);y(c,Gy|0);y(c,Km|0);y(c,Lm|0);y(c,Hy|0);y(c,Iy|0);y(c,Jm|0);y(c,Jy|0);y(c,Km|0);y(c,Lm|0);y(c,xT|0);y(c,Ey|0);y(c,Fy|0);y(c,Jm|0);y(c,Jy|0);y(c,Km|0);y(c,Lm|0);y(c,Hy|0);y(c,Iy|0);y(c,Jm|0);y(c,Gy|0);y(c,Km|0);y(c,Lm|0);y(c,yT|0);y(c,zT|0);y(c,AT|0);y(c,BT|0);y(c,CT|0);y(c,DT|0);e=a[Ug>>2];g=a[$d>>2]+10|0;N(c,ET|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=g,j));y(c,FT|0);y(c,GT|0);y(c,HT|0);y(c,IT|0);y(c,JT|0);e=a[Ug>>2];g=a[$d>>2];N(c,KT|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=g,j));e=a[Ug>>2];g=a[$d>>2];N(c,LT|0,(j=h,h+=8,a[j>>2]=e,a[j+4>>2]=g,j));h=d}function MT(c,d,e,g){var q,D=h,l=a[c+16>>2],k=m[g+72|0]<<24>>24;if(108==(k|0)){var n=g+56|0,k=d,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])}else{114==(k|0)?(k=g+56|0,n=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=d-n):(k=g+56|0,n=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),k=d-.5*n)}q=(g+64|0)>>2;var z=(b[0]=a[q],b[1]=a[q+1],f[0]),d=(g+24|0)>>2,p=(b[0]=a[d],b[1]=a[d+1],f[0]);z>2]>>>0)-e,s=p/5,p=12>p?s+1.4:s+2,z=e-z+p;N(c,NT|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(c,Ky|0,(j=h,h+=16,f[0]=q,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,Ly|0,(j=h,h+=16,f[0]=k+(n+8)-q,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e+p-z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,OT|0);y(c,PT|0);e=(g+4|0)>>2;k=a[e];0==(k|0)?N(c,My|0,(j=h,h+=4,a[j>>2]=a[g+20>>2],j)):(N(c,My|0,(j=h,h+=4,a[j>>2]=a[k+4>>2],j)),k=a[e],n=a[k+8>>2],0!=(n|0)&&(N(c,QT|0,(j=h,h+=4,a[j>>2]=n,j)),k=a[e]),n=a[k+12>>2],0==(n|0)?e=k:(N(c,RT|0,(j=h,h+=4,a[j>>2]=n,j)),e=a[e]),e=a[e+16>>2],0!=(e|0)&&N(c,ST|0,(j=h,h+=4,a[j>>2]=e,j)));N(c,TT|0,(j=h,h+=8,f[0]=(b[0]=a[d],b[1]=a[d+1],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));d=l+16|0;l=a[l+48>>2];1==(l|0)?(l=m[d+1|0]&255,e=m[d+2|0]&255,N(c,UT|0,(j=h,h+=12,a[j>>2]=m[d]&255,a[j+4>>2]=l,a[j+8>>2]=e,j))):5==(l|0)?0!=(Lb(a[d>>2],Ac|0)|0)&&N(c,VT|0,(j=h,h+=4,a[j>>2]=a[d>>2],j)):sa(Ny|0,442,WT|0,vd|0);y(c,XT|0);g=(g|0)>>2;g=a[g];g=Of(g);y(c,g);y(c,YT|0);y(c,ZT|0);h=D}function Mq(c){var d=h,e=a[c+16>>2];y(c,$T|0);aU(c,e+16|0);var g=e+96|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);1!=g&&N(c,bU|0,(j=h,h+=8,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],j));e=a[e+88>>2];2==(e|0)?y(c,cU|0):1==(e|0)&&y(c,dU|0);y(c,eU|0);h=d}function aU(b,c){var d=h,e=c,c=h;h+=36;for(var e=e>>2,f=c>>2,D=e+9;e>2];1==(e|0)?0==m[c+3|0]<<24>>24?y(b,sg|0):(e=a[c>>2],N(b,Iq|0,(j=h,h+=12,a[j>>2]=e&255,a[j+4>>2]=e>>>8&255,a[j+8>>2]=e>>>16&255,j))):5==(e|0)?y(b,a[c>>2]):sa(Ny|0,95,fU|0,vd|0);h=d}function Oy(b,c){if(0==(c|0)){y(b,gU|0)}else{var d=a[b+16>>2];y(b,hU|0);aU(b,d+52|0);y(b,iU|0)}}function jU(c,d,e){var g,q=d>>2,y=h;h+=72;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];var l;0==(c|0)&&sa(pd|0,146,Nq|0,Nj|0);0==(d|0)&&sa(pd|0,147,Nq|0,Oh|0);0==(a[q+2]|0)&&sa(pd|0,148,Nq|0,Ph|0);g=(d+52|0)>>2;if(0==(a[g]|0)){l=2592}else{var k=d+60|0,n=a[k>>2];100!=(n|0)&&(J[n](d),a[g]=0,a[k>>2]=0,a[q+14]=0,l=2592)}if(2592==l){if(0==JK(d)<<24>>24){h=y;return}l=a[q+5];2>(a[q+6]-6|0)>>>0&&(kC(l,y),k=a[y+28>>2],a[q+14]=k,n=Gb(k),a[g]=n,sr(l,n,k),m[d+16|0]=1);0!=(a[g]|0)&&(a[q+15]=100);LK(d);if(0==(a[g]|0)){h=y;return}}g=e|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(a[q+8]|0);e=e+8|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-(a[q+9]|0);N(c,kU|0,(j=h,h+=16,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));0==m[d+16|0]<<24>>24?N(c,lU|0,(j=h,h+=4,a[j>>2]=a[q+3],j)):Pu(c,d);N(c,Mm|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));h=y}function mU(c,d,e){var g,m=h;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];0==(c|0)&&sa(pd|0,90,Oq|0,Nj|0);0==(d|0)&&sa(pd|0,91,Oq|0,Oh|0);d=d+8|0;0==(a[d>>2]|0)&&sa(pd|0,92,Oq|0,Ph|0);g=e|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);g=(0>g?g-.5:g+.5)&-1;var y=e+8|0,y=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),y=(0>y?y-.5:y+.5)&-1,l=e+16|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),l=(0>l?l-.5:l+.5)&-1,e=e+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),e=(0>e?e-.5:e+.5)&-1,d=a[d>>2];N(c,nU|0,(j=h,h+=76,a[j>>2]=2,a[j+4>>2]=5,a[j+8>>2]=0,a[j+12>>2]=0,a[j+16>>2]=0,a[j+20>>2]=-1,a[j+24>>2]=1,a[j+28>>2]=-1,a[j+32>>2]=0,f[0]=0,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=0,a[j+60>>2]=0,a[j+64>>2]=5,a[j+68>>2]=0,a[j+72>>2]=d,j));N(c,oU|0,(j=h,h+=40,a[j>>2]=g,a[j+4>>2]=y,a[j+8>>2]=g,a[j+12>>2]=e,a[j+16>>2]=l,a[j+20>>2]=e,a[j+24>>2]=l,a[j+28>>2]=y,a[j+32>>2]=g,a[j+36>>2]=y,j));h=m}function pU(c,d,e){var g,m=h;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];0==(c|0)&&sa(pd|0,49,Pq|0,Nj|0);0==(d|0)&&sa(pd|0,50,Pq|0,Oh|0);d=d+8|0;0==(a[d>>2]|0)&&sa(pd|0,51,Pq|0,Ph|0);y(c,qU|0);y(c,a[d>>2]);var d=c+356|0,D=e+16|0;if(0==(a[d>>2]|0)){d=D|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=e|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);var l=e+24|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),e=e+8|0,e=l-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);N(c,rU|0,(j=h,h+=32,f[0]=d-g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=g,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=-l,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j))}else{g=e+24|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),l=e+8|0,l=g-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),D|=0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),e|=0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),N(c,sU|0,(j=h,h+=32,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=D-e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=e,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=g,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j)),N(c,tU|0,(j=h,h+=20,a[j>>2]=a[d>>2],f[0]=e,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=g,a[j+12>>2]=b[0],a[j+16>>2]=b[1],j))}y(c,Py|0);h=m}function Gb(b){do{if(245>b>>>0){var c=11>b>>>0?16:b+11&-8,d=c>>>3,e=a[E>>2],f=e>>>(d>>>0);if(0!=(f&3|0)){var h=(f&1^1)+d|0,j=h<<1,c=(j<<2)+E+40|0,d=(j+2<<2)+E+40|0,b=a[d>>2],j=b+8|0,f=a[j>>2];(c|0)==(f|0)?a[E>>2]=e&(1<>>0>2]>>>0?S():(a[d>>2]=f,a[f+12>>2]=c);h<<=3;a[b+4>>2]=h|3;h=b+(h|4)|0;a[h>>2]|=1;return j}if(c>>>0>a[E+8>>2]>>>0){if(0==(f|0)){if(0==(a[E+4>>2]|0)){e=c;break}j=uU(c);if(0==(j|0)){e=c;break}return j}var b=2<>>12&16,f=d>>>(b>>>0),d=f>>>5&8,k=f>>>(d>>>0),f=k>>>2&4,n=k>>>(f>>>0),k=n>>>1&2,n=n>>>(k>>>0),m=n>>>1&1,f=(d|b|f|k|m)+(n>>>(m>>>0))|0,b=f<<1,k=(b<<2)+E+40|0,n=(b+2<<2)+E+40|0,d=a[n>>2],b=d+8|0,m=a[b>>2];(k|0)==(m|0)?a[E>>2]=e&(1<>>0>2]>>>0?S():(a[n>>2]=m,a[m+12>>2]=k);f<<=3;e=f-c|0;a[d+4>>2]=c|3;k=d;d=k+c|0;a[k+(c|4)>>2]=e|1;a[k+f>>2]=e;m=a[E+8>>2];0!=(m|0)&&(c=a[E+20>>2],k=m>>>2&1073741822,f=(k<<2)+E+40|0,n=a[E>>2],m=1<<(m>>>3),0==(n&m|0)?(a[E>>2]=n|m,j=f,h=(k+2<<2)+E+40|0):(k=(k+2<<2)+E+40|0,n=a[k>>2],n>>>0>2]>>>0?S():(j=n,h=k)),a[h>>2]=c,a[j+12>>2]=c,a[c+8>>2]=j,a[c+12>>2]=f);a[E+8>>2]=e;a[E+20>>2]=d;return j=b}e=c}else{if(4294967231>>0){e=-1}else{if(e=b+11&-8,0!=(a[E+4>>2]|0)&&(c=vU(e),0!=(c|0))){return j=c}}}}while(0);h=a[E+8>>2];e>>>0>h>>>0?(j=a[E+12>>2],e>>>0>>0?(j=j-e|0,a[E+12>>2]=j,h=a[E+24>>2],a[E+24>>2]=h+e|0,a[e+(h+4)>>2]=j|1,a[h+4>>2]=e|3,j=h+8|0):j=wU(e)):(c=h-e|0,j=a[E+20>>2],15>>0?(a[E+20>>2]=j+e|0,a[E+8>>2]=c,a[e+(j+4)>>2]=c|1,a[j+h>>2]=c,a[j+4>>2]=e|3):(a[E+8>>2]=0,a[E+20>>2]=0,a[j+4>>2]=h|3,h=h+(j+4)|0,a[h>>2]|=1),j=j+8|0);return j}function uU(b){var c,d,e=a[E+4>>2],f=(e&-e)-1|0,e=f>>>12&16,h=f>>>(e>>>0),f=h>>>5&8;d=h>>>(f>>>0);var h=d>>>2&4,j=d>>>(h>>>0);d=j>>>1&2;var j=j>>>(d>>>0),k=j>>>1&1,e=h=f=a[E+((f|e|h|d|k)+(j>>>(k>>>0))<<2)+304>>2];d=e>>2;for(f=(a[f+4>>2]&-8)-b|0;;){j=a[h+16>>2];if(0==(j|0)){if(h=a[h+20>>2],0==(h|0)){break}else{d=h}}else{d=j}j=(a[d+4>>2]&-8)-b|0;k=j>>>0>>0;h=d;e=k?d:e;d=e>>2;f=k?j:f}var j=e,n=a[E+16>>2];j>>>0>>0&&S();h=j+b|0;j>>>0>>0||S();var k=a[d+6],m=a[d+3],p=(m|0)==(e|0);a:do{if(p){var s=e+20|0,v=a[s>>2];do{if(0==(v|0)){var t=e+16|0,u=a[t>>2];if(0==(u|0)){var w=0;c=w>>2;break a}}else{t=s,u=v}}while(0);for(;;){if(s=u+20|0,v=a[s>>2],0!=(v|0)){t=s,u=v}else{if(s=u+16|0,v=a[s>>2],0==(v|0)){break}else{t=s,u=v}}}t>>>0>>0?S():(a[t>>2]=0,w=u,c=w>>2)}else{t=a[d+2],t>>>0>>0?S():(a[t+12>>2]=m,a[m+8>>2]=t,w=m,c=w>>2)}}while(0);n=0==(k|0);a:do{if(!n){m=e+28|0;p=(a[m>>2]<<2)+E+304|0;do{if((e|0)==(a[p>>2]|0)){if(a[p>>2]=w,0==(w|0)){a[E+4>>2]&=1<>2]^-1;break a}}else{if(k>>>0>2]>>>0&&S(),t=k+16|0,(a[t>>2]|0)==(e|0)?a[t>>2]=w:a[k+20>>2]=w,0==(w|0)){break a}}}while(0);w>>>0>2]>>>0&&S();a[c+6]=k;m=a[d+4];0!=(m|0)&&(m>>>0>2]>>>0?S():(a[c+4]=m,a[m+24>>2]=w));m=a[d+5];0!=(m|0)&&(m>>>0>2]>>>0?S():(a[c+5]=m,a[m+24>>2]=w))}}while(0);if(16>f>>>0){var A=f+b|0;a[d+1]=A|3;A=A+(j+4)|0;a[A>>2]|=1;return A=e+8|0}a[d+1]=b|3;a[b+(j+4)>>2]=f|1;a[j+f+b>>2]=f;j=a[E+8>>2];if(0!=(j|0)){b=a[E+20>>2];w=j>>>2&1073741822;c=(w<<2)+E+40|0;d=a[E>>2];j=1<<(j>>>3);if(0==(d&j|0)){a[E>>2]=d|j;var A=c,y=(w+2<<2)+E+40|0}else{w=(w+2<<2)+E+40|0,d=a[w>>2],d>>>0>2]>>>0?S():(A=d,y=w)}a[y>>2]=b;a[A+12>>2]=b;a[b+8>>2]=A;a[b+12>>2]=c}a[E+8>>2]=f;a[E+20>>2]=h;return A=e+8|0}function wU(b){var c,d;0==(a[Rc>>2]|0)&&xU();var e=0==(a[E+440>>2]&4|0);a:do{if(e){var f=a[E+24>>2];if(0==(f|0)){d=2751}else{if(f=Qy(f),0==(f|0)){d=2751}else{var h=a[Rc+8>>2],h=b+47-a[E+12>>2]+h&-h;if(2147483647>h>>>0){d=Ie(h);var j=(d|0)==(a[f>>2]+a[f+4>>2]|0);c=j?d:-1;var j=j?h:0,k=h,n=d;d=2758}else{var m=0}}}if(2751==d){if(f=Ie(0),-1==(f|0)){m=0}else{var h=a[Rc+8>>2],h=h+(b+47)&-h,p=f,s=a[Rc+4>>2],v=s-1|0,h=0==(v&p|0)?h:h-p+(v+p&-s)|0;2147483647>h>>>0?(d=Ie(h),c=(j=(d|0)==(f|0))?f:-1,j=j?h:0,k=h,n=d,d=2758):m=0}}b:do{if(2758==d){d=-k|0;if(-1!=(c|0)){var t=j,u=c;d=2771;break a}do{if(-1!=(n|0)&2147483647>k>>>0){if(k>>>0<(b+48|0)>>>0){if(m=a[Rc+8>>2],m=b+47-k+m&-m,2147483647>m>>>0){if(-1==(Ie(m)|0)){Ie(d);m=j;break b}else{m=m+k|0}}else{m=k}}else{m=k}}else{m=k}}while(0);if(-1!=(n|0)){t=m;u=n;d=2771;break a}a[E+440>>2]|=4;var w=j;d=2768;break a}}while(0);a[E+440>>2]|=4;w=m}else{w=0}d=2768}while(0);2768==d&&(e=a[Rc+8>>2],e=e+(b+47)&-e,2147483647>e>>>0&&(e=Ie(e),c=Ie(0),-1!=(c|0)&-1!=(e|0)&e>>>0>>0&&(c=c-e|0,e=(j=c>>>0>(b+40|0)>>>0)?e:-1,-1!=(e|0)&&(t=j?c:w,u=e,d=2771))));do{if(2771==d){w=a[E+432>>2]+t|0;a[E+432>>2]=w;w>>>0>a[E+436>>2]>>>0&&(a[E+436>>2]=w);w=a[E+24>>2];e=0==(w|0);a:do{if(e){c=a[E+16>>2];0==(c|0)|u>>>0>>0&&(a[E+16>>2]=u);a[E+444>>2]=u;a[E+448>>2]=t;a[E+456>>2]=0;a[E+36>>2]=a[Rc>>2];a[E+32>>2]=-1;for(c=0;!(j=c<<1,k=(j<<2)+E+40|0,a[E+(j+3<<2)+40>>2]=k,a[E+(j+2<<2)+40>>2]=k,c=c+1|0,32==(c|0));){}Qq(u,t-40|0)}else{j=E+444|0;for(c=j>>2;0!=(j|0);){var A=a[c],y=j+4|0,C=a[y>>2];if((u|0)==(A+C|0)){d=2780;break}j=a[c+2];c=j>>2}do{if(2780==d&&0==(a[c+3]&8|0)&&(j=w,j>>>0>=A>>>0&j>>>0>>0)){a[y>>2]=C+t|0;Qq(a[E+24>>2],a[E+12>>2]+t|0);break a}}while(0);u>>>0>2]>>>0&&(a[E+16>>2]=u);c=u+t|0;for(j=E+444|0;0!=(j|0);){var D=j|0;if((a[D>>2]|0)==(c|0)){d=2789;break}j=a[j+8>>2]}if(2789==d&&0==(a[j+12>>2]&8|0)){return a[D>>2]=u,A=j+4|0,a[A>>2]=a[A>>2]+t|0,b=yU(u,c,b)}zU(u,t)}}while(0);w=a[E+12>>2];if(w>>>0>b>>>0){return t=w-b|0,a[E+12>>2]=t,A=u=a[E+24>>2],a[E+24>>2]=A+b|0,a[b+(A+4)>>2]=t|1,a[u+4>>2]=b|3,b=u+8|0}}}while(0);a[Ea.c>>2]=12;return 0}function vU(b){var c,d,e,f,h,j=b>>2,k,n=-b|0,m=b>>>8;if(0==(m|0)){var p=0}else{if(16777215>>0){p=31}else{var s=(m+1048320|0)>>>16&8,v=m<>>16&4,u=v<>>16&2,A=14-(t|s|w)+(u<>>15)|0,p=b>>>((A+7|0)>>>0)&1|A<<1}}var y=a[E+(p<<2)+304>>2],C=0==(y|0);a:do{if(C){var D=0,F=n,G=0}else{var H=31==(p|0)?0:25-(p>>>1)|0,I=0,J=n,K=y;h=K>>2;for(var L=b<>>0>>0){if((Q|0)==(b|0)){D=K;F=R;G=K;break a}else{var U=K,V=R}}else{U=I,V=J}var W=a[h+5],Y=a[((L>>>31<<2)+16>>2)+h],Z=0==(W|0)|(W|0)==(Y|0)?N:W;if(0==(Y|0)){D=U;F=V;G=Z;break a}else{I=U,J=V,K=Y,h=K>>2,L<<=1,N=Z}}}}while(0);if(0==(G|0)&0==(D|0)){var $=2<>2]&($|-$);if(0==(ba|0)){var ca=0;return ca}var fa=(ba&-ba)-1|0,ka=fa>>>12&16,la=fa>>>(ka>>>0),ja=la>>>5&8,aa=la>>>(ja>>>0),da=aa>>>2&4,ea=aa>>>(da>>>0),qa=ea>>>1&2,sa=ea>>>(qa>>>0),ra=sa>>>1&1,ha=a[E+((ja|ka|da|qa|ra)+(sa>>>(ra>>>0))<<2)+304>>2]}else{ha=G}var ga=0==(ha|0);a:do{if(ga){var na=F,oa=D;f=oa>>2}else{var va=ha;e=va>>2;for(var Aa=F,ya=D;;){var Ea=(a[e+1]&-8)-b|0,wa=Ea>>>0>>0,Ba=wa?Ea:Aa,Fa=wa?va:ya,Ga=a[e+4];if(0!=(Ga|0)){va=Ga,e=va>>2,Aa=Ba,ya=Fa}else{var Ma=a[e+5];if(0==(Ma|0)){na=Ba;oa=Fa;f=oa>>2;break a}else{va=Ma,e=va>>2,Aa=Ba,ya=Fa}}}}}while(0);if(0==(oa|0)||na>>>0>=(a[E+8>>2]-b|0)>>>0){return ca=0}var ta=oa;d=ta>>2;var Ka=a[E+16>>2];ta>>>0>>0&&S();var za=ta+b|0;ta>>>0>>0||S();var ma=a[f+6],pa=a[f+3],Qa=(pa|0)==(oa|0);a:do{if(Qa){var Ha=oa+20|0,Ra=a[Ha>>2];do{if(0==(Ra|0)){var Pa=oa+16|0,db=a[Pa>>2];if(0==(db|0)){var La=0;c=La>>2;break a}else{var Va=Pa,Ya=db}}else{Va=Ha,Ya=Ra}}while(0);for(;;){var hb=Ya+20|0,Za=a[hb>>2];if(0!=(Za|0)){Va=hb,Ya=Za}else{var ib=Ya+16|0,ab=a[ib>>2];if(0==(ab|0)){break}else{Va=ib,Ya=ab}}}Va>>>0>>0?S():(a[Va>>2]=0,La=Ya,c=La>>2)}else{var $a=a[f+2];$a>>>0>>0?S():(a[$a+12>>2]=pa,a[pa+8>>2]=$a,La=pa,c=La>>2)}}while(0);var jb=0==(ma|0);a:do{if(jb){var Ca=oa}else{var Ia=oa+28|0,eb=(a[Ia>>2]<<2)+E+304|0;do{if((oa|0)==(a[eb>>2]|0)){if(a[eb>>2]=La,0==(La|0)){a[E+4>>2]&=1<>2]^-1;Ca=oa;break a}}else{ma>>>0>2]>>>0&&S();var ub=ma+16|0;(a[ub>>2]|0)==(oa|0)?a[ub>>2]=La:a[ma+20>>2]=La;if(0==(La|0)){Ca=oa;break a}}}while(0);La>>>0>2]>>>0&&S();a[c+6]=ma;var Sa=a[f+4];0!=(Sa|0)&&(Sa>>>0>2]>>>0?S():(a[c+4]=Sa,a[Sa+24>>2]=La));var mb=a[f+5];0==(mb|0)?Ca=oa:mb>>>0>2]>>>0?S():(a[c+5]=mb,a[mb+24>>2]=La,Ca=oa)}}while(0);do{if(16>na>>>0){var ua=na+b|0;a[Ca+4>>2]=ua|3;var Oa=ua+(ta+4)|0;a[Oa>>2]|=1}else{if(a[Ca+4>>2]=b|3,a[j+(d+1)]=na|1,a[(na>>2)+d+j]=na,256>na>>>0){var Wa=na>>>2&1073741822,pb=(Wa<<2)+E+40|0,ob=a[E>>2],bb=1<<(na>>>3);if(0==(ob&bb|0)){a[E>>2]=ob|bb;var qb=pb,wb=(Wa+2<<2)+E+40|0}else{var kb=(Wa+2<<2)+E+40|0,Cb=a[kb>>2];Cb>>>0>2]>>>0?S():(qb=Cb,wb=kb)}a[wb>>2]=za;a[qb+12>>2]=za;a[j+(d+2)]=qb;a[j+(d+3)]=pb}else{var vb=za,xb=na>>>8;if(0==(xb|0)){var yb=0}else{if(16777215>>0){yb=31}else{var nb=(xb+1048320|0)>>>16&8,rb=xb<>>16&4,Ta=rb<>>16&2,fb=14-(lb|nb|cb)+(Ta<>>15)|0,yb=na>>>((fb+7|0)>>>0)&1|fb<<1}}var Ua=(yb<<2)+E+304|0;a[j+(d+7)]=yb;a[j+(d+5)]=0;a[j+(d+4)]=0;var sb=a[E+4>>2],Na=1<>2]=sb|Na,a[Ua>>2]=vb,a[j+(d+6)]=Ua,a[j+(d+3)]=vb,a[j+(d+2)]=vb}else{for(var Fb=na<<(31==(yb|0)?0:25-(yb>>>1)|0),Db=a[Ua>>2];(a[Db+4>>2]&-8|0)!=(na|0);){var Gb=(Fb>>>31<<2)+Db+16|0,Eb=a[Gb>>2];if(0==(Eb|0)){k=2868;break}else{Fb<<=1,Db=Eb}}if(2868==k){if(Gb>>>0>2]>>>0){S()}else{a[Gb>>2]=vb;a[j+(d+6)]=Db;a[j+(d+3)]=vb;a[j+(d+2)]=vb;break}}var Hb=Db+8|0,Bb=a[Hb>>2],Ja=a[E+16>>2];Db>>>0>>0&&S();Bb>>>0>>0?S():(a[Bb+12>>2]=vb,a[Hb>>2]=vb,a[j+(d+2)]=Bb,a[j+(d+3)]=Db,a[j+(d+6)]=0)}}}}while(0);return ca=Ca+8|0}function AU(b){var c;0==(a[Rc>>2]|0)&&xU();if(4294967232<=b>>>0){return 0}c=a[E+24>>2];if(0==(c|0)){return 0}var d=a[E+12>>2];if(d>>>0>(b+40|0)>>>0){var e=a[Rc+8>>2],d=(Math.floor(((-40-b-1+d+e|0)>>>0)/(e>>>0))-1)*e|0,f=Qy(c);if(0==(a[f+12>>2]&8|0)&&(b=Ie(0),c=(f+4|0)>>2,(b|0)==(a[f>>2]+a[c]|0)&&(d=Ie(-(2147483646>>0?-2147483648-e|0:d)|0),e=Ie(0),-1!=(d|0)&e>>>0>>0&&(d=b-e|0,(b|0)!=(e|0))))){return a[c]=a[c]-d|0,a[E+432>>2]=a[E+432>>2]-d|0,Qq(a[E+24>>2],a[E+12>>2]-d|0),1}}if(a[E+12>>2]>>>0<=a[E+28>>2]>>>0){return 0}a[E+28>>2]=-1;return 0}function G(b){var c,d,e,f,h,j,k,n=b>>2,m;if(0!=(b|0)){var p=b-8|0,s=a[E+16>>2];p>>>0>>0&&S();var v=a[b-4>>2],t=v&3;1==(t|0)&&S();var u=v&-8;k=u>>2;var w=b+(u-8)|0,A=0==(v&1|0);a:do{if(A){var y=a[p>>2];if(0==(t|0)){return}var C=-8-y|0;j=C>>2;var D=b+C|0,F=D,G=y+u|0;D>>>0>>0&&S();if((F|0)==(a[E+20>>2]|0)){h=(b+(u-4)|0)>>2;if(3!=(a[h]&3|0)){var H=F;f=H>>2;var I=G;break}a[E+8>>2]=G;a[h]&=-2;a[j+(n+1)]=G|1;a[w>>2]=G;return}var J=y>>>3;if(256>y>>>0){var K=a[j+(n+2)],L=a[j+(n+3)];if((K|0)==(L|0)){a[E>>2]&=1<>2;I=G;break}var N=((y>>>2&1073741822)<<2)+E+40|0;(K|0)!=(N|0)&K>>>0>>0&&S();if((L|0)==(N|0)|L>>>0>=s>>>0){a[K+12>>2]=L;a[L+8>>2]=K;H=F;f=H>>2;I=G;break}else{S()}}var Q=D,R=a[j+(n+6)],U=a[j+(n+3)],V=(U|0)==(Q|0);b:do{if(V){var W=C+(b+20)|0,Y=a[W>>2];do{if(0==(Y|0)){var Z=C+(b+16)|0,$=a[Z>>2];if(0==($|0)){var ba=0;e=ba>>2;break b}else{var ca=Z,fa=$}}else{ca=W,fa=Y}}while(0);for(;;){var ka=fa+20|0,la=a[ka>>2];if(0!=(la|0)){ca=ka,fa=la}else{var ja=fa+16|0,aa=a[ja>>2];if(0==(aa|0)){break}else{ca=ja,fa=aa}}}ca>>>0>>0?S():(a[ca>>2]=0,ba=fa,e=ba>>2)}else{var da=a[j+(n+2)];da>>>0>>0?S():(a[da+12>>2]=U,a[U+8>>2]=da,ba=U,e=ba>>2)}}while(0);if(0==(R|0)){H=F,f=H>>2,I=G}else{var ea=C+(b+28)|0,na=(a[ea>>2]<<2)+E+304|0;do{if((Q|0)==(a[na>>2]|0)){if(a[na>>2]=ba,0==(ba|0)){a[E+4>>2]&=1<>2]^-1;H=F;f=H>>2;I=G;break a}}else{R>>>0>2]>>>0&&S();var qa=R+16|0;(a[qa>>2]|0)==(Q|0)?a[qa>>2]=ba:a[R+20>>2]=ba;if(0==(ba|0)){H=F;f=H>>2;I=G;break a}}}while(0);ba>>>0>2]>>>0&&S();a[e+6]=R;var oa=a[j+(n+4)];0!=(oa|0)&&(oa>>>0>2]>>>0?S():(a[e+4]=oa,a[oa+24>>2]=ba));var ha=a[j+(n+5)];0==(ha|0)?(H=F,f=H>>2,I=G):ha>>>0>2]>>>0?S():(a[e+5]=ha,a[ha+24>>2]=ba,H=F,f=H>>2,I=G)}}else{H=p,f=H>>2,I=u}}while(0);var ga=H;d=ga>>2;ga>>>0>>0||S();var sa=b+(u-4)|0,ra=a[sa>>2];0==(ra&1|0)&&S();do{if(0==(ra&2|0)){if((w|0)==(a[E+24>>2]|0)){var va=a[E+12>>2]+I|0;a[E+12>>2]=va;a[E+24>>2]=H;a[f+1]=va|1;(H|0)==(a[E+20>>2]|0)&&(a[E+20>>2]=0,a[E+8>>2]=0);if(va>>>0<=a[E+28>>2]>>>0){return}AU(0);return}if((w|0)==(a[E+20>>2]|0)){var Aa=a[E+8>>2]+I|0;a[E+8>>2]=Aa;a[E+20>>2]=H;a[f+1]=Aa|1;a[(Aa>>2)+d]=Aa;return}var ya=(ra&-8)+I|0,Ea=ra>>>3,wa=256>ra>>>0;a:do{if(wa){var Ba=a[n+k],Fa=a[((u|4)>>2)+n];if((Ba|0)==(Fa|0)){a[E>>2]&=1<>>2&1073741822)<<2)+E+40|0;(Ba|0)!=(Ga|0)&&Ba>>>0>2]>>>0&&S();(Fa|0)!=(Ga|0)&&Fa>>>0>2]>>>0&&S();a[Ba+12>>2]=Fa;a[Fa+8>>2]=Ba}}else{var Ma=w,ta=a[k+(n+4)],Ka=a[((u|4)>>2)+n],za=(Ka|0)==(Ma|0);b:do{if(za){var ma=u+(b+12)|0,pa=a[ma>>2];do{if(0==(pa|0)){var Qa=u+(b+8)|0,Ha=a[Qa>>2];if(0==(Ha|0)){var Ra=0;c=Ra>>2;break b}else{var Pa=Qa,Va=Ha}}else{Pa=ma,Va=pa}}while(0);for(;;){var La=Va+20|0,db=a[La>>2];if(0!=(db|0)){Pa=La,Va=db}else{var Ya=Va+16|0,hb=a[Ya>>2];if(0==(hb|0)){break}else{Pa=Ya,Va=hb}}}Pa>>>0>2]>>>0?S():(a[Pa>>2]=0,Ra=Va,c=Ra>>2)}else{var Za=a[n+k];Za>>>0>2]>>>0?S():(a[Za+12>>2]=Ka,a[Ka+8>>2]=Za,Ra=Ka,c=Ra>>2)}}while(0);if(0!=(ta|0)){var ib=u+(b+20)|0,ab=(a[ib>>2]<<2)+E+304|0;do{if((Ma|0)==(a[ab>>2]|0)){if(a[ab>>2]=Ra,0==(Ra|0)){a[E+4>>2]&=1<>2]^-1;break a}}else{ta>>>0>2]>>>0&&S();var $a=ta+16|0;(a[$a>>2]|0)==(Ma|0)?a[$a>>2]=Ra:a[ta+20>>2]=Ra;if(0==(Ra|0)){break a}}}while(0);Ra>>>0>2]>>>0&&S();a[c+6]=ta;var jb=a[k+(n+2)];0!=(jb|0)&&(jb>>>0>2]>>>0?S():(a[c+4]=jb,a[jb+24>>2]=Ra));var Ca=a[k+(n+3)];0!=(Ca|0)&&(Ca>>>0>2]>>>0?S():(a[c+5]=Ca,a[Ca+24>>2]=Ra))}}}while(0);a[f+1]=ya|1;a[(ya>>2)+d]=ya;if((H|0)!=(a[E+20>>2]|0)){var Ia=ya}else{a[E+8>>2]=ya;return}}else{a[sa>>2]=ra&-2,a[f+1]=I|1,Ia=a[(I>>2)+d]=I}}while(0);if(256>Ia>>>0){var eb=Ia>>>2&1073741822,mb=(eb<<2)+E+40|0,Sa=a[E>>2],wb=1<<(Ia>>>3);if(0==(Sa&wb|0)){a[E>>2]=Sa|wb;var ua=mb,Oa=(eb+2<<2)+E+40|0}else{var Wa=(eb+2<<2)+E+40|0,pb=a[Wa>>2];pb>>>0>2]>>>0?S():(ua=pb,Oa=Wa)}a[Oa>>2]=H;a[ua+12>>2]=H;a[f+2]=ua;a[f+3]=mb}else{var ob=H,bb=Ia>>>8;if(0==(bb|0)){var qb=0}else{if(16777215>>0){qb=31}else{var yb=(bb+1048320|0)>>>16&8,kb=bb<>>16&4,vb=kb<>>16&2,Gb=14-(Cb|yb|xb)+(vb<>>15)|0,qb=Ia>>>((Gb+7|0)>>>0)&1|Gb<<1}}var nb=(qb<<2)+E+304|0;a[f+7]=qb;a[f+5]=0;a[f+4]=0;var rb=a[E+4>>2],lb=1<>2]=rb|lb,a[nb>>2]=ob,a[f+6]=nb,a[f+3]=H,a[f+2]=H}else{for(var Ta=Ia<<(31==(qb|0)?0:25-(qb>>>1)|0),cb=a[nb>>2];(a[cb+4>>2]&-8|0)!=(Ia|0);){var fb=(Ta>>>31<<2)+cb+16|0,Ua=a[fb>>2];if(0==(Ua|0)){m=3020;break}else{Ta<<=1,cb=Ua}}if(3020==m){if(fb>>>0>2]>>>0){S()}else{a[fb>>2]=ob;a[f+6]=cb;a[f+3]=H;a[f+2]=H;break}}var sb=cb+8|0,Na=a[sb>>2],Fb=a[E+16>>2];cb>>>0>>0&&S();Na>>>0>>0?S():(a[Na+12>>2]=ob,a[sb>>2]=ob,a[f+2]=Na,a[f+3]=cb,a[f+6]=0)}}while(0);var Db=a[E+32>>2]-1|0;a[E+32>>2]=Db;if(0==(Db|0)){for(var Hb=E+452|0;;){var Eb=a[Hb>>2];if(0==(Eb|0)){break}else{Hb=Eb+8|0}}a[E+32>>2]=-1}}}}function Yc(b,c){if(0==(b|0)){var d=0}else{d=c*b|0,d=65535<(c|b)>>>0?(Math.floor((d>>>0)/(b>>>0))|0)==(c|0)?d:-1:d}var e=Gb(d);if(0==(e|0)||0==(a[e-4>>2]&3|0)){return e}li(e,d);return e}function mc(a,b){return 0==(a|0)?Gb(b):BU(a,b)}function BU(b,c){var d,e,f;if(4294967231>>0){return a[Ea.c>>2]=12,0}var h=b-8|0;e=(b-4|0)>>2;var j=a[e],k=j&-8,n=k-8|0,m=b+n|0;h>>>0>2]>>>0&&S();var p=j&3;1!=(p|0)&-8<(n|0)||S();d=(b+(k-4)|0)>>2;0==(a[d]&1|0)&&S();n=11>c>>>0?16:c+11&-8;if(0==(p|0)){var s=0,v,j=a[h+4>>2]&-8;v=256>n>>>0?0:j>>>0>=(n+4|0)>>>0&&(j-n|0)>>>0<=a[Rc+8>>2]<<1>>>0?h:0;f=150}else{k>>>0>>0?(m|0)==(a[E+24>>2]|0)&&(d=a[E+12>>2]+k|0,d>>>0>n>>>0&&(s=d-n|0,a[e]=n|j&1|2,a[b+(n-4)>>2]=s|1,a[E+24>>2]=b+(n-8)|0,a[E+12>>2]=s,s=0,v=h,f=150)):(s=k-n|0,15>>0?(a[e]=n|j&1|2,a[b+(n-4)>>2]=s|3,a[d]|=1,s=b+n|0):s=0,v=h,f=150)}if(150==f&&0!=(v|0)){return 0!=(s|0)&&G(s),v+8|0}h=Gb(c);if(0==(h|0)){return 0}e=k-(0==(a[e]&3|0)?8:4)|0;tf(h,b,e>>>0>>0?e:c);G(b);return h}function xU(){if(0==(a[Rc>>2]|0)){var b=AQa();0!=(b-1&b|0)&&S();a[Rc+8>>2]=b;a[Rc+4>>2]=b;a[Rc+12>>2]=-1;a[Rc+16>>2]=2097152;a[Rc+20>>2]=0;a[E+440>>2]=0;b=Math.floor(Date.now()/1e3);a[Rc>>2]=b&-16^1431655768}}function Qy(b){var c,d,e=E+444|0;for(c=e>>2;;){var f=a[c];if(f>>>0<=b>>>0&&(f+a[c+1]|0)>>>0>b>>>0){var h=e;d=185;break}c=a[c+2];if(0==(c|0)){h=0;d=186;break}else{e=c,c=e>>2}}if(185==d||186==d){return h}}function Qq(b,c){var d=b+8|0,d=0==(d&7|0)?0:-d&7,e=c-d|0;a[E+24>>2]=b+d|0;a[E+12>>2]=e;a[d+(b+4)>>2]=e|1;a[c+(b+4)>>2]=40;a[E+28>>2]=a[Rc+16>>2]}function yU(b,c,d){var e,f,h,j=c>>2,k=b>>2,n,m=b+8|0,m=0==(m&7|0)?0:-m&7;f=c+8|0;var p=0==(f&7|0)?0:-f&7;h=p>>2;var s=c+p|0,v=m+d|0;f=v>>2;var v=b+v|0,t=s-(b+m)-d|0;a[(m+4>>2)+k]=d|3;if((s|0)==(a[E+24>>2]|0)){return n=a[E+12>>2]+t|0,a[E+12>>2]=n,a[E+24>>2]=v,a[f+(k+1)]=n|1,b=b+(m|8)|0}if((s|0)==(a[E+20>>2]|0)){return n=a[E+8>>2]+t|0,a[E+8>>2]=n,a[E+20>>2]=v,a[f+(k+1)]=n|1,a[(n>>2)+k+f]=n,b=b+(m|8)|0}var u=a[h+(j+1)];if(1==(u&3|0)){var d=u&-8,w=u>>>3,A=256>u>>>0;a:do{if(A){var y=a[((p|8)>>2)+j],C=a[h+(j+3)];if((y|0)==(C|0)){a[E>>2]&=1<>>2&1073741822)<<2)+E+40|0;(y|0)!=(D|0)&&y>>>0>2]>>>0&&S();(C|0)!=(D|0)&&C>>>0>2]>>>0&&S();a[y+12>>2]=C;a[C+8>>2]=y}}else{var y=s,C=a[((p|24)>>2)+j],D=a[h+(j+3)],F=(D|0)==(y|0);b:do{if(F){var G=p|16,H=G+(c+4)|0,I=a[H>>2];do{if(0==(I|0)){var J=c+G|0,K=a[J>>2];if(0==(K|0)){var L=0;e=L>>2;break b}}else{J=H,K=I}}while(0);for(;;){if(G=K+20|0,H=a[G>>2],0!=(H|0)){J=G,K=H}else{if(G=K+16|0,H=a[G>>2],0==(H|0)){break}else{J=G,K=H}}}J>>>0>2]>>>0?S():(a[J>>2]=0,L=K,e=L>>2)}else{J=a[((p|8)>>2)+j],J>>>0>2]>>>0?S():(a[J+12>>2]=D,a[D+8>>2]=J,L=D,e=L>>2)}}while(0);if(0!=(C|0)){D=p+(c+28)|0;F=(a[D>>2]<<2)+E+304|0;do{if((y|0)==(a[F>>2]|0)){if(a[F>>2]=L,0==(L|0)){a[E+4>>2]&=1<>2]^-1;break a}}else{if(C>>>0>2]>>>0&&S(),J=C+16|0,(a[J>>2]|0)==(y|0)?a[J>>2]=L:a[C+20>>2]=L,0==(L|0)){break a}}}while(0);L>>>0>2]>>>0&&S();a[e+6]=C;y=p|16;C=a[(y>>2)+j];0!=(C|0)&&(C>>>0>2]>>>0?S():(a[e+4]=C,a[C+24>>2]=L));y=a[(y+4>>2)+j];0!=(y|0)&&(y>>>0>2]>>>0?S():(a[e+5]=y,a[y+24>>2]=L))}}}while(0);e=c+(d|p)|0;c=d+t|0}else{e=s,c=t}e=e+4|0;a[e>>2]&=-2;a[f+(k+1)]=c|1;a[(c>>2)+k+f]=c;if(256>c>>>0){var N=c>>>2&1073741822;n=(N<<2)+E+40|0;e=a[E>>2];c=1<<(c>>>3);if(0==(e&c|0)){a[E>>2]=e|c;var Q=n,R=(N+2<<2)+E+40|0}else{N=(N+2<<2)+E+40|0,c=a[N>>2],c>>>0>2]>>>0?S():(Q=c,R=N)}a[R>>2]=v;a[Q+12>>2]=v;a[f+(k+2)]=Q;a[f+(k+3)]=n;return b=b+(m|8)|0}R=c>>>8;0==(R|0)?R=0:16777215>>0?R=31:(Q=(R+1048320|0)>>>16&8,e=R<>>16&4,e<<=R,j=(e+245760|0)>>>16&2,Q=14-(R|Q|j)+(e<>>15)|0,R=c>>>((Q+7|0)>>>0)&1|Q<<1);Q=(R<<2)+E+304|0;a[f+(k+7)]=R;a[f+(k+5)]=0;a[f+(k+4)]=0;e=a[E+4>>2];j=1<>2]=e|j,a[Q>>2]=v,a[f+(k+6)]=Q,a[f+(k+3)]=v,a[f+(k+2)]=v,b=b+(m|8)|0}R=c<<(31==(R|0)?0:25-(R>>>1)|0);for(Q=a[Q>>2];(a[Q+4>>2]&-8|0)!=(c|0);){if(N=(R>>>31<<2)+Q+16|0,e=a[N>>2],0==(e|0)){n=259;break}else{R<<=1,Q=e}}if(259==n){return N>>>0>2]>>>0&&S(),a[N>>2]=v,a[f+(k+6)]=Q,a[f+(k+3)]=v,a[f+(k+2)]=v,b=b+(m|8)|0}n=Q+8|0;N=a[n>>2];R=a[E+16>>2];Q>>>0>>0&&S();N>>>0>>0&&S();a[N+12>>2]=v;a[n>>2]=v;a[f+(k+2)]=N;a[f+(k+3)]=Q;a[f+(k+6)]=0;return b=b+(m|8)|0}function zU(b,c){var d,e,f,h=a[E+24>>2];e=h>>2;var j=Qy(h),k=a[j>>2];d=a[j+4>>2];var j=k+d|0,n=k+(d-39)|0,k=k+(d-47)+(0==(n&7|0)?0:-n&7)|0,k=k>>>0<(h+16|0)>>>0?h:k,n=k+8|0;d=n>>2;Qq(b,c-40|0);a[k+4>>2]=27;a[d]=a[E+444>>2];a[d+1]=a[E+448>>2];a[d+2]=a[E+452>>2];a[d+3]=a[E+456>>2];a[E+444>>2]=b;a[E+448>>2]=c;a[E+456>>2]=0;a[E+452>>2]=n;d=k+28|0;a[d>>2]=7;n=(k+32|0)>>>0>>0;a:do{if(n){for(var m=d;;){var p=m+4|0;a[p>>2]=7;if((m+8|0)>>>0>>0){m=p}else{break a}}}}while(0);if((k|0)!=(h|0)){if(j=k-h|0,k=j+(h+4)|0,a[k>>2]&=-2,a[e+1]=j|1,a[h+j>>2]=j,256>j>>>0){var s=j>>>2&1073741822;f=(s<<2)+E+40|0;k=a[E>>2];j=1<<(j>>>3);if(0==(k&j|0)){a[E>>2]=k|j;var v=f,t=(s+2<<2)+E+40|0}else{s=(s+2<<2)+E+40|0,j=a[s>>2],j>>>0>2]>>>0?S():(v=j,t=s)}a[t>>2]=h;a[v+12>>2]=h;a[e+2]=v;a[e+3]=f}else{if(t=j>>>8,0==(t|0)?t=0:16777215>>0?t=31:(v=(t+1048320|0)>>>16&8,k=t<>>16&4,k<<=t,d=(k+245760|0)>>>16&2,v=14-(t|v|d)+(k<>>15)|0,t=j>>>((v+7|0)>>>0)&1|v<<1),v=(t<<2)+E+304|0,a[e+7]=t,a[e+5]=0,a[e+4]=0,k=a[E+4>>2],d=1<>2]=k|d,a[v>>2]=h,a[e+6]=v,a[e+3]=h,a[e+2]=h}else{t=j<<(31==(t|0)?0:25-(t>>>1)|0);for(v=a[v>>2];(a[v+4>>2]&-8|0)!=(j|0);){if(s=(t>>>31<<2)+v+16|0,k=a[s>>2],0==(k|0)){f=320;break}else{t<<=1,v=k}}320==f?(s>>>0>2]>>>0&&S(),a[s>>2]=h,a[e+6]=v,a[e+3]=h,a[e+2]=h):(f=v+8|0,s=a[f>>2],t=a[E+16>>2],v>>>0>>0&&S(),s>>>0>>0&&S(),a[s+12>>2]=h,a[f>>2]=h,a[e+2]=s,a[e+3]=v,a[e+6]=0)}}}}function qr(a){function b(){var c=0;eC=wc;K._main&&(qn(CU),c=K.Na(a),K.noExitRuntime||(qn(tr),iC.print()));if(K.postRun){for("function"==typeof K.postRun&&(K.postRun=[K.postRun]);0>"+c+")<<"+c+")"}return"Math.ceil(("+a+")/"+b+")*"+b}),Ya:(function(a){return a in Qa.Ha||a in Qa.Ga}),Za:(function(a){return"*"==a[a.length-1]}),ab:(function(a){return isPointerType(a)?ee:/^\[\d+\ x\ (.*)\]/.test(a)||/?/.test(a)?wc:"%"==a[0]}),Ha:{i1:0,i8:0,i16:0,i32:0,i64:0},Ga:{"float":0,"double":0},Xc:(function(a,b,c,d){var e=Math.pow(2,d)-1;if(32>d){switch(c){case"shl":return[a<>>32-d];case"ashr":return[(a>>>d|(b&e)<<32-d)>>0>>>0,b>>d>>>0];case"lshr":return[(a>>>d|(b&e)<<32-d)>>>0,b>>>d]}}else{if(32==d){switch(c){case"shl":return[0,a];case"ashr":return[b,0>(b|0)?e:0];case"lshr":return[b,0]}}else{switch(c){case"shl":return[0,a<>d-32>>>0,0>(b|0)?e:0];case"lshr":return[b>>>d-32,0]}}}Yg("unknown bitshift64 op: "+[value,c,d])}),jd:(function(a,b){return(a|0|b|0)+4294967296*(Math.round(a/4294967296)|Math.round(b/4294967296))}),Wc:(function(a,b){return((a|0)&(b|0))+4294967296*(Math.round(a/4294967296)&Math.round(b/4294967296))}),Cd:(function(a,b){return((a|0)^(b|0))+4294967296*(Math.round(a/4294967296)^Math.round(b/4294967296))}),Y:(function(a){if(1==Qa.z){return 1}var b={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+a];b||("*"==a.charAt(a.length-1)?b=Qa.z:"i"==a[0]&&(a=parseInt(a.substr(1)),Ae(0==a%8),b=a/8));return b}),W:(function(a){return Math.max(Qa.Y(a),Qa.z)}),Ta:(function(a,b){var c={};return b?a.filter((function(a){return c[a[b]]?ee:c[a[b]]=wc})):a.filter((function(a){return c[a]?ee:c[a]=wc}))}),set:(function(){for(var a="object"===typeof arguments[0]?arguments[0]:arguments,b={},c=0;cc){return String.fromCharCode(c)}a.push(c);b=191c?1:2;return""}if(0c?String.fromCharCode((c&31)<<6|d&63):String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);a.length=0;return c});this.ib=(function(a){for(var a=unescape(encodeURIComponent(a)),b=[],c=0;c>2<<2;return b}),Ba:(function(a){var b=We;We+=a;We=We+3>>2<<2;We>=gk&&Yg("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ( "+gk+"), (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return b}),B:(function(a,b){return Math.ceil(a/(b?b:4))*(b?b:4)}),cb:(function(a,b,c){return c?(a>>>0)+4294967296*(b>>>0):(a>>>0)+4294967296*(b|0)}),z:4,Uc:0},iC={Ia:0,na:0,pd:{},hd:(function(a,b){b||(this.na++,this.na>=this.Ia&&Yg("\n\nToo many corrections!"))}),print:bk()},j,Pb,ji,sQa=this;K.ccall=(function(a,b,c,d){return $B(ZB(a),b,c,d)});K.cwrap=(function(a,b,c){var d=ZB(a);return(function(){return $B(d,b,c,Array.prototype.slice.call(arguments))})});K.setValue=dk;K.getValue=ki;var sn=0,$g=1,c=2,cC=3;K.ALLOC_NORMAL=sn;K.ALLOC_STACK=$g;K.ALLOC_STATIC=c;K.ALLOC_NONE=cC;K.allocate=d;K.Pointer_stringify=Oe;K.Array_stringify=(function(a){for(var b="",c=0;c>2);ib.subarray(Nm>>2);var f=Sy.subarray(Nm>>3);Sq=Nm+8;We=Sq+4095>>12<<12;Ae(We>2]=U|0;a[Bd+4>>2]=U+16|0;a[Bd+8>>2]=U+32|0;a[Bd+12>>2]=U+48|0;a[Bd+16>>2]=U+64|0;a[Bd+20>>2]=U+80|0;a[Bd+24>>2]=U+96|0;a[Bd+28>>2]=U+112|0;a[Bd+32>>2]=U+16|0;a[Bd+36>>2]=U+16|0;a[Bd+40>>2]=U+80|0;a[Bd+44>>2]=U+80|0;a[cd>>2]=OB|0;a[cd+4>>2]=Ac|0;a[cd+8>>2]=Zj|0;a[cd+12>>2]=iB|0;a[cd+16>>2]=ir|0;a[cd+20>>2]=Yj|0;a[cd+24>>2]=RA|0;a[cd+28>>2]=hr|0;a[cd+32>>2]=fr|0;a[cd+36>>2]=MA|0;a[cd+40>>2]=er|0;a[cd+44>>2]=Vj|0;a[cd+48>>2]=HA|0;a[cd+52>>2]=GA|0;a[cd+56>>2]=hf|0;a[cd+60>>2]=Uj|0;a[L>>2]=IA|0;a[L+4>>2]=AA|0;a[L+8>>2]=OB|0;a[L+12>>2]=Xz|0;a[L+16>>2]=Mz|0;a[L+20>>2]=Bz|0;a[L+24>>2]=qz|0;a[L+28>>2]=Ac|0;a[L+32>>2]=SB|0;a[L+36>>2]=Zj|0;a[L+40>>2]=wB|0;a[L+44>>2]=mB|0;a[L+48>>2]=bB|0;a[L+52>>2]=WA|0;a[L+56>>2]=SA|0;a[L+60>>2]=QA|0;a[L+64>>2]=OA|0;a[L+68>>2]=NA|0;a[L+72>>2]=LA|0;a[L+76>>2]=JA|0;a[L+80>>2]=gn|0;a[L+84>>2]=gka|0;a[L+88>>2]=iia|0;a[L+92>>2]=EA|0;a[L+96>>2]=ega|0;a[L+100>>2]=DA|0;a[L+104>>2]=$ea|0;a[L+108>>2]=CA|0;a[L+112>>2]=dea|0;a[L+116>>2]=BA|0;a[L+120>>2]=zA|0;a[L+124>>2]=xA|0;a[L+128>>2]=Bca|0;a[L+132>>2]=wA|0;a[L+136>>2]=uA|0;a[L+140>>2]=sA|0;a[L+144>>2]=rA|0;a[L+148>>2]=qA|0;a[L+152>>2]=pA|0;a[L+156>>2]=nA|0;a[L+160>>2]=mA|0;a[L+164>>2]=lA|0;a[L+168>>2]=kA|0;a[L+172>>2]=hA|0;a[L+176>>2]=fA|0;a[L+180>>2]=dA|0;a[L+184>>2]=cA|0;a[L+188>>2]=aA|0;a[L+192>>2]=iB|0;a[L+196>>2]=Zz|0;a[L+200>>2]=Wz|0;a[L+204>>2]=Uz|0;a[L+208>>2]=Tz|0;a[L+212>>2]=ir|0;a[L+216>>2]=Yj|0;a[L+220>>2]=Sz|0;a[L+224>>2]=Rz|0;a[L+228>>2]=Pz|0;a[L+232>>2]=Oz|0;a[L+236>>2]=Nz|0;a[L+240>>2]=Lz|0;a[L+244>>2]=Kz|0;a[L+248>>2]=Jz|0;a[L+252>>2]=Iz|0;a[L+256>>2]=Hz|0;a[L+260>>2]=Gz|0;a[L+264>>2]=Fz|0;a[L+268>>2]=Ez|0;a[L+272>>2]=Dz|0;a[L+276>>2]=Cz|0;a[L+280>>2]=Az|0;a[L+284>>2]=zz|0;a[L+288>>2]=B1|0;a[L+292>>2]=qe|0;a[L+296>>2]=yz|0;a[L+300>>2]=xz|0;a[L+304>>2]=wz|0;a[L+308>>2]=uz|0;a[L+312>>2]=sz|0;a[L+316>>2]=rz|0;a[L+320>>2]=pz|0;a[L+324>>2]=oz|0;a[L+328>>2]=RA|0;a[L+332>>2]=nz|0;a[L+336>>2]=mz|0;a[L+340>>2]=Zm|0;a[L+344>>2]=hr|0;a[L+348>>2]=lz|0;a[L+352>>2]=kz|0;a[L+356>>2]=jz|0;a[L+360>>2]=iz|0;a[L+364>>2]=hz|0;a[L+368>>2]=gz|0;a[L+372>>2]=fz|0;a[L+376>>2]=ez|0;a[L+380>>2]=dz|0;a[L+384>>2]=cz|0;a[L+388>>2]=bz|0;a[L+392>>2]=UB|0;a[L+396>>2]=TB|0;a[L+400>>2]=RB|0;a[L+404>>2]=fr|0;a[L+408>>2]=PB|0;a[L+412>>2]=MA|0;a[L+416>>2]=MB|0;a[L+420>>2]=LB|0;a[L+424>>2]=KB|0;a[L+428>>2]=JB|0;a[L+432>>2]=IB|0;a[L+436>>2]=HB|0;a[L+440>>2]=GB|0;a[L+444>>2]=FB|0;a[L+448>>2]=EB|0;a[L+452>>2]=BB|0;a[L+456>>2]=AB|0;a[L+460>>2]=zB|0;a[L+464>>2]=yB|0;a[L+468>>2]=xB|0;a[L+472>>2]=er|0;a[L+476>>2]=Vj|0;a[L+480>>2]=vB|0;a[L+484>>2]=uB|0;a[L+488>>2]=tB|0;a[L+492>>2]=sB|0;a[L+496>>2]=rB|0;a[L+500>>2]=qB|0;a[L+504>>2]=pB|0;a[L+508>>2]=oB|0;a[L+512>>2]=HA|0;a[L+516>>2]=nB|0;a[L+520>>2]=lB|0;a[L+524>>2]=kB|0;a[L+528>>2]=jB|0;a[L+532>>2]=hB|0;a[L+536>>2]=gB|0;a[L+540>>2]=fB|0;a[L+544>>2]=eB|0;a[L+548>>2]=GA|0;a[L+552>>2]=dB|0;a[L+556>>2]=cB|0;a[L+560>>2]=aB|0;a[L+564>>2]=$A|0;a[L+568>>2]=ZA|0;a[L+572>>2]=hf|0;a[L+576>>2]=YA|0;a[L+580>>2]=Uj|0;a[L+584>>2]=XA|0;a[NU+16>>2]=208;a[Ty+12>>2]=cd|0;a[Uy+12>>2]=L|0;a[Vy+12>>2]=Pf|0;a[ei>>2]=p2|0;a[ei+4>>2]=H_|0;a[ei+8>>2]=jx|0;a[ei+12>>2]=BPa|0;a[ei+16>>2]=WMa|0;a[I>>2]=JMa|0;a[I+4>>2]=YMa|0;a[I+8>>2]=Foa|0;a[I+12>>2]=Y|0;a[I+16>>2]=daa|0;a[I+20>>2]=c8|0;a[I+24>>2]=m5|0;a[I+28>>2]=t2|0;a[I+32>>2]=Y|0;a[I+36>>2]=K_|0;a[I+40>>2]=WX|0;a[I+44>>2]=Y|0;a[I+48>>2]=FPa|0;a[I+52>>2]=aNa|0;a[I+56>>2]=vKa|0;a[I+60>>2]=PHa|0;a[I+64>>2]=gFa|0;a[I+68>>2]=GCa|0;a[I+72>>2]=lAa|0;a[I+76>>2]=ln|0;a[I+80>>2]=iva|0;a[I+84>>2]=jta|0;a[I+88>>2]=lra|0;a[I+92>>2]=Joa|0;a[I+96>>2]=ima|0;a[I+100>>2]=rka|0;a[I+104>>2]=tia|0;a[I+108>>2]=Lga|0;a[I+112>>2]=jga|0;a[I+116>>2]=Gfa|0;a[I+120>>2]=dfa|0;a[I+124>>2]=Bea|0;a[I+128>>2]=iea|0;a[I+132>>2]=ii|0;a[I+136>>2]=Y|0;a[I+140>>2]=tda|0;a[I+144>>2]=ada|0;a[I+148>>2]=Eca|0;a[I+152>>2]=jca|0;a[I+156>>2]=Y|0;a[I+160>>2]=Sba|0;a[I+164>>2]=yba|0;a[I+168>>2]=$aa|0;a[I+172>>2]=Jaa|0;a[I+176>>2]=ii|0;a[I+180>>2]=Y|0;a[I+184>>2]=raa|0;a[I+188>>2]=$$|0;a[I+192>>2]=L$|0;a[I+196>>2]=s$|0;a[I+200>>2]=b$|0;a[I+204>>2]=N9|0;a[I+208>>2]=y9|0;a[I+212>>2]=i9|0;a[I+216>>2]=U8|0;a[I+220>>2]=F8|0;a[I+224>>2]=Y|0;a[I+228>>2]=p8|0;a[I+232>>2]=$7|0;a[I+236>>2]=L7|0;a[I+240>>2]=x7|0;a[I+244>>2]=i7|0;a[I+248>>2]=Y|0;a[I+252>>2]=W6|0;a[I+256>>2]=H6|0;a[I+260>>2]=s6|0;a[I+264>>2]=e6|0;a[I+268>>2]=Q5|0;a[I+272>>2]=A5|0;a[I+276>>2]=j5|0;a[I+280>>2]=T4|0;a[I+284>>2]=E4|0;a[I+288>>2]=r4|0;a[I+292>>2]=c4|0;a[I+296>>2]=O3|0;a[I+300>>2]=ii|0;a[I+304>>2]=Y|0;a[I+308>>2]=y3|0;a[I+312>>2]=i3|0;a[I+316>>2]=V2|0;a[I+320>>2]=ln|0;a[I+324>>2]=Y|0;a[I+328>>2]=G2|0;a[I+332>>2]=v2|0;a[I+336>>2]=b2|0;a[I+340>>2]=N1|0;a[I+344>>2]=z1|0;a[I+348>>2]=l1|0;a[I+352>>2]=Y0|0;a[I+356>>2]=K0|0;a[I+360>>2]=x0|0;a[I+364>>2]=k0|0;a[I+368>>2]=ln|0;a[I+372>>2]=Y|0;a[I+376>>2]=X_|0;a[I+380>>2]=I_|0;a[I+384>>2]=t_|0;a[I+388>>2]=e_|0;a[I+392>>2]=RZ|0;a[I+396>>2]=BZ|0;a[I+400>>2]=nZ|0;a[I+404>>2]=ZY|0;a[I+408>>2]=ii|0;a[I+412>>2]=Y|0;a[I+416>>2]=LY|0;a[I+420>>2]=xY|0;a[I+424>>2]=iY|0;a[I+428>>2]=UX|0;a[I+432>>2]=GX|0;a[I+436>>2]=rX|0;a[I+440>>2]=dX|0;a[I+444>>2]=PW|0;a[I+448>>2]=BW|0;a[I+452>>2]=nW|0;a[I+456>>2]=aW|0;a[I+460>>2]=ii|0;a[I+464>>2]=Y|0;a[I+468>>2]=OV|0;a[I+472>>2]=RPa|0;a[I+476>>2]=Y|0;a[I+480>>2]=DPa|0;a[I+484>>2]=pPa|0;a[I+488>>2]=bPa|0;a[I+492>>2]=POa|0;a[I+496>>2]=AOa|0;a[I+500>>2]=mOa|0;a[I+504>>2]=ZNa|0;a[I+508>>2]=MNa|0;a[I+512>>2]=zNa|0;a[I+516>>2]=Y|0;a[I+520>>2]=mNa|0;a[I+524>>2]=Y|0;a[I+528>>2]=ZMa|0;a[I+532>>2]=NMa|0;a[I+536>>2]=wMa|0;a[I+540>>2]=jMa|0;a[I+544>>2]=WLa|0;a[I+548>>2]=HLa|0;a[I+552>>2]=ii|0;a[I+556>>2]=Y|0;a[I+560>>2]=tLa|0;a[I+564>>2]=Y|0;a[I+568>>2]=gLa|0;a[I+572>>2]=UKa|0;a[I+576>>2]=HKa|0;a[I+580>>2]=tKa|0;a[I+584>>2]=gKa|0;a[I+588>>2]=UJa|0;a[I+592>>2]=FJa|0;a[I+596>>2]=ln|0;a[I+600>>2]=Y|0;a[I+604>>2]=qJa|0;a[I+608>>2]=Y|0;a[I+612>>2]=cJa|0;a[I+616>>2]=SIa|0;a[I+620>>2]=CIa|0;a[I+624>>2]=pIa|0;a[I+628>>2]=aIa|0;a[I+632>>2]=NHa|0;a[I+636>>2]=AHa|0;a[I+640>>2]=Y|0;a[I+644>>2]=mHa|0;a[I+648>>2]=$Ga|0;a[I+652>>2]=NGa|0;a[I+656>>2]=BGa|0;a[I+660>>2]=hGa|0;a[I+664>>2]=TFa|0;a[I+668>>2]=GFa|0;a[I+672>>2]=tFa|0;a[I+676>>2]=Y|0;a[I+680>>2]=eFa|0;a[H>>2]=b_|0;a[H+4>>2]=Ym|0;a[H+8>>2]=QB|0;a[H+24>>2]=me|0;a[H+36>>2]=RJa|0;a[H+40>>2]=Ym|0;a[H+44>>2]=QB|0;a[H+52>>2]=vg|0;a[H+60>>2]=me|0;a[H+68>>2]=bc|0;a[H+72>>2]=dCa|0;a[H+76>>2]=Ym|0;a[H+80>>2]=mn|0;a[H+96>>2]=me|0;a[H+100>>2]=Wb|0;a[H+108>>2]=Eua|0;a[H+112>>2]=Ym|0;a[H+116>>2]=mn|0;a[H+124>>2]=vg|0;a[H+132>>2]=me|0;a[H+136>>2]=Wb|0;a[H+140>>2]=bc|0;a[H+144>>2]=Psa|0;a[H+148>>2]=jn|0;a[H+152>>2]=mn|0;a[H+168>>2]=qd|0;a[H+172>>2]=Wb|0;a[H+180>>2]=Jla|0;a[H+184>>2]=jn|0;a[H+188>>2]=mn|0;a[H+196>>2]=bc|0;a[H+204>>2]=qd|0;a[H+208>>2]=Wb|0;a[H+212>>2]=bc|0;a[H+216>>2]=Uja|0;a[H+220>>2]=jn|0;a[H+224>>2]=FA|0;a[H+240>>2]=qd|0;a[H+252>>2]=Fga|0;a[H+256>>2]=jn|0;a[H+260>>2]=FA|0;a[H+268>>2]=bc|0;a[H+276>>2]=qd|0;a[H+284>>2]=bc|0;a[H+288>>2]=Tj|0;a[H+292>>2]=Tj|0;a[H+312>>2]=fn|0;a[H+324>>2]=Vea|0;a[H+328>>2]=Tj|0;a[H+332>>2]=Wb|0;a[H+348>>2]=fn|0;a[H+352>>2]=Wb|0;a[H+360>>2]=xea|0;a[H+364>>2]=Tj|0;a[H+368>>2]=Wb|0;a[H+376>>2]=vg|0;a[H+384>>2]=fn|0;a[H+388>>2]=Wb|0;a[H+392>>2]=bc|0;a[H+396>>2]=aea|0;a[H+400>>2]=Tj|0;a[H+412>>2]=vg|0;a[H+420>>2]=fn|0;a[H+428>>2]=bc|0;a[H+432>>2]=Qf|0;a[H+436>>2]=Qf|0;a[H+456>>2]=me|0;a[H+468>>2]=pda|0;a[H+472>>2]=Qf|0;a[H+476>>2]=Wb|0;a[H+492>>2]=me|0;a[H+496>>2]=Wb|0;a[H+504>>2]=Uca|0;a[H+508>>2]=Qf|0;a[H+512>>2]=Wb|0;a[H+520>>2]=vg|0;a[H+528>>2]=me|0;a[H+532>>2]=Wb|0;a[H+536>>2]=bc|0;a[H+540>>2]=yca|0;a[H+544>>2]=Qf|0;a[H+552>>2]=en|0;a[H+564>>2]=me|0;a[H+576>>2]=Mba|0;a[H+580>>2]=Qf|0;a[H+584>>2]=Wb|0;a[H+588>>2]=en|0;a[H+600>>2]=me|0;a[H+604>>2]=Wb|0;a[H+612>>2]=sba|0;a[H+616>>2]=Qf|0;a[H+620>>2]=Wb|0;a[H+624>>2]=en|0;a[H+628>>2]=vg|0;a[H+636>>2]=me|0;a[H+640>>2]=Wb|0;a[H+644>>2]=bc|0;a[H+648>>2]=Zaa|0;a[H+652>>2]=Qf|0;a[H+660>>2]=en|0;a[H+664>>2]=vg|0;a[H+672>>2]=me|0;a[H+680>>2]=bc|0;a[H+684>>2]=Iaa|0;a[H+688>>2]=Qf|0;a[H+700>>2]=vg|0;a[H+708>>2]=me|0;a[H+716>>2]=bc|0;a[H+720>>2]=qaa|0;a[H+724>>2]=dn|0;a[H+728>>2]=Wb|0;a[H+744>>2]=qd|0;a[H+748>>2]=Wb|0;a[H+756>>2]=K$|0;a[H+760>>2]=dn|0;a[H+764>>2]=Wb|0;a[H+772>>2]=bc|0;a[H+780>>2]=qd|0;a[H+784>>2]=Wb|0;a[H+788>>2]=bc|0;a[H+792>>2]=r$|0;a[H+796>>2]=dn|0;a[H+808>>2]=bc|0;a[H+816>>2]=qd|0;a[H+824>>2]=bc|0;a[H+828>>2]=a$|0;a[H+832>>2]=dn|0;a[H+836>>2]=gA|0;a[H+852>>2]=qd|0;a[H+864>>2]=x9|0;a[H+868>>2]=cn|0;a[H+872>>2]=Wb|0;a[H+888>>2]=qd|0;a[H+892>>2]=Wb|0;a[H+900>>2]=T8|0;a[H+904>>2]=cn|0;a[H+908>>2]=Wb|0;a[H+916>>2]=bc|0;a[H+924>>2]=qd|0;a[H+928>>2]=Wb|0;a[H+932>>2]=bc|0;a[H+936>>2]=E8|0;a[H+940>>2]=cn|0;a[H+952>>2]=bc|0;a[H+960>>2]=qd|0;a[H+968>>2]=bc|0;a[H+972>>2]=o8|0;a[H+976>>2]=cn|0;a[H+980>>2]=gA|0;a[H+996>>2]=qd|0;a[H+1008>>2]=Yz|0;a[H+1012>>2]=Yz|0;a[H+1032>>2]=Vz|0;a[H+1044>>2]=w7|0;a[H+1048>>2]=bn|0;a[H+1052>>2]=Wb|0;a[H+1068>>2]=qd|0;a[H+1072>>2]=Wb|0;a[H+1080>>2]=V6|0;a[H+1084>>2]=bn|0;a[H+1088>>2]=Wb|0;a[H+1096>>2]=bc|0;a[H+1104>>2]=qd|0;a[H+1108>>2]=Wb|0;a[H+1112>>2]=bc|0;a[H+1116>>2]=G6|0;a[H+1120>>2]=bn|0;a[H+1132>>2]=bc|0;a[H+1140>>2]=qd|0;a[H+1148>>2]=bc|0;a[H+1152>>2]=Li|0;a[H+1156>>2]=bn|0;a[H+1176>>2]=qd|0;a[H+1188>>2]=c6|0;a[H+1192>>2]=O5|0;a[H+1196>>2]=y5|0;a[H+1204>>2]=bc|0;a[H+1212>>2]=qd|0;a[H+1220>>2]=bc|0;a[H+1224>>2]=h5|0;a[H+1228>>2]=R4|0;a[H+1248>>2]=Vz|0;a[rl>>2]=J3|0;a[rl+4>>2]=t3|0;a[vc>>2]=vd|0;a[vc+4>>2]=jqa|0;a[vc+8>>2]=Ena|0;a[vc+12>>2]=pla|0;a[vc+16>>2]=zja|0;a[vc+20>>2]=Bha|0;a[vc+24>>2]=Aga|0;a[vc+28>>2]=Xfa|0;a[vc+32>>2]=ufa|0;a[vc+36>>2]=Qea|0;a[vc+40>>2]=tea|0;a[vc+44>>2]=Xda|0;a[vc+48>>2]=Eda|0;a[vc+52>>2]=mda|0;a[vc+56>>2]=Qca|0;a[vc+60>>2]=tca|0;a[vc+64>>2]=bca|0;a[vc+68>>2]=Iba|0;a[vc+72>>2]=oba|0;a[vc+76>>2]=Waa|0;a[vc+80>>2]=Faa|0;a[Tq+12>>2]=164;a[Tq+16>>2]=252;a[Tq+20>>2]=132;a[vV>>2]=368;a[Qc>>2]=Hoa|0;a[Qc+12>>2]=gma|0;a[Qc+16>>2]=pka|0;a[Qc+28>>2]=jr|0;a[Qc+32>>2]=Kga|0;a[Qc+44>>2]=iga|0;a[Qc+48>>2]=Ffa|0;a[Qc+60>>2]=cfa|0;a[Qc+64>>2]=Aea|0;a[Qc+76>>2]=hea|0;a[Qc+80>>2]=Lda|0;a[Qc+92>>2]=sda|0;a[Qc+96>>2]=$ca|0;a[Qc+108>>2]=Dca|0;a[Qc+112>>2]=ica|0;a[Qc+124>>2]=Rba|0;a[Qm+4>>2]=JZ|0;a[Qm+12>>2]=KU;a[Qm+16>>2]=Ty;a[Rm+4>>2]=C$|0;a[Rm+12>>2]=LU;a[Rm+16>>2]=PU;a[Sm+4>>2]=Dp|0;a[Sm+12>>2]=MU;a[Sm+16>>2]=Uy;a[Tm+4>>2]=jr|0;a[Tm+12>>2]=TU;a[Tm+16>>2]=QU;a[Um+4>>2]=q2|0;a[Um+12>>2]=uV;a[Um+16>>2]=RU;a[Vm+4>>2]=Xca|0;a[Vm+12>>2]=wV;a[Vm+16>>2]=Vy;a[Wg+4>>2]=ok|0;a[Wg+12>>2]=AV;a[Wg+16>>2]=SU;a[Wg+24>>2]=x$|0;a[Wg+32>>2]=JU;a[Wg+36>>2]=OU;a[zn>>2]=gea|0;a[zn+4>>2]=az|0;a[yn>>2]=eea|0;a[yn+4>>2]=ed|0;a[R+4>>2]=c5|0;a[R+12>>2]=hi;a[R+24>>2]=eAa|0;a[R+32>>2]=hi;a[R+44>>2]=hga|0;a[R+52>>2]=hi;a[R+64>>2]=Pba|0;a[R+72>>2]=hi;a[R+84>>2]=A9|0;a[R+92>>2]=hi;a[R+104>>2]=J6|0;a[R+112>>2]=Rj;a[R+124>>2]=Q3|0;a[R+132>>2]=Rj;a[R+144>>2]=$0|0;a[R+152>>2]=Rj;a[R+164>>2]=pZ|0;a[R+172>>2]=Rj;a[R+184>>2]=DW|0;a[R+192>>2]=Rj;a[R+204>>2]=oOa|0;a[R+212>>2]=Pj;a[R+224>>2]=KLa|0;a[R+232>>2]=Pj;a[R+244>>2]=eJa|0;a[R+252>>2]=Pj;a[R+264>>2]=yGa|0;a[R+272>>2]=Pj;a[R+284>>2]=TDa|0;a[R+292>>2]=Pj;a[R+304>>2]=TA|0;a[R+312>>2]=Xm;a[R+324>>2]=cza|0;a[R+332>>2]=Xm;a[R+344>>2]=PA|0;a[R+352>>2]=Xm;a[R+364>>2]=fua|0;a[R+372>>2]=Xm;a[R+384>>2]=psa|0;a[R+392>>2]=xV;a[R+404>>2]=Ypa|0;a[R+412>>2]=Md;a[R+424>>2]=rna|0;a[R+432>>2]=Md;a[R+444>>2]=hla|0;a[R+452>>2]=Md;a[R+464>>2]=rja|0;a[R+472>>2]=Md;a[R+484>>2]=sha|0;a[R+492>>2]=Md;a[R+504>>2]=wga|0;a[R+512>>2]=Md;a[R+524>>2]=Tfa|0;a[R+532>>2]=Md;a[R+544>>2]=qfa|0;a[R+552>>2]=Md;a[R+564>>2]=Nea|0;a[R+572>>2]=Md;a[R+584>>2]=rea|0;a[R+592>>2]=Md;a[R+604>>2]=Vda|0;a[R+612>>2]=Md;a[R+624>>2]=Cda|0;a[R+632>>2]=Md;a[R+644>>2]=jda|0;a[R+652>>2]=Md;a[R+664>>2]=Oca|0;a[R+672>>2]=Md;a[R+684>>2]=rca|0;a[R+692>>2]=Md;a[R+704>>2]=$ba|0;a[R+712>>2]=Md;a[R+724>>2]=Gba|0;a[R+732>>2]=ug;a[R+744>>2]=lba|0;a[R+752>>2]=ug;a[R+764>>2]=Uaa|0;a[R+772>>2]=ug;a[R+784>>2]=Daa|0;a[R+792>>2]=ug;a[R+804>>2]=maa|0;a[R+812>>2]=ug;a[R+824>>2]=W$|0;a[R+832>>2]=ug;a[R+844>>2]=G$|0;a[R+852>>2]=ug;a[R+864>>2]=n$|0;a[R+872>>2]=ug;a[R+884>>2]=iA|0;a[R+892>>2]=hi;a[R+904>>2]=J9|0;a[R+912>>2]=Qj;a[R+924>>2]=t9|0;a[R+932>>2]=Qj;a[R+944>>2]=e9|0;a[R+952>>2]=Qj;a[R+964>>2]=P8|0;a[R+972>>2]=Qj;a[R+984>>2]=z8|0;a[R+992>>2]=Qj;a[Wm+4>>2]=ok|0;a[Wm+12>>2]=zV;a[Wm+16>>2]=yV;a[Oc>>2]=vba|0;a[Oc+8>>2]=VFa|0;a[Oc+16>>2]=Oia|0;a[Oc+24>>2]=Gca|0;a[Oc+32>>2]=f$|0;a[Oc+40>>2]=k7|0;a[Oc+48>>2]=q4|0;a[Oc+56>>2]=x1|0;a[Oc+64>>2]=OZ|0;a[Oc+72>>2]=$W|0;a[Oc+80>>2]=KOa|0;a[Oc+88>>2]=DB|0;a[Oc+96>>2]=xJa|0;a[Oc+104>>2]=xHa|0;a[Uq+4>>2]=WW|0;a[Uq+16>>2]=BV;a[Vq+4>>2]=IEa|0;a[Vq+16>>2]=CV;a[Wq+4>>2]=iA|0;a[Wq+16>>2]=DV;a[Xg+4>>2]=PA|0;a[Xg+16>>2]=$y;a[Xg+24>>2]=rEa|0;a[Xg+36>>2]=$y;a[Xg+44>>2]=TA|0;a[Xg+56>>2]=FV;a[De+4>>2]=Xwa|0;a[De+16>>2]=Zq;a[De+24>>2]=vfa|0;a[De+36>>2]=$q;a[De+44>>2]=mba|0;a[De+56>>2]=$q;a[De+64>>2]=c9|0;a[De+76>>2]=$q;a[De+84>>2]=l6|0;a[De+96>>2]=Zq;a[De+104>>2]=o3|0;a[De+116>>2]=Zq;a[Xq+4>>2]=xGa|0;a[Xq+16>>2]=EV;a[ae+4>>2]=C7|0;a[ae+16>>2]=Sj;a[ae+24>>2]=J4|0;a[ae+36>>2]=Sj;a[ae+44>>2]=S1|0;a[ae+56>>2]=GV;a[ae+64>>2]=j_|0;a[ae+76>>2]=Sj;a[ae+84>>2]=wX|0;a[ae+96>>2]=Sj;a[ae+104>>2]=gPa|0;a[ae+116>>2]=Sj;a[Cl>>2]=cea|0;a[Cl+4>>2]=Jda|0;a[Cl+8>>2]=sg|0;a[Bl>>2]=Yca|0;a[Bl+4>>2]=jr|0;a[Bl+8>>2]=Dp|0;a[Mf>>2]=Ac|0;a[Mf+4>>2]=Zj|0;a[Mf+8>>2]=Yj|0;a[Mf+12>>2]=gn|0;a[Mf+16>>2]=Vj|0;a[Mf+20>>2]=Zm|0;a[Mf+24>>2]=Uj|0;a[Mf+28>>2]=hf|0;a[Pf>>2]=Ac|0;a[Pf+4>>2]=Zj|0;a[Pf+8>>2]=gn|0;a[Pf+12>>2]=Yj|0;a[Pf+16>>2]=Zm|0;a[Pf+20>>2]=Vj|0;a[Pf+24>>2]=hf|0;a[Pf+28>>2]=Uj|0;a[Yq>>2]=356;a[Yq+4>>2]=82;a[F>>2]=cba|0;a[F+8>>2]=Maa|0;a[F+16>>2]=vaa|0;a[F+24>>2]=eaa|0;a[F+32>>2]=O$|0;a[F+40>>2]=v$|0;a[F+48>>2]=e$|0;a[F+56>>2]=Q9|0;a[F+64>>2]=C9|0;a[F+72>>2]=m9|0;a[F+80>>2]=X8|0;a[F+88>>2]=I8|0;a[F+96>>2]=s8|0;a[F+104>>2]=d8|0;a[F+112>>2]=O7|0;a[F+120>>2]=A7|0;a[F+128>>2]=m7|0;a[F+136>>2]=Z6|0;a[F+144>>2]=L6|0;a[F+152>>2]=w6|0;a[F+160>>2]=h6|0;a[F+168>>2]=T5|0;a[F+176>>2]=D5|0;a[F+184>>2]=n5|0;a[F+192>>2]=W4|0;a[F+200>>2]=H4|0;a[F+208>>2]=u4|0;a[F+216>>2]=f4|0;a[F+224>>2]=S3|0;a[F+232>>2]=C3|0;a[F+240>>2]=l3|0;a[F+248>>2]=Y2|0;a[F+256>>2]=J2|0;a[F+264>>2]=u2|0;a[F+272>>2]=e2|0;a[F+280>>2]=Q1|0;a[F+288>>2]=D1|0;a[F+296>>2]=o1|0;a[F+304>>2]=b1|0;a[F+312>>2]=O0|0;a[F+320>>2]=A0|0;a[F+328>>2]=n0|0;a[F+336>>2]=$_|0;a[F+344>>2]=M_|0;a[F+352>>2]=w_|0;a[F+360>>2]=h_|0;a[F+368>>2]=UZ|0;a[F+376>>2]=EZ|0;a[F+384>>2]=rZ|0;a[F+392>>2]=bZ|0;a[F+400>>2]=NY|0;a[F+408>>2]=zY|0;a[F+416>>2]=kY|0;a[F+424>>2]=XX|0;a[F+432>>2]=IX|0;a[F+440>>2]=tX|0;a[F+448>>2]=fX|0;a[F+456>>2]=RW|0;a[F+464>>2]=EW|0;a[F+472>>2]=qW|0;a[F+480>>2]=cW|0;a[F+488>>2]=QV|0;a[F+496>>2]=TPa|0;a[F+504>>2]=GPa|0;a[F+512>>2]=rPa|0;a[F+520>>2]=dPa|0;a[F+528>>2]=ROa|0;a[F+536>>2]=COa|0;a[F+544>>2]=pOa|0;a[F+552>>2]=bOa|0;a[F+560>>2]=ONa|0;a[F+568>>2]=BNa|0;a[F+576>>2]=oNa|0;a[F+584>>2]=bNa|0;a[F+592>>2]=LMa|0;a[F+600>>2]=yMa|0;a[F+608>>2]=oMa|0;a[F+616>>2]=bMa|0;a[F+624>>2]=OLa|0;a[F+632>>2]=zLa|0;a[F+640>>2]=lLa|0;a[F+648>>2]=ZKa|0;a[F+656>>2]=MKa|0;a[F+664>>2]=wKa|0;a[F+672>>2]=lKa|0;a[F+680>>2]=ZJa|0;a[F+688>>2]=LJa|0;a[F+696>>2]=vJa|0;a[F+704>>2]=iJa|0;a[F+712>>2]=VIa|0;a[F+720>>2]=HIa|0;a[F+728>>2]=uIa|0;a[F+736>>2]=gIa|0;a[F+744>>2]=THa|0;a[F+752>>2]=FHa|0;a[F+760>>2]=rHa|0;a[F+768>>2]=eHa|0;a[F+776>>2]=JGa|0;a[F+784>>2]=EGa|0;a[F+792>>2]=nGa|0;a[F+800>>2]=ZFa|0;a[F+808>>2]=LFa|0;a[F+816>>2]=yFa|0;a[F+824>>2]=kFa|0;a[F+832>>2]=XEa|0;a[F+840>>2]=KEa|0;a[F+848>>2]=wEa|0;a[F+856>>2]=jEa|0;a[F+864>>2]=YDa|0;a[F+872>>2]=KDa|0;a[F+880>>2]=xDa|0;a[F+888>>2]=kDa|0;a[F+896>>2]=WCa|0;a[F+904>>2]=KCa|0;a[F+912>>2]=wCa|0;a[F+920>>2]=kCa|0;a[F+928>>2]=YBa|0;a[F+936>>2]=MBa|0;a[F+944>>2]=ABa|0;a[F+952>>2]=nBa|0;a[F+960>>2]=aBa|0;a[F+968>>2]=PAa|0;a[F+976>>2]=CAa|0;a[F+984>>2]=pAa|0;a[F+992>>2]=bAa|0;a[F+1e3>>2]=Qza|0;a[F+1008>>2]=ap|0;a[F+1016>>2]=tza|0;a[F+1024>>2]=hza|0;a[F+1032>>2]=Uya|0;a[F+1040>>2]=Hya|0;a[F+1048>>2]=uya|0;a[F+1056>>2]=fya|0;a[F+1064>>2]=Sxa|0;a[F+1072>>2]=Exa|0;a[F+1080>>2]=qxa|0;a[F+1088>>2]=cxa|0;a[F+1096>>2]=Owa|0;a[F+1104>>2]=Awa|0;a[F+1112>>2]=mwa|0;a[F+1120>>2]=$va|0;a[F+1128>>2]=Ova|0;a[F+1136>>2]=Ava|0;a[F+1144>>2]=nva|0;a[F+1152>>2]=$ua|0;a[F+1160>>2]=Nua|0;a[F+1168>>2]=Bua|0;a[F+1176>>2]=rua|0;a[F+1184>>2]=hua|0;a[F+1192>>2]=$ta|0;a[F+1200>>2]=Pta|0;a[F+1208>>2]=Fta|0;a[F+1216>>2]=wta|0;a[F+1224>>2]=DB|0;a[F+1232>>2]=eta|0;a[F+1240>>2]=Vsa|0;a[F+1248>>2]=Msa|0;a[F+1256>>2]=Esa|0;a[F+1264>>2]=usa|0;a[F+1272>>2]=hsa|0;a[F+1280>>2]=$ra|0;a[F+1288>>2]=Pra|0;a[F+1296>>2]=Cra|0;a[F+1304>>2]=qra|0;a[F+1312>>2]=cra|0;a[F+1320>>2]=Rqa|0;a[F+1328>>2]=Fqa|0;a[F+1336>>2]=sqa|0;a[F+1344>>2]=dqa|0;a[F+1352>>2]=Ppa|0;a[F+1360>>2]=Apa|0;a[F+1368>>2]=npa|0;a[F+1376>>2]=bpa|0;a[F+1384>>2]=Ooa|0;a[F+1392>>2]=yoa|0;a[F+1400>>2]=moa|0;a[F+1408>>2]=$na|0;a[F+1416>>2]=Mna|0;a[F+1424>>2]=yna|0;a[F+1432>>2]=ina|0;a[F+1440>>2]=Vma|0;a[F+1448>>2]=Ima|0;a[F+1456>>2]=xma|0;a[F+1464>>2]=nma|0;a[F+1472>>2]=$la|0;a[F+1480>>2]=Sla|0;a[F+1488>>2]=Gla|0;a[F+1496>>2]=vla|0;a[F+1504>>2]=kla|0;a[F+1512>>2]=ala|0;a[F+1520>>2]=Qka|0;a[F+1528>>2]=Ika|0;a[F+1536>>2]=Aka|0;a[F+1544>>2]=uka|0;a[F+1552>>2]=kka|0;a[F+1560>>2]=aka|0;a[F+1568>>2]=Pja|0;a[F+1576>>2]=Gja|0;a[F+1584>>2]=vja|0;a[F+1592>>2]=lja|0;a[F+1600>>2]=aja|0;a[F+1608>>2]=Ria|0;a[F+1616>>2]=Fia|0;a[F+1624>>2]=xia|0;a[F+1632>>2]=mia|0;a[F+1640>>2]=bia|0;a[F+1648>>2]=Sha|0;a[F+1656>>2]=Iha|0;a[F+1664>>2]=nha|0;a[F+1672>>2]=lha|0;a[F+1680>>2]=$ga|0;a[F+1688>>2]=Sga|0;a[F+1696>>2]=Oga|0;a[F+1704>>2]=Mga|0;a[F+1712>>2]=Iga|0;a[F+1720>>2]=Gga|0;a[F+1728>>2]=Dga|0;a[F+1736>>2]=Bga|0;a[F+1744>>2]=yga|0;a[F+1752>>2]=tga|0;a[F+1760>>2]=qga|0;a[F+1768>>2]=oga|0;a[F+1776>>2]=mga|0;a[F+1784>>2]=kga|0;a[F+1792>>2]=fga|0;a[F+1800>>2]=cga|0;a[F+1808>>2]=aga|0;a[F+1816>>2]=Zfa|0;a[F+1824>>2]=Vfa|0;a[F+1832>>2]=Qfa|0;a[F+1840>>2]=Nfa|0;a[F+1848>>2]=Lfa|0;a[F+1856>>2]=Jfa|0;a[F+1864>>2]=Hfa|0;a[F+1872>>2]=Cfa|0;a[F+1880>>2]=Afa|0;a[F+1888>>2]=yfa|0;a[F+1896>>2]=wfa|0;a[F+1904>>2]=sfa|0;a[F+1912>>2]=nfa|0;a[F+1920>>2]=kfa|0;a[F+1928>>2]=ifa|0;a[F+1936>>2]=gfa|0;a[F+1944>>2]=efa|0;a[F+1952>>2]=afa|0;a[F+1960>>2]=Xea|0;a[F+1968>>2]=Uea|0;a[F+1976>>2]=Sea|0;a[F+1984>>2]=Pea|0;a[F+1992>>2]=Kea|0;a[F+2e3>>2]=Hea|0;a[F+2008>>2]=Fea|0;a[co>>2]=q5|0;a[co+4>>2]=Z4|0;a[e>>2]=Efa|0;a[e+12>>2]=wba|0;a[e+24>>2]=k9|0;a[e+36>>2]=u6|0;a[e+48>>2]=A3|0;a[e+60>>2]=M0|0;a[e+72>>2]=aZ|0;a[e+84>>2]=pW|0;a[e+96>>2]=aOa|0;a[e+108>>2]=vLa|0;a[e+120>>2]=QIa|0;a[e+132>>2]=iGa|0;a[e+144>>2]=FDa|0;a[e+156>>2]=iBa|0;a[e+168>>2]=Pya|0;a[e+180>>2]=hwa|0;a[e+192>>2]=Wta|0;a[e+204>>2]=gsa|0;a[e+216>>2]=Jpa|0;a[e+228>>2]=cna|0;a[e+240>>2]=Xka|0;a[e+252>>2]=gja|0;a[e+264>>2]=gha|0;a[e+276>>2]=sga|0;a[e+288>>2]=Pfa|0;a[e+300>>2]=mfa|0;a[e+312>>2]=Iea|0;a[e+324>>2]=nea|0;a[e+336>>2]=Rda|0;a[e+348>>2]=yda|0;a[e+360>>2]=fda|0;a[e+372>>2]=Kca|0;a[e+384>>2]=oca|0;a[e+396>>2]=Xba|0;a[e+408>>2]=Dba|0;a[e+420>>2]=iba|0;a[e+432>>2]=Raa|0;a[e+444>>2]=Aaa|0;a[e+456>>2]=jaa|0;a[e+468>>2]=T$|0;a[e+480>>2]=B$|0;a[e+492>>2]=k$|0;a[e+504>>2]=V9|0;a[e+516>>2]=H9|0;a[e+528>>2]=r9|0;a[e+540>>2]=b9|0;a[e+552>>2]=N8|0;a[e+564>>2]=x8|0;a[e+576>>2]=i8|0;a[e+588>>2]=T7|0;a[e+600>>2]=G7|0;a[e+612>>2]=r7|0;a[e+624>>2]=d7|0;a[e+636>>2]=Q6|0;a[e+648>>2]=B6|0;a[e+660>>2]=n6|0;a[e+672>>2]=Y5|0;a[e+684>>2]=I5|0;a[e+696>>2]=t5|0;a[e+708>>2]=b5|0;a[e+720>>2]=N4|0;a[e+732>>2]=z4|0;a[e+744>>2]=k4|0;a[e+756>>2]=X3|0;a[e+768>>2]=H3|0;a[e+780>>2]=r3|0;a[e+792>>2]=c3|0;a[e+804>>2]=P2|0;a[e+816>>2]=A2|0;a[e+828>>2]=j2|0;a[e+840>>2]=W1|0;a[e+852>>2]=I1|0;a[e+864>>2]=t1|0;a[e+876>>2]=g1|0;a[e+888>>2]=T0|0;a[e+900>>2]=F0|0;a[e+912>>2]=s0|0;a[e+924>>2]=f0|0;a[e+936>>2]=R_|0;a[e+948>>2]=B_|0;a[e+960>>2]=n_|0;a[e+972>>2]=YZ|0;a[e+984>>2]=IZ|0;a[e+996>>2]=vZ|0;a[e+1008>>2]=gZ|0;a[e+1020>>2]=SY|0;a[e+1032>>2]=EY|0;a[e+1044>>2]=qY|0;a[e+1056>>2]=bY|0;a[e+1068>>2]=NX|0;a[e+1080>>2]=zX|0;a[e+1092>>2]=kX|0;a[e+1104>>2]=XW|0;a[e+1116>>2]=JW|0;a[e+1128>>2]=vW|0;a[e+1140>>2]=hW|0;a[e+1152>>2]=VV|0;a[e+1164>>2]=IV|0;a[e+1176>>2]=LPa|0;a[e+1188>>2]=wPa|0;a[e+1200>>2]=jPa|0;a[e+1212>>2]=WOa|0;a[e+1224>>2]=HOa|0;a[e+1236>>2]=uOa|0;a[e+1248>>2]=gOa|0;a[e+1260>>2]=TNa|0;a[e+1272>>2]=GNa|0;a[e+1284>>2]=tNa|0;a[e+1296>>2]=gNa|0;a[e+1308>>2]=RMa|0;a[e+1320>>2]=DMa|0;a[e+1332>>2]=qMa|0;a[e+1344>>2]=dMa|0;a[e+1356>>2]=QLa|0;a[e+1368>>2]=BLa|0;a[e+1380>>2]=nLa|0;a[e+1392>>2]=aLa|0;a[e+1404>>2]=OKa|0;a[e+1416>>2]=BKa|0;a[e+1428>>2]=nKa|0;a[e+1440>>2]=aKa|0;a[e+1452>>2]=NJa|0;a[e+1464>>2]=zJa|0;a[e+1476>>2]=kJa|0;a[e+1488>>2]=XIa|0;a[e+1500>>2]=JIa|0;a[e+1512>>2]=wIa|0;a[e+1524>>2]=jIa|0;a[e+1536>>2]=VHa|0;a[e+1548>>2]=HHa|0;a[e+1560>>2]=tHa|0;a[e+1572>>2]=gHa|0;a[e+1584>>2]=UGa|0;a[e+1596>>2]=GGa|0;a[e+1608>>2]=pGa|0;a[e+1620>>2]=aGa|0;a[e+1632>>2]=NFa|0;a[e+1644>>2]=AFa|0;a[e+1656>>2]=mFa|0;a[e+1668>>2]=ZEa|0;a[e+1680>>2]=MEa|0;a[e+1692>>2]=yEa|0;a[e+1704>>2]=lEa|0;a[e+1716>>2]=$Da|0;a[e+1728>>2]=MDa|0;a[e+1740>>2]=zDa|0;a[e+1752>>2]=mDa|0;a[e+1764>>2]=ZCa|0;a[e+1776>>2]=MCa|0;a[e+1788>>2]=yCa|0;a[e+1800>>2]=mCa|0;a[e+1812>>2]=$Ba|0;a[e+1824>>2]=OBa|0;a[e+1836>>2]=CBa|0;a[e+1848>>2]=pBa|0;a[e+1860>>2]=cBa|0;a[e+1872>>2]=RAa|0;a[e+1884>>2]=FAa|0;a[e+1896>>2]=rAa|0;a[e+1908>>2]=dAa|0;a[e+1920>>2]=Sza|0;a[e+1932>>2]=Gza|0;a[e+1944>>2]=vza|0;a[e+1956>>2]=jza|0;a[e+1968>>2]=Wya|0;a[e+1980>>2]=Jya|0;a[e+1992>>2]=wya|0;a[e+2004>>2]=iya|0;a[e+2016>>2]=Uxa|0;a[e+2028>>2]=Gxa|0;a[e+2040>>2]=sxa|0;a[e+2052>>2]=exa|0;a[e+2064>>2]=Qwa|0;a[e+2076>>2]=Cwa|0;a[e+2088>>2]=owa|0;a[e+2100>>2]=bwa|0;a[e+2112>>2]=Qva|0;a[e+2124>>2]=Dva|0;a[e+2136>>2]=pva|0;a[e+2148>>2]=bva|0;a[e+2160>>2]=Pua|0;a[e+2172>>2]=Cua|0;a[e+2184>>2]=sua|0;a[e+2196>>2]=iua|0;a[e+2208>>2]=aua|0;a[e+2220>>2]=Qta|0;a[e+2232>>2]=Gta|0;a[e+2244>>2]=xta|0;a[e+2256>>2]=nta|0;a[e+2268>>2]=fta|0;a[e+2280>>2]=Wsa|0;a[e+2292>>2]=Nsa|0;a[e+2304>>2]=Fsa|0;a[e+2316>>2]=vsa|0;a[e+2328>>2]=isa|0;a[e+2340>>2]=asa|0;a[e+2352>>2]=Qra|0;a[e+2364>>2]=Era|0;a[e+2376>>2]=rra|0;a[e+2388>>2]=dra|0;a[e+2400>>2]=Sqa|0;a[e+2412>>2]=Gqa|0;a[e+2424>>2]=tqa|0;a[e+2436>>2]=eqa|0;a[e+2448>>2]=Qpa|0;a[e+2460>>2]=Bpa|0;a[e+2472>>2]=opa|0;a[e+2484>>2]=cpa|0;a[e+2496>>2]=Poa|0;a[e+2508>>2]=zoa|0;a[e+2520>>2]=noa|0;a[e+2532>>2]=aoa|0;a[e+2544>>2]=Nna|0;a[e+2556>>2]=zna|0;a[e+2568>>2]=jna|0;a[e+2580>>2]=Wma|0;a[e+2592>>2]=Jma|0;a[e+2604>>2]=yma|0;a[e+2616>>2]=oma|0;a[e+2628>>2]=bma|0;a[e+2640>>2]=Tla|0;a[e+2652>>2]=Hla|0;a[e+2664>>2]=wla|0;a[e+2676>>2]=lla|0;a[e+2688>>2]=bla|0;a[e+2700>>2]=Rka|0;a[e+2712>>2]=Jka|0;a[e+2724>>2]=Bka|0;a[e+2736>>2]=vka|0;a[e+2748>>2]=lka|0;a[e+2760>>2]=cka|0;a[e+2772>>2]=Qja|0;a[e+2784>>2]=Hja|0;a[e+2796>>2]=wja|0;a[e+2808>>2]=mja|0;a[e+2820>>2]=bja|0;a[e+2832>>2]=Sia|0;a[e+2844>>2]=Hia|0;a[e+2856>>2]=yia|0;a[e+2868>>2]=nia|0;a[e+2880>>2]=cia|0;a[e+2892>>2]=Tha|0;a[e+2904>>2]=Jha|0;a[e+2916>>2]=yha|0;a[e+2928>>2]=mha|0;a[e+2940>>2]=aha|0;a[e+2952>>2]=Tga|0;a[e+2964>>2]=Pga|0;a[e+2976>>2]=Nga|0;a[e+2988>>2]=Jga|0;a[e+3e3>>2]=Hga|0;a[e+3012>>2]=Ega|0;a[e+3024>>2]=Cga|0;a[e+3036>>2]=zga|0;a[e+3048>>2]=uga|0;a[e+3060>>2]=rga|0;a[e+3072>>2]=pga|0;a[e+3084>>2]=nga|0;a[e+3096>>2]=lga|0;a[e+3108>>2]=gga|0;a[e+3120>>2]=dga|0;a[e+3132>>2]=bga|0;a[e+3144>>2]=$fa|0;a[e+3156>>2]=Wfa|0;a[e+3168>>2]=Rfa|0;a[e+3180>>2]=Ofa|0;a[e+3192>>2]=Mfa|0;a[e+3204>>2]=Kfa|0;a[e+3216>>2]=Ifa|0;a[e+3228>>2]=Dfa|0;a[e+3240>>2]=Bfa|0;a[e+3252>>2]=zfa|0;a[e+3264>>2]=xfa|0;a[e+3276>>2]=tfa|0;a[e+3288>>2]=ofa|0;a[e+3300>>2]=lfa|0;a[e+3312>>2]=jfa|0;a[e+3324>>2]=hfa|0;a[e+3336>>2]=ffa|0;a[e+3348>>2]=bfa|0;a[e+3360>>2]=Yea|0;a[e+3372>>2]=Wea|0;a[e+3384>>2]=Tea|0;a[e+3396>>2]=Rea|0;a[e+3408>>2]=Oea|0;a[e+3420>>2]=Jea|0;a[e+3432>>2]=Gea|0;a[e+3444>>2]=Eea|0;a[e+3456>>2]=Dea|0;a[e+3468>>2]=Cea|0;a[e+3480>>2]=zea|0;a[e+3492>>2]=yea|0;a[e+3504>>2]=wea|0;a[e+3516>>2]=uea|0;a[e+3528>>2]=sea|0;a[e+3540>>2]=oea|0;a[e+3552>>2]=mea|0;a[e+3564>>2]=lea|0;a[e+3576>>2]=kea|0;a[e+3588>>2]=jea|0;a[e+3600>>2]=fea|0;a[e+3612>>2]=bea|0;a[e+3624>>2]=$da|0;a[e+3636>>2]=Zda|0;a[e+3648>>2]=Wda|0;a[e+3660>>2]=Sda|0;a[e+3672>>2]=Qda|0;a[e+3684>>2]=Pda|0;a[e+3696>>2]=Oda|0;a[e+3708>>2]=Nda|0;a[e+3720>>2]=Kda|0;a[e+3732>>2]=Ida|0;a[e+3744>>2]=Hda|0;a[e+3756>>2]=Gda|0;a[e+3768>>2]=Dda|0;a[e+3780>>2]=zda|0;a[e+3792>>2]=xda|0;a[e+3804>>2]=wda|0;a[e+3816>>2]=vda|0;a[e+3828>>2]=uda|0;a[e+3840>>2]=rda|0;a[e+3852>>2]=qda|0;a[e+3864>>2]=oda|0;a[e+3876>>2]=nda|0;a[e+3888>>2]=lda|0;a[e+3900>>2]=gda|0;a[e+3912>>2]=eda|0;a[e+3924>>2]=dda|0;a[e+3936>>2]=cda|0;a[e+3948>>2]=bda|0;a[e+3960>>2]=Zca|0;a[e+3972>>2]=Wca|0;a[e+3984>>2]=Tca|0;a[e+3996>>2]=Sca|0;a[e+4008>>2]=Pca|0;a[e+4020>>2]=Mca|0;a[e+4032>>2]=Jca|0;a[e+4044>>2]=Ica|0;a[e+4056>>2]=Hca|0;a[e+4068>>2]=Fca|0;a[e+4080>>2]=Cca|0;a[e+4092>>2]=Aca|0;a[e+4104>>2]=xca|0;a[e+4116>>2]=vca|0;a[e+4128>>2]=sca|0;a[e+4140>>2]=pca|0;a[e+4152>>2]=nca|0;a[e+4164>>2]=mca|0;a[e+4176>>2]=lca|0;a[e+4188>>2]=kca|0;a[e+4200>>2]=hca|0;a[e+4212>>2]=gca|0;a[e+4224>>2]=eca|0;a[e+4236>>2]=dca|0;a[e+4248>>2]=aca|0;a[e+4260>>2]=Yba|0;a[e+4272>>2]=Wba|0;a[e+4284>>2]=Vba|0;a[e+4296>>2]=Uba|0;a[e+4308>>2]=Tba|0;a[e+4320>>2]=Qba|0;a[e+4332>>2]=Oba|0;a[e+4344>>2]=Lba|0;a[e+4356>>2]=Jba|0;a[e+4368>>2]=Hba|0;a[e+4380>>2]=Eba|0;a[e+4392>>2]=Cba|0;a[e+4404>>2]=Bba|0;a[e+4416>>2]=Aba|0;a[e+4428>>2]=zba|0;a[e+4440>>2]=xba|0;a[e+4452>>2]=uba|0;a[e+4464>>2]=rba|0;a[e+4476>>2]=pba|0;a[e+4488>>2]=nba|0;a[e+4500>>2]=jba|0;a[e+4512>>2]=hba|0;a[e+4524>>2]=gba|0;a[e+4536>>2]=eba|0;a[e+4548>>2]=dba|0;a[e+4560>>2]=bba|0;a[e+4572>>2]=aba|0;a[e+4584>>2]=Yaa|0;a[e+4596>>2]=Xaa|0;a[e+4608>>2]=Vaa|0;a[e+4620>>2]=Saa|0;a[e+4632>>2]=Qaa|0;a[e+4644>>2]=Paa|0;a[e+4656>>2]=Oaa|0;a[e+4668>>2]=Naa|0;a[e+4680>>2]=Laa|0;a[e+4692>>2]=Kaa|0;a[e+4704>>2]=Haa|0;a[e+4716>>2]=Gaa|0;a[e+4728>>2]=Eaa|0;a[e+4740>>2]=Baa|0;a[e+4752>>2]=zaa|0;a[e+4764>>2]=yaa|0;a[e+4776>>2]=xaa|0;a[e+4788>>2]=waa|0;a[e+4800>>2]=uaa|0;a[e+4812>>2]=saa|0;a[e+4824>>2]=paa|0;a[e+4836>>2]=oaa|0;a[e+4848>>2]=naa|0;a[e+4860>>2]=kaa|0;a[e+4872>>2]=iaa|0;a[e+4884>>2]=haa|0;a[e+4896>>2]=gaa|0;a[e+4908>>2]=faa|0;a[e+4920>>2]=caa|0;a[e+4932>>2]=aaa|0;a[e+4944>>2]=Z$|0;a[e+4956>>2]=Y$|0;a[e+4968>>2]=X$|0;a[e+4980>>2]=U$|0;a[e+4992>>2]=S$|0;a[e+5004>>2]=R$|0;a[e+5016>>2]=Q$|0;a[e+5028>>2]=P$|0;a[e+5040>>2]=N$|0;a[e+5052>>2]=M$|0;a[e+5064>>2]=J$|0;a[e+5076>>2]=I$|0;a[e+5088>>2]=H$|0;a[e+5100>>2]=E$|0;a[e+5112>>2]=A$|0;a[e+5124>>2]=z$|0;a[e+5136>>2]=y$|0;a[e+5148>>2]=w$|0;a[e+5160>>2]=u$|0;a[e+5172>>2]=t$|0;a[e+5184>>2]=q$|0;a[e+5196>>2]=p$|0;a[e+5208>>2]=o$|0;a[e+5220>>2]=l$|0;a[e+5232>>2]=j$|0;a[e+5244>>2]=i$|0;a[e+5256>>2]=h$|0;a[e+5268>>2]=g$|0;a[e+5280>>2]=d$|0;a[e+5292>>2]=c$|0;a[e+5304>>2]=$9|0;a[e+5316>>2]=Z9|0;a[e+5328>>2]=Y9|0;a[e+5340>>2]=W9|0;a[e+5352>>2]=U9|0;a[e+5364>>2]=T9|0;a[e+5376>>2]=S9|0;a[e+5388>>2]=R9|0;a[e+5400>>2]=P9|0;a[e+5412>>2]=O9|0;a[e+5424>>2]=M9|0;a[e+5436>>2]=L9|0;a[e+5448>>2]=K9|0;a[e+5460>>2]=I9|0;a[e+5472>>2]=G9|0;a[e+5484>>2]=F9|0;a[e+5496>>2]=E9|0;a[e+5508>>2]=D9|0;a[e+5520>>2]=B9|0;a[e+5532>>2]=z9|0;a[e+5544>>2]=w9|0;a[e+5556>>2]=v9|0;a[e+5568>>2]=u9|0;a[e+5580>>2]=s9|0;a[e+5592>>2]=q9|0;a[e+5604>>2]=p9|0;a[e+5616>>2]=o9|0;a[e+5628>>2]=n9|0;a[e+5640>>2]=l9|0;a[e+5652>>2]=j9|0;a[e+5664>>2]=h9|0;a[e+5676>>2]=g9|0;a[e+5688>>2]=f9|0;a[e+5700>>2]=d9|0;a[e+5712>>2]=a9|0;a[e+5724>>2]=$8|0;a[e+5736>>2]=Z8|0;a[e+5748>>2]=Y8|0;a[e+5760>>2]=W8|0;a[e+5772>>2]=V8|0;a[e+5784>>2]=S8|0;a[e+5796>>2]=R8|0;a[e+5808>>2]=Q8|0;a[e+5820>>2]=O8|0;a[e+5832>>2]=M8|0;a[e+5844>>2]=L8|0;a[e+5856>>2]=K8|0;a[e+5868>>2]=J8|0;a[e+5880>>2]=H8|0;a[e+5892>>2]=G8|0;a[e+5904>>2]=D8|0;a[e+5916>>2]=C8|0;a[e+5928>>2]=A8|0;a[e+5940>>2]=y8|0;a[e+5952>>2]=w8|0;a[e+5964>>2]=v8|0;a[e+5976>>2]=u8|0;a[e+5988>>2]=t8|0;a[e+6e3>>2]=r8|0;a[e+6012>>2]=q8|0;a[e+6024>>2]=n8|0;a[e+6036>>2]=m8|0;a[e+6048>>2]=l8|0;a[e+6060>>2]=j8|0;a[e+6072>>2]=h8|0;a[e+6084>>2]=g8|0;a[e+6096>>2]=f8|0;a[e+6108>>2]=e8|0;a[e+6120>>2]=b8|0;a[e+6132>>2]=a8|0;a[e+6144>>2]=Z7|0;a[e+6156>>2]=Y7|0;a[e+6168>>2]=W7|0;a[e+6180>>2]=U7|0;a[e+6192>>2]=S7|0;a[e+6204>>2]=R7|0;a[e+6216>>2]=Q7|0;a[e+6228>>2]=P7|0;a[e+6240>>2]=N7|0;a[e+6252>>2]=M7|0;a[e+6264>>2]=K7|0;a[e+6276>>2]=J7|0;a[e+6288>>2]=I7|0;a[e+6300>>2]=H7|0;a[e+6312>>2]=F7|0;a[e+6324>>2]=E7|0;a[e+6336>>2]=D7|0;a[e+6348>>2]=B7|0;a[e+6360>>2]=z7|0;a[e+6372>>2]=y7|0;a[e+6384>>2]=v7|0;a[e+6396>>2]=u7|0;a[e+6408>>2]=t7|0;a[e+6420>>2]=s7|0;a[e+6432>>2]=q7|0;a[e+6444>>2]=p7|0;a[e+6456>>2]=o7|0;a[e+6468>>2]=n7|0;a[e+6480>>2]=l7|0;a[e+6492>>2]=j7|0;a[e+6504>>2]=h7|0;a[e+6516>>2]=g7|0;a[e+6528>>2]=f7|0;a[e+6540>>2]=e7|0;a[e+6552>>2]=c7|0;a[e+6564>>2]=b7|0;a[e+6576>>2]=a7|0;a[e+6588>>2]=$6|0;a[e+6600>>2]=Y6|0;a[e+6612>>2]=X6|0;a[e+6624>>2]=U6|0;a[e+6636>>2]=T6|0;a[e+6648>>2]=S6|0;a[e+6660>>2]=R6|0;a[e+6672>>2]=P6|0;a[e+6684>>2]=O6|0;a[e+6696>>2]=N6|0;a[e+6708>>2]=M6|0;a[e+6720>>2]=K6|0;a[e+6732>>2]=I6|0;a[e+6744>>2]=F6|0;a[e+6756>>2]=E6|0;a[e+6768>>2]=D6|0;a[e+6780>>2]=C6|0;a[e+6792>>2]=A6|0;a[e+6804>>2]=z6|0;a[e+6816>>2]=y6|0;a[e+6828>>2]=x6|0;a[e+6840>>2]=v6|0;a[e+6852>>2]=t6|0;a[e+6864>>2]=r6|0;a[e+6876>>2]=q6|0;a[e+6888>>2]=p6|0;a[e+6900>>2]=o6|0;a[e+6912>>2]=m6|0;a[e+6924>>2]=k6|0;a[e+6936>>2]=j6|0;a[e+6948>>2]=i6|0;a[e+6960>>2]=g6|0;a[e+6972>>2]=f6|0;a[e+6984>>2]=d6|0;a[e+6996>>2]=b6|0;a[e+7008>>2]=a6|0;a[e+7020>>2]=Z5|0;a[e+7032>>2]=X5|0;a[e+7044>>2]=W5|0;a[e+7056>>2]=V5|0;a[e+7068>>2]=U5|0;a[e+7080>>2]=S5|0;a[e+7092>>2]=R5|0;a[e+7104>>2]=P5|0;a[e+7116>>2]=N5|0;a[e+7128>>2]=L5|0;a[e+7140>>2]=J5|0;a[e+7152>>2]=H5|0;a[e+7164>>2]=G5|0;a[e+7176>>2]=F5|0;a[e+7188>>2]=E5|0;a[e+7200>>2]=C5|0;a[e+7212>>2]=B5|0;a[e+7224>>2]=z5|0;a[e+7236>>2]=x5|0;a[e+7248>>2]=v5|0;a[e+7260>>2]=u5|0;a[e+7272>>2]=s5|0;a[e+7284>>2]=r5|0;a[e+7296>>2]=p5|0;a[e+7308>>2]=o5|0;a[e+7320>>2]=l5|0;a[e+7332>>2]=k5|0;a[e+7344>>2]=i5|0;a[e+7356>>2]=g5|0;a[e+7368>>2]=e5|0;a[e+7380>>2]=d5|0;a[e+7392>>2]=a5|0;a[e+7404>>2]=$4|0;a[e+7416>>2]=Y4|0;a[e+7428>>2]=X4|0;a[e+7440>>2]=V4|0;a[e+7452>>2]=U4|0;a[e+7464>>2]=S4|0;a[e+7476>>2]=Q4|0;a[e+7488>>2]=P4|0;a[e+7500>>2]=O4|0;a[e+7512>>2]=M4|0;a[e+7524>>2]=L4|0;a[e+7536>>2]=K4|0;a[e+7548>>2]=I4|0;a[e+7560>>2]=G4|0;a[e+7572>>2]=F4|0;a[e+7584>>2]=D4|0;a[e+7596>>2]=C4|0;a[e+7608>>2]=B4|0;a[e+7620>>2]=A4|0;a[e+7632>>2]=y4|0;a[e+7644>>2]=x4|0;a[e+7656>>2]=w4|0;a[e+7668>>2]=v4|0;a[e+7680>>2]=t4|0;a[e+7692>>2]=s4|0;a[e+7704>>2]=p4|0;a[e+7716>>2]=o4|0;a[e+7728>>2]=m4|0;a[e+7740>>2]=l4|0;a[e+7752>>2]=j4|0;a[e+7764>>2]=i4|0;a[e+7776>>2]=h4|0;a[e+7788>>2]=g4|0;a[e+7800>>2]=e4|0;a[e+7812>>2]=d4|0;a[e+7824>>2]=b4|0;a[e+7836>>2]=a4|0;a[e+7848>>2]=$3|0;a[e+7860>>2]=Y3|0;a[e+7872>>2]=W3|0;a[e+7884>>2]=V3|0;a[e+7896>>2]=U3|0;a[e+7908>>2]=T3|0;a[e+7920>>2]=R3|0;a[e+7932>>2]=P3|0;a[e+7944>>2]=N3|0;a[e+7956>>2]=M3|0;a[e+7968>>2]=L3|0;a[e+7980>>2]=I3|0;a[e+7992>>2]=G3|0;a[e+8004>>2]=F3|0;a[e+8016>>2]=E3|0;a[e+8028>>2]=D3|0;a[e+8040>>2]=B3|0;a[e+8052>>2]=z3|0;a[e+8064>>2]=x3|0;a[e+8076>>2]=w3|0;a[e+8088>>2]=v3|0;a[e+8100>>2]=s3|0;a[e+8112>>2]=q3|0;a[e+8124>>2]=p3|0;a[e+8136>>2]=n3|0;a[e+8148>>2]=m3|0;a[e+8160>>2]=k3|0;a[e+8172>>2]=j3|0;a[e+8184>>2]=h3|0;a[e+8196>>2]=g3|0;a[e+8208>>2]=f3|0;a[e+8220>>2]=d3|0;a[e+8232>>2]=b3|0;a[e+8244>>2]=a3|0;a[e+8256>>2]=$2|0;a[e+8268>>2]=Z2|0;a[e+8280>>2]=X2|0;a[e+8292>>2]=W2|0;a[e+8304>>2]=U2|0;a[e+8316>>2]=T2|0;a[e+8328>>2]=S2|0;a[e+8340>>2]=Q2|0;a[e+8352>>2]=O2|0;a[e+8364>>2]=N2|0;a[e+8376>>2]=L2|0;a[e+8388>>2]=K2|0;a[e+8400>>2]=I2|0;a[e+8412>>2]=H2|0;a[e+8424>>2]=F2|0;a[e+8436>>2]=E2|0;a[e+8448>>2]=D2|0;a[e+8460>>2]=B2|0;a[e+8472>>2]=z2|0;a[e+8484>>2]=y2|0;a[e+8496>>2]=x2|0;a[e+8508>>2]=w2|0;a[e+8520>>2]=s2|0;a[e+8532>>2]=r2|0;a[e+8544>>2]=o2|0;a[e+8556>>2]=n2|0;a[e+8568>>2]=m2|0;a[e+8580>>2]=k2|0;a[e+8592>>2]=i2|0;a[e+8604>>2]=h2|0;a[e+8616>>2]=g2|0;a[e+8628>>2]=f2|0;a[e+8640>>2]=d2|0;a[e+8652>>2]=c2|0;a[e+8664>>2]=a2|0;a[e+8676>>2]=$1|0;a[e+8688>>2]=Z1|0;a[e+8700>>2]=X1|0;a[e+8712>>2]=V1|0;a[e+8724>>2]=U1|0;a[e+8736>>2]=T1|0;a[e+8748>>2]=R1|0;a[e+8760>>2]=P1|0;a[e+8772>>2]=O1|0;a[e+8784>>2]=M1|0;a[e+8796>>2]=L1|0;a[e+8808>>2]=K1|0;a[e+8820>>2]=J1|0;a[e+8832>>2]=H1|0;a[e+8844>>2]=G1|0;a[e+8856>>2]=F1|0;a[e+8868>>2]=E1|0;a[e+8880>>2]=C1|0;a[e+8892>>2]=A1|0;a[e+8904>>2]=y1|0;a[e+8916>>2]=w1|0;a[e+8928>>2]=v1|0;a[e+8940>>2]=u1|0;a[e+8952>>2]=s1|0;a[e+8964>>2]=r1|0;a[e+8976>>2]=q1|0;a[e+8988>>2]=p1|0;a[e+9e3>>2]=n1|0;a[e+9012>>2]=m1|0;a[e+9024>>2]=k1|0;a[e+9036>>2]=j1|0;a[e+9048>>2]=i1|0;a[e+9060>>2]=h1|0;a[e+9072>>2]=f1|0;a[e+9084>>2]=e1|0;a[e+9096>>2]=d1|0;a[e+9108>>2]=c1|0;a[e+9120>>2]=a1|0;a[e+9132>>2]=Z0|0;a[e+9144>>2]=X0|0;a[e+9156>>2]=W0|0;a[e+9168>>2]=V0|0;a[e+9180>>2]=U0|0;a[e+9192>>2]=S0|0;a[e+9204>>2]=R0|0;a[e+9216>>2]=Q0|0;a[e+9228>>2]=P0|0;a[e+9240>>2]=N0|0;a[e+9252>>2]=L0|0;a[e+9264>>2]=J0|0;a[e+9276>>2]=I0|0;a[e+9288>>2]=H0|0;a[e+9300>>2]=G0|0;a[e+9312>>2]=E0|0;a[e+9324>>2]=D0|0;a[e+9336>>2]=C0|0;a[e+9348>>2]=B0|0;a[e+9360>>2]=z0|0;a[e+9372>>2]=y0|0;a[e+9384>>2]=w0|0;a[e+9396>>2]=v0|0;a[e+9408>>2]=u0|0;a[e+9420>>2]=t0|0;a[e+9432>>2]=r0|0;a[e+9444>>2]=q0|0;a[e+9456>>2]=p0|0;a[e+9468>>2]=o0|0;a[e+9480>>2]=m0|0;a[e+9492>>2]=l0|0;a[e+9504>>2]=j0|0;a[e+9516>>2]=i0|0;a[e+9528>>2]=h0|0;a[e+9540>>2]=g0|0;a[e+9552>>2]=e0|0;a[e+9564>>2]=d0|0;a[e+9576>>2]=b0|0;a[e+9588>>2]=a0|0;a[e+9600>>2]=Z_|0;a[e+9612>>2]=Y_|0;a[e+9624>>2]=W_|0;a[e+9636>>2]=V_|0;a[e+9648>>2]=T_|0;a[e+9660>>2]=S_|0;a[e+9672>>2]=Q_|0;a[e+9684>>2]=P_|0;a[e+9696>>2]=O_|0;a[e+9708>>2]=N_|0;a[e+9720>>2]=L_|0;a[e+9732>>2]=J_|0;a[e+9744>>2]=G_|0;a[e+9756>>2]=F_|0;a[e+9768>>2]=D_|0;a[e+9780>>2]=C_|0;a[e+9792>>2]=A_|0;a[e+9804>>2]=z_|0;a[e+9816>>2]=y_|0;a[e+9828>>2]=x_|0;a[e+9840>>2]=v_|0;a[e+9852>>2]=u_|0;a[e+9864>>2]=s_|0;a[e+9876>>2]=r_|0;a[e+9888>>2]=p_|0;a[e+9900>>2]=o_|0;a[e+9912>>2]=m_|0;a[e+9924>>2]=l_|0;a[e+9936>>2]=k_|0;a[e+9948>>2]=i_|0;a[e+9960>>2]=g_|0;a[e+9972>>2]=f_|0;a[e+9984>>2]=d_|0;a[e+9996>>2]=c_|0;a[e+10008>>2]=a_|0;a[e+10020>>2]=$Z|0;a[e+10032>>2]=ZZ|0;a[e+10044>>2]=XZ|0;a[e+10056>>2]=WZ|0;a[e+10068>>2]=VZ|0;a[e+10080>>2]=TZ|0;a[e+10092>>2]=SZ|0;a[e+10104>>2]=QZ|0;a[e+10116>>2]=PZ|0;a[e+10128>>2]=MZ|0;a[e+10140>>2]=LZ|0;a[e+10152>>2]=KZ|0;a[e+10164>>2]=HZ|0;a[e+10176>>2]=GZ|0;a[e+10188>>2]=FZ|0;a[e+10200>>2]=DZ|0;a[e+10212>>2]=CZ|0;a[e+10224>>2]=AZ|0;a[e+10236>>2]=zZ|0;a[e+10248>>2]=yZ|0;a[e+10260>>2]=xZ|0;a[e+10272>>2]=wZ|0;a[e+10284>>2]=uZ|0;a[e+10296>>2]=tZ|0;a[e+10308>>2]=sZ|0;a[e+10320>>2]=qZ|0;a[e+10332>>2]=oZ|0;a[e+10344>>2]=mZ|0;a[e+10356>>2]=lZ|0;a[e+10368>>2]=jZ|0;a[e+10380>>2]=iZ|0;a[e+10392>>2]=hZ|0;a[e+10404>>2]=fZ|0;a[e+10416>>2]=eZ|0;a[e+10428>>2]=dZ|0;a[e+10440>>2]=cZ|0;a[e+10452>>2]=$Y|0;a[e+10464>>2]=YY|0;a[e+10476>>2]=XY|0;a[e+10488>>2]=VY|0;a[e+10500>>2]=UY|0;a[e+10512>>2]=TY|0;a[e+10524>>2]=RY|0;a[e+10536>>2]=QY|0;a[e+10548>>2]=PY|0;a[e+10560>>2]=OY|0;a[e+10572>>2]=MY|0;a[e+10584>>2]=KY|0;a[e+10596>>2]=JY|0;a[e+10608>>2]=HY|0;a[e+10620>>2]=GY|0;a[e+10632>>2]=FY|0;a[e+10644>>2]=DY|0;a[e+10656>>2]=CY|0;a[e+10668>>2]=BY|0;a[e+10680>>2]=AY|0;a[e+10692>>2]=yY|0;a[e+10704>>2]=wY|0;a[e+10716>>2]=vY|0;a[e+10728>>2]=tY|0;a[e+10740>>2]=sY|0;a[e+10752>>2]=rY|0;a[e+10764>>2]=pY|0;a[e+10776>>2]=nY|0;a[e+10788>>2]=mY|0;a[e+10800>>2]=lY|0;a[e+10812>>2]=jY|0;a[e+10824>>2]=hY|0;a[e+10836>>2]=gY|0;a[e+10848>>2]=eY|0;a[e+10860>>2]=dY|0;a[e+10872>>2]=cY|0;a[e+10884>>2]=aY|0;a[e+10896>>2]=$X|0;a[e+10908>>2]=ZX|0;a[e+10920>>2]=YX|0;a[e+10932>>2]=VX|0;a[e+10944>>2]=TX|0;a[e+10956>>2]=SX|0;a[e+10968>>2]=QX|0;a[e+10980>>2]=PX|0;a[e+10992>>2]=OX|0;a[e+11004>>2]=MX|0;a[e+11016>>2]=LX|0;a[e+11028>>2]=KX|0;a[e+11040>>2]=JX|0;a[e+11052>>2]=HX|0;a[e+11064>>2]=FX|0;a[e+11076>>2]=EX|0;a[e+11088>>2]=CX|0;a[e+11100>>2]=BX|0;a[e+11112>>2]=AX|0;a[e+11124>>2]=yX|0;a[e+11136>>2]=xX|0;a[e+11148>>2]=vX|0;a[e+11160>>2]=uX|0;a[e+11172>>2]=sX|0;a[e+11184>>2]=qX|0;a[e+11196>>2]=pX|0;a[e+11208>>2]=nX|0;a[e+11220>>2]=mX|0;a[e+11232>>2]=lX|0;a[e+11244>>2]=jX|0;a[e+11256>>2]=iX|0;a[e+11268>>2]=hX|0;a[e+11280>>2]=gX|0;a[e+11292>>2]=eX|0;a[e+11304>>2]=cX|0;a[e+11316>>2]=bX|0;a[e+11328>>2]=aX|0;a[e+11340>>2]=ZW|0;a[e+11352>>2]=YW|0;a[e+11364>>2]=VW|0;a[e+11376>>2]=UW|0;a[e+11388>>2]=TW|0;a[e+11400>>2]=SW|0;a[e+11412>>2]=QW|0;a[e+11424>>2]=OW|0;a[e+11436>>2]=NW|0;a[e+11448>>2]=MW|0;a[e+11460>>2]=LW|0;a[e+11472>>2]=KW|0;a[e+11484>>2]=IW|0;a[e+11496>>2]=HW|0;a[e+11508>>2]=GW|0;a[e+11520>>2]=FW|0;a[e+11532>>2]=CW|0;a[e+11544>>2]=AW|0;a[e+11556>>2]=zW|0;a[e+11568>>2]=yW|0;a[e+11580>>2]=xW|0;a[e+11592>>2]=wW|0;a[e+11604>>2]=uW|0;a[e+11616>>2]=tW|0;a[e+11628>>2]=sW|0;a[e+11640>>2]=rW|0;a[e+11652>>2]=oW|0;a[e+11664>>2]=mW|0;a[e+11676>>2]=lW|0;a[e+11688>>2]=kW|0;a[e+11700>>2]=jW|0;a[e+11712>>2]=iW|0;a[e+11724>>2]=gW|0;a[e+11736>>2]=fW|0;a[e+11748>>2]=eW|0;a[e+11760>>2]=dW|0;a[e+11772>>2]=bW|0;a[e+11784>>2]=$V|0;a[e+11796>>2]=ZV|0;a[e+11808>>2]=YV|0;a[e+11820>>2]=XV|0;a[e+11832>>2]=WV|0;a[e+11844>>2]=UV|0;a[e+11856>>2]=TV|0;a[e+11868>>2]=SV|0;a[e+11880>>2]=RV|0;a[e+11892>>2]=PV|0;a[e+11904>>2]=NV|0;a[e+11916>>2]=MV|0;a[e+11928>>2]=LV|0;a[e+11940>>2]=KV|0;a[e+11952>>2]=JV|0;a[e+11964>>2]=HV|0;a[e+11976>>2]=WPa|0;a[e+11988>>2]=VPa|0;a[e+12e3>>2]=UPa|0;a[e+12012>>2]=SPa|0;a[e+12024>>2]=QPa|0;a[e+12036>>2]=PPa|0;a[e+12048>>2]=OPa|0;a[e+12060>>2]=NPa|0;a[e+12072>>2]=MPa|0;a[e+12084>>2]=KPa|0;a[e+12096>>2]=JPa|0;a[e+12108>>2]=IPa|0;a[e+12120>>2]=HPa|0;a[e+12132>>2]=EPa|0;a[e+12144>>2]=CPa|0;a[e+12156>>2]=APa|0;a[e+12168>>2]=zPa|0;a[e+12180>>2]=yPa|0;a[e+12192>>2]=xPa|0;a[e+12204>>2]=vPa|0;a[e+12216>>2]=uPa|0;a[e+12228>>2]=tPa|0;a[e+12240>>2]=sPa|0;a[e+12252>>2]=qPa|0;a[e+12264>>2]=oPa|0;a[e+12276>>2]=nPa|0;a[e+12288>>2]=mPa|0;a[e+12300>>2]=lPa|0;a[e+12312>>2]=kPa|0;a[e+12324>>2]=iPa|0;a[e+12336>>2]=hPa|0;a[e+12348>>2]=fPa|0;a[e+12360>>2]=ePa|0;a[e+12372>>2]=cPa|0;a[e+12384>>2]=aPa|0;a[e+12396>>2]=$Oa|0;a[e+12408>>2]=ZOa|0;a[e+12420>>2]=YOa|0;a[e+12432>>2]=XOa|0;a[e+12444>>2]=VOa|0;a[e+12456>>2]=UOa|0;a[e+12468>>2]=TOa|0;a[e+12480>>2]=SOa|0;a[e+12492>>2]=QOa|0;a[e+12504>>2]=OOa|0;a[e+12516>>2]=NOa|0;a[e+12528>>2]=MOa|0;a[e+12540>>2]=LOa|0;a[e+12552>>2]=IOa|0;a[e+12564>>2]=GOa|0;a[e+12576>>2]=FOa|0;a[e+12588>>2]=EOa|0;a[e+12600>>2]=DOa|0;a[e+12612>>2]=BOa|0;a[e+12624>>2]=zOa|0;a[e+12636>>2]=yOa|0;a[e+12648>>2]=xOa|0;a[e+12660>>2]=wOa|0;a[e+12672>>2]=vOa|0;a[e+12684>>2]=tOa|0;a[e+12696>>2]=sOa|0;a[e+12708>>2]=rOa|0;a[e+12720>>2]=qOa|0;a[e+12732>>2]=nOa|0;a[e+12744>>2]=lOa|0;a[e+12756>>2]=kOa|0;a[e+12768>>2]=jOa|0;a[e+12780>>2]=iOa|0;a[e+12792>>2]=hOa|0;a[e+12804>>2]=fOa|0;a[e+12816>>2]=eOa|0;a[e+12828>>2]=dOa|0;a[e+12840>>2]=cOa|0;a[e+12852>>2]=$Na|0;a[e+12864>>2]=YNa|0;a[e+12876>>2]=XNa|0;a[e+12888>>2]=WNa|0;a[e+12900>>2]=VNa|0;a[e+12912>>2]=UNa|0;a[e+12924>>2]=SNa|0;a[e+12936>>2]=RNa|0;a[e+12948>>2]=QNa|0;a[e+12960>>2]=PNa|0;a[e+12972>>2]=NNa|0;a[e+12984>>2]=LNa|0;a[e+12996>>2]=KNa|0;a[e+13008>>2]=JNa|0;a[e+13020>>2]=INa|0;a[e+13032>>2]=HNa|0;a[e+13044>>2]=FNa|0;a[e+13056>>2]=ENa|0;a[e+13068>>2]=DNa|0;a[e+13080>>2]=CNa|0;a[e+13092>>2]=ANa|0;a[e+13104>>2]=yNa|0;a[e+13116>>2]=xNa|0;a[e+13128>>2]=wNa|0;a[e+13140>>2]=vNa|0;a[e+13152>>2]=uNa|0;a[e+13164>>2]=sNa|0;a[e+13176>>2]=rNa|0;a[e+13188>>2]=qNa|0;a[e+13200>>2]=pNa|0;a[e+13212>>2]=nNa|0;a[e+13224>>2]=lNa|0;a[e+13236>>2]=kNa|0;a[e+13248>>2]=jNa|0;a[e+13260>>2]=iNa|0;a[e+13272>>2]=hNa|0;a[e+13284>>2]=fNa|0;a[e+13296>>2]=eNa|0;a[e+13308>>2]=dNa|0;a[e+13320>>2]=cNa|0;a[e+13332>>2]=$Ma|0;a[e+13344>>2]=XMa|0;a[e+13356>>2]=VMa|0;a[e+13368>>2]=UMa|0;a[e+13380>>2]=TMa|0;a[e+13392>>2]=SMa|0;a[e+13404>>2]=QMa|0;a[e+13416>>2]=PMa|0;a[e+13428>>2]=OMa|0;a[e+13440>>2]=MMa|0;a[e+13452>>2]=KMa|0;a[e+13464>>2]=IMa|0;a[e+13476>>2]=HMa|0;a[e+13488>>2]=GMa|0;a[e+13500>>2]=FMa|0;a[e+13512>>2]=EMa|0;a[e+13524>>2]=CMa|0;a[e+13536>>2]=BMa|0;a[e+13548>>2]=AMa|0;a[e+13560>>2]=zMa|0;a[e+13572>>2]=xMa|0;a[e+13584>>2]=vMa|0;a[e+13596>>2]=uMa|0;a[e+13608>>2]=tMa|0;a[e+13620>>2]=sMa|0;a[e+13632>>2]=rMa|0;a[e+13644>>2]=pMa|0;a[e+13656>>2]=nMa|0;a[e+13668>>2]=mMa|0;a[e+13680>>2]=lMa|0;a[e+13692>>2]=kMa|0;a[e+13704>>2]=iMa|0;a[e+13716>>2]=hMa|0;a[e+13728>>2]=gMa|0;a[e+13740>>2]=fMa|0;a[e+13752>>2]=eMa|0;a[e+13764>>2]=cMa|0;a[e+13776>>2]=aMa|0;a[e+13788>>2]=$La|0;a[e+13800>>2]=ZLa|0;a[e+13812>>2]=XLa|0;a[e+13824>>2]=VLa|0;a[e+13836>>2]=ULa|0;a[e+13848>>2]=TLa|0;a[e+13860>>2]=SLa|0;a[e+13872>>2]=RLa|0;a[e+13884>>2]=PLa|0;a[e+13896>>2]=NLa|0;a[e+13908>>2]=MLa|0;a[e+13920>>2]=LLa|0;a[e+13932>>2]=JLa|0;a[e+13944>>2]=GLa|0;a[e+13956>>2]=FLa|0;a[e+13968>>2]=ELa|0;a[e+13980>>2]=DLa|0;a[e+13992>>2]=CLa|0;a[e+14004>>2]=ALa|0;a[e+14016>>2]=yLa|0;a[e+14028>>2]=xLa|0;a[e+14040>>2]=wLa|0;a[e+14052>>2]=uLa|0;a[e+14064>>2]=sLa|0;a[e+14076>>2]=rLa|0;a[e+14088>>2]=qLa|0;a[e+14100>>2]=pLa|0;a[e+14112>>2]=oLa|0;a[e+14124>>2]=mLa|0;a[e+14136>>2]=kLa|0;a[e+14148>>2]=jLa|0;a[e+14160>>2]=iLa|0;a[e+14172>>2]=hLa|0;a[e+14184>>2]=fLa|0;a[e+14196>>2]=eLa|0;a[e+14208>>2]=dLa|0;a[e+14220>>2]=cLa|0;a[e+14232>>2]=bLa|0;a[e+14244>>2]=$Ka|0;a[e+14256>>2]=YKa|0;a[e+14268>>2]=XKa|0;a[e+14280>>2]=WKa|0;a[e+14292>>2]=VKa|0;a[e+14304>>2]=TKa|0;a[e+14316>>2]=SKa|0;a[e+14328>>2]=RKa|0;a[e+14340>>2]=QKa|0;a[e+14352>>2]=PKa|0;a[e+14364>>2]=NKa|0;a[e+14376>>2]=LKa|0;a[e+14388>>2]=KKa|0;a[e+14400>>2]=JKa|0;a[e+14412>>2]=IKa|0;a[e+14424>>2]=GKa|0;a[e+14436>>2]=FKa|0;a[e+14448>>2]=EKa|0;a[e+14460>>2]=DKa|0;a[e+14472>>2]=CKa|0;a[e+14484>>2]=AKa|0;a[e+14496>>2]=zKa|0;a[e+14508>>2]=yKa|0;a[e+14520>>2]=xKa|0;a[e+14532>>2]=uKa|0;a[e+14544>>2]=sKa|0;a[e+14556>>2]=rKa|0;a[e+14568>>2]=qKa|0;a[e+14580>>2]=pKa|0;a[e+14592>>2]=oKa|0;a[e+14604>>2]=mKa|0;a[e+14616>>2]=kKa|0;a[e+14628>>2]=jKa|0;a[e+14640>>2]=iKa|0;a[e+14652>>2]=hKa|0;a[e+14664>>2]=fKa|0;a[e+14676>>2]=eKa|0;a[e+14688>>2]=dKa|0;a[e+14700>>2]=cKa|0;a[e+14712>>2]=bKa|0;a[e+14724>>2]=$Ja|0;a[e+14736>>2]=YJa|0;a[e+14748>>2]=XJa|0;a[e+14760>>2]=WJa|0;a[e+14772>>2]=VJa|0;a[e+14784>>2]=TJa|0;a[e+14796>>2]=SJa|0;a[e+14808>>2]=QJa|0;a[e+14820>>2]=PJa|0;a[e+14832>>2]=OJa|0;a[e+14844>>2]=MJa|0;a[e+14856>>2]=KJa|0;a[e+14868>>2]=JJa|0;a[e+14880>>2]=IJa|0;a[e+14892>>2]=GJa|0;a[e+14904>>2]=EJa|0;a[e+14916>>2]=DJa|0;a[e+14928>>2]=CJa|0;a[e+14940>>2]=BJa|0;a[e+14952>>2]=AJa|0;a[e+14964>>2]=yJa|0;a[e+14976>>2]=uJa|0;a[e+14988>>2]=tJa|0;a[e+15e3>>2]=sJa|0;a[e+15012>>2]=rJa|0;a[e+15024>>2]=pJa|0;a[e+15036>>2]=oJa|0;a[e+15048>>2]=nJa|0;a[e+15060>>2]=mJa|0;a[e+15072>>2]=lJa|0;a[e+15084>>2]=jJa|0;a[e+15096>>2]=hJa|0;a[e+15108>>2]=gJa|0;a[e+15120>>2]=fJa|0;a[e+15132>>2]=dJa|0;a[e+15144>>2]=bJa|0;a[e+15156>>2]=aJa|0;a[e+15168>>2]=$Ia|0;a[e+15180>>2]=ZIa|0;a[e+15192>>2]=YIa|0;a[e+15204>>2]=WIa|0;a[e+15216>>2]=UIa|0;a[e+15228>>2]=TIa|0;a[e+15240>>2]=RIa|0;a[e+15252>>2]=PIa|0;a[e+15264>>2]=OIa|0;a[e+15276>>2]=NIa|0;a[e+15288>>2]=MIa|0;a[e+15300>>2]=LIa|0;a[e+15312>>2]=KIa|0;a[e+15324>>2]=IIa|0;a[e+15336>>2]=GIa|0;a[e+15348>>2]=FIa|0;a[e+15360>>2]=EIa|0;a[e+15372>>2]=DIa|0;a[e+15384>>2]=BIa|0;a[e+15396>>2]=AIa|0;a[e+15408>>2]=zIa|0;a[e+15420>>2]=yIa|0;a[e+15432>>2]=xIa|0;a[e+15444>>2]=vIa|0;a[e+15456>>2]=tIa|0;a[e+15468>>2]=sIa|0;a[e+15480>>2]=rIa|0;a[e+15492>>2]=qIa|0;a[e+15504>>2]=oIa|0;a[e+15516>>2]=nIa|0;a[e+15528>>2]=mIa|0;a[e+15540>>2]=lIa|0;a[e+15552>>2]=kIa|0;a[e+15564>>2]=iIa|0;a[e+15576>>2]=fIa|0;a[e+15588>>2]=eIa|0;a[e+15600>>2]=dIa|0;a[e+15612>>2]=bIa|0;a[e+15624>>2]=$Ha|0;a[e+15636>>2]=ZHa|0;a[e+15648>>2]=YHa|0;a[e+15660>>2]=XHa|0;a[e+15672>>2]=WHa|0;a[e+15684>>2]=UHa|0;a[e+15696>>2]=SHa|0;a[e+15708>>2]=RHa|0;a[e+15720>>2]=QHa|0;a[e+15732>>2]=OHa|0;a[e+15744>>2]=MHa|0;a[e+15756>>2]=LHa|0;a[e+15768>>2]=KHa|0;a[e+15780>>2]=JHa|0;a[e+15792>>2]=IHa|0;a[e+15804>>2]=GHa|0;a[e+15816>>2]=EHa|0;a[e+15828>>2]=DHa|0;a[e+15840>>2]=CHa|0;a[e+15852>>2]=BHa|0;a[e+15864>>2]=zHa|0;a[e+15876>>2]=yHa|0;a[e+15888>>2]=wHa|0;a[e+15900>>2]=vHa|0;a[e+15912>>2]=uHa|0;a[e+15924>>2]=sHa|0;a[e+15936>>2]=qHa|0;a[e+15948>>2]=pHa|0;a[e+15960>>2]=oHa|0;a[e+15972>>2]=nHa|0;a[e+15984>>2]=lHa|0;a[e+15996>>2]=kHa|0;a[e+16008>>2]=jHa|0;a[e+16020>>2]=iHa|0;a[e+16032>>2]=hHa|0;a[e+16044>>2]=fHa|0;a[e+16056>>2]=dHa|0;a[e+16068>>2]=cHa|0;a[e+16080>>2]=bHa|0;a[e+16092>>2]=aHa|0;a[e+16104>>2]=ZGa|0;a[e+16116>>2]=YGa|0;a[e+16128>>2]=XGa|0;a[e+16140>>2]=WGa|0;a[e+16152>>2]=VGa|0;a[e+16164>>2]=TGa|0;a[e+16176>>2]=RGa|0;a[e+16188>>2]=QGa|0;a[e+16200>>2]=PGa|0;a[e+16212>>2]=OGa|0;a[e+16224>>2]=MGa|0;a[e+16236>>2]=LGa|0;a[e+16248>>2]=KGa|0;a[e+16260>>2]=IGa|0;a[e+16272>>2]=HGa|0;a[e+16284>>2]=FGa|0;a[e+16296>>2]=DGa|0;a[e+16308>>2]=CGa|0;a[e+16320>>2]=AGa|0;a[e+16332>>2]=zGa|0;a[e+16344>>2]=vGa|0;a[e+16356>>2]=uGa|0;a[e+16368>>2]=tGa|0;a[e+16380>>2]=rGa|0;a[e+16392>>2]=qGa|0;a[e+16404>>2]=oGa|0;a[e+16416>>2]=mGa|0;a[e+16428>>2]=lGa|0;a[e+16440>>2]=kGa|0;a[e+16452>>2]=jGa|0;a[e+16464>>2]=gGa|0;a[e+16476>>2]=fGa|0;a[e+16488>>2]=eGa|0;a[e+16500>>2]=cGa|0;a[e+16512>>2]=bGa|0;a[e+16524>>2]=$Fa|0;a[e+16536>>2]=YFa|0;a[e+16548>>2]=XFa|0;a[e+16560>>2]=WFa|0;a[e+16572>>2]=UFa|0;a[e+16584>>2]=SFa|0;a[e+16596>>2]=RFa|0;a[e+16608>>2]=QFa|0;a[e+16620>>2]=PFa|0;a[e+16632>>2]=OFa|0;a[e+16644>>2]=MFa|0;a[e+16656>>2]=KFa|0;a[e+16668>>2]=JFa|0;a[e+16680>>2]=IFa|0;a[e+16692>>2]=HFa|0;a[e+16704>>2]=FFa|0;a[e+16716>>2]=EFa|0;a[e+16728>>2]=DFa|0;a[e+16740>>2]=CFa|0;a[e+16752>>2]=BFa|0;a[e+16764>>2]=zFa|0;a[e+16776>>2]=xFa|0;a[e+16788>>2]=wFa|0;a[e+16800>>2]=vFa|0;a[e+16812>>2]=uFa|0;a[e+16824>>2]=sFa|0;a[e+16836>>2]=rFa|0;a[e+16848>>2]=qFa|0;a[e+16860>>2]=oFa|0;a[e+16872>>2]=nFa|0;a[e+16884>>2]=lFa|0;a[e+16896>>2]=jFa|0;a[e+16908>>2]=iFa|0;a[e+16920>>2]=hFa|0;a[e+16932>>2]=fFa|0;a[e+16944>>2]=dFa|0;a[e+16956>>2]=cFa|0;a[e+16968>>2]=bFa|0;a[e+16980>>2]=aFa|0;a[e+16992>>2]=$Ea|0;a[e+17004>>2]=YEa|0;a[e+17016>>2]=WEa|0;a[e+17028>>2]=VEa|0;a[e+17040>>2]=UEa|0;a[e+17052>>2]=TEa|0;a[e+17064>>2]=SEa|0;a[e+17076>>2]=REa|0;a[e+17088>>2]=PEa|0;a[e+17100>>2]=OEa|0;a[e+17112>>2]=NEa|0;a[e+17124>>2]=LEa|0;a[e+17136>>2]=JEa|0;a[e+17148>>2]=HEa|0;a[e+17160>>2]=GEa|0;a[e+17172>>2]=FEa|0;a[e+17184>>2]=DEa|0;a[e+17196>>2]=CEa|0;a[e+17208>>2]=BEa|0;a[e+17220>>2]=AEa|0;a[e+17232>>2]=zEa|0;a[e+17244>>2]=xEa|0;a[e+17256>>2]=vEa|0;a[e+17268>>2]=uEa|0;a[e+17280>>2]=tEa|0;a[e+17292>>2]=sEa|0;a[e+17304>>2]=qEa|0;a[e+17316>>2]=pEa|0;a[e+17328>>2]=oEa|0;a[e+17340>>2]=nEa|0;a[e+17352>>2]=mEa|0;a[e+17364>>2]=kEa|0;a[e+17376>>2]=iEa|0;a[e+17388>>2]=hEa|0;a[e+17400>>2]=gEa|0;a[e+17412>>2]=fEa|0;a[e+17424>>2]=eEa|0;a[e+17436>>2]=dEa|0;a[e+17448>>2]=cEa|0;a[e+17460>>2]=bEa|0;a[e+17472>>2]=aEa|0;a[e+17484>>2]=ZDa|0;a[e+17496>>2]=XDa|0;a[e+17508>>2]=WDa|0;a[e+17520>>2]=VDa|0;a[e+17532>>2]=UDa|0;a[e+17544>>2]=RDa|0;a[e+17556>>2]=QDa|0;a[e+17568>>2]=PDa|0;a[e+17580>>2]=ODa|0;a[e+17592>>2]=NDa|0;a[e+17604>>2]=LDa|0;a[e+17616>>2]=JDa|0;a[e+17628>>2]=IDa|0;a[e+17640>>2]=HDa|0;a[e+17652>>2]=GDa|0;a[e+17664>>2]=EDa|0;a[e+17676>>2]=DDa|0;a[e+17688>>2]=CDa|0;a[e+17700>>2]=BDa|0;a[e+17712>>2]=ADa|0;a[e+17724>>2]=yDa|0;a[e+17736>>2]=wDa|0;a[e+17748>>2]=vDa|0;a[e+17760>>2]=uDa|0;a[e+17772>>2]=tDa|0;a[e+17784>>2]=rDa|0;a[e+17796>>2]=qDa|0;a[e+17808>>2]=pDa|0;a[e+17820>>2]=oDa|0;a[e+17832>>2]=nDa|0;a[e+17844>>2]=lDa|0;a[e+17856>>2]=jDa|0;a[e+17868>>2]=iDa|0;a[e+17880>>2]=hDa|0;a[e+17892>>2]=gDa|0;a[e+17904>>2]=dDa|0;a[e+17916>>2]=cDa|0;a[e+17928>>2]=bDa|0;a[e+17940>>2]=aDa|0;a[e+17952>>2]=$Ca|0;a[e+17964>>2]=YCa|0;a[e+17976>>2]=VCa|0;a[e+17988>>2]=UCa|0;a[e+18e3>>2]=TCa|0;a[e+18012>>2]=SCa|0;a[e+18024>>2]=RCa|0;a[e+18036>>2]=QCa|0;a[e+18048>>2]=PCa|0;a[e+18060>>2]=OCa|0;a[e+18072>>2]=NCa|0;a[e+18084>>2]=LCa|0;a[e+18096>>2]=JCa|0;a[e+18108>>2]=ICa|0;a[e+18120>>2]=HCa|0;a[e+18132>>2]=FCa|0;a[e+18144>>2]=DCa|0;a[e+18156>>2]=CCa|0;a[e+18168>>2]=BCa|0;a[e+18180>>2]=ACa|0;a[e+18192>>2]=zCa|0;a[e+18204>>2]=xCa|0;a[e+18216>>2]=vCa|0;a[e+18228>>2]=uCa|0;a[e+18240>>2]=tCa|0;a[e+18252>>2]=sCa|0;a[e+18264>>2]=rCa|0;a[e+18276>>2]=qCa|0;a[e+18288>>2]=pCa|0;a[e+18300>>2]=oCa|0;a[e+18312>>2]=nCa|0;a[e+18324>>2]=lCa|0;a[e+18336>>2]=jCa|0;a[e+18348>>2]=iCa|0;a[e+18360>>2]=hCa|0;a[e+18372>>2]=gCa|0;a[e+18384>>2]=fCa|0;a[e+18396>>2]=eCa|0;a[e+18408>>2]=cCa|0;a[e+18420>>2]=bCa|0;a[e+18432>>2]=aCa|0;a[e+18444>>2]=ZBa|0;a[e+18456>>2]=XBa|0;a[e+18468>>2]=WBa|0;a[e+18480>>2]=VBa|0;a[e+18492>>2]=UBa|0;a[e+18504>>2]=TBa|0;a[e+18516>>2]=SBa|0;a[e+18528>>2]=RBa|0;a[e+18540>>2]=QBa|0;a[e+18552>>2]=PBa|0;a[e+18564>>2]=NBa|0;a[e+18576>>2]=LBa|0;a[e+18588>>2]=KBa|0;a[e+18600>>2]=JBa|0;a[e+18612>>2]=IBa|0;a[e+18624>>2]=HBa|0;a[e+18636>>2]=GBa|0;a[e+18648>>2]=FBa|0;a[e+18660>>2]=EBa|0;a[e+18672>>2]=DBa|0;a[e+18684>>2]=BBa|0;a[e+18696>>2]=zBa|0;a[e+18708>>2]=yBa|0;a[e+18720>>2]=xBa|0;a[e+18732>>2]=wBa|0;a[e+18744>>2]=uBa|0;a[e+18756>>2]=tBa|0;a[e+18768>>2]=sBa|0;a[e+18780>>2]=rBa|0;a[e+18792>>2]=qBa|0;a[e+18804>>2]=oBa|0;a[e+18816>>2]=mBa|0;a[e+18828>>2]=lBa|0;a[e+18840>>2]=kBa|0;a[e+18852>>2]=jBa|0;a[e+18864>>2]=hBa|0;a[e+18876>>2]=gBa|0;a[e+18888>>2]=fBa|0;a[e+18900>>2]=eBa|0;a[e+18912>>2]=dBa|0;a[e+18924>>2]=bBa|0;a[e+18936>>2]=$Aa|0;a[e+18948>>2]=ZAa|0;a[e+18960>>2]=YAa|0;a[e+18972>>2]=XAa|0;a[e+18984>>2]=WAa|0;a[e+18996>>2]=VAa|0;a[e+19008>>2]=UAa|0;a[e+19020>>2]=TAa|0;a[e+19032>>2]=SAa|0;a[e+19044>>2]=QAa|0;a[e+19056>>2]=OAa|0;a[e+19068>>2]=NAa|0;a[e+19080>>2]=MAa|0;a[e+19092>>2]=LAa|0;a[e+19104>>2]=KAa|0;a[e+19116>>2]=JAa|0;a[e+19128>>2]=IAa|0;a[e+19140>>2]=HAa|0;a[e+19152>>2]=GAa|0;a[e+19164>>2]=EAa|0;a[e+19176>>2]=BAa|0;a[e+19188>>2]=AAa|0;a[e+19200>>2]=zAa|0;a[e+19212>>2]=yAa|0;a[e+19224>>2]=wAa|0;a[e+19236>>2]=vAa|0;a[e+19248>>2]=uAa|0;a[e+19260>>2]=tAa|0;a[e+19272>>2]=sAa|0;a[e+19284>>2]=qAa|0;a[e+19296>>2]=oAa|0;a[e+19308>>2]=nAa|0;a[e+19320>>2]=mAa|0;a[e+19332>>2]=kAa|0;a[e+19344>>2]=jAa|0;a[e+19356>>2]=iAa|0;a[e+19368>>2]=hAa|0;a[e+19380>>2]=gAa|0;a[e+19392>>2]=fAa|0;a[e+19404>>2]=cAa|0;a[e+19416>>2]=aAa|0;a[e+19428>>2]=$za|0;a[e+19440>>2]=Zza|0;a[e+19452>>2]=Yza|0;a[e+19464>>2]=Xza|0;a[e+19476>>2]=Wza|0;a[e+19488>>2]=Vza|0;a[e+19500>>2]=Uza|0;a[e+19512>>2]=Tza|0;a[e+19524>>2]=Rza|0;a[e+19536>>2]=Pza|0;a[e+19548>>2]=Oza|0;a[e+19560>>2]=Nza|0;a[e+19572>>2]=Mza|0;a[e+19584>>2]=Lza|0;a[e+19596>>2]=Kza|0;a[e+19608>>2]=Jza|0;a[e+19620>>2]=Iza|0;a[e+19632>>2]=Hza|0;a[e+19644>>2]=Fza|0;a[e+19656>>2]=Eza|0;a[e+19668>>2]=Dza|0;a[e+19680>>2]=Cza|0;a[e+19692>>2]=Bza|0;a[e+19704>>2]=Aza|0;a[e+19716>>2]=zza|0;a[e+19728>>2]=yza|0;a[e+19740>>2]=xza|0;a[e+19752>>2]=wza|0;a[e+19764>>2]=uza|0;a[e+19776>>2]=sza|0;a[e+19788>>2]=rza|0;a[e+19800>>2]=qza|0;a[e+19812>>2]=pza|0;a[e+19824>>2]=oza|0;a[e+19836>>2]=nza|0;a[e+19848>>2]=mza|0;a[e+19860>>2]=lza|0;a[e+19872>>2]=kza|0;a[e+19884>>2]=iza|0;a[e+19896>>2]=gza|0;a[e+19908>>2]=fza|0;a[e+19920>>2]=eza|0;a[e+19932>>2]=dza|0;a[e+19944>>2]=aza|0;a[e+19956>>2]=$ya|0;a[e+19968>>2]=Zya|0;a[e+19980>>2]=Yya|0;a[e+19992>>2]=Xya|0;a[e+20004>>2]=Vya|0;a[e+20016>>2]=Tya|0;a[e+20028>>2]=Sya|0;a[e+20040>>2]=Rya|0;a[e+20052>>2]=Qya|0;a[e+20064>>2]=Oya|0;a[e+20076>>2]=Nya|0;a[e+20088>>2]=Mya|0;a[e+20100>>2]=Lya|0;a[e+20112>>2]=Kya|0;a[e+20124>>2]=Iya|0;a[e+20136>>2]=Gya|0;a[e+20148>>2]=Fya|0;a[e+20160>>2]=Eya|0;a[e+20172>>2]=Dya|0;a[e+20184>>2]=Bya|0;a[e+20196>>2]=Aya|0;a[e+20208>>2]=zya|0;a[e+20220>>2]=yya|0;a[e+20232>>2]=xya|0;a[e+20244>>2]=vya|0;a[e+20256>>2]=tya|0;a[e+20268>>2]=sya|0;a[e+20280>>2]=rya|0;a[e+20292>>2]=qya|0;a[e+20304>>2]=nya|0;a[e+20316>>2]=mya|0;a[e+20328>>2]=lya|0;a[e+20340>>2]=kya|0;a[e+20352>>2]=jya|0;a[e+20364>>2]=hya|0;a[e+20376>>2]=eya|0;a[e+20388>>2]=dya|0;a[e+20400>>2]=cya|0;a[e+20412>>2]=bya|0;a[e+20424>>2]=Zxa|0;a[e+20436>>2]=Yxa|0;a[e+20448>>2]=Xxa|0;a[e+20460>>2]=Wxa|0;a[e+20472>>2]=Vxa|0;a[e+20484>>2]=Txa|0;a[e+20496>>2]=Rxa|0;a[e+20508>>2]=Qxa|0;a[e+20520>>2]=Pxa|0;a[e+20532>>2]=Oxa|0;a[e+20544>>2]=Lxa|0;a[e+20556>>2]=Kxa|0;a[e+20568>>2]=Jxa|0;a[e+20580>>2]=Ixa|0;a[e+20592>>2]=Hxa|0;a[e+20604>>2]=Fxa|0;a[e+20616>>2]=Dxa|0;a[e+20628>>2]=Cxa|0;a[e+20640>>2]=Bxa|0;a[e+20652>>2]=Axa|0;a[e+20664>>2]=xxa|0;a[e+20676>>2]=wxa|0;a[e+20688>>2]=vxa|0;a[e+20700>>2]=uxa|0;a[e+20712>>2]=txa|0;a[e+20724>>2]=rxa|0;a[e+20736>>2]=pxa|0;a[e+20748>>2]=oxa|0;a[e+20760>>2]=nxa|0;a[e+20772>>2]=mxa|0;a[e+20784>>2]=jxa|0;a[e+20796>>2]=ixa|0;a[e+20808>>2]=hxa|0;a[e+20820>>2]=gxa|0;a[e+20832>>2]=fxa|0;a[e+20844>>2]=dxa|0;a[e+20856>>2]=bxa|0;a[e+20868>>2]=axa|0;a[e+20880>>2]=Zwa|0;a[e+20892>>2]=Ywa|0;a[e+20904>>2]=Vwa|0;a[e+20916>>2]=Uwa|0;a[e+20928>>2]=Twa|0;a[e+20940>>2]=Swa|0;a[e+20952>>2]=Rwa|0;a[e+20964>>2]=Pwa|0;a[e+20976>>2]=Nwa|0;a[e+20988>>2]=Mwa|0;a[e+21e3>>2]=Lwa|0;a[e+21012>>2]=Kwa|0;a[e+21024>>2]=Hwa|0;a[e+21036>>2]=Gwa|0;a[e+21048>>2]=Fwa|0;a[e+21060>>2]=Ewa|0;a[e+21072>>2]=Dwa|0;a[e+21084>>2]=Bwa|0;a[e+21096>>2]=zwa|0;a[e+21108>>2]=ywa|0;a[e+21120>>2]=xwa|0;a[e+21132>>2]=wwa|0;a[e+21144>>2]=twa|0;a[e+21156>>2]=swa|0;a[e+21168>>2]=rwa|0;a[e+21180>>2]=qwa|0;a[e+21192>>2]=pwa|0;a[e+21204>>2]=nwa|0;a[e+21216>>2]=lwa|0;a[e+21228>>2]=kwa|0;a[e+21240>>2]=jwa|0;a[e+21252>>2]=iwa|0;a[e+21264>>2]=gwa|0;a[e+21276>>2]=fwa|0;a[e+21288>>2]=ewa|0;a[e+21300>>2]=dwa|0;a[e+21312>>2]=cwa|0;a[e+21324>>2]=awa|0;a[e+21336>>2]=Zva|0;a[e+21348>>2]=Yva|0;a[e+21360>>2]=Xva|0;a[e+21372>>2]=Wva|0;a[e+21384>>2]=Vva|0;a[e+21396>>2]=Uva|0;a[e+21408>>2]=Tva|0;a[e+21420>>2]=Sva|0;a[e+21432>>2]=Rva|0;a[e+21444>>2]=Pva|0;a[e+21456>>2]=Nva|0;a[e+21468>>2]=Mva|0;a[e+21480>>2]=Lva|0;a[e+21492>>2]=Kva|0;a[e+21504>>2]=Iva|0;a[e+21516>>2]=Hva|0;a[e+21528>>2]=Gva|0;a[e+21540>>2]=Fva|0;a[e+21552>>2]=Eva|0;a[e+21564>>2]=Cva|0;a[e+21576>>2]=zva|0;a[e+21588>>2]=yva|0;a[e+21600>>2]=xva|0;a[e+21612>>2]=wva|0;a[e+21624>>2]=uva|0;a[e+21636>>2]=tva|0;a[e+21648>>2]=sva|0;a[e+21660>>2]=rva|0;a[e+21672>>2]=qva|0;a[e+21684>>2]=ova|0;a[e+21696>>2]=mva|0;a[e+21708>>2]=lva|0;a[e+21720>>2]=kva|0;a[e+21732>>2]=jva|0;a[e+21744>>2]=gva|0;a[e+21756>>2]=fva|0;a[e+21768>>2]=eva|0;a[e+21780>>2]=dva|0;a[e+21792>>2]=cva|0;a[e+21804>>2]=ava|0;a[e+21816>>2]=Zua|0;a[e+21828>>2]=Yua|0;a[e+21840>>2]=Xua|0;a[e+21852>>2]=Wua|0;a[e+21864>>2]=Uua|0;a[e+21876>>2]=Tua|0;a[e+21888>>2]=Sua|0;a[e+21900>>2]=Rua|0;a[e+21912>>2]=Qua|0;a[e+21924>>2]=Oua|0;a[e+21936>>2]=Mua|0;a[e+21948>>2]=Lua|0;a[e+21960>>2]=Kua|0;a[e+21972>>2]=Jua|0;a[e+21984>>2]=Hua|0;a[e+21996>>2]=Gua|0;a[e+22008>>2]=Fua|0;a[e+22020>>2]=Dua|0;a[e+22032>>2]=IA|0;a[e+22044>>2]=AA|0;a[e+22056>>2]=Aua|0;a[e+22068>>2]=zua|0;a[e+22080>>2]=yua|0;a[e+22092>>2]=xua|0;a[e+22104>>2]=Xz|0;a[e+22116>>2]=wua|0;a[e+22128>>2]=vua|0;a[e+22140>>2]=uua|0;a[e+22152>>2]=tua|0;a[e+22164>>2]=Mz|0;a[e+22176>>2]=qua|0;a[e+22188>>2]=pua|0;a[e+22200>>2]=oua|0;a[e+22212>>2]=nua|0;a[e+22224>>2]=Bz|0;a[e+22236>>2]=qz|0;a[e+22248>>2]=mua|0;a[e+22260>>2]=lua|0;a[e+22272>>2]=kua|0;a[e+22284>>2]=jua|0;a[e+22296>>2]=Ac|0;a[e+22308>>2]=SB|0;a[e+22320>>2]=Zj|0;a[e+22332>>2]=gua|0;a[e+22344>>2]=eua|0;a[e+22356>>2]=dua|0;a[e+22368>>2]=cua|0;a[e+22380>>2]=wB|0;a[e+22392>>2]=mB|0;a[e+22404>>2]=bua|0;a[e+22416>>2]=Zta|0;a[e+22428>>2]=Yta|0;a[e+22440>>2]=Xta|0;a[e+22452>>2]=bB|0;a[e+22464>>2]=Vta|0;a[e+22476>>2]=Uta|0;a[e+22488>>2]=Tta|0;a[e+22500>>2]=Sta|0;a[e+22512>>2]=WA|0;a[e+22524>>2]=Rta|0;a[e+22536>>2]=Ota|0;a[e+22548>>2]=Nta|0;a[e+22560>>2]=Mta|0;a[e+22572>>2]=SA|0;a[e+22584>>2]=Lta|0;a[e+22596>>2]=Kta|0;a[e+22608>>2]=Jta|0;a[e+22620>>2]=Ita|0;a[e+22632>>2]=QA|0;a[e+22644>>2]=Hta|0;a[e+22656>>2]=Eta|0;a[e+22668>>2]=Dta|0;a[e+22680>>2]=Cta|0;a[e+22692>>2]=OA|0;a[e+22704>>2]=Bta|0;a[e+22716>>2]=Ata|0;a[e+22728>>2]=zta|0;a[e+22740>>2]=yta|0;a[e+22752>>2]=NA|0;a[e+22764>>2]=LA|0;a[e+22776>>2]=vta|0;a[e+22788>>2]=uta|0;a[e+22800>>2]=tta|0;a[e+22812>>2]=sta|0;a[e+22824>>2]=JA|0;a[e+22836>>2]=gn|0;a[e+22848>>2]=rta|0;a[e+22860>>2]=qta|0;a[e+22872>>2]=pta|0;a[e+22884>>2]=ota|0;a[e+22896>>2]=EA|0;a[e+22908>>2]=mta|0;a[e+22920>>2]=lta|0;a[e+22932>>2]=kta|0;a[e+22944>>2]=ita|0;a[e+22956>>2]=DA|0;a[e+22968>>2]=CA|0;a[e+22980>>2]=BA|0;a[e+22992>>2]=hta|0;a[e+23004>>2]=gta|0;a[e+23016>>2]=dta|0;a[e+23028>>2]=cta|0;a[e+23040>>2]=zA|0;a[e+23052>>2]=bta|0;a[e+23064>>2]=ata|0;a[e+23076>>2]=$sa|0;a[e+23088>>2]=Zsa|0;a[e+23100>>2]=xA|0;a[e+23112>>2]=Ysa|0;a[e+23124>>2]=Xsa|0;a[e+23136>>2]=Usa|0;a[e+23148>>2]=Tsa|0;a[e+23160>>2]=wA|0;a[e+23172>>2]=uA|0;a[e+23184>>2]=Ssa|0;a[e+23196>>2]=Rsa|0;a[e+23208>>2]=Qsa|0;a[e+23220>>2]=Osa|0;a[e+23232>>2]=sA|0;a[e+23244>>2]=rA|0;a[e+23256>>2]=Lsa|0;a[e+23268>>2]=Ksa|0;a[e+23280>>2]=Jsa|0;a[e+23292>>2]=Isa|0;a[e+23304>>2]=qA|0;a[e+23316>>2]=pA|0;a[e+23328>>2]=nA|0;a[e+23340>>2]=mA|0;a[e+23352>>2]=Hsa|0;a[e+23364>>2]=Gsa|0;a[e+23376>>2]=Dsa|0;a[e+23388>>2]=Csa|0;a[e+23400>>2]=lA|0;a[e+23412>>2]=Bsa|0;a[e+23424>>2]=zsa|0;a[e+23436>>2]=xsa|0;a[e+23448>>2]=wsa|0;a[e+23460>>2]=kA|0;a[e+23472>>2]=hA|0;a[e+23484>>2]=fA|0;a[e+23496>>2]=tsa|0;a[e+23508>>2]=ssa|0;a[e+23520>>2]=rsa|0;a[e+23532>>2]=qsa|0;a[e+23544>>2]=dA|0;a[e+23556>>2]=msa|0;a[e+23568>>2]=lsa|0;a[e+23580>>2]=ksa|0;a[e+23592>>2]=jsa|0;a[e+23604>>2]=cA|0;a[e+23616>>2]=aA|0;a[e+23628>>2]=Zz|0;a[e+23640>>2]=Wz|0;a[e+23652>>2]=Uz|0;a[e+23664>>2]=fsa|0;a[e+23676>>2]=esa|0;a[e+23688>>2]=dsa|0;a[e+23700>>2]=csa|0;a[e+23712>>2]=Tz|0;a[e+23724>>2]=bsa|0;a[e+23736>>2]=Zra|0;a[e+23748>>2]=Yra|0;a[e+23760>>2]=Xra|0;a[e+23772>>2]=ir|0;a[e+23784>>2]=Wra|0;a[e+23796>>2]=Vra|0;a[e+23808>>2]=Ura|0;a[e+23820>>2]=Tra|0;a[e+23832>>2]=Sra|0;a[e+23844>>2]=Rra|0;a[e+23856>>2]=Ora|0;a[e+23868>>2]=Nra|0;a[e+23880>>2]=Mra|0;a[e+23892>>2]=Lra|0;a[e+23904>>2]=Kra|0;a[e+23916>>2]=Jra|0;a[e+23928>>2]=Ira|0;a[e+23940>>2]=Hra|0;a[e+23952>>2]=Gra|0;a[e+23964>>2]=Fra|0;a[e+23976>>2]=Bra|0;a[e+23988>>2]=Ara|0;a[e+24e3>>2]=zra|0;a[e+24012>>2]=yra|0;a[e+24024>>2]=xra|0;a[e+24036>>2]=wra|0;a[e+24048>>2]=vra|0;a[e+24060>>2]=ura|0;a[e+24072>>2]=tra|0;a[e+24084>>2]=sra|0;a[e+24096>>2]=pra|0;a[e+24108>>2]=ora|0;a[e+24120>>2]=nra|0;a[e+24132>>2]=mra|0;a[e+24144>>2]=kra|0;a[e+24156>>2]=ira|0;a[e+24168>>2]=hra|0;a[e+24180>>2]=gra|0;a[e+24192>>2]=fra|0;a[e+24204>>2]=era|0;a[e+24216>>2]=bra|0;a[e+24228>>2]=ara|0;a[e+24240>>2]=$qa|0;a[e+24252>>2]=Zqa|0;a[e+24264>>2]=Yqa|0;a[e+24276>>2]=Xqa|0;a[e+24288>>2]=Wqa|0;a[e+24300>>2]=Vqa|0;a[e+24312>>2]=Uqa|0;a[e+24324>>2]=Tqa|0;a[e+24336>>2]=Qqa|0;a[e+24348>>2]=Pqa|0;a[e+24360>>2]=Oqa|0;a[e+24372>>2]=Nqa|0;a[e+24384>>2]=Mqa|0;a[e+24396>>2]=Lqa|0;a[e+24408>>2]=Kqa|0;a[e+24420>>2]=Jqa|0;a[e+24432>>2]=Iqa|0;a[e+24444>>2]=Hqa|0;a[e+24456>>2]=Eqa|0;a[e+24468>>2]=Dqa|0;a[e+24480>>2]=Cqa|0;a[e+24492>>2]=Bqa|0;a[e+24504>>2]=zqa|0;a[e+24516>>2]=yqa|0;a[e+24528>>2]=xqa|0;a[e+24540>>2]=wqa|0;a[e+24552>>2]=vqa|0;a[e+24564>>2]=uqa|0;a[e+24576>>2]=rqa|0;a[e+24588>>2]=qqa|0;a[e+24600>>2]=pqa|0;a[e+24612>>2]=oqa|0;a[e+24624>>2]=mqa|0;a[e+24636>>2]=kqa|0;a[e+24648>>2]=iqa|0;a[e+24660>>2]=hqa|0;a[e+24672>>2]=gqa|0;a[e+24684>>2]=fqa|0;a[e+24696>>2]=cqa|0;a[e+24708>>2]=bqa|0;a[e+24720>>2]=aqa|0;a[e+24732>>2]=$pa|0;a[e+24744>>2]=Xpa|0;a[e+24756>>2]=Vpa|0;a[e+24768>>2]=Upa|0;a[e+24780>>2]=Tpa|0;a[e+24792>>2]=Spa|0;a[e+24804>>2]=Rpa|0;a[e+24816>>2]=Opa|0;a[e+24828>>2]=Npa|0;a[e+24840>>2]=Mpa|0;a[e+24852>>2]=Lpa|0;a[e+24864>>2]=Ipa|0;a[e+24876>>2]=Gpa|0;a[e+24888>>2]=Fpa|0;a[e+24900>>2]=Epa|0;a[e+24912>>2]=Dpa|0;a[e+24924>>2]=Cpa|0;a[e+24936>>2]=zpa|0;a[e+24948>>2]=ypa|0;a[e+24960>>2]=xpa|0;a[e+24972>>2]=wpa|0;a[e+24984>>2]=upa|0;a[e+24996>>2]=Yj|0;a[e+25008>>2]=spa|0;a[e+25020>>2]=rpa|0;a[e+25032>>2]=qpa|0;a[e+25044>>2]=ppa|0;a[e+25056>>2]=Sz|0;a[e+25068>>2]=Rz|0;a[e+25080>>2]=mpa|0;a[e+25092>>2]=lpa|0;a[e+25104>>2]=jpa|0;a[e+25116>>2]=hpa|0;a[e+25128>>2]=gpa|0;a[e+25140>>2]=fpa|0;a[e+25152>>2]=epa|0;a[e+25164>>2]=dpa|0;a[e+25176>>2]=apa|0;a[e+25188>>2]=$oa|0;a[e+25200>>2]=Zoa|0;a[e+25212>>2]=Yoa|0;a[e+25224>>2]=Woa|0;a[e+25236>>2]=Uoa|0;a[e+25248>>2]=Toa|0;a[e+25260>>2]=Soa|0;a[e+25272>>2]=Roa|0;a[e+25284>>2]=Qoa|0;a[e+25296>>2]=Noa|0;a[e+25308>>2]=Moa|0;a[e+25320>>2]=Loa|0;a[e+25332>>2]=Koa|0;a[e+25344>>2]=Ioa|0;a[e+25356>>2]=Eoa|0;a[e+25368>>2]=Doa|0;a[e+25380>>2]=Coa|0;a[e+25392>>2]=Boa|0;a[e+25404>>2]=Aoa|0;a[e+25416>>2]=xoa|0;a[e+25428>>2]=woa|0;a[e+25440>>2]=voa|0;a[e+25452>>2]=uoa|0;a[e+25464>>2]=toa|0;a[e+25476>>2]=soa|0;a[e+25488>>2]=roa|0;a[e+25500>>2]=qoa|0;a[e+25512>>2]=poa|0;a[e+25524>>2]=ooa|0;a[e+25536>>2]=loa|0;a[e+25548>>2]=koa|0;a[e+25560>>2]=joa|0;a[e+25572>>2]=ioa|0;a[e+25584>>2]=goa|0;a[e+25596>>2]=foa|0;a[e+25608>>2]=eoa|0;a[e+25620>>2]=doa|0;a[e+25632>>2]=coa|0;a[e+25644>>2]=boa|0;a[e+25656>>2]=Zna|0;a[e+25668>>2]=Yna|0;a[e+25680>>2]=Xna|0;a[e+25692>>2]=Wna|0;a[e+25704>>2]=Una|0;a[e+25716>>2]=Tna|0;a[e+25728>>2]=Rna|0;a[e+25740>>2]=Qna|0;a[e+25752>>2]=Pna|0;a[e+25764>>2]=Ona|0;a[e+25776>>2]=Lna|0;a[e+25788>>2]=Kna|0;a[e+25800>>2]=Jna|0;a[e+25812>>2]=Ina|0;a[e+25824>>2]=Gna|0;a[e+25836>>2]=Fna|0;a[e+25848>>2]=Dna|0;a[e+25860>>2]=Cna|0;a[e+25872>>2]=Bna|0;a[e+25884>>2]=Ana|0;a[e+25896>>2]=xna|0;a[e+25908>>2]=wna|0;a[e+25920>>2]=vna|0;a[e+25932>>2]=tna|0;a[e+25944>>2]=qna|0;a[e+25956>>2]=ona|0;a[e+25968>>2]=nna|0;a[e+25980>>2]=mna|0;a[e+25992>>2]=lna|0;a[e+26004>>2]=kna|0;a[e+26016>>2]=hna|0;a[e+26028>>2]=gna|0;a[e+26040>>2]=fna|0;a[e+26052>>2]=ena|0;a[e+26064>>2]=bna|0;a[e+26076>>2]=ana|0;a[e+26088>>2]=$ma|0;a[e+26100>>2]=Zma|0;a[e+26112>>2]=Yma|0;a[e+26124>>2]=Xma|0;a[e+26136>>2]=Uma|0;a[e+26148>>2]=Tma|0;a[e+26160>>2]=Sma|0;a[e+26172>>2]=Rma|0;a[e+26184>>2]=Pma|0;a[e+26196>>2]=Oma|0;a[e+26208>>2]=Nma|0;a[e+26220>>2]=Mma|0;a[e+26232>>2]=Lma|0;a[e+26244>>2]=Kma|0;a[e+26256>>2]=Hma|0;a[e+26268>>2]=Gma|0;a[e+26280>>2]=Fma|0;a[e+26292>>2]=Pz|0;a[e+26304>>2]=Dma|0;a[e+26316>>2]=Cma|0;a[e+26328>>2]=Bma|0;a[e+26340>>2]=Ama|0;a[e+26352>>2]=Oz|0;a[e+26364>>2]=zma|0;a[e+26376>>2]=wma|0;a[e+26388>>2]=vma|0;a[e+26400>>2]=uma|0;a[e+26412>>2]=Nz|0;a[e+26424>>2]=sma|0;a[e+26436>>2]=rma|0;a[e+26448>>2]=qma|0;a[e+26460>>2]=pma|0;a[e+26472>>2]=Lz|0;a[e+26484>>2]=qh|0;a[e+26496>>2]=Kz|0;a[e+26508>>2]=mma|0;a[e+26520>>2]=lma|0;a[e+26532>>2]=kma|0;a[e+26544>>2]=hma|0;a[e+26556>>2]=Jz|0;a[e+26568>>2]=fma|0;a[e+26580>>2]=ema|0;a[e+26592>>2]=dma|0;a[e+26604>>2]=cma|0;a[e+26616>>2]=Iz|0;a[e+26628>>2]=Hz|0;a[e+26640>>2]=ama|0;a[e+26652>>2]=Zla|0;a[e+26664>>2]=Xla|0;a[e+26676>>2]=Wla|0;a[e+26688>>2]=Gz|0;a[e+26700>>2]=Fz|0;a[e+26712>>2]=Vla|0;a[e+26724>>2]=Ula|0;a[e+26736>>2]=Rla|0;a[e+26748>>2]=Pla|0;a[e+26760>>2]=Ez|0;a[e+26772>>2]=Ola|0;a[e+26784>>2]=Mla|0;a[e+26796>>2]=Lla|0;a[e+26808>>2]=Kla|0;a[e+26820>>2]=Dz|0;a[e+26832>>2]=Cz|0;a[e+26844>>2]=Ila|0;a[e+26856>>2]=Fla|0;a[e+26868>>2]=Ela|0;a[e+26880>>2]=Dla|0;a[e+26892>>2]=Cla|0;a[e+26904>>2]=Ala|0;a[e+26916>>2]=zla|0;a[e+26928>>2]=yla|0;a[e+26940>>2]=xla|0;a[e+26952>>2]=Az|0;a[e+26964>>2]=zz|0;a[e+26976>>2]=qe|0;a[e+26988>>2]=yz|0;a[e+27e3>>2]=ula|0;a[e+27012>>2]=sla|0;a[e+27024>>2]=rla|0;a[e+27036>>2]=qla|0;a[e+27048>>2]=xz|0;a[e+27060>>2]=ola|0;a[e+27072>>2]=nla|0;a[e+27084>>2]=mla|0;a[e+27096>>2]=jla|0;a[e+27108>>2]=wz|0;a[e+27120>>2]=uz|0;a[e+27132>>2]=ila|0;a[e+27144>>2]=gla|0;a[e+27156>>2]=ela|0;a[e+27168>>2]=dla|0;a[e+27180>>2]=cla|0;a[e+27192>>2]=sz|0;a[e+27204>>2]=rz|0;a[e+27216>>2]=pz|0;a[e+27228>>2]=$ka|0;a[e+27240>>2]=Zka|0;a[e+27252>>2]=Yka|0;a[e+27264>>2]=Wka|0;a[e+27276>>2]=oz|0;a[e+27288>>2]=Vka|0;a[e+27300>>2]=Uka|0;a[e+27312>>2]=Tka|0;a[e+27324>>2]=Ska|0;a[e+27336>>2]=nz|0;a[e+27348>>2]=mz|0;a[e+27360>>2]=Zm|0;a[e+27372>>2]=Pka|0;a[e+27384>>2]=Oka|0;a[e+27396>>2]=Nka|0;a[e+27408>>2]=Mka|0;a[e+27420>>2]=hr|0;a[e+27432>>2]=Lka|0;a[e+27444>>2]=Kka|0;a[e+27456>>2]=Hka|0;a[e+27468>>2]=Gka|0;a[e+27480>>2]=lz|0;a[e+27492>>2]=kz|0;a[e+27504>>2]=jz|0;a[e+27516>>2]=Fka|0;a[e+27528>>2]=Eka|0;a[e+27540>>2]=Dka|0;a[e+27552>>2]=Cka|0;a[e+27564>>2]=iz|0;a[e+27576>>2]=zka|0;a[e+27588>>2]=yka|0;a[e+27600>>2]=xka|0;a[e+27612>>2]=wka|0;a[e+27624>>2]=hz|0;a[e+27636>>2]=gz|0;a[e+27648>>2]=fz|0;a[e+27660>>2]=ez|0;a[e+27672>>2]=dz|0;a[e+27684>>2]=cz|0;a[e+27696>>2]=bz|0;a[e+27708>>2]=UB|0;a[e+27720>>2]=tka|0;a[e+27732>>2]=ska|0;a[e+27744>>2]=qka|0;a[e+27756>>2]=oka|0;a[e+27768>>2]=TB|0;a[e+27780>>2]=RB|0;a[e+27792>>2]=nka|0;a[e+27804>>2]=mka|0;a[e+27816>>2]=jka|0;a[e+27828>>2]=ika|0;a[e+27840>>2]=fr|0;a[e+27852>>2]=hka|0;a[e+27864>>2]=sg|0;a[e+27876>>2]=PB|0;a[e+27888>>2]=MB|0;a[e+27900>>2]=fka|0;a[e+27912>>2]=eka|0;a[e+27924>>2]=dka|0;a[e+27936>>2]=$ja|0;a[e+27948>>2]=LB|0;a[e+27960>>2]=Yja|0;a[e+27972>>2]=Xja|0;a[e+27984>>2]=Wja|0;a[e+27996>>2]=Vja|0;a[e+28008>>2]=KB|0;a[e+28020>>2]=Tja|0;a[e+28032>>2]=Sja|0;a[e+28044>>2]=Rja|0;a[e+28056>>2]=Oja|0;a[e+28068>>2]=JB|0;a[e+28080>>2]=Nja|0;a[e+28092>>2]=Mja|0;a[e+28104>>2]=Lja|0;a[e+28116>>2]=Kja|0;a[e+28128>>2]=IB|0;a[e+28140>>2]=HB|0;a[e+28152>>2]=Jja|0;a[e+28164>>2]=Ija|0;a[e+28176>>2]=Fja|0;a[e+28188>>2]=Eja|0;a[e+28200>>2]=GB|0;a[e+28212>>2]=Dja|0;a[e+28224>>2]=Cja|0;a[e+28236>>2]=Bja|0;a[e+28248>>2]=Aja|0;a[e+28260>>2]=FB|0;a[e+28272>>2]=yja|0;a[e+28284>>2]=xja|0;a[e+28296>>2]=uja|0;a[e+28308>>2]=tja|0;a[e+28320>>2]=EB|0;a[e+28332>>2]=BB|0;a[e+28344>>2]=sja|0;a[e+28356>>2]=pja|0;a[e+28368>>2]=oja|0;a[e+28380>>2]=nja|0;a[e+28392>>2]=AB|0;a[e+28404>>2]=zB|0;a[e+28416>>2]=kja|0;a[e+28428>>2]=jja|0;a[e+28440>>2]=ija|0;a[e+28452>>2]=hja|0;a[e+28464>>2]=yB|0;a[e+28476>>2]=fja|0;a[e+28488>>2]=eja|0;a[e+28500>>2]=dja|0;a[e+28512>>2]=cja|0;a[e+28524>>2]=xB|0;a[e+28536>>2]=er|0;a[e+28548>>2]=$ia|0;a[e+28560>>2]=Zia|0;a[e+28572>>2]=Yia|0;a[e+28584>>2]=Xia|0;a[e+28596>>2]=Vj|0;a[e+28608>>2]=Wia|0;a[e+28620>>2]=Via|0;a[e+28632>>2]=Uia|0;a[e+28644>>2]=Tia|0;a[e+28656>>2]=vB|0;a[e+28668>>2]=Qia|0;a[e+28680>>2]=Pia|0;a[e+28692>>2]=Nia|0;a[e+28704>>2]=Mia|0;a[e+28716>>2]=uB|0;a[e+28728>>2]=Lia|0;a[e+28740>>2]=Kia|0;a[e+28752>>2]=Jia|0;a[e+28764>>2]=Iia|0;a[e+28776>>2]=tB|0;a[e+28788>>2]=sB|0;a[e+28800>>2]=Eia|0;a[e+28812>>2]=Dia|0;a[e+28824>>2]=Cia|0;a[e+28836>>2]=Bia|0;a[e+28848>>2]=rB|0;a[e+28860>>2]=qB|0;a[e+28872>>2]=Aia|0;a[e+28884>>2]=zia|0;a[e+28896>>2]=wia|0;a[e+28908>>2]=via|0;a[e+28920>>2]=pB|0;a[e+28932>>2]=uia|0;a[e+28944>>2]=sia|0;a[e+28956>>2]=ria|0;a[e+28968>>2]=qia|0;a[e+28980>>2]=oB|0;a[e+28992>>2]=pia|0;a[e+29004>>2]=oia|0;a[e+29016>>2]=lia|0;a[e+29028>>2]=kia|0;a[e+29040>>2]=nB|0;a[e+29052>>2]=jia|0;a[e+29064>>2]=hia|0;a[e+29076>>2]=gia|0;a[e+29088>>2]=fia|0;a[e+29100>>2]=lB|0;a[e+29112>>2]=eia|0;a[e+29124>>2]=dia|0;a[e+29136>>2]=aia|0;a[e+29148>>2]=$ha|0;a[e+29160>>2]=kB|0;a[e+29172>>2]=Zha|0;a[e+29184>>2]=Xha|0;a[e+29196>>2]=Wha|0;a[e+29208>>2]=Vha|0;a[e+29220>>2]=jB|0;a[e+29232>>2]=hB|0;a[e+29244>>2]=Uha|0;a[e+29256>>2]=Rha|0;a[e+29268>>2]=Qha|0;a[e+29280>>2]=Pha|0;a[e+29292>>2]=gB|0;a[e+29304>>2]=Oha|0;a[e+29316>>2]=Nha|0;a[e+29328>>2]=Mha|0;a[e+29340>>2]=Lha|0;a[e+29352>>2]=fB|0;a[e+29364>>2]=Kha|0;a[e+29376>>2]=Hha|0;a[e+29388>>2]=Gha|0;a[e+29400>>2]=Fha|0;a[e+29412>>2]=eB|0;a[e+29424>>2]=Eha|0;a[e+29436>>2]=Dha|0;a[e+29448>>2]=Cha|0;a[e+29460>>2]=Aha|0;a[e+29472>>2]=dB|0;a[e+29484>>2]=zha|0;a[e+29496>>2]=xha|0;a[e+29508>>2]=wha|0;a[e+29520>>2]=uha|0;a[e+29532>>2]=cB|0;a[e+29544>>2]=tha|0;a[e+29556>>2]=qha|0;a[e+29568>>2]=pha|0;a[e+29580>>2]=oha|0;a[e+29592>>2]=On|0;a[e+29604>>2]=aB|0;a[e+29616>>2]=kha|0;a[e+29628>>2]=jha|0;a[e+29640>>2]=iha|0;a[e+29652>>2]=hha|0;a[e+29664>>2]=$A|0;a[e+29676>>2]=fha|0;a[e+29688>>2]=eha|0;a[e+29700>>2]=dha|0;a[e+29712>>2]=cha|0;a[e+29724>>2]=bha|0;a[e+29736>>2]=ZA|0;a[e+29748>>2]=Zga|0;a[e+29760>>2]=Yga|0;a[e+29772>>2]=Xga|0;a[e+29784>>2]=Wga|0;a[e+29796>>2]=hf|0;a[e+29808>>2]=YA|0;a[e+29820>>2]=Uj|0;a[e+29832>>2]=Vga|0;a[e+29844>>2]=Uga|0;a[e+29856>>2]=Rga|0;a[e+29868>>2]=Qga|0;a[e+29880>>2]=XA|0;a[ed+4>>2]=ae|0;a[ed+12>>2]=Xq|0;a[ed+20>>2]=De|0;a[ed+28>>2]=Xg|0;a[ed+36>>2]=Wq|0;a[ed+44>>2]=Vq|0;a[ed+52>>2]=Uq|0;a[ed+60>>2]=Wg|0;a[ed+68>>2]=Vm|0;a[ed+76>>2]=Um|0;a[ed+84>>2]=Tm|0;a[ed+92>>2]=Sm|0;a[ed+100>>2]=Rm|0;a[ed+108>>2]=Qm|0;a[ed+116>>2]=R|0;a[az+4>>2]=Wm|0;a[Mh>>2]=fba|0;a[Mh+4>>2]=tv|0;a[Mh+8>>2]=yr|0;a[Mh+12>>2]=taa|0;a[Mh+16>>2]=baa|0;a[nj+20>>2]=328;a[Uh+20>>2]=244;a[aw+20>>2]=290;a[Rp+20>>2]=244;a[nn+4>>2]=ak;a[nn+8>>2]=374;a[nn+12>>2]=298;a[nn+16>>2]=42;a[on+4>>2]=pn;a[on+8>>2]=24;a[on+12>>2]=294;a[on+16>>2]=180;VB=d([2,0,0,0],["i8*",0,0,0],c);a[ak>>2]=VB+8|0;a[ak+4>>2]=YPa|0;a[ak+8>>2]=cc;a[pn>>2]=VB+8|0;a[pn+4>>2]=ZPa|0;a[pn+8>>2]=ak;a[W>>2]=NB|0;a[W+4>>2]=Jb;a[W+8>>2]=pl;a[W+16>>2]=ILa|0;a[W+20>>2]=Jb;a[W+24>>2]=aV;a[W+32>>2]=Gs|0;a[W+36>>2]=Jb;a[W+40>>2]=Yy;a[W+48>>2]=wGa|0;a[W+52>>2]=Jb;a[W+56>>2]=Yy;a[W+64>>2]=SDa|0;a[W+68>>2]=Jb;a[W+72>>2]=Zy;a[W+80>>2]=vBa|0;a[W+84>>2]=UU;a[W+88>>2]=Zy;a[W+96>>2]=bza|0;a[W+100>>2]=Jb;a[W+104>>2]=lV;a[W+112>>2]=uwa|0;a[W+116>>2]=Jb;a[W+120>>2]=WU;a[W+128>>2]=sg|0;a[W+132>>2]=Jb;a[W+136>>2]=Xy;a[W+144>>2]=osa|0;a[W+148>>2]=Jb;a[W+152>>2]=Xy;a[W+160>>2]=KA|0;a[W+164>>2]=Jb;a[W+168>>2]=oV;a[W+176>>2]=pna|0;a[W+180>>2]=Jb;a[W+184>>2]=XU;a[W+192>>2]=fla|0;a[W+196>>2]=Jb;a[W+200>>2]=cV;a[W+208>>2]=qja|0;a[W+212>>2]=Jb;a[W+216>>2]=iV;a[W+224>>2]=rha|0;a[W+228>>2]=Jb;a[W+232>>2]=bV;a[W+240>>2]=vga|0;a[W+244>>2]=Jb;a[W+248>>2]=jV;a[W+256>>2]=Sfa|0;a[W+260>>2]=Jb;a[W+264>>2]=$U;a[W+272>>2]=pfa|0;a[W+276>>2]=Jb;a[W+280>>2]=dV;a[W+288>>2]=Mea|0;a[W+292>>2]=Jb;a[W+296>>2]=eV;a[W+304>>2]=qea|0;a[W+308>>2]=Jb;a[W+312>>2]=YU;a[W+320>>2]=Uda|0;a[W+324>>2]=Jb;a[W+328>>2]=kV;a[W+336>>2]=Bda|0;a[W+340>>2]=Jb;a[W+344>>2]=qV;a[W+352>>2]=ida|0;a[W+356>>2]=Jb;a[W+360>>2]=pV;a[W+368>>2]=Nca|0;a[W+372>>2]=Jb;a[W+376>>2]=pl;a[W+384>>2]=qca|0;a[W+388>>2]=Jb;a[W+392>>2]=pl;a[W+400>>2]=Zba|0;a[W+404>>2]=Jb;a[W+408>>2]=ZU;a[W+416>>2]=Fba|0;a[W+420>>2]=Jb;a[W+424>>2]=nV;a[W+432>>2]=kba|0;a[W+436>>2]=Jb;a[W+440>>2]=mV;a[W+448>>2]=Taa|0;a[W+452>>2]=Jb;a[W+456>>2]=VU;a[W+464>>2]=Caa|0;a[W+468>>2]=Jb;a[W+472>>2]=fV;a[W+480>>2]=laa|0;a[W+484>>2]=Jb;a[W+488>>2]=gV;a[W+496>>2]=V$|0;a[W+500>>2]=Jb;a[W+504>>2]=hV;a[W+512>>2]=F$|0;a[W+516>>2]=Jb;a[W+520>>2]=sV;a[W+528>>2]=m$|0;a[W+532>>2]=Jb;a[W+536>>2]=rV;a[W+544>>2]=X9|0;a[W+548>>2]=Jb;a[W+552>>2]=tV;a[W+560>>2]=jv|0;a[W+564>>2]=Wy;a[W+576>>2]=eu|0;a[W+580>>2]=Wy;a[W+592>>2]=Hs|0;a[W+596>>2]=Yq;a[nk>>2]=QEa|0;a[nk+4>>2]=YLa|0;a[nk+8>>2]=una|0;a[Mu+16>>2]=246;a[Xc>>2]=WB;a[iQa>>2]=$Pa;a[jQa>>2]=aQa;a[Jo>>2]=bQa;a[Pn>>2]=cQa;a[kQa>>2]=WB;a[lQa>>2]=dQa;a[mQa>>2]=eQa;a[nQa>>2]=fQa;a[oQa>>2]=gQa;a[pQa>>2]=hQa;a[Mr>>2]=DAa|0;a[xe>>2]=Dra|0;a[xe+8>>2]=hIa|0;a[xe+16>>2]=Gia|0;a[xe+24>>2]=NB|0;a[xe+32>>2]=KA|0;a[xe+40>>2]=ok|0;a[xe+48>>2]=sg|0;a[xe+56>>2]=M2|0;a[xe+64>>2]=c0|0;a[xe+72>>2]=oY|0;a[xe+80>>2]=XPa|0;a[gh>>2]=ft|0;a[gh+8>>2]=cj|0;a[gh+16>>2]=SGa|0;a[gh+24>>2]=Zt|0;a[gh+32>>2]=XCa|0;a[Ai>>2]=gya|0;a[Ai+12>>2]=Bva|0;a[Ai+24>>2]=zv|0;a[Ai+36>>2]=sg|0;var $c=Math.sqrt,DQa,EQa,va={Fb:7,h:13,Gb:98,Hb:99,Ib:97,Jb:11,Kb:114,j:9,Lb:74,Mb:16,Nb:125,Ob:10,Pb:103,Qb:111,Rb:104,Sb:35,Tb:89,Ub:33,Vb:122,ha:17,Wb:14,Xb:27,Yb:113,Zb:43,$b:84,ac:115,bc:4,i:22,r:5,cc:106,N:21,Ea:40,dc:24,ec:31,fc:90,gc:72,hc:36,ic:100,jc:102,kc:101,lc:23,mc:105,nc:61,oc:19,O:2,pc:8,qc:37,rc:67,sc:12,tc:42,uc:92,vc:28,wc:63,xc:60,yc:38,zc:107,ia:20,Ac:39,Bc:131,Cc:88,Dc:95,Ec:25,ja:6,Fc:75,Gc:130,Hc:1,Ic:32,Jc:71,Kc:93,Lc:91,ka:34,Mc:30,Fa:29,Nc:3,Oc:116,Pc:62,Qc:110,Rc:26,Sc:11,Tc:18};oa=zg=Om=0;var Q={Sa:"/",gb:2,a:[xc],va:wc,bb:(function(a,b){for(var c=a[0],d=1;dthis.length-1||0>a)){var b=a%m;return this.Xa(Math.floor(a/m))[b]}});f.prototype.ob=(function(a){this.Xa=a});var h=new XMLHttpRequest;h.open("HEAD",c,ee);h.send(xc);200<=h.status&&300>h.status||304===h.status||Ub(Error("Couldn't load "+c+". Status: "+h.status));var j=Number(h.getResponseHeader("Content-length")),n,m=1048576;if(!((n=h.getResponseHeader("Accept-Ranges"))&&"bytes"===n)){m=j}var p=new f(m,j);p.ob((function(a){var b=a*p.ma,d=(a+1)*p.ma-1,d=Math.min(d,j-1);if("undefined"===typeof p.F[a]){var e=p.F;b>d&&Ub(Error("invalid range ("+b+", "+d+") or no bytes requested!"));d>j-1&&Ub(Error("only "+j+" bytes available! programmer error!"));var f=new XMLHttpRequest;f.open("GET",c,ee);j!==m&&f.setRequestHeader("Range","bytes="+b+"-"+d);"undefined"!=typeof Uint8Array&&(f.responseType="arraybuffer");f.overrideMimeType&&f.overrideMimeType("text/plain; charset=x-user-defined");f.send(xc);200<=f.status&&300>f.status||304===f.status||Ub(Error("Couldn't load "+c+". Status: "+f.status));b=f.response!==cc?new Uint8Array(f.response||[]):Nd(f.responseText||"",wc);e[a]=b}"undefined"===typeof p.F[a]&&Ub(Error("doXHR failed!"));return p.F[a]}));f={d:ee,b:p}}else{f={d:ee,url:c}}return Q.G(a,b,f,d,e)}),Ra:(function(a,b,c,d,e,f,h,j){function n(c){function i(c){j||Q.S(a,b,c,d,e);f&&f();rn("cp "+m)}var n=ee;K.preloadPlugins.forEach((function(a){!n&&a.canHandle(m)&&(a.handle(c,m,i,(function(){h&&h();rn("cp "+m)})),n=wc)}));n||i(c)}Tb.Ua();var m=Q.bb([a,b],wc);pr("cp "+m);"string"==typeof c?Tb.Ka(c,(function(a){n(a)}),h):n(c)}),Qa:(function(a,b,c,d,e){return Q.G(a,b,{d:ee,link:c},d,e)}),s:(function(a,b,c,d){!c&&!d&&Ub(Error("A device must have at least one callback defined."));return Q.G(a,b,{d:wc,input:c,l:d},Boolean(c),Boolean(d))}),ua:(function(a){if(a.d||a.e||a.link||a.b){return wc}var b=wc;"undefined"!==typeof XMLHttpRequest&&Ub(Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."));if(K.read){try{a.b=Nd(K.read(a.url),wc)}catch(c){b=ee}}else{Ub(Error("Cannot load without read() or XMLHttpRequest."))}b||Ea(va.r);return b}),ra:(function(){Q.root||(Q.root={v:wc,write:wc,e:wc,d:ee,timestamp:Date.now(),$:1,b:{}})}),t:(function(a,b,e){function f(a){a===xc||10===a?(b.M(b.buffer.join("")),b.buffer=[]):b.buffer.push(k.wa(a))}Ae(!Q.t.Z,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");Q.t.Z=wc;Q.ra();var a=a||K.stdin,b=b||K.stdout,e=e||K.stderr,h=wc,j=wc,l=wc;a||(h=ee,a=(function(){if(!a.R||!a.R.length){var b;"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b===xc&&(b=String.fromCharCode(0))):"function"==typeof readline&&(b=readline());b||(b="");a.R=Nd(b+"\n",wc)}return a.R.shift()}));var k=new Qa.Q;b||(j=ee,b=f);b.M||(b.M=K.print);b.buffer||(b.buffer=[]);e||(l=ee,e=f);e.M||(e.M=K.print);e.buffer||(e.buffer=[]);try{Q.H("/","tmp",wc,wc)}catch(n){}var m=Q.H("/","dev",wc,wc),p=Q.s(m,"stdin",a),s=Q.s(m,"stdout",xc,b),e=Q.s(m,"stderr",xc,e);Q.s(m,"tty",a,b);Q.a[1]={path:"/dev/stdin",object:p,position:0,p:wc,q:ee,K:ee,aa:!h,error:ee,f:ee,g:[]};Q.a[2]={path:"/dev/stdout",object:s,position:0,p:ee,q:wc,K:ee,aa:!j,error:ee,f:ee,g:[]};Q.a[3]={path:"/dev/stderr",object:e,position:0,p:ee,q:wc,K:ee,aa:!l,error:ee,f:ee,g:[]};Om=d([1],"void*",$g);zg=d([2],"void*",$g);oa=d([3],"void*",$g);Q.pa("/","dev/shm/tmp",wc,wc);for(h=Q.a.length;h>e-6&63,e=e-6,a=a+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[k]}}2==e?(a+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&3)<<4],a+="=="):4==e&&(a+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(d&15)<<2],a+="=");r.src="data:audio/x-"+c.substr(-3)+";base64,"+a;f(r)}});r.src=m;setTimeout((function(){f(r)}),1e4)}else{return h()}})})}}),Yc:(function(a,b,c){try{var d=a.getContext(b?"experimental-webgl":"2d");d||Ub(":(")}catch(e){return K.print("Could not create canvas - "+e),xc}b&&(a.style.backgroundColor="black",a.addEventListener("webglcontextlost",(function(){alert("WebGL context lost. You will need to reload the page.")}),ee));c&&(K.Zc=d,K.Ad=b,Tb.eb.forEach((function(a){a()})));return d}),ca:(function(){function a(){var b=ee;if((document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement)===c){c.kb=c.requestPointerLock||c.mozRequestPointerLock||c.webkitRequestPointerLock,c.kb(),b=wc}if(K.onFullScreen){K.onFullScreen(b)}}function b(){Tb.hb=document.pointerLockElement===c||document.mozPointerLockElement===c||document.webkitPointerLockElement===c}var c=K.canvas;document.addEventListener("fullscreenchange",a,ee);document.addEventListener("mozfullscreenchange",a,ee);document.addEventListener("webkitfullscreenchange",a,ee);document.addEventListener("pointerlockchange",b,ee);document.addEventListener("mozpointerlockchange",b,ee);document.addEventListener("webkitpointerlockchange",b,ee);c.ca=c.requestFullScreen||c.mozRequestFullScreen||(c.webkitRequestFullScreen?(function(){c.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}):xc);c.ca()}),requestAnimationFrame:(function(a){window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||window.setTimeout);window.requestAnimationFrame(a)}),ed:(function(a){return a.movementX||a.mozMovementX||a.webkitMovementX||0}),fd:(function(a){return a.movementY||a.mozMovementY||a.webkitMovementY||0}),Db:(function(a,b,c){var d=new XMLHttpRequest;d.open("GET",a,wc);d.responseType="arraybuffer";d.onload=(function(){200==d.status?b(d.response):c()});d.onerror=c;d.send(xc)}),Ka:(function(a,b,c){Tb.Db(a,(function(c){Ae(c,'Loading data file "'+a+'" failed (no arrayBuffer).');b(new Uint8Array(c));rn("al "+a)}),(function(){c?c():Ub('Loading data file "'+a+'" failed.')}));pr("al "+a)}),lb:[],Cb:(function(){var a=K.canvas;Tb.lb.forEach((function(b){b(a.width,a.height)}))}),od:(function(a,b,c){var d=K.canvas;d.width=a;d.height=b;c||Tb.Cb()})};IU.unshift({U:(function(){!K.noFSInit&&!Q.t.Z&&Q.t()})});CU.push({U:(function(){Q.va=ee})});tr.push({U:(function(){Q.jb()})});K.FS_createFolder=Q.H;K.FS_createPath=Q.pa;K.FS_createDataFile=Q.S;K.FS_createPreloadedFile=Q.Ra;K.FS_createLazyFile=Q.Pa;K.FS_createLink=Q.Qa;K.FS_createDevice=Q.s;Ea(0);ni.c=d([0],"i8",c);kk.c=d([0],"i8",c);mC(Ee);pC.La=d(12,"void*",c);K.requestFullScreen=(function(){Tb.ca()});K.requestAnimationFrame=(function(a){Tb.requestAnimationFrame(a)});K.pauseMainLoop=(function(){Tb.k.pause()});K.resumeMainLoop=(function(){Tb.k.mb()});qC.X=1;K._vizRenderFromString=rC;Kc.X=1;pk.X=1;zC.X=1;Er.X=1;FC.X=1;Cn.X=1;Nc.X=1;GC.X=1;Ag.X=1;yC.X=1;JC.X=1;tk.X=1;Cg.X=1;Hn.X=1;In.X=1;LC.X=1;hh.X=1;MC.X=1;NC.X=1;OC.X=1;PC.X=1;QC.X=1;RC.X=1;Ei.X=1;Or.X=1;Kn.X=1;xk.X=1;Rr.X=1;eD.X=1;gD.X=1;hD.X=1;Ck.X=1;oh.X=1;Ji.X=1;nh.X=1;Br.X=1;HD.X=1;QD.X=1;RD.X=1;JD.X=1;GD.X=1;fs.X=1;wD.X=1;xD.X=1;yD.X=1;Qi.X=1;ms.X=1;LE.X=1;IE.X=1;yE.X=1;OE.X=1;ps.X=1;xE.X=1;UE.X=1;Gi.X=1;vD.X=1;kD.X=1;Ur.X=1;lD.X=1;Tk.X=1;Ld.X=1;Uk.X=1;NE.X=1;hF.X=1;kF.X=1;Qs.X=1;$s.X=1;at.X=1;bt.X=1;qF.X=1;rF.X=1;ct.X=1;yF.X=1;Zs.X=1;ht.X=1;so.X=1;ag.X=1;jt.X=1;Fg.X=1;nc.X=1;uF.X=1;Bo.X=1;OF.X=1;aG.X=1;nG.X=1;qt.X=1;rt.X=1;RF.X=1;AG.X=1;sG.X=1;gl.X=1;rG.X=1;hl.X=1;Oo.X=1;DG.X=1;EG.X=1;HG.X=1;RG.X=1;GG.X=1;KG.X=1;LG.X=1;fg.X=1;IG.X=1;yt.X=1;jl.X=1;Wo.X=1;Vo.X=1;SG.X=1;Xo.X=1;At.X=1;zt.X=1;Bt.X=1;Et.X=1;Dt.X=1;UG.X=1;XG.X=1;Ft.X=1;ff.X=1;Jg.X=1;cH.X=1;Ii.X=1;lH.X=1;tH.X=1;vH.X=1;xH.X=1;Yi.X=1;AH.X=1;CH.X=1;FH.X=1;GH.X=1;HH.X=1;gu.X=1;hu.X=1;LH.X=1;MH.X=1;NH.X=1;OH.X=1;dp.X=1;Wt.X=1;Xt.X=1;Yt.X=1;vk.X=1;jp.X=1;Au.X=1;Wd.X=1;QH.X=1;vl.X=1;Bu.X=1;xl.X=1;UH.X=1;YH.X=1;Du.X=1;XH.X=1;WH.X=1;Eu.X=1;$H.X=1;cI.X=1;iI.X=1;np.X=1;Pu.X=1;Qu.X=1;uI.X=1;VI.X=1;Tu.X=1;Vu.X=1;av.X=1;ev.X=1;kv.X=1;mv.X=1;An.X=1;OD.X=1;Bp.X=1;bK.X=1;YJ.X=1;fK.X=1;kK.X=1;mK.X=1;nK.X=1;rK.X=1;lK.X=1;vv.X=1;tK.X=1;sK.X=1;aK.X=1;eh.X=1;nv.X=1;Re.X=1;Bn.X=1;Ke.X=1;ut.X=1;MK.X=1;OK.X=1;PK.X=1;SK.X=1;Dv.X=1;Gp.X=1;dL.X=1;eL.X=1;gL.X=1;hL.X=1;iL.X=1;Gt.X=1;Mv.X=1;jL.X=1;Ov.X=1;mL.X=1;Hp.X=1;zL.X=1;AL.X=1;Ht.X=1;DL.X=1;CL.X=1;ng.X=1;Pl.X=1;Pk.X=1;Wv.X=1;uh.X=1;Np.X=1;Op.X=1;Sf.X=1;OL.X=1;Rl.X=1;fw.X=1;hw.X=1;iw.X=1;mw.X=1;Vl.X=1;aM.X=1;cw.X=1;pw.X=1;cM.X=1;eM.X=1;hM.X=1;uw.X=1;uM.X=1;Zv.X=1;Pp.X=1;$v.X=1;zr.X=1;Dw.X=1;Ew.X=1;UM.X=1;VM.X=1;WM.X=1;cq.X=1;ZM.X=1;cN.X=1;dN.X=1;wj.X=1;Lw.X=1;hN.X=1;hm.X=1;nN.X=1;vN.X=1;wN.X=1;Jw.X=1;gN.X=1;AN.X=1;Uw.X=1;Pw.X=1;uN.X=1;DN.X=1;jm.X=1;Ww.X=1;ON.X=1;NN.X=1;SN.X=1;Zw.X=1;Yw.X=1;jq.X=1;Cj.X=1;$w.X=1;YN.X=1;ZN.X=1;lq.X=1;bx.X=1;jO.X=1;gO.X=1;hO.X=1;dx.X=1;nO.X=1;Sg.X=1;bi.X=1;ex.X=1;hx.X=1;ix.X=1;qO.X=1;tO.X=1;fx.X=1;gx.X=1;kO.X=1;lO.X=1;cx.X=1;mO.X=1;mm.X=1;ux.X=1;uO.X=1;vO.X=1;xx.X=1;pq.X=1;gm.X=1;OO.X=1;RO.X=1;SO.X=1;zx.X=1;WO.X=1;XO.X=1;Bx.X=1;lx.X=1;tq.X=1;aP.X=1;Gx.X=1;qq.X=1;Nx.X=1;Dx.X=1;Ix.X=1;Sw.X=1;uq.X=1;nP.X=1;Rw.X=1;Px.X=1;vq.X=1;vm.X=1;wm.X=1;oP.X=1;sq.X=1;wq.X=1;Jx.X=1;Kx.X=1;hP.X=1;yP.X=1;zP.X=1;gP.X=1;fP.X=1;Ux.X=1;Tx.X=1;Xx.X=1;JP.X=1;MP.X=1;NP.X=1;YP.X=1;CP.X=1;Yx.X=1;SP.X=1;UP.X=1;hQ.X=1;iQ.X=1;cy.X=1;dy.X=1;DP.X=1;EP.X=1;FP.X=1;ay.X=1;Zx.X=1;$x.X=1;nQ.X=1;oQ.X=1;pQ.X=1;qQ.X=1;yQ.X=1;zQ.X=1;tQ.X=1;mx.X=1;iy.X=1;CQ.X=1;FQ.X=1;GQ.X=1;HQ.X=1;zm.X=1;PQ.X=1;SQ.X=1;XQ.X=1;YQ.X=1;aR.X=1;dR.X=1;fR.X=1;ry.X=1;ZQ.X=1;mR.X=1;Cq.X=1;HR.X=1;TR.X=1;eS.X=1;gS.X=1;mS.X=1;Fm.X=1;NS.X=1;VS.X=1;XS.X=1;Mj.X=1;Of.X=1;eT.X=1;MT.X=1;jU.X=1;mU.X=1;pU.X=1;Gb.X=1;uU.X=1;wU.X=1;vU.X=1;AU.X=1;G.X=1;BU.X=1;yU.X=1;zU.X=1;var hk=xc;K.Na=(function(a){function b(){for(var a=0;3>a;a++){f.push(0)}}var e=a.length+1,f=[d(Nd("/bin/this.program"),"i8",c)];b();for(var h=0;h>2],b[1]=a[d+4>>2],f[0]);d=(c+340|0)>>2;e=(b[0]=a[d],b[1]=a[d+1],f[0])-e;f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,PC,0,(function(b,c){var d=$M(a[b>>2]),e=$M(a[c>>2]);return((e|0)<(d|0)&1)-((e|0)>(d|0)&1)|0}),0,(function(b){var c;y(b,qba|0);c=(b+12|0)>>2;y(b,a[a[a[c]>>2]>>2]);y(b,lr|0);y(b,a[a[a[c]>>2]+4>>2]);y(b,kr|0);y(b,a[a[a[c]>>2]+8>>2]);y(b,oA|0)}),0,(function(b,c){return a[b>>2]-a[c>>2]|0}),0,(function(a,b,c,d){y(a,tz|0);0!=(b|0)&&0!=m[b]<<24>>24&&(y(a,ysa|0),y(a,Bo(b)),y(a,ue|0));0!=(c|0)&&0!=m[c]<<24>>24&&(y(a,nsa|0),y(a,nc(c)),y(a,ue|0));0!=(d|0)&&0!=m[d]<<24>>24&&(y(a,vy|0),y(a,nc(d)),y(a,ue|0));y(a,ar|0)}),0,(function(b,c,d){var e;0==(c|0)&&(a[Pm>>2]=d);for(var c=c-1|0,d=0,f=b;;){if((d|0)>=(c|0)){var h=b,j=f;break}var k=a[Pm>>2],n=m[k];if(0==n<<24>>24){e=339;break}a[Pm>>2]=k+1|0;k=f+1|0;m[f]=n;if(10==n<<24>>24){h=b;j=k;break}else{d=d+1|0,f=k}}339==e&&(0==(d|0)?(h=a[Pm>>2]=0,j=f):(m[f]=10,h=b,j=f+1|0));m[j]=0;return h}),0,(function(a){cc(a|0)}),0,(function(a){y(a,Xj|0)}),0,fR,0,MH,0,(function(b){var c,d=h;c=(b+12|0)>>2;0!=(a[a[c]+20>>2]|0)&&(y(b,vva|0),np(b,0,a[a[c]+20>>2]+4|0));y(b,hva|0);y(b,Vua|0);N(b,Iua|0,(j=h,h+=4,a[j>>2]=a[a[c]+28>>2],j));h=d}),0,CH,0,(function(c){var d;m[c+528|0]=0;d=(c+348|0)>>2;var e=1.1*(b[0]=a[d],b[1]=a[d+1],f[0]);f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,NC,0,jU,0,(function(){return Vca|0}),0,(function(b){var c=a[b+16>>2];y(b,Wj|0);y(b,nc(a[c+152>>2]));y(b,Wpa|0);y(b,kn|0);y(b,nc(a[a[c+8>>2]+12>>2]));y(b,hn|0)}),0,HR,0,(function(c,d,e,g,j,m,l,k){m=h;h+=32;l=.5*$c(g*g+j*j);d=.5*g+d;g=m|0;f[0]=d-l;a[g>>2]=b[0];a[g+4>>2]=b[1];e=.5*j+e;j=m+8|0;f[0]=e-l;a[j>>2]=b[0];a[j+4>>2]=b[1];j=m+16|0;f[0]=d+l;a[j>>2]=b[0];a[j+4>>2]=b[1];j=m+24|0;f[0]=e+l;a[j>>2]=b[0];a[j+4>>2]=b[1];Qk(c,m|0,(k>>>3&1^1)&255);h=m}),0,(function(a){y(a,gr|0)}),0,(function(c,d,e){var g=h;h+=16;c=a[c>>2];Ui(g,d,e,90*(a[a[c+20>>2]+152>>2]&3)|0);var d=g|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),e=g+8|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),j=c+96|0,j=.5*(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);if(e<-j|e>j){return h=g,0}e=c+104|0;if(d<-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){return h=g,0}c=c+112|0;c=d<=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0]);h=g;return c&1}),0,vH,0,tH,0,(function(b,c){var d=a[c+8>>2];0!=(d|0)&&G(d);d=a[c+24>>2];0!=(d|0)&&Ho(d);d=c;G(d)}),0,nC,0,(function(c){var d=a[a[c+16>>2]+8>>2],c=d|0,e=a[a[a[Kb>>2]>>2]+8>>2],g=a[U+20>>2];g>>>0>2]>>>0||(na(U+16|0,1),g=a[U+20>>2]);m[g]=0;g=a[U+16>>2];a[U+20>>2]=g;qc(c,e,g);0!=(a[d+48>>2]|0)&&(d=a[a[a[Kb>>2]+4>>2]+8>>2],e=a[U+84>>2],e>>>0>2]>>>0||(na(U+80|0,1),e=a[U+84>>2]),m[e]=0,e=a[U+80>>2],a[U+84>>2]=e,qc(c,d,e));f[0]=1;a[kc+8>>2]=b[0];a[kc+12>>2]=b[1];f[0]=1;a[kc+40>>2]=b[0];a[kc+44>>2]=b[1]}),0,(function(b){var c=a[a[b>>2]+128>>2],d=b+572|0;0==(a[d>>2]|0)&&(a[d>>2]=c|0,d=c+148|0,m[d]|=2,vv(b,c));Rr(b,c);m[b+532|0]=1}),0,mS,0,(function(c,d,e,g,m,D){g=h;y(c,cr|0);var m=a[Ug>>2],l=a[$d>>2];N(c,eA|0,(j=h,h+=8,a[j>>2]=m,a[j+4>>2]=l,j));Oy(c,D);y(c,br|0);Mq(c);y(c,bA|0);D=h;if(0<(e|0)){m=0;for(l=$z|0;;){var k=(m<<4)+d|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),n=(m<<4)+d+8|0,n=(a[$d>>2]>>>0)-(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]);N(c,X7|0,(j=h,h+=20,a[j>>2]=l,f[0]=k,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=n,a[j+12>>2]=b[0],a[j+16>>2]=b[1],j));l=0==(m|0)?ly|0:Y|0;m=m+1|0;if((m|0)==(e|0)){break}}}y(c,ue|0);h=D;y(c,B8|0);h=g}),0,(function(b,c){var d=h,e=a[a[c+16>>2]+12>>2],f=a[a[c+12>>2]+12>>2];la(3,Zea|0,(j=h,h+=12,a[j>>2]=c,a[j+4>>2]=e,a[j+8>>2]=f,j));h=d;return 0}),0,(function(c,d,e){var g=h;y(c,ECa|0);Fm(c,0);y(c,VA|0);if(0<(e|0)){for(var m=0;;){var D=(m<<4)+d|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),l=(m<<4)+d+8|0,l=-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,UA|0,(j=h,h+=16,f[0]=D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));m=m+1|0;if((m|0)==(e|0)){break}}}y(c,Dm|0);h=g}),0,(function(a,b){y(a,Yha|0);y(a,b);y(a,wd|0)}),0,(function(b){var c;y(b,Qma|0);c=V(a[a[b>>2]+128>>2]|0,Ema|0);0!=(c|0)&&0!=m[c]<<24>>24&&(y(b,tma|0),y(b,c),y(b,jma|0));y(b,Yla|0);y(b,Nla|0);y(b,Bla|0);c=(b+12|0)>>2;y(b,nc(a[a[a[c]>>2]>>2]));y(b,lr|0);y(b,nc(a[a[a[c]>>2]+4>>2]));y(b,kr|0);y(b,nc(a[a[a[c]>>2]+8>>2]));y(b,oA|0);y(b,dr|0)}),0,(function(b,c,d){var e,f=h;e=d>>2;d=h;h+=32;a[d>>2]=a[e];a[d+4>>2]=a[e+1];a[d+8>>2]=a[e+2];a[d+12>>2]=a[e+3];a[d+16>>2]=a[e+4];a[d+20>>2]=a[e+5];a[d+24>>2]=a[e+6];a[d+28>>2]=a[e+7];0==(b|0)&&sa(pd|0,114,$j|0,Nj|0);d=b+16|0;0==(a[d>>2]|0)&&sa(pd|0,116,$j|0,Nr|0);0==(c|0)&&sa(pd|0,117,$j|0,Oh|0);c=c+8|0;0==(a[c>>2]|0)&&sa(pd|0,118,$j|0,Ph|0);0==(a[a[d>>2]+8>>2]|0)&&sa(pd|0,121,$j|0,$t|0);N(b,Z3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,K3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,u3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,e3|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,R2|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,C2|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,l2|0,(j=h,h+=4,a[j>>2]=a[c>>2],j));N(b,Y1|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(b,Sp|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));h=f}),0,(function(){a[tg>>2]=-1}),0,(function(b){b=a[b+28>>2];0!=(b|0)&&G(b)}),0,(function(a){y(a,NZ|0);y(a,$m|0);y(a,kZ|0);y(a,WY|0);y(a,$m|0);y(a,IY|0);y(a,uY|0);y(a,fY|0);y(a,$m|0);y(a,RX|0);y(a,DX|0);y(a,$m|0);y(a,oX|0)}),0,QC,0,(function(){a[rf>>2]=0}),0,(function(){return 0}),0,(function(b){var c=h;y(b,Aqa|0);var d=b+64|0,e=b+12|0;2!=(a[d>>2]|0)&&N(b,nqa|0,(j=h,h+=4,a[j>>2]=a[a[e>>2]+28>>2],j));if(0==(a[a[e>>2]+20>>2]|0)&&2!=(a[d>>2]|0)){var d=a[b+468>>2],e=a[b+472>>2],f=a[b+476>>2];N(b,wy|0,(j=h,h+=16,a[j>>2]=a[b+464>>2],a[j+4>>2]=d,a[j+8>>2]=e,a[j+12>>2]=f,j))}y(b,Zpa|0);y(b,Kpa|0);h=c}),0,wM,0,(function(c){var d;m[c+528|0]=0;d=(c+348|0)>>2;var e=(b[0]=a[d],b[1]=a[d+1],f[0])/1.1;f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,eS,0,(function(b){G(a[b+52>>2])}),0,(function(c,d,e){var g,m=h;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];g=c+228|0;var D=c+212|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])&-1;var d=a[d+8>>2],D=e+16|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),l=e|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=e+24|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=e+8|0,e=k-(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);N(c,k8|0,(j=h,h+=36,a[j>>2]=d,f[0]=D-l,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=e,a[j+12>>2]=b[0],a[j+16>>2]=b[1],f[0]=l,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=(g>>>0)-k,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));y(c,V7|0);h=m}),0,(function(a,b,c,d){return jg(d,a,c)}),0,gS,0,(function(b){var c;y(b,sGa|0);y(b,dGa|0);c=(b+12|0)>>2;y(b,Of(a[a[a[c]>>2]>>2]));y(b,lr|0);y(b,Of(a[a[a[c]>>2]+4>>2]));y(b,kr|0);y(b,Of(a[a[a[c]>>2]+8>>2]));y(b,pFa|0)}),0,(function(b,c){return ka(a[b>>2],a[c>>2])}),0,(function(c){var d;m[c+528|0]=0;var e=c+348|0;d=(c+340|0)>>2;e=10/(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+(b[0]=a[d],b[1]=a[d+1],f[0]);f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,(function(c,d,e){var g,m=h;h+=1024;g=e>>2;e=h;h+=32;a[e>>2]=a[g];a[e+4>>2]=a[g+1];a[e+8>>2]=a[g+2];a[e+12>>2]=a[g+3];a[e+16>>2]=a[g+4];a[e+20>>2]=a[g+5];a[e+24>>2]=a[g+6];a[e+28>>2]=a[g+7];c=c+16|0;g=a[Bd+(a[a[c>>2]+12>>2]<<2)>>2];db(g,cIa|0);var y=e|0,l=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]),y=e+8|0,k=(b[0]=a[y>>2],b[1]=a[y+4>>2],f[0]);Ap(g,l,k);var y=m|0,n=e+16|0,l=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0])-l,e=e+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])-k;Ma(y,Hl|0,(j=h,h+=8,a[j>>2]=(0>l?l-.5:l+.5)&-1,a[j+4>>2]=(0>e?e-.5:e+.5)&-1,j));db(g,y);fi(a[a[c>>2]+12>>2],Y|0,a[d+8>>2]);h=m}),0,eT,0,(function(b){var c=a[b+16>>2];y(b,Wj|0);y(b,nc(a[c+152>>2]));y(b,lqa|0);y(b,kn|0);y(b,nc(a[a[c+8>>2]+12>>2]));y(b,hn|0)}),0,(function(b,c){return a[a[b>>2]+20>>2]-a[a[c>>2]+20>>2]|0}),0,(function(c,d,e){var g=h;y(c,f5|0);var m=d+16|0,D=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),m=d|0,m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),D=D-m,l=d+24|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),d=d+8|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=l-d,d=(a[$d>>2]>>>0)-(d+l);N(c,Ky|0,(j=h,h+=16,f[0]=m-D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,Ly|0,(j=h,h+=16,f[0]=2*D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=2*l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));Oy(c,e);y(c,br|0);Mq(c);y(c,n4|0);h=g}),0,(function(c,d,e){var g=h;y(c,cr|0);var m=a[Ug>>2],D=a[$d>>2];N(c,vea|0,(j=h,h+=8,a[j>>2]=m,a[j+4>>2]=D,j));y(c,Yda|0);if(0<(e|0)){for(var m=e-1|0,D=d|0,l=d+8|0,k=0;;){if(0==(k|0)){y(c,Fda|0);var n=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),z=(a[$d>>2]>>>0)-(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,yA|0,(j=h,h+=16,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,Rca|0)}else{n=(k<<4)+d|0,n=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),z=(k<<4)+d+8|0,z=(a[$d>>2]>>>0)-(b[0]=a[z>>2],b[1]=a[z+4>>2],f[0]),N(c,yA|0,(j=h,h+=16,f[0]=n,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=z,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j))}(k|0)==(m|0)&&y(c,uca|0);k=k+1|0;if((k|0)==(e|0)){break}}}y(c,cca|0);Mq(c);y(c,tA|0);h=g}),0,kK,0,(function(b,c){return ka(a[b>>2],a[c>>2])}),0,(function(c,d,e,g){var m=h;y(c,Mxa|0);Fm(c,g);y(c,VA|0);g=0<(e|0);a:do{if(g){for(var D=0;;){var l=(D<<4)+d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=(D<<4)+d+8|0,k=-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);N(c,UA|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));D=D+1|0;if((D|0)==(e|0)){break a}}}}while(0);e=d|0;e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);d=d+8|0;d=-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);N(c,yxa|0,(j=h,h+=16,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,Dm|0);h=m}),0,(function(b,c,d){var b=a[c>>2],e=a[d>>2];b>>>0>>0?d=-1:b>>>0>e>>>0?d=1:(c=a[c+4>>2],d=a[d+4>>2],d=c>>>0>>0?-1:c>>>0>d>>>0&1);return d}),0,(function(c,d,e){var g,j,m=h;h+=32;var l=m|0;j=m>>2;g=d>>2;a[j]=a[g];a[j+1]=a[g+1];a[j+2]=a[g+2];a[j+3]=a[g+3];g=d+16|0;j=d|0;g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]);j=m+16|0;f[0]=g;a[j>>2]=b[0];a[j+4>>2]=b[1];g=d+24|0;d=d+8|0;d=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])-(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);g=m+24|0;f[0]=d;a[g>>2]=b[0];a[g+4>>2]=b[1];d=(c+16|0)>>2;if(0!=(e|0)&&(e=a[d],g=e+76|0,.5<(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]))){Nf(c,e+52|0),kf(c,l,2),y(c,pya|0)}e=a[d]+40|0;if(.5<(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])){Em(c),Nf(c,a[d]+16|0),kf(c,l,2),y(c,aya|0)}h=m}),0,(function(c,d,e){var g=c+16|0,h=a[g>>2]+40|0;if(.5<(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0])){Em(c);Nf(c,a[g>>2]+16|0);y(c,Jj|0);g=d|0;h=d+8|0;Hd(c,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]));y(c,Kj|0);g=1<(e|0);a:do{if(g){for(h=1;;){var j=(h<<4)+d|0,l=(h<<4)+d+8|0;Hd(c,(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]));y(c,Hq|0);h=h+1|0;if((h|0)==(e|0)){break a}}}}while(0);y(c,zy|0)}}),0,(function(b,c,d){var e,f=a[b+16>>2];e=(f+88|0)>>2;0!=(a[e]|0)&&(Gm(b),y(b,jA|0),kf(b,c,d),y(b,Lj|0),gi(b,f+16|0),c=a[e],1==(c|0)?(y(b,Hm|0),e=a[e]):e=c,2==(e|0)&&y(b,Im|0),Mj(b),y(b,wd|0))}),0,(function(c){var d=c>>2,e=h,g=a[d+4];y(c,Goa|0);g=g+8|0;0!=m[a[a[g>>2]+12>>2]]<<24>>24&&(y(c,vA|0),y(c,nc(a[a[g>>2]+12>>2])));N(c,hoa|0,(j=h,h+=4,a[j>>2]=a[d+41]*a[d+40]|0,j));g=a[d+111];N(c,Vna|0,(j=h,h+=8,a[j>>2]=a[d+110],a[j+4>>2]=g,j));var d=c+376|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),g=c+384|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q=c+392|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),D=c+400|0,D=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]);N(c,Hna|0,(j=h,h+=32,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=g,a[j+8>>2]=b[0],a[j+12>>2]=b[1],f[0]=q,a[j+16>>2]=b[0],a[j+20>>2]=b[1],f[0]=D,a[j+24>>2]=b[0],a[j+28>>2]=b[1],j));y(c,sna|0);y(c,dna|0);y(c,ar|0);h=e}),0,(function(c){var d=h;h+=36;JF(c,8);var e;var g=d>>2,q=h;h+=12;e=q>>2;var y=q+8;a[y>>2]=5;var l=V(c|0,tla|0);0!=(l|0)&&1<=(Cd(l,kda|0,(j=h,h+=8,a[j>>2]=q,a[j+4>>2]=y,j))|0)?(l=(b[0]=a[e],b[1]=a[e+1],f[0]),1>l?(f[0]=1,a[e]=b[0],a[e+1]=b[1],e=1):20>2]=b[0],a[l+4>>2]=b[1],a[g+6]=-1,a[g+7]=a[y>>2],a[g+8]=0,0!=m[ld]<<24>>24&&Va(a[oa>>2],D$|0,(j=h,h+=8,f[0]=e,a[j>>2]=b[0],a[j+4>>2]=b[1],j)),g=d):(a[g+6]=0,g=a[g+8]=0);h=q;e=g;XN(c);q=d+32|0;g=d+28|0;for(y=d+24|0;!(kx(c,e),0!=(a[q>>2]|0)&&(la(0,bka|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),e=a[y>>2]=0),lx(c,0!=(e|0)&1),zO(c,e),l=a[g>>2]-1|0,a[g>>2]=l,0==(a[y>>2]|0)|0==(l|0));){}mx(c);bx(c,1);if(0!=jo(V(c|0,HJa|0))<<24>>24&&(q=ra(c),0!=(q|0))){for(;;){g=Ib(c,q);y=0==(g|0);a:do{if(!y){for(e=g;;){if(DN(c,e),e=yb(c,e),0==(e|0)){break a}}}}while(0);q=ba(c,q);if(0==(q|0)){break}}}Bt(c,1);h=d}),0,(function(a,b,c){a=0==(c|0);0==(b|0)?b=a?0:Gb(c):a?(G(b),b=0):b=mc(b,c);return b}),0,mU,0,OC,0,(function(c){var d=h,e=a[c+16>>2];y(c,Wj|0);y(c,nc(a[e+152>>2]));y(c,Hpa|0);var g=c+480|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),q=c+488|0,q=(b[0]=a[q>>2],b[1]=a[q+4>>2],f[0]),D=-a[c+356>>2]|0,l=c+496|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=c+504|0,k=-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);N(c,tpa|0,(j=h,h+=36,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=q,a[j+8>>2]=b[0],a[j+12>>2]=b[1],a[j+16>>2]=D,f[0]=l,a[j+20>>2]=b[0],a[j+24>>2]=b[1],f[0]=k,a[j+28>>2]=b[0],a[j+32>>2]=b[1],j));e=e+8|0;0!=m[a[a[e>>2]+12>>2]]<<24>>24&&(y(c,kn|0),y(c,nc(a[a[e>>2]+12>>2])),y(c,hn|0));h=d}),0,(function(b,c,d){zm(b);Am(b);Bm(a[a[b+16>>2]+12>>2],76,c,d)}),0,(function(a){y(a,Xj|0)}),0,(function(b){var c;for(c=b>>2;!(b=a[c+32],0==(b|0));){c=b>>2}var b=a[c+3],d=a[b+236>>2];c=a[c+4];var e=a[c+236>>2];return(d|0)>(e|0)?0:(d|0)<(e|0)?1:b=(a[b+240>>2]|0)<(a[c+240>>2]|0)&1}),0,bk(),0,(function(a){y(a,Mm|0)}),0,TR,0,(function(b,c){var d,e=fa(24);d=e>>2;a[d+2]=a[c+8>>2];a[d+3]=a[c+12>>2];a[d+4]=a[c+16>>2];a[d+5]=a[c+20>>2];return e}),0,(function(c,d,e,g){var q=h,D=a[c+16>>2],l=D+40|0;if(.5<=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])){Nf(c,D+16|0),D=g+24|0,gj(c,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])),N(c,Nxa|0,(j=h,h+=4,a[j>>2]=a[g+20>>2],j)),D=Qu(a[g>>2],a[Gq>>2]),l=m[g+72|0]<<24>>24,114==(l|0)?(l=g+56|0,d-=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])):108==(l|0)?l=g+56|0:(l=g+56|0,d-=.5*(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),g=g+48|0,Hd(c,d,(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0])+e),y(c,zxa|0),gj(c,(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])),N(c,lxa|0,(j=h,h+=4,a[j>>2]=D,j))}h=q}),0,(function(a){y(a,gr|0)}),0,(function(b){return 0!=(a[a[b>>2]+116>>2]|0)||0!=(a[b+40>>2]|0)?0:b=nC(a[b+36>>2])}),0,(function(c,d,e,g){var m=h;y(c,cr|0);var D=a[Ug>>2],l=a[$d>>2];N(c,eA|0,(j=h,h+=8,a[j>>2]=D,a[j+4>>2]=l,j));Oy(c,g);y(c,br|0);Mq(c);y(c,bA|0);if(0<(e|0)){g=e-1|0;for(D=0;;){var l=(D<<4)+d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=(D<<4)+d+8|0,k=(a[$d>>2]>>>0)-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);0==(D|0)?(y(c,$z|0),N(c,Qz|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),y(c,M5|0)):N(c,Qz|0,(j=h,h+=16,f[0]=l,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=k,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));(D|0)==(g|0)&&y(c,w5|0);D=D+1|0;if((D|0)==(e|0)){break}}}y(c,tA|0);h=m}),0,(function(c,d,e){var g,h=a[c+16>>2];g=(h+88|0)>>2;0!=(a[g]|0)&&(Gm(c),y(c,jA|0),kf(c,d,e),y(c,Lj|0),gi(c,h+16|0),y(c,Jq|0),d=h+96|0,gj(c,(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])),d=a[g],1==(d|0)?(y(c,Hm|0),g=a[g]):g=d,2==(g|0)&&y(c,Im|0),y(c,Sna|0),Mj(c),y(c,wd|0))}),0,(function(b,c){var d=h;if(0!=(c|0)){var e=a[b+16>>2]+212|0;0!=(a[e>>2]|0)&&(y(b,$wa|0),kf(b,a[e>>2],2),y(b,Jwa|0),e=Qu(c,a[Gq>>2]),N(b,vwa|0,(j=h,h+=4,a[j>>2]=e,j)))}h=d}),0,YQ,0,(function(){return EEa|0}),0,Lc,0,(function(b){b=a[b+28>>2];0!=(b|0)&&(G(a[b+40>>2]),G(b))}),0,(function(b){var c=a[a[b+16>>2]+8>>2];UL(104,170);var d=a[b+64>>2];2==(d|0)?av(b,c,b,0):3==(d|0)?av(b,c,b,1):0==(d|0)||1==(d|0)?0==(a[b+148>>2]&134217728|0)&&iw(c,b):4==(d|0)&&(PQ(c),0==(a[b+148>>2]&134217728|0)&&iw(c,b));UL(0,0)}),0,(function(a){y(a,vz|0)}),0,pU,0,(function(){a[rf>>2]=2}),0,(function(c){var d;d=c+528|0;var e=0==m[d]<<24>>24;m[d]=e&1;if(!e){return 0}d=a[c+440>>2];e=a[c+444>>2];d=(d>>>0)/(d|0);var e=(e>>>0)/(e|0),g=c+348|0;f[0]=d>2]=b[0];a[g+4>>2]=b[1];d=(c+332|0)>>2;a[d]=0;a[d+1]=0;a[d+2]=0;a[d+3]=0;m[c+529|0]=1;return 0}),0,ax,0,mR,0,(function(b){var c,d=h;y(b,vpa|0);2==(a[b+64>>2]|0)?y(b,kpa|0):y(b,wd|0);c=a[a[b+12>>2]>>2]>>2;var e=a[c+1],f=a[c+2];N(b,Xoa|0,(j=h,h+=12,a[j>>2]=a[c],a[j+4>>2]=e,a[j+8>>2]=f,j));h=d}),0,Mp,0,(function(b,c){var d=h;N(b,JOa|0,(j=h,h+=4,a[j>>2]=c,j));h=d}),0,(function(b){var c=h,d=a[b+16>>2];y(b,wca|0);d=d+8|0;0!=m[a[a[d>>2]+12>>2]]<<24>>24&&(y(b,vA|0),y(b,a[a[d>>2]+12>>2]));N(b,Kba|0,(j=h,h+=4,a[j>>2]=a[b+164>>2]*a[b+160>>2]|0,j));h=c}),0,(function(b,c){Kc(a[c+8>>2]);G(c)}),0,(function(c,d,e,g){var m,y=h;m=e>>2;e=h;h+=32;a[e>>2]=a[m];a[e+4>>2]=a[m+1];a[e+8>>2]=a[m+2];a[e+12>>2]=a[m+3];a[e+16>>2]=a[m+4];a[e+20>>2]=a[m+5];a[e+24>>2]=a[m+6];a[e+28>>2]=a[m+7];0==(c|0)&&sa(pd|0,205,mr|0,Nj|0);0==(d|0)&&sa(pd|0,206,mr|0,Oh|0);m=(d+8|0)>>2;0==(a[m]|0)&&sa(pd|0,207,mr|0,Ph|0);if(0!=(a[d+52>>2]|0)){var d=e|0,d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]),l=e+8|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=e+16|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]),e=e+24|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);0!=g<<24>>24&&(N(c,an|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j)),N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j)),g=a[m],N(c,$5|0,(j=h,h+=8,a[j>>2]=4,a[j+4>>2]=g,j)));N(c,an|0,(j=h,h+=1,h=h+3>>2<<2,a[j>>2]=0,j));N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=e,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=k,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));N(c,sf|0,(j=h,h+=16,f[0]=d,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));g=a[m];N(c,K5|0,(j=h,h+=8,a[j>>2]=4,a[j+4>>2]=g,j))}h=y}),0,xi,0,(function(){a[XB>>2]=0==(a[XB>>2]|0)&1}),0,(function(c,d,e,g,m){var D,l=h;D=(c+16|0)>>2;if(0!=(m|0)){var m=a[D],k=m+76|0;if(.5<(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])){Nf(c,m+52|0),y(c,an|0),kf(c,e,g),y(c,gc|0),m=e|0,k=e+8|0,Hd(c,(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]),(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])),N(c,sDa|0,(j=h,h+=8,a[j>>2]=g,a[j+4>>2]=d,j))}}m=a[D]+40|0;if(.5<(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0])){Em(c),Nf(c,a[D]+16|0),y(c,an|0),kf(c,e,g),y(c,gc|0),D=e|0,e=e+8|0,Hd(c,(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0]),(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])),N(c,fDa|0,(j=h,h+=8,a[j>>2]=g,a[j+4>>2]=d,j))}h=l}),0,(function(b){var c=h;N(b,Jva|0,(j=h,h+=4,a[j>>2]=a[a[a[b+16>>2]+8>>2]+12>>2],j));y(b,gr|0);h=c}),0,(function(a){y(a,Voa|0)}),0,(function(a){y(a,vha|0)}),0,(function(b){ju(a[b+28>>2])}),0,(function(b,c,d,e){var f=h;y(b,tz|0);0!=(c|0)&&0!=m[c]<<24>>24&&(c=Of(c),N(b,U_|0,(j=h,h+=4,a[j>>2]=c,j)));0!=(d|0)&&0!=m[d]<<24>>24&&(d=Of(d),N(b,E_|0,(j=h,h+=4,a[j>>2]=d,j)));0!=(e|0)&&0!=m[e]<<24>>24&&(e=Of(e),N(b,q_|0,(j=h,h+=4,a[j>>2]=e,j)));y(b,ar|0);h=f}),0,(function(c,d,e,g,m,D){y(c,Cya|0);Fm(c,D);y(c,oya|0);g=h;if(0<(e|0)){m=0;for(D=77;;){var l=(m<<4)+d|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]),k=(m<<4)+d+8|0,k=-(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0]);N(c,$xa|0,(j=h,h+=20,a[j>>2]=D,f[0]=l,a[j+4>>2]=b[0],a[j+8>>2]=b[1],f[0]=k,a[j+12>>2]=b[0],a[j+16>>2]=b[1],j));D=0==(m|0)?67:32;m=m+1|0;if((m|0)==(e|0)){break}}}h=g;y(c,Dm|0)}),0,(function(b,c){var d=a[Ul>>2];J[a[d>>2]](d,c,1);return 0}),0,(function(a,b){y(a,Wj|0);y(a,nc(b));y(a,ipa|0)}),0,(function(b,c,d){c=h;b=d>>2;d=h;h+=32;a[d>>2]=a[b];a[d+4>>2]=a[b+1];a[d+8>>2]=a[b+2];a[d+12>>2]=a[b+3];a[d+16>>2]=a[b+4];a[d+20>>2]=a[b+5];a[d+24>>2]=a[b+6];a[d+28>>2]=a[b+7];h=c}),0,AH,0,NS,0,MC,0,(function(b,c,d){b=a[b>>2];var e,f=a[a[b+128>>2]+32>>2];wC(b,c);c=a[b+124>>2];e=c>>2;a[e+14]=Bn(c,a[e+13]);if(0==(a[f+44>>2]|0)&&0==(a[e+37]&67108864|0)){Lc(Ar|0,20,1,a[oa>>2])}else{e=b+120|0;var h=a[e>>2];0==(h|0)?(h=fa(624),a[e>>2]=h,a[b+124>>2]=h,e=a[Lh>>2]=h):(e=a[Lh>>2],0==(e|0)?e=a[Lh>>2]=h:(e=a[e+4>>2],0==(e|0)&&(e=fa(624),a[a[Lh>>2]+4>>2]=e),a[Lh>>2]=e));a[e+32>>2]=d;a[e>>2]=b;Br(b,f);Cr(c);iK(c);Dr(b)}}),0,(function(b,c,d){return a[c>>2]-a[d>>2]|0}),0,(function(b,c){G(a[c+52>>2])}),0,zC,0,(function(b,c){var d=a[c+20>>2];0!=(d|0)&&ri(d);if(0!=(a[c+52>>2]|0)&&(d=a[c+60>>2],0!=(d|0))){J[d](c)}G(c)}),0,(function(a,b){G(b)}),0,(function(b,c){var d=a[c+8>>2],e=d+80|0,f=m[d+84|0];1==f<<24>>24?(e=a[e>>2],Kc(a[e+76>>2]),Io(e|0),G(e)):2==f<<24>>24&&rt(a[e>>2]);Io(d|0);G(d);G(c)}),0,(function(b,c,d,e){zm(b);Am(b);0==(e|0)?Bm(a[a[b+16>>2]+12>>2],112,c,d):(jy(b),Bm(a[a[b+16>>2]+12>>2],80,c,d))}),0,(function(c,d,e){var g,m=h;y(c,kxa|0);Fm(c,e);g=(d|0)>>2;var D=(b[0]=a[g],b[1]=a[g+1],f[0]),e=(d+8|0)>>2,l=-(b[0]=a[e],b[1]=a[e+1],f[0]);N(c,Wwa|0,(j=h,h+=16,f[0]=D,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=l,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));D=d+16|0;g=(b[0]=a[D>>2],b[1]=a[D+4>>2],f[0])-(b[0]=a[g],b[1]=a[g+1],f[0]);d=d+24|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])-(b[0]=a[e],b[1]=a[e+1],f[0]);N(c,Iwa|0,(j=h,h+=16,f[0]=g,a[j>>2]=b[0],a[j+4>>2]=b[1],f[0]=d,a[j+8>>2]=b[0],a[j+12>>2]=b[1],j));y(c,Py|0);h=m}),0,(function(){return 1}),0,HQ,0,NH,0,(function(b){7==(a[b>>2]|0)&&ZF(a[b+76>>2],1)}),0,(function(b,c){var d=c+12|0,e=D[d>>1];if(0!=e<<16>>16){var f=c+8|0,e=0>16;a:do{if(e){for(var h=a[f>>2],j=0;;){var k=a[h>>2];0!=(k|0)&&G(k);k=a[h+16>>2];0!=(k|0)&&Ho(k);j=j+1|0;if((j|0)<(D[d>>1]<<16>>16|0)){h=h+76|0}else{break a}}}}while(0);G(a[f>>2])}d=c;G(d)}),0,lH,0,(function(a){y(a,Mm|0)}),0,dR,0,nm,0,FQ,0,(function(a){y(a,Xj|0)}),0,(function(a){y(a,Xj|0)}),0,(function(b){var c=h;h+=8;var d=c+4,e=a[a[b+16>>2]+8>>2],b=a[b+64>>2];4==(b|0)?(ev(e,d,c),SQ(e,a[d>>2],a[c>>2])):1==(b|0)?0!=(D[e+164>>1]&1)<<16>>16&&oF(e):0==(b|0)&&(d=h,h+=8,ev(e,d+4,d),h=d);h=c}),0,Th,0,OH,0,(function(b,c,d){var b=a[c+16>>2],b=0==(b|0)?-1:a[b+16>>2],e=a[c+12>>2],e=0==(e|0)?-1:a[e+16>>2],f=a[d+16>>2],f=0==(f|0)?-1:a[f+16>>2],h=a[d+12>>2],h=0==(h|0)?-1:a[h+16>>2];return(e|0)!=(h|0)?e-h|0:c=(b|0)==(f|0)?JL(a[c+4>>2],d):b-f|0}),0,(function(b,c,d,e,f){var h;h=a[b+16>>2]>>2;Cq(b,a[h+51],a[h+53],a[h+52],c,d,e,f)}),0,(function(a){cc(a|0);0!=(a|0)&&G(a)}),0,(function(b){var c,d=h,e=a[b+16>>2];y(b,xga|0);c=a[a[b+12>>2]>>2]>>2;var f=a[c+1],m=a[c+2];N(b,Ufa|0,(j=h,h+=12,a[j>>2]=a[c],a[j+4>>2]=f,a[j+8>>2]=m,j));N(b,rfa|0,(j=h,h+=4,a[j>>2]=a[a[e+8>>2]+12>>2],j));N(b,Lea|0,(j=h,h+=4,a[j>>2]=a[b+164>>2]*a[b+160>>2]|0,j));y(b,pea|0);y(b,Tda|0);y(b,Ada|0);y(b,hda|0);y(b,Lca|0);y(b,zca|0);y(b,fca|0);y(b,Nba|0);y(b,tba|0);h=d}),0,(function(a){cc(a|0);0!=(a|0)&&G(a)}),0,MT,0,(function(a){m[a+530|0]=0;m[a+533|0]=0}),0,(function(c,d,e){var g=h;h+=12;var m=g+4,y=a[c+16>>2],l=y+96|0,l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0])&-1,k=a[y+16>>2],n=a[rf>>2];Aq(a[y+88>>2],g,m);y=a[g>>2];m=(b[0]=a[m>>2],b[1]=a[m+4>>2],f[0]);N(c,CB|0,(j=h,h+=68,a[j>>2]=2,a[j+4>>2]=1,a[j+8>>2]=y,a[j+12>>2]=l,a[j+16>>2]=k,a[j+20>>2]=0,a[j+24>>2]=n,a[j+28>>2]=0,a[j+32>>2]=0,f[0]=m,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=0,a[j+60>>2]=0,a[j+64>>2]=e,j));ry(c,d,e,0);h=g}),0,GQ,0,(function(a,b){dc(b)}),0,(function(b,c){return Lb(a[b>>2],a[c>>2])}),0,bk(),0,(function(b,c){return Lb(a[b>>2],a[c>>2])}),0,(function(a,b){y(a,xAa|0);y(a,b);y(a,wd|0)}),0,XS,0,VS,0,jO,0,(function(c,d,e,g){var q,y=h;h+=1024;q=(c+16|0)>>2;var l=a[a[q]+12>>2],k=y|0,n=g+24|0;Ma(k,Qla|0,(j=h,h+=8,f[0]=(b[0]=a[n>>2],b[1]=a[n+4>>2],f[0]),a[j>>2]=b[0],a[j+4>>2]=b[1],j));l=a[Bd+(l<<2)>>2];db(l,k);fi(a[a[q]+12>>2],Y|0,a[g+20>>2]);Am(c);c=m[g+72|0]<<24>>24;c=114==(c|0)?1:108==(c|0)?-1:0;db(l,Zja|0);Ap(l,d,e);d=g+56|0;d=(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0])&-1;Ma(k,Hl|0,(j=h,h+=8,a[j>>2]=c,a[j+4>>2]=d,j));db(l,k);fi(a[a[q]+12>>2],Y|0,a[g>>2]);h=y}),0,FH,0,(function(b,c,d){var b=a[c+16>>2],b=0==(b|0)?-1:a[b+16>>2],e=a[c+12>>2],e=0==(e|0)?-1:a[e+16>>2],f=a[d+16>>2],f=0==(f|0)?-1:a[f+16>>2],h=a[d+12>>2],h=0==(h|0)?-1:a[h+16>>2];return(b|0)!=(f|0)?b-f|0:c=(e|0)==(h|0)?JL(a[c+4>>2],d):e-h|0}),0,(function(){a[rf>>2]=1}),0,(function(c){var d;m[c+528|0]=0;var e=c+348|0;d=(c+332|0)>>2;e=10/(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0])+(b[0]=a[d],b[1]=a[d+1],f[0]);f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,(function(c,d){var e=a[Id>>2],g=e+36*a[d>>2]+20|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),e=e+36*a[c>>2]+20|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]);return(g>e&1)-(g>2],h=g|0,d=d-(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),g=g+8|0,e=e-(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]),c=a[c+4>>2];return d*d+e*e<=(b[0]=a[c>>2],b[1]=a[c+4>>2],f[0])&1}),0,(function(b){var c=a[b+16>>2];y(b,Wj|0);y(b,nc(a[c+152>>2]));y(b,jra|0);y(b,kn|0);c=ec(cg|0,a[c+8>>2]|0);y(b,nc(c));G(c);y(b,hn|0)}),0,GH,0,(function(a){y(a,vz|0)}),0,(function(){a[tg>>2]=1}),0,(function(b,c,d,e,f,h){zm(b);Am(b);0==(h|0)?Bm(a[a[b+16>>2]+12>>2],66,c,d):(jy(b),Bm(a[a[b+16>>2]+12>>2],98,c,d))}),0,(function(){a[rf>>2]=2}),0,nK,0,(function(b){var c;c=a[b+16>>2]>>2;var d=a[b+64>>2];3==(d|0)?(Cq(b,a[c+51],a[c+53],a[c+52],a[c+37],a[c+42],a[c+46],a[c+38]),y(b,Mda|0)):2==(d|0)&&Cq(b,a[c+51],a[c+53],a[c+52],a[c+37],a[c+42],a[c+46],a[c+38])}),0,(function(c){var d,e,g=h;e=Uk(V(c|0,Xk|0));if(0==(e|0)){la(0,wJa|0,(j=h,h+=4,a[j>>2]=a[c+12>>2],j))}else{var m=iI(e);e=m>>2;if(0!=(m|0)){var m=a[e+10],y=a[e+11];d=c+48|0;f[0]=(m|0)/72;a[d>>2]=b[0];a[d+4>>2]=b[1];d=c+56|0;f[0]=(y|0)/72;a[d>>2]=b[0];a[d+4>>2]=b[1];var l=fa(12);d=l>>2;a[c+28>>2]=l;a[d]=a[e+3];a[d+1]=((m|0)/-2&-1)-a[e+8]|0;a[d+2]=((y|0)/-2&-1)-a[e+9]|0}}h=g}),0,HH,0,GC,0,(function(a,b){y(a,eDa|0);y(a,nc(b));y(a,dr|0)}),0,(function(c,d){var e=a[a[c>>2]+108>>2],g=a[a[d>>2]+108>>2],h=0!=(g|0);if(0==(e|0)){return h&1}if(!h){return-1}var h=e+24|0,h=(b[0]=a[h>>2],b[1]=a[h+4>>2],f[0]),e=e+32|0,e=(b[0]=a[e>>2],b[1]=a[e+4>>2],f[0]),j=g+24|0,j=(b[0]=a[j>>2],b[1]=a[j+4>>2],f[0]),g=g+32|0,g=(b[0]=a[g>>2],b[1]=a[g+4>>2],f[0]);return h>j?-1:hg?-1:e>2]=d,a[j+4>>2]=e,j));h=c}),0,JC,0,(function(a){cc(a|0)}),0,(function(a){y(a,Xj|0)}),0,(function(){a[rf>>2]=2}),0,(function(b,c){return a[a[b>>2]+240>>2]-a[a[c>>2]+240>>2]|0}),0,(function(b,c){var d=a[b>>2];An(d,a[d+128>>2],c)}),0,(function(c,d,e,g){var m,y=h;h+=12;var l=y+4,k=a[c+16>>2];m=k>>2;var k=k+96|0,k=(b[0]=a[k>>2],b[1]=a[k+4>>2],f[0])&-1,n=a[m+4],z=a[m+13],p=a[rf>>2];Aq(a[m+22],y,l);m=a[y>>2];l=(b[0]=a[l>>2],b[1]=a[l+4>>2],f[0]);N(c,CB|0,(j=h,h+=68,a[j>>2]=2,a[j+4>>2]=3,a[j+8>>2]=m,a[j+12>>2]=k,a[j+16>>2]=n,a[j+20>>2]=z,a[j+24>>2]=p,a[j+28>>2]=0,a[j+32>>2]=0!=(g|0)?20:-1,f[0]=l,a[j+36>>2]=b[0],a[j+40>>2]=b[1],a[j+44>>2]=0,a[j+48>>2]=0,a[j+52>>2]=0,a[j+56>>2]=0,a[j+60>>2]=0,a[j+64>>2]=e+1|0,j));ry(c,d,e,1);h=y}),0,oi,0,(function(c){var d;m[c+528|0]=0;d=c+348|0;var e=10/(b[0]=a[d>>2],b[1]=a[d+4>>2],f[0]);d=(c+332|0)>>2;e=(b[0]=a[d],b[1]=a[d+1],f[0])-e;f[0]=e;a[d]=b[0];a[d+1]=b[1];m[c+529|0]=1;return 0}),0,mK,0,(function(b,c,d,e){var f=h;h+=40;if(0==m[d]<<24>>24){c=bu>>2}else{var e=0==(e|0)?cu|0:e,y=a[c+28>>2],l=KH(y,d);0==(l|0)?0!=(Yi(c,y+16|0,f,d,15,0)|0)&&BH(a[c+12>>2],d):0!=(Yi(c,l+16|0,f,e,m[l+65|0]&255,0)|0)&&la(0,du|0,(j=h,h+=12,a[j>>2]=a[c+12>>2],a[j+4>>2]=d,a[j+8>>2]=e,j));c=f>>2}b>>=2;for(d=c+10;c 1) { + return window.devicePixelRatio; + } else { + return 1; + } + } + + function svgXmlToImageElement(svgXml) { + var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref$scale = _ref.scale, + scale = _ref$scale === undefined ? defaultScale() : _ref$scale, + _ref$mimeType = _ref.mimeType, + mimeType = _ref$mimeType === undefined ? "image/png" : _ref$mimeType, + _ref$quality = _ref.quality, + quality = _ref$quality === undefined ? 1 : _ref$quality; + + return new Promise(function (resolve, reject) { + var svgImage = new Image(); + + svgImage.onload = function () { + var canvas = document.createElement('canvas'); + canvas.width = svgImage.width * scale; + canvas.height = svgImage.height * scale; + + var context = canvas.getContext("2d"); + context.drawImage(svgImage, 0, 0, canvas.width, canvas.height); + + canvas.toBlob(function (blob) { + var image = new Image(); + image.src = URL.createObjectURL(blob); + image.width = svgImage.width; + image.height = svgImage.height; + + resolve(image); + }, mimeType, quality); + }; + + svgImage.onerror = function (e) { + var error; + + if ('error' in e) { + error = e.error; + } else { + error = new Error('Error loading SVG'); + } + + reject(error); + }; + + svgImage.src = 'data:image/svg+xml;base64,' + b64EncodeUnicode(svgXml); + }); + } + + function svgXmlToImageElementFabric(svgXml) { + var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref2$scale = _ref2.scale, + scale = _ref2$scale === undefined ? defaultScale() : _ref2$scale, + _ref2$mimeType = _ref2.mimeType, + mimeType = _ref2$mimeType === undefined ? 'image/png' : _ref2$mimeType, + _ref2$quality = _ref2.quality, + quality = _ref2$quality === undefined ? 1 : _ref2$quality; + + var multiplier = scale; + + var format = void 0; + if (mimeType == 'image/jpeg') { + format = 'jpeg'; + } else if (mimeType == 'image/png') { + format = 'png'; + } + + return new Promise(function (resolve, reject) { + fabric.loadSVGFromString(svgXml, function (objects, options) { + // If there's something wrong with the SVG, Fabric may return an empty array of objects. Graphviz appears to give us at least one element back even given an empty graph, so we will assume an error in this case. + if (objects.length == 0) { + reject(new Error('Error loading SVG with Fabric')); + } + + var element = document.createElement("canvas"); + element.width = options.width; + element.height = options.height; + + var canvas = new fabric.Canvas(element, { enableRetinaScaling: false }); + var obj = fabric.util.groupSVGElements(objects, options); + canvas.add(obj).renderAll(); + + var image = new Image(); + image.src = canvas.toDataURL({ format: format, multiplier: multiplier, quality: quality }); + image.width = options.width; + image.height = options.height; + + resolve(image); + }); + }); + } + + var Viz = function () { + function Viz() { + var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, + workerURL = _ref3.workerURL, + worker = _ref3.worker, + Module = _ref3.Module, + render = _ref3.render; + + classCallCheck(this, Viz); + + if (typeof workerURL !== 'undefined') { + this.wrapper = new WorkerWrapper(new Worker(workerURL)); + } else if (typeof worker !== 'undefined') { + this.wrapper = new WorkerWrapper(worker); + } else if (typeof Module !== 'undefined' && typeof render !== 'undefined') { + this.wrapper = new ModuleWrapper(Module, render); + } else if (typeof Viz.Module !== 'undefined' && typeof Viz.render !== 'undefined') { + this.wrapper = new ModuleWrapper(Viz.Module, Viz.render); + } else { + throw new Error('Must specify workerURL or worker option, Module and render options, or include one of full.render.js or lite.render.js after viz.js.'); + } + } + + createClass(Viz, [{ + key: 'renderString', + value: function renderString(src) { + var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, + _ref4$format = _ref4.format, + format = _ref4$format === undefined ? 'svg' : _ref4$format, + _ref4$engine = _ref4.engine, + engine = _ref4$engine === undefined ? 'dot' : _ref4$engine, + _ref4$files = _ref4.files, + files = _ref4$files === undefined ? [] : _ref4$files, + _ref4$images = _ref4.images, + images = _ref4$images === undefined ? [] : _ref4$images, + _ref4$yInvert = _ref4.yInvert, + yInvert = _ref4$yInvert === undefined ? false : _ref4$yInvert, + _ref4$nop = _ref4.nop, + nop = _ref4$nop === undefined ? 0 : _ref4$nop; + + for (var i = 0; i < images.length; i++) { + files.push({ + path: images[i].path, + data: '\n\n' + }); + } + + return this.wrapper.render(src, { format: format, engine: engine, files: files, images: images, yInvert: yInvert, nop: nop }); + } + }, { + key: 'renderSVGElement', + value: function renderSVGElement(src) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + return this.renderString(src, _extends({}, options, { format: 'svg' })).then(function (str) { + var parser = new DOMParser(); + return parser.parseFromString(str, 'image/svg+xml').documentElement; + }); + } + }, { + key: 'renderImageElement', + value: function renderImageElement(src) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var scale = options.scale, + mimeType = options.mimeType, + quality = options.quality; + + + return this.renderString(src, _extends({}, options, { format: 'svg' })).then(function (str) { + if ((typeof fabric === 'undefined' ? 'undefined' : _typeof(fabric)) === "object" && fabric.loadSVGFromString) { + return svgXmlToImageElementFabric(str, { scale: scale, mimeType: mimeType, quality: quality }); + } else { + return svgXmlToImageElement(str, { scale: scale, mimeType: mimeType, quality: quality }); + } + }); + } + }, { + key: 'renderJSONObject', + value: function renderJSONObject(src) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var format = options.format; + + + if (format !== 'json' || format !== 'json0') { + format = 'json'; + } + + return this.renderString(src, _extends({}, options, { format: format })).then(function (str) { + return JSON.parse(str); + }); + } + }]); + return Viz; + }(); + + return Viz; + +}))); diff --git a/src/index.js b/src/index.js index 9425050..9f58f83 100755 --- a/src/index.js +++ b/src/index.js @@ -16,6 +16,7 @@ var dotGraph = {}; dotExtension: "gv", ends: true, endTag: "end", + engine: "dot", hideDot: false, hideSettings: false, lastTag: false, @@ -77,6 +78,8 @@ var dotGraph = {}; twineVersion: 0 }; + var viz = new Viz(); + //graph //init //passage @@ -105,9 +108,7 @@ context.graph = (function() { dotTextarea.value = output; dotTextarea.style.height = dotTextarea.scrollHeight+'px'; - //Do the conversion and write the svg to the page. - document.getElementById("graph").innerHTML = Viz(output,"svg"); - context.settings.scale(); + render(output); } function edit() { @@ -115,9 +116,7 @@ context.graph = (function() { //in that case, read the dot file from the browser and render it. var editedOutput = document.getElementById("dotfile").value; - //Needs error handling? - document.getElementById("graph").innerHTML = Viz(editedOutput,"svg"); - context.settings.scale(); + render(editedOutput); } function saveDot() { @@ -129,9 +128,18 @@ context.graph = (function() { function saveSvg() { //Having trouble reading the existing svg off the page, so regenerate it. var output = document.getElementById("dotfile").value; - var preblob = Viz(output,"svg").replace("no","yes"); - var blob = new Blob([preblob], {type: "image/svg+xml;charset=utf-8"}); - filesaver.saveAs(blob, "dotgraph" + Date.now() + ".svg", true); + viz.renderSVGElement(output) + .then(function(result){ + var preblob = result.toString().replace("no","yes"); + var blob = new Blob([preblob], {type: "image/svg+xml;charset=utf-8"}); + filesaver.saveAs(blob, "dotgraph" + Date.now() + ".svg", true); + }) + .catch(function(error){ + // Create a new Viz instance + viz = new Viz(); + // Possibly display the error + console.log(error); + }); } //Private @@ -263,6 +271,24 @@ context.graph = (function() { return result; } + function render(output) { + //Clear the area! + document.getElementById("graph").innerHTML = ""; + + //Do the conversion and write the svg to the page. + viz.renderSVGElement(output, {engine: config.engine}) + .then(function(result){ + document.getElementById("graph").appendChild(result); + context.settings.scale(); + }) + .catch(function(error){ + // Create a new Viz instance + viz = new Viz(); + // Possibly display the error + console.log(error); + }); + } + function stylePassage(passage, label) { var styles = []; @@ -356,14 +382,18 @@ context.graph = (function() { function scrub(name) { //Put names into a legal dot format. if (name) { - // dangerously scrubbing non-ascii characters for graphviz bug - name = name.toString().replace(/"/gm,"\\\""); //.replace(/[^\x00-\x7F]/g, ""); - //Another emoji-squashing method: + // dangerously scrubbing non-ascii characters for graphviz bug. + // the long regex is for emoji, from https://thekevinscott.com/emojis-in-javascript/ + //Try new viz with noscrub, just the quote escaping. + name = name.toString().replace(/"/gm,"\\\""); //.replace(/[^\x00-\x7F]/g, "_").replace(/[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c\ude32-\ude3a]|[\ud83c\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff]/g, "_"); + /* + //Another emoji-squashing method: name = _.map(name.toString().split(""), function(chr) { chrat = chr.charCodeAt(0); // (chrat == 34 ? '\\\"' : chr) return (chrat >= 32 && chrat <= 126 ? chr : "_"); }).join(""); + */ // add literal quotes for names in all cases. name = '"' + name + '"'; } @@ -676,6 +706,7 @@ context.settings = (function () { config.color = document.querySelector("input[name='colorCheckbox']:checked") ? document.querySelector("input[name='colorCheckbox']:checked").value : "length"; config.display = document.getElementById("displayCheckbox") ? document.getElementById("displayCheckbox").checked : true; config.ends = document.getElementById("endsCheckbox") ? document.getElementById("endsCheckbox").checked : false; + config.engine = document.querySelector("input[name='engineCheckbox']:checked") ? document.querySelector("input[name='engineCheckbox']:checked").value : "dot"; config.omitSpecialPassages = document.getElementById("specialCheckbox") ? document.getElementById("specialCheckbox").checked : false; config.omitSpecialTags = document.getElementById("specialTagCheckbox") ? document.getElementById("specialTagCheckbox").checked : false; config.renumber = document.getElementById("renumberCheckbox") ? document.getElementById("renumberCheckbox").checked : false; @@ -727,6 +758,12 @@ context.settings = (function () { /> 
\ />  "/>
\   
\ + Engine: />  \ + />  \ + />  \ + />  \ + />  \ + /> 
\ />  \ />  \ />  \ From 480b1a2fef3362a422808eace644da5104eb020e Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Thu, 20 Jun 2019 23:39:01 -0400 Subject: [PATCH 36/50] Fix saving issues. --- README.md | 2 +- package.json | 2 +- src/index.html | 2 +- src/index.js | 40 +++++++++++++++------------------------- 4 files changed, 18 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index e8176c1..b08de20 100755 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ SnowStick is a bit of JavaScript and CSS you can add to stories that use Snowman ### 2.2.0 -Add SnowStick (a reading tracker integrated with DotGraph), support for configuration using the DotGraphSettings passage (a safer and more flexible spot than StorySettings, though the latter is still supported), and viewing another story by URL (a quicker way than by loading the story and this format into Twine). +Add SnowStick (a reading tracker integrated with DotGraph), support for configuration using the DotGraphSettings passage (a safer and more flexible spot than StorySettings, though the latter is still supported), viewing another story by URL (a quicker way than by loading the story and this format into Twine), and Graphviz engine options (after updating to the latest [viz.js](http://viz-js.com)). ### 2.1.0 diff --git a/package.json b/package.json index 23dce23..408a674 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "DotGraph", - "version": "2.1.1", + "version": "2.2.0", "description": "A proofing format to make a Graphviz graph of a story.", "author": "M. C. DeMarco", "license": "MIT", diff --git a/src/index.html b/src/index.html index 516962e..e01c86d 100644 --- a/src/index.html +++ b/src/index.html @@ -51,7 +51,7 @@

Dot Source

- If rendering of the graph fails (i.e., you only see the dot source file) or you need the output in a different format, the dot source can also be rendered using the free desktop program Graphviz, or rendered online at GraphvizFiddle or WebGraphviz. + If rendering of the graph fails (i.e., you only see the dot source file) or you need the output in a different format, the dot source can also be rendered using the free desktop program Graphviz, or rendered online at GraphvizFiddle, WebGraphviz, or Viz.js.

diff --git a/src/index.js b/src/index.js index 9f58f83..da46d17 100755 --- a/src/index.js +++ b/src/index.js @@ -92,7 +92,8 @@ context.graph = (function() { convert: convert, edit: edit, saveDot: saveDot, - saveSvg: saveSvg + saveSvg: saveSvg, + scale: scale }; function convert() { @@ -126,22 +127,20 @@ context.graph = (function() { } function saveSvg() { - //Having trouble reading the existing svg off the page, so regenerate it. - var output = document.getElementById("dotfile").value; - viz.renderSVGElement(output) - .then(function(result){ - var preblob = result.toString().replace("no","yes"); - var blob = new Blob([preblob], {type: "image/svg+xml;charset=utf-8"}); - filesaver.saveAs(blob, "dotgraph" + Date.now() + ".svg", true); - }) - .catch(function(error){ - // Create a new Viz instance - viz = new Viz(); - // Possibly display the error - console.log(error); - }); + //Read the existing svg off the page. + var svgTxt = document.getElementById("graph").firstChild.outerHTML; + var blob = new Blob([svgTxt], {type: "image/svg+xml;charset=utf-8"}); + filesaver.saveAs(blob, "dotgraph" + Date.now() + ".svg", true); } + function scale() { + var svgElt = document.getElementsByTagName("svg")[0]; + if (config.scale) { + svgElt.setAttribute("width","100%"); + svgElt.removeAttribute("height"); + } + } + //Private function dot() { //Return the dot graph source. @@ -279,7 +278,7 @@ context.graph = (function() { viz.renderSVGElement(output, {engine: config.engine}) .then(function(result){ document.getElementById("graph").appendChild(result); - context.settings.scale(); + context.graph.scale(); }) .catch(function(error){ // Create a new Viz instance @@ -626,7 +625,6 @@ context.settings = (function () { isOmittedTag: isOmittedTag, load: load, parse: parse, - scale: scale, toggle: toggle, write: write }; @@ -718,14 +716,6 @@ context.settings = (function () { config.countWords = document.getElementById("wcCheckbox") ? document.getElementById("wcCheckbox").checked : false; config.trace = document.getElementById("trace") ? trim(document.getElementById("trace").value) : ""; } - - function scale() { - if (config.scale) { - var svgElt = document.getElementsByTagName("svg")[0]; - svgElt.setAttribute("width","100%"); - svgElt.removeAttribute("height"); - } - } function toggle(section) { //Check all toggleable sections against the settings and adapt. From 4ff93561be0e5bf89e1999a044bf0e170312c405 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 23 Jun 2019 15:21:17 -0500 Subject: [PATCH 37/50] Shorten notes. --- README.md | 12 ++++++++++++ src/index.html | 6 ++++-- src/index.js | 22 +++++++++++----------- 3 files changed, 27 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index b08de20..11e9cc7 100755 --- a/README.md +++ b/README.md @@ -8,6 +8,18 @@ To add DotGraph to Twine 1, create a new folder called `dotgraph` inside your ta To use DotGraph to graph a published story, open an already-dotgrapphed story in a browser and add a question mark followed by the story's URL. You can also do this by typing in the URL at the DotGraph site [here](https://mcdemarco.net/tools/scree/dotgraph/). +## Notes + +The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents. + +The cluster and color by tag options use the first tag on each passage unless *Use last tag* is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "End" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order. + +Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. + +The layout engine options change the graph style; some options are slower than the default ("dot"). + +The image format is SVG. + ## Troubleshooting DotGraph may fail to draw the graph in some versions of Twine 2 due to issues with Chrome; diff --git a/src/index.html b/src/index.html index e01c86d..5a0e067 100644 --- a/src/index.html +++ b/src/index.html @@ -11,7 +11,7 @@ #stats {font-style:italic;text-align:center;} input#omitTags, input#clusterTags {width:30%;} label {white-space:nowrap;} - div#notes {font-size:smaller;width:45%;padding-top:20px;float:right;} + div#notes {font-size:smaller;width:40%;padding-top:10px;float:right;} h2 {float:left;padding-right:3em;} section {clear:both;} textarea {min-height:15em;} @@ -32,7 +32,9 @@

DotGraph Proofing Format

Settings

- Notes: The start node is double-circled, as are any unreachable nodes. Traced nodes are hex-shaped. When color is on, nodes that are linked but do not exist are colored white. When color by length is on, all other nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.
The cluster and color by tag options use the first tag on each passage unless Use last tag is checked; optionally detected special tags are ignored in this ordering. Optional detection of an "end" tag changes the shape of "end" passages to an egg (and puts diagonals on loose ends and disconnected nodes). Optional detection of a "checkpoint" tag changes the shape of checkpoint passages to a diamond. The omit by tag(s) option omits the passage regardless of tag order.
Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. The image format is SVG. +

Notes: The start node is double-circled, as are any unreachable nodes. When color by length is on, all real nodes are colored in shades of red (shorter than average) to blue (longer than average) based on the relative length of their contents.

+

Stray or misplaced nodes can result from the omit tags setting, from duplicate passage names, scripted passage transitions, or other linking issues.

+

The layout engine options change the graph style; some options are slower than the default ("dot"). The image format is SVG. For more information, see the website or the README.

diff --git a/src/index.js b/src/index.js index da46d17..7bea478 100755 --- a/src/index.js +++ b/src/index.js @@ -743,22 +743,22 @@ context.settings = (function () { />  (StoryTitle, etc.) \ />  (script, etc.)
\   "/>
\ - />  \ - />  \ - /> 
\ + />  \ + />  \ + /> 
\ />  "/>
\ -   
\ - Engine: />  \ +    \ + /> 
\ + />  \ />  \ + ( />  \ + />  \ + />  \ + /> ) \ />  \ />  \ />  \ - /> 
\ - />  \ - />  \ - />  \ - />  \ - /> 
'); + /> 
'); document.getElementById("settingsForm").innerHTML = output(config); } From d661d3fa1f8d05bdf79cf26ea02757ca53cd0074 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Sun, 23 Jun 2019 16:32:57 -0500 Subject: [PATCH 38/50] Improve scaling. --- README.md | 2 +- src/index.html | 5 +++++ src/index.js | 42 +++++++++++++++++++++++++++++++++++++----- 3 files changed, 43 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 11e9cc7..defb239 100755 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The cluster and color by tag options use the first tag on each passage unless *U Stray or misplaced nodes can result from the omit tags setting, or from duplicate passage names or other linking issues. -The layout engine options change the graph style; some options are slower than the default ("dot"). +The layout engine options change the graph style; some options are slower than the default ("dot"). Some options are only supported under the "dot" engine, such as clustering by tag and choosing the graph direction (the arrows). The image format is SVG. diff --git a/src/index.html b/src/index.html index 5a0e067..17ecff7 100644 --- a/src/index.html +++ b/src/index.html @@ -15,7 +15,9 @@ h2 {float:left;padding-right:3em;} section {clear:both;} textarea {min-height:15em;} + #graphSection {text-align:center;} #saveSvgButton {float:left;} + #scaleUpButton, #scaleDownButton {font-weight:bold;} <%= vizScript %> @@ -45,6 +47,9 @@

Settings

Graph

+   + +

diff --git a/src/index.js b/src/index.js index 7bea478..a815e10 100755 --- a/src/index.js +++ b/src/index.js @@ -19,6 +19,7 @@ var dotGraph = {}; engine: "dot", hideDot: false, hideSettings: false, + increment: 0.2, lastTag: false, omitSpecialPassages: true, omitSpecialTags: true, @@ -133,11 +134,30 @@ context.graph = (function() { filesaver.saveAs(blob, "dotgraph" + Date.now() + ".svg", true); } - function scale() { + function scale(by) { + console.log(by); var svgElt = document.getElementsByTagName("svg")[0]; + svgElt.removeAttribute("height"); + + //parseInt or parseFloat because all values are strings with "%" or "pt" attached. if (config.scale) { - svgElt.setAttribute("width","100%"); - svgElt.removeAttribute("height"); + //set size or apply increment as a percentage + if (typeof by == "undefined") + svgElt.setAttribute("width","100%"); + else + svgElt.setAttribute("width", parseInt(svgElt.getAttribute("width"),10) + (by * 100) + "%"); + } else { + //need to parse the viewbox for the natural size. + var viewBox = svgElt.getAttribute("viewBox").split(" "); + // viewBox[2] is width, viewBox[3] is height, in points. + + //set size or apply increment as a point value + if (typeof by == "undefined") { + //The un-fit-to-page case. Not needed for initial sizing, but for changes. + svgElt.setAttribute("width",viewBox[2] + "pt"); + } else { + svgElt.setAttribute("width",parseFloat(svgElt.getAttribute("width")) + (parseFloat(viewBox[2]) * by) + "pt"); + } } } @@ -465,10 +485,15 @@ context.init = (function() { document.getElementById("omitTags").addEventListener('input', _.debounce(context.graph.convert,1000), false); document.getElementById("trace").addEventListener('input', _.debounce(context.graph.convert,1000), false); + //Not actually part of the settings form. document.getElementById("editButton").addEventListener('click', context.graph.edit, false); document.getElementById("saveDotButton").addEventListener('click', context.graph.saveDot, false); document.getElementById("saveSvgButton").addEventListener('click', context.graph.saveSvg, false); + document.getElementById("scaleCheckbox").addEventListener('change', function(){context.settings.scale();}, false); + document.getElementById("scaleUpButton").addEventListener('click', function(){context.graph.scale(config.increment);}, false); + document.getElementById("scaleDownButton").addEventListener('click', function(){context.graph.scale(-config.increment);}, false); + document.getElementById("dotHeader").addEventListener('click', function(){context.settings.toggle("dotSection");}, false); document.getElementById("settingsHeader").addEventListener('click', function(){context.settings.toggle("settingsSection");}, false); } @@ -625,6 +650,7 @@ context.settings = (function () { isOmittedTag: isOmittedTag, load: load, parse: parse, + scale: scale, toggle: toggle, write: write }; @@ -717,6 +743,12 @@ context.settings = (function () { config.trace = document.getElementById("trace") ? trim(document.getElementById("trace").value) : ""; } + function scale() { + //Rescaling isn't handled like other settings. + config.scale = document.getElementById("scaleCheckbox") ? document.getElementById("scaleCheckbox").checked : true; + context.graph.scale(); + } + function toggle(section) { //Check all toggleable sections against the settings and adapt. if (section) { @@ -747,8 +779,7 @@ context.settings = (function () { />  \ /> 
\ />  "/>
\ -    \ - /> 
\ +   
\ />  \ />  \ ( />  \ @@ -760,6 +791,7 @@ context.settings = (function () { />  \ /> 
'); document.getElementById("settingsForm").innerHTML = output(config); + document.getElementById("scaleCheckbox").checked = config.scale; } function splitAndTrim(tagList) { From e1cdb144a99c6c692089ae6b1f25b24f516f0b02 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Mon, 24 Jun 2019 12:36:00 -0400 Subject: [PATCH 39/50] Tweak title and color precedence. --- src/index.html | 4 ++-- src/index.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/index.html b/src/index.html index 17ecff7..e7baad4 100644 --- a/src/index.html +++ b/src/index.html @@ -2,7 +2,7 @@ -<%= name %> +<%= name %> (DotGraph) <%= vizScript %> @@ -47,7 +48,7 @@

Settings

Graph

-   +  
diff --git a/src/index.js b/src/index.js index 0ff7b61..7843acd 100755 --- a/src/index.js +++ b/src/index.js @@ -29,7 +29,7 @@ var dotGraph = {}; postfix: "", renumber: false, rotation: "TB", - scale: true, + scale: "100%", showNodeNames: false, snowstick: false, snowstickObj: {}, @@ -91,6 +91,7 @@ var dotGraph = {}; context.graph = (function() { return { + contrastColor: contrastColor, convert: convert, edit: edit, saveDot: saveDot, @@ -98,6 +99,21 @@ context.graph = (function() { scale: scale }; + function contrastColor(color) { + //color is an RGB color in the formats #abcdef or #abc (not clear that one can have worked). + //To support other formats like named colors grab a library. + if (color.charAt(0) != "#" || (color.length - 1) % 3 != 0) + return "#000000"; + var colorArray = []; + if (color.length - 1 == 3) + colorArray = [color.charAt(1),color.charAt(2),color.charAt(3)]; + else + colorArray = [color.substring(1,3),color.substring(3,5),color.substring(5,7)]; + colorArray = colorArray.map(function(elt){return parseInt(elt,16)/255;}); + var lumi = 0.299 * colorArray[0] + 0.587 * colorArray[1] + 0.114 * colorArray[2]; + return (lumi > 0.5 ? "#000000" : "#ffffff"); + } + function convert() { //A change in the settings is what normally triggers (re)graphing, so (re)parse. context.settings.parse(); @@ -137,15 +153,27 @@ context.graph = (function() { function scale(by) { var svgElt = document.getElementsByTagName("svg")[0]; + //Failed experiment with panzoom libraries. + /*if (config.panZoom) { + svgElt.setAttribute("width","100%"); + svgPanZoom('svg',{ + controlIconsEnabled: true, + minZoom: 0.7, + maxZoom: 2, + panEnabled: false + }); + return; + }*/ svgElt.removeAttribute("height"); //parseInt or parseFloat because all values are strings with "%" or "pt" attached. if (config.scale) { - //set size or apply increment as a percentage - if (typeof by == "undefined") - svgElt.setAttribute("width","100%"); - else - svgElt.setAttribute("width", parseInt(svgElt.getAttribute("width"),10) + (by * 100) + "%"); + //set size to scale preset or apply increment as a percentage + if (typeof by != "undefined") { + var splitt = config.scale.split(/(\d+)/); + var unit = splitt[splitt.length-1]; //"%"; + config.scale = parseInt(parseInt(svgElt.getAttribute("width"),10) * (1 + by),10) + unit; + } } else { //need to parse the viewbox for the natural size. var viewBox = svgElt.getAttribute("viewBox").split(" "); @@ -154,11 +182,13 @@ context.graph = (function() { //set size or apply increment as a point value if (typeof by == "undefined") { //The un-fit-to-page case. Not needed for initial sizing, but for changes. - svgElt.setAttribute("width",viewBox[2] + "pt"); + config.scale = viewBox[2] + "pt"; } else { - svgElt.setAttribute("width",parseFloat(svgElt.getAttribute("width")) + (parseFloat(viewBox[2]) * by) + "pt"); + config.scale = parseFloat(svgElt.getAttribute("width")) + (parseFloat(viewBox[2]) * by) + "pt"; } } + svgElt.setAttribute("width",config.scale); + document.getElementById("scaleInput").value = config.scale; } //Private @@ -355,6 +385,9 @@ context.graph = (function() { if (indx > -1) hue = config.palette[indx%26]; //color alphabet colors styles.push("fillcolor=\"" + hue + "\""); + styles.push("fontcolor=\"" + config.paletteContrastColors[indx%26] + "\""); + } else if (config.color == "tag") { + //No fill for you! } else if (config.snowstick && passage.ssLeaf && ((config.ends && context.passage.hasTag(passage, config.endTag)) || passage.leaf)) { //Solid real leaves for clarity. hue = config.paletteExceptions.leafHue; @@ -445,7 +478,7 @@ context.graph = (function() { for (var t=0; t/>  \ /> 
'); document.getElementById("settingsForm").innerHTML = output(config); - document.getElementById("scaleCheckbox").checked = config.scale; + document.getElementById("scaleInput").value = config.scale; + } + + function derive() { + //Should also cover the exceptions, but haven't done them yet. + config.paletteContrastColors = config.palette.map(function(color) {return context.graph.contrastColor(color);}); } function splitAndTrim(tagList) { @@ -910,7 +960,7 @@ context.story = (function () { document.querySelector("body").append(_story); //Programmatically choose some appropriate settings. - config.scale = true; + config.scale = ""; if (_story.children && _story.children.length && _story.children.length < 20) { config.showNodeNames = true; } else { From f429fba5749956a6688833912795d1596c770f39 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 30 Jun 2020 11:11:54 -0400 Subject: [PATCH 47/50] Remove commented-out svgPanZoom experiment. --- src/index.js | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/index.js b/src/index.js index 7843acd..2fe2dcf 100755 --- a/src/index.js +++ b/src/index.js @@ -153,17 +153,6 @@ context.graph = (function() { function scale(by) { var svgElt = document.getElementsByTagName("svg")[0]; - //Failed experiment with panzoom libraries. - /*if (config.panZoom) { - svgElt.setAttribute("width","100%"); - svgPanZoom('svg',{ - controlIconsEnabled: true, - minZoom: 0.7, - maxZoom: 2, - panEnabled: false - }); - return; - }*/ svgElt.removeAttribute("height"); //parseInt or parseFloat because all values are strings with "%" or "pt" attached. From 084740be3fcbef3b91de39e9901191c97beada35 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 30 Jun 2020 11:13:43 -0400 Subject: [PATCH 48/50] flow: Closed 'dgaas'. From 718f10444e89188aeeb7dc08c468fee48f1e4309 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 30 Jun 2020 11:20:53 -0400 Subject: [PATCH 49/50] flow: Created branch 'release/v2.2.0'. From cd0d22d143de617ff0bc6d544fdad353b8fa7c08 Mon Sep 17 00:00:00 2001 From: "M. C. DeMarco" Date: Tue, 30 Jun 2020 11:21:35 -0400 Subject: [PATCH 50/50] flow: Closed 'v2.2.0'.