zotero/resource/csl-validator.js
2022-04-19 18:42:48 -04:00

1660 lines
No EOL
626 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
Copyright (c) 2003, 2004 David Tolpin, Davidashen
http://davidashen.net/
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
3. Neither the name of Davidashen nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS", AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
and Clark Cooper
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
var JS_RNV = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(JS_RNV) {
JS_RNV = JS_RNV || {};
var Module=typeof JS_RNV!="undefined"?JS_RNV:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){if(Module["ENVIRONMENT_IS_PTHREAD"])return;var loadPackage=function(metadata){function runWithFS(){var start32=Module["___emscripten_embedded_file_data"]>>2;do{var name_addr=HEAPU32[start32++];var len=HEAPU32[start32++];var content=HEAPU32[start32++];var name=UTF8ToString(name_addr);Module["FS_createDataFile"](name,null,HEAP8.subarray(content,content+len),true,true,true)}while(HEAPU32[start32])}if(Module["calledRun"]){runWithFS()}else{if(!Module["preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}};loadPackage({"files":[]})})();var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=(filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret});readAsync=((filename,onload,onerror)=>{var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{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){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}})}readAsync=((url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";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)})}setWindowTitle=(title=>document.title=title)}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var tempRet0=0;var setTempRet0=value=>{tempRet0=value};var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=(
// EMSCRIPTEN_START_ASM
function instantiate(oa){function c(d){d.set=function(a,b){this[a]=b};d.get=function(a){return this[a]};return d}var e;var f=new Uint8Array(123);for(var a=25;a>=0;--a){f[48+a]=52+a;f[65+a]=a;f[97+a]=26+a}f[43]=62;f[47]=63;function l(m,n,o){var g,h,a=0,i=n,j=o.length,k=n+(j*3>>2)-(o[j-2]=="=")-(o[j-1]=="=");for(;a<j;a+=4){g=f[o.charCodeAt(a+1)];h=f[o.charCodeAt(a+2)];m[i++]=f[o.charCodeAt(a)]<<2|g>>4;if(i<k)m[i++]=g<<4|h>>2;if(i<k)m[i++]=h<<6|f[o.charCodeAt(a+3)]}}function p(q){l(e,1024,"fAB5egB5bWR0egB5bXoAeW1kegBlbXB0eQByZWZlcmVuY2UgdG8gYmluYXJ5IGVudGl0eQBhc3luY2hyb25vdXMgZW50aXR5AGluY29tcGxldGUgbWFya3VwIGluIHBhcmFtZXRlciBlbnRpdHkAZW50aXR5IGRlY2xhcmVkIGluIHBhcmFtZXRlciBlbnRpdHkAY2Fubm90IHN1c3BlbmQgaW4gZXh0ZXJuYWwgcGFyYW1ldGVyIGVudGl0eQBYTUwgb3IgdGV4dCBkZWNsYXJhdGlvbiBub3QgYXQgc3RhcnQgb2YgZW50aXR5AHVuZGVmaW5lZCBlbnRpdHkAaW5maW5pdHkASXNDSktDb21wYXRpYmlsaXR5AG91dCBvZiBtZW1vcnkAaGV4QmluYXJ5AGJhc2U2NEJpbmFyeQBnTW9udGhEYXkAZ0RheQBtdXN0IG5vdCB1bmRlY2xhcmUgcHJlZml4AHVuYm91bmQgcHJlZml4AC0rICAgMFgweAAtMFgrMFggMFgtMHgrMHggMHgASXNIZWJyZXcAZHJ2AGRpdgBJc1RlbHVndQBMdQBtaXhlZF90ZXh0AGh0X3B1dABiYWRfbGlzdAB1bmV4cGVjdGVkIHBhcnNlciBzdGF0ZSAtIHBsZWFzZSBzZW5kIGEgYnVnIHJlcG9ydABzaG9ydAB1bnNpZ25lZFNob3J0AGJhZF9zdGFydABiYWRfZGF0YV9leGNlcHQAaW50AHBhcmVudABJc0NKS1JhZGljYWxzU3VwcGxlbWVudABJc0NKS0NvbXBhdGliaWxpdHlJZGVvZ3JhcGhzU3VwcGxlbWVudABJc0xhdGluLTFTdXBwbGVtZW50AGp1bmsgYWZ0ZXIgZG9jdW1lbnQgZWxlbWVudAB1bnNpZ25lZEludABkZWZhdWx0AGluaGVyaXQAaHRfaW5pdABJc0Rlc2VyZXQAZW5jb2Rpbmcgc3BlY2lmaWVkIGluIFhNTCBkZWNsYXJhdGlvbiBpcyBpbmNvcnJlY3QAcmVxdWVzdGVkIGZlYXR1cmUgcmVxdWlyZXMgWE1MX0RURCBzdXBwb3J0IGluIEV4cGF0AGZsb2F0AEx0AElzQXJyb3dzAHhzZF9hbGxvd3MASXNTdXBlcnNjcmlwdHNhbmRTdWJzY3JpcHRzAElzQmxvY2tFbGVtZW50cwBJc1NtYWxsRm9ybVZhcmlhbnRzAGZyYWN0aW9uRGlnaXRzAHRvdGFsRGlnaXRzAElzRGluZ2JhdHMAaW5fY2xhc3MASXNNYXRoZW1hdGljYWxPcGVyYXRvcnMASXNTcGFjaW5nTW9kaWZpZXJMZXR0ZXJzAElzSWRlb2dyYXBoaWNEZXNjcmlwdGlvbkNoYXJhY3RlcnMAIWFkZGluZ19wcwBkYXZpZGFzaGVuLW5ldC14Zy1wb3MASXNCcmFpbGxlUGF0dGVybnMASXNJUEFFeHRlbnNpb25zAGh0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMASXNDSktDb21wYXRpYmlsaXR5Rm9ybXMASXNOdW1iZXJGb3JtcwBJc0FscGhhYmV0aWNQcmVzZW50YXRpb25Gb3JtcwBJc0hhbGZ3aWR0aGFuZEZ1bGx3aWR0aEZvcm1zAElzQ3VycmVuY3lTeW1ib2xzAElzTWlzY2VsbGFuZW91c1N5bWJvbHMASXNDb21iaW5pbmdNYXJrc2ZvclN5bWJvbHMASXNNdXNpY2FsU3ltYm9scwBJc0J5emFudGluZU11c2ljYWxTeW1ib2xzAElzTGV0dGVybGlrZVN5bWJvbHMASXNNYXRoZW1hdGljYWxBbHBoYW51bWVyaWNTeW1ib2xzAElzU3BlY2lhbHMASXNLYW5neGlSYWRpY2FscwBJc1lpUmFkaWNhbHMASXNDb21iaW5pbmdEaWFjcml0aWNhbE1hcmtzAElzQ29tYmluaW5nSGFsZk1hcmtzAElzRW5jbG9zZWRDSktMZXR0ZXJzYW5kTW9udGhzAElzQ0pLQ29tcGF0aWJpbGl0eUlkZW9ncmFwaHMASXNDSktVbmlmaWVkSWRlb2dyYXBocwBJc1RhZ3MASXNDb250cm9sUGljdHVyZXMAaHR0cDovL2RhdmlkYXNoZW4ubmV0L3JlbGF4bmcvc2NoZW1lLWRhdGF0eXBlcwBodHRwOi8vZGF2aWRhc2hlbi5uZXQvcmVsYXhuZy9wbHVnZ2FibGUtZGF0YXR5cGVzAGh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWRhdGF0eXBlcwBJc0dlb21ldHJpY1NoYXBlcwBwcmVmaXggbXVzdCBub3QgYmUgYm91bmQgdG8gb25lIG9mIHRoZSByZXNlcnZlZCBuYW1lc3BhY2UgbmFtZXMASXNIYW5ndWxTeWxsYWJsZXMASXNZaVN5bGxhYmxlcwBudWxsYWJsZXMASXNFbmNsb3NlZEFscGhhbnVtZXJpY3MASXNVbmlmaWVkQ2FuYWRpYW5BYm9yaWdpbmFsU3lsbGFiaWNzAFpzAFBzAHJueF9wMnN0cgBzeW0yc3RyAHJueF9uYzJzdHIAc3ludGF4IGVycm9yAGFwcGx5X2FmdGVyAHBhcnRpYWwgY2hhcmFjdGVyAElzS2htZXIAcnhfZGVmYXVsdF92ZXJyb3JfaGFuZGxlcgBkcnZfZGVmYXVsdF92ZXJyb3JfaGFuZGxlcgBybnZfZGVmYXVsdF92ZXJyb3JfaGFuZGxlcgB4c2RfZGVmYXVsdF92ZXJyb3JfaGFuZGxlcgBybmRfZGVmYXVsdF92ZXJyb3JfaGFuZGxlcgBybmNfZGVmYXVsdF92ZXJyb3JfaGFuZGxlcgBpZGVudGlmaWVyAGludGVnZXIAcG9zaXRpdmVJbnRlZ2VyAG5vblBvc2l0aXZlSW50ZWdlcgBuZWdhdGl2ZUludGVnZXIAbm9uTmVnYXRpdmVJbnRlZ2VyAHJlZmVyZW5jZSB0byBpbnZhbGlkIGNoYXJhY3RlciBudW1iZXIASXNNeWFubWFyAGdyYW1tYXIAZ1llYXIAY2hncm91cABsb29wAGNvbXByZXNzX3AAc3dlZXBfcABlcXVhbF9wAG1hcmtfcABxK3BzaXo8aV9wAGhhc2hfcABacABJc0hhbmd1bENvbXBhdGliaWxpdHlKYW1vAElzSGFuZ3VsSmFtbwBJc0JvcG9tb2ZvAElzTGFvAFNvAFBvAE5vAExvAENvAGNhbm5vdCBjaGFuZ2Ugc2V0dGluZyBvbmNlIHBhcnNpbmcgaGFzIGJlZ3VuAElzS2FuYnVuAHBhdHRlcm4ASXNPcHRpY2FsQ2hhcmFjdGVyUmVjb2duaXRpb24AdW5jbG9zZWQgQ0RBVEEgc2VjdGlvbgBJc0dlbmVyYWxQdW5jdHVhdGlvbgBJc0NKS1N5bWJvbHNhbmRQdW5jdHVhdGlvbgBkdXJhdGlvbgBlbnVtZXJhdGlvbgB4c2RfbWt0bW4ASXNCYXNpY0xhdGluAHN0ZGluAHN0YXJ0X3RhZ19vcGVuAGF0dHJpYnV0ZV9vcGVuAHVuY2xvc2VkIHRva2VuAElzVGliZXRhbgBuYW4ASXNBcm1lbmlhbgBJc01vbmdvbGlhbgBJc0dlb3JnaWFuAGJvb2xlYW4ATW4ASXNNYWxheWFsYW0ASXNPZ2hhbQBTbQBMbQB4bWwASXNUYW1pbABidWlsdGluX2VxdWFsAHhzZF9lcXVhbABsaXRlcmFsAGV4dGVybmFsAElzTGF0aW5FeHRlbmRlZEFkZGl0aW9uYWwAZGVjaW1hbABJc01pc2NlbGxhbmVvdXNUZWNobmljYWwAWmwATmwATGwASXNHcmVlawBTawBJc0d1amFyYXRpAElzRGV2YW5hZ2FyaQBJc0JlbmdhbGkASXNHdXJtdWtoaQBJc1RoYWkAUGkAZ1llYXJNb250aABnTW9udGgAbGVuZ3RoAG1heExlbmd0aABtaW5MZW5ndGgAcGF0aABsb25nAHVuc2lnbmVkTG9uZwBJc0JveERyYXdpbmcAc3RyaW5nAHJuX25ld1N0cmluZwBub3JtYWxpemVkU3RyaW5nAHVua25vd24gZW5jb2RpbmcAZW5kX3RhZwBtaXNtYXRjaGVkIHRhZwBuY29mAGluZgBkZXJlZgBQZgBDZgBtYXhFeGNsdXNpdmUAbWluRXhjbHVzaXZlAG1heEluY2x1c2l2ZQBtaW5JbmNsdXNpdmUAdHJ1ZQBieXRlAHVuc2lnbmVkQnl0ZQBiYWRfYXR0cmlidXRlAHJlZmVyZW5jZSB0byBleHRlcm5hbCBlbnRpdHkgaW4gYXR0cmlidXRlAGR1cGxpY2F0ZSBhdHRyaWJ1dGUAZGF0ZQBzdGFydF90YWdfY2xvc2UASXNQcml2YXRlVXNlAGJhZF9vbmVfb3JfbW9yZQBjdHlwZQBkb2N1bWVudCBpcyBub3Qgc3RhbmRhbG9uZQB0aW1lAGRhdGVUaW1lAHJlc2VydmVkIHByZWZpeCAoeG1sKSBtdXN0IG5vdCBiZSB1bmRlY2xhcmVkIG9yIGJvdW5kIHRvIGFub3RoZXIgbmFtZXNwYWNlIG5hbWUAcHJlZml4ZWQgbmFtZQBRTmFtZQBOQ05hbWUAZGF2aWRhc2hlbi1uZXQteGctZmlsZQBlbmQgb2YgZmlsZQBkb3VibGUAbGFuZ3VhZ2UASXNDaGVyb2tlZQBpbmNsdWRlAGlsbGVnYWwgcGFyYW1ldGVyIGVudGl0eSByZWZlcmVuY2UAZXJyb3IgaW4gcHJvY2Vzc2luZyBleHRlcm5hbCBlbnRpdHkgcmVmZXJlbmNlAHJlY3Vyc2l2ZSBlbnRpdHkgcmVmZXJlbmNlAGh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZQB3aGl0ZVNwYWNlAFBlAE1lAHhzZABpZGVudGlmaWVyIG9yIGtleXdvcmQAaWRlbnRpZmllciwgcHJlZml4ZWQgbmFtZSBvciBrZXl3b3JkAGFzc2lnbiBtZXRob2QAbm8gZWxlbWVudCBmb3VuZABpbGxlZ2FsIGNoYXJhY3RlcihzKSBpbiBwdWJsaWMgaWQAbWl4ZWQAbm90QWxsb3dlZABwYXJzaW5nIGFib3J0ZWQAZXhwZWN0ZWQAcmVzZXJ2ZWQgcHJlZml4ICh4bWxucykgbXVzdCBub3QgYmUgZGVjbGFyZWQgb3IgdW5kZWNsYXJlZAB0ZXh0IGRlY2xhcmF0aW9uIG5vdCB3ZWxsLWZvcm1lZABYTUwgZGVjbGFyYXRpb24gbm90IHdlbGwtZm9ybWVkAHBhcnNpbmcgZmluaXNoZWQASXNCb3BvbW9mb0V4dGVuZGVkAElzR3JlZWtFeHRlbmRlZABwYXJzZXIgbm90IHN1c3BlbmRlZABwYXJzZXIgc3VzcGVuZGVkAHNjX2FkZABQZABOZABlcXVhbF9uYwBoYXNoX25jAElzRXRoaW9waWMASXNSdW5pYwBJc0N5cmlsbGljAElzT2xkSXRhbGljAElzR290aGljAElzQXJhYmljAElzU3lyaWFjAFNjAFBjAE1jAENjAHJ4LmMAcm54LmMAZHJ2LmMAcm52LmMAaHQuYwBybi5jAHhzZF90bS5jAHhjbC5jAHhzZC5jAHJuZC5jAHNjLmMAcm5jLmMASXNPcml5YQBJc0thdGFrYW5hAElzSGlyYWdhbmEASXNUaGFhbmEASXNTaW5oYWxhAElzS2FubmFkYQBaAEVOVElUWQBOTVRPS0VOUwBJRFJFRlMARU5USVRJRVMAUAAoWytcLV0/KChbMC05XSspXC4/fChbMC05XSspPyhcLlswLTldKykpKShbRWVdKFsrXC1dPyhbMC05XSspKSk/fElORnwtSU5GfE5hTgBOT1RBVElPTgBOTVRPS0VOAE5BTgBNAEwAYW55VVJJAFVTLUFTQ0lJAC1JTkYASURSRUYAVVRGLTE2TEUAVVRGLTE2QkUASUQAQwBJc0NKS1VuaWZpZWRJZGVvZ3JhcGhzRXh0ZW5zaW9uQgBJc0FyYWJpY1ByZXNlbnRhdGlvbkZvcm1zLUIASXNMYXRpbkV4dGVuZGVkLUIASXNDSktVbmlmaWVkSWRlb2dyYXBoc0V4dGVuc2lvbkEASXNBcmFiaWNQcmVzZW50YXRpb25Gb3Jtcy1BAElzTGF0aW5FeHRlbmRlZC1BAC0/WzAtOV17NCx9KFp8WytcLV0oMFswLTldfDFbMC00XSk6WzAtNV1bMC05XSk/AC0/WzAtOV17NCx9LSgwWzEtOV18MVswLTJdKS0oWzAtMl1bMC05XXwzWzAxXSlUKFswLTFdWzAtOV18MlswLTNdKTpbMC01XVswLTldOihbMC01XVswLTldfDYwKShcLlswLTldKyk/KFp8WytcLV0oMFswLTldfDFbMC00XSk6WzAtNV1bMC05XSk/AC0tKDBbMS05XXwxWzAtMl0pLS0oWnxbK1wtXSgwWzAtOV18MVswLTRdKTpbMC01XVswLTldKT8ALT9bMC05XXs0LH0tKDBbMS05XXwxWzAtMl0pKFp8WytcLV0oMFswLTldfDFbMC00XSk6WzAtNV1bMC05XSk/AC0tLShbMC0yXVswLTldfDNbMDFdKShafFsrXC1dKDBbMC05XXwxWzAtNF0pOlswLTVdWzAtOV0pPwAtP1swLTldezQsfS0oMFsxLTldfDFbMC0yXSktKFswLTJdWzAtOV18M1swMV0pKFp8WytcLV0oMFswLTldfDFbMC00XSk6WzAtNV1bMC05XSk/AC0tKDBbMS05XXwxWzAtMl0pLShbMC0yXVswLTldfDNbMDFdKShafFsrXC1dKDBbMC05XXwxWzAtNF0pOlswLTVdWzAtOV0pPwAoKFtBLVphLXowLTkrL10gPyl7NH0pKigoW0EtWmEtejAtOSsvXSA/KShbQVFnd10gPyk9ID89fChbQS1aYS16MC05Ky9dID8pezJ9KFtBRUlNUVVZY2drb3N3MDQ4XSA/KT0pPwAoKFthLXpBLVpdWzAtOWEtekEtWitcLVwuXSo6KT8vezAsMn1bMC05YS16QS1aOy8/OkAmPSskXC5cLV8hfionKCklXSspPygjWzAtOWEtekEtWjsvPzpAJj0rJFwuXC1fIX4qJygpJV0rKT8ALTMyNzY4AC0yMTQ3NDgzNjQ4AC0xMjgALTkyMjMzNzIwMzY4NTQ3NzU4MDgAVVRGLTgAMzI3NjcAMjE0NzQ4MzY0NwAxMjcAOTIyMzM3MjAzNjg1NDc3NTgwNwBVVEYtMTYANDI5NDk2NzI5NQAyNTUANjU1MzUAMTg0NDY3NDQwNzM3MDk1NTE2MTUASVNPLTg4NTktMQB0cnVlfGZhbHNlfDF8MABsZW4+MAAxLjcuMTAALgBcYysAWzAtOWEtZkEtRl0rAFwtKFswLTldKyl8MCsAXGlcYyoAKFtcaS1bOl1dW1xjLVs6XV0qOik/W1xpLVs6XV1bXGMtWzpdXSoAOioAXGMrKCBcYyspKgBbXGktWzpdXVtcYy1bOl1dKiggW1xpLVs6XV1bXGMtWzpdXSopKgBjaG9pY2UgKHwpACFzY19sb2NrZWQoc3RwKQBub3Qgd2VsbC1mb3JtZWQgKGludmFsaWQgdG9rZW4pAChudWxsKQAhaHQtPmVxdWFsKGksaHQtPnRhYmxlW2pdKQAhUF9JUyhwLFBfRVJST1IpAFJOX05DX0lTKGR0LDYpAFJOX1BfSVMocCwxNCkAUk5fUF9JUyhwLDQpAGRhdGFFeGNlcHQgKC0pAGdyb3VwICgsKQBcKz8oWzAtOV0rKQBcLShbMC05XSspAG9uZSBvciBtb3JlICgrKQAoW2EtekEtWl17MSw4fSgtW2EtekEtWjAtOV17MSw4fSkqKQAoWytcLV0/KFswLTldKykpAChbK1wtXT8oKFswLTldKylcLj98KFswLTldKyk/KFwuWzAtOV0rKSkpAC0/UCgoKChbMC05XSspWSkoKFswLTldKylNKT8oKFswLTldKylEKT98KChbMC05XSspWSk/KChbMC05XSspTSkoKFswLTldKylEKT98KChbMC05XSspWSk/KChbMC05XSspTSk/KChbMC05XSspRCkpKFQoKChbMC05XSspSCkoKFswLTldKylNKT8oKChbMC05XSspXC4/fChbMC05XSspPyhcLlswLTldKykpUyk/fCgoWzAtOV0rKU0pPygoWzAtOV0rKU0pKCgoWzAtOV0rKVwuP3woWzAtOV0rKT8oXC5bMC05XSspKVMpP3woKChbMC05XSspXC4/fChbMC05XSspPyhcLlswLTldKykpUyk/KChbMC05XSspTSk/KCgoWzAtOV0rKVwuP3woWzAtOV0rKT8oXC5bMC05XSspKVMpKSl8KCgoWzAtOV0rKVkpKChbMC05XSspTSk/KChbMC05XSspRCk/fCgoWzAtOV0rKVkpPygoWzAtOV0rKU0pKChbMC05XSspRCk/fCgoWzAtOV0rKVkpPygoWzAtOV0rKU0pPygoWzAtOV0rKUQpKXwoVCgoKFswLTldKylIKSgoWzAtOV0rKU0pPygoKFswLTldKylcLj98KFswLTldKyk/KFwuWzAtOV0rKSlTKT98KChbMC05XSspTSk/KChbMC05XSspTSkoKChbMC05XSspXC4/fChbMC05XSspPyhcLlswLTldKykpUyk/fCgoKFswLTldKylcLj98KFswLTldKyk/KFwuWzAtOV0rKSlTKT8oKFswLTldKylNKT8oKChbMC05XSspXC4/fChbMC05XSspPyhcLlswLTldKykpUykpKSkAaW50ZXJsZWF2ZSAoJikATk9UQVRJT04oACpmbXQ9PSd6JwBsaXRlcmFsIG9yICdpbmhlcml0JwAifiIAIn0iACJ8IgAieyIAImVtcHR5IgAiZGl2IgAidGV4dCIAImxpc3QiACJzdGFydCIAInBhcmVudCIAImVsZW1lbnQiACJkZWZhdWx0IgAiaW5oZXJpdCIAImRhdGF0eXBlcyIAImdyYW1tYXIiACJ0b2tlbiIAImV4dGVybmFsIgAic3RyaW5nIgAiYXR0cmlidXRlIgAiaW5jbHVkZSIAIm5hbWVzcGFjZSIAIm1peGVkIgAibm90QWxsb3dlZCIAIl0iACJcIgAiWyIAIj8iACI+PiIAInw9IgAiJj0iACI9IgAiLSIAIiwiACIrIgAiKiIAIikiACIoIgAiJiIAIiMjIgAgIgBlbGVtZW50IAB2YWx1ZSAAYXR0cmlidXRlIABkYXRhIAByZWd1bGFyIGV4cHJlc3Npb25zOiAAWE1MIFNjaGVtYSBkYXRhdHlwZXM6IAAlczolczogZXJyb3I6IAAlczolaTolaTogZXJyb3I6IAAlczolaTolaTogZXJyb3I6IGxleGljYWwgZXJyb3I6IGlsbGVnYWwgY2hhcmFjdGVyIFx4eyV4fQoAdXNhZ2U6IHJudiB7LVtxbnNwY3ZoP119IHNjaGVtYS5ybmMge2RvY3VtZW50LnhtbH0KAGZhaWxlZCB0byBhbGxvY2F0ZSAlaSBieXRlcyBvZiBtZW1vcnkKAGVycm9yOiBpbnZhbGlkIGlucHV0CgAlczolaTolaTogZXJyb3I6IGNvbmZsaWN0aW5nIGNvbWJpbmUgbWV0aG9kcyBpbiBkZWZpbmUgb3Igc3RhcnQKACVzOiVpOiVpOiBlcnJvcjogcmVwZWF0ZWQgZGVmaW5lIG9yIHN0YXJ0CgAlczolaTolaTogZXJyb3I6IG1pc3Npbmcgc3RhcnQKAGluY29tcGxldGUgY29udGVudAoAcGlwZSB0aHJvdWdoIHh4IHRvIGV4cGFuZCBleHRlcm5hbCBlbnRpdGllcwoAdW5maW5pc2hlZCBjb250ZW50IG9mIGVsZW1lbnQgJXNeJXMKAG1pc3NpbmcgYXR0cmlidXRlcyBvZiAlc14lcwoAdW5rbm93biBwYXJhbWV0ZXIgJXMKAHJudiB2ZXJzaW9uICVzCgBpbnZhbGlkIHR5cGVkIHZhbHVlICIlcyIgZm9yIHR5cGUgJXMKAHVua25vd24gdHlwZSAlcwoASS9PIGVycm9yICglcyk6ICVzCgAJJXMKACVzOiVpOiVpOiBlcnJvcjogaW5jbHVkZWQgc2NoZW1hIGlzIG5vdCBhIGdyYW1tYXIKAGVycm9yOiBsb29wIGluIHN0YXJ0IHBhdHRlcm4KAGVycm9yOiBiYWQgcGF0aCBpbiBzdGFydCBwYXR0ZXJuCgAlczolaTolaTogZXJyb3I6IGxleGljYWwgZXJyb3I6IHVudGVybWluYXRlZCBsaXRlcmFsCgB1bmtub3duIGNsYXNzIGluICIlcyIgYXQgb2Zmc2V0ICVpCgByZXZlcnNlZCBib3VuZHMgaW4gIiVzIiBhdCBvZmZzZXQgJWkKAGJhZCBjaGFyYWN0ZXIgaW4gIiVzIiBhdCBvZmZzZXQgJWkKAHVuZmluaXNoZWQgZXhwcmVzc2lvbiBpbiAiJXMiIGF0IG9mZnNldCAlaQoAZGlnaXQgZXhwZWN0ZWQgaW4gIiVzIiBhdCBvZmZzZXQgJWkKAHJhbmdlIG9yIGNsYXNzIGV4cGVjdGVkIGluICIlcyIgYXQgb2Zmc2V0ICVpCgAnfScgZXhwZWN0ZWQgaW4gIiVzIiBhdCBvZmZzZXQgJWkKACd7JyBleHBlY3RlZCBpbiAiJXMiIGF0IG9mZnNldCAlaQoAJ10nIGV4cGVjdGVkIGluICIlcyIgYXQgb2Zmc2V0ICVpCgAnWycgZXhwZWN0ZWQgaW4gIiVzIiBhdCBvZmZzZXQgJWkKACcpJyBleHBlY3RlZCBpbiAiJXMiIGF0IG9mZnNldCAlaQoAJygnIGV4cGVjdGVkIGluICIlcyIgYXQgb2Zmc2V0ICVpCgAlczolaTolaTogZXJyb3I6ICclcycgb3ZlcnJpZGVzIG5vdGhpbmcKAGVycm9yOiBjb250ZW50IG9mIGVsZW1lbnQgJyVzJyBkb2VzIG5vdCBoYXZlIGEgY29udGVudC10eXBlCgAlczolaTolaTogZXJyb3I6IHVudGVybWluYXRlZCBlc2NhcGUKACVzOiVpOiVpOiBlcnJvcjogaW5jbHVkZSBpbnNpZGUgaW5jbHVkZQoAJXM6JWk6JWk6IGVycm9yOiBpbnZhbGlkIFVURi04IHNlcXVlbmNlCgAlczolaTolaTogZXJyb3I6IHN5bnRheCBlcnJvcjogJXMgZXhwZWN0ZWQsICVzIGZvdW5kCgBlcnJvcjogc29tZSBkb2N1bWVudHMgYXJlIGludmFsaWQKAGludmFsaWQgZGF0YSBvciB0ZXh0IG5vdCBhbGxvd2VkCgBlbGVtZW50ICVzXiVzIG5vdCBhbGxvd2VkCgBhdHRyaWJ1dGUgJXNeJXMgbm90IGFsbG93ZWQKAG5vIG1vcmUgdGhhbiAxNiBwYXR0ZXJucyBwZXIgdHlwZSBhcmUgc3VwcG9ydGVkCgAlczolaTolaTogZXJyb3I6IGxleGljYWwgZXJyb3I6ICclYycgZXhwZWN0ZWQKACVzOiVpOiVpOiBlcnJvcjogZmlyc3QgYXJndW1lbnQgZm9yICctJyBpcyBub3QgZGF0YQoAYWxsb3dlZDoKAHJlcXVpcmVkOgoAJXM6JWk6JWk6IHdhcm5pbmc6IG92ZXJyaWRpbmcgZGVmYXVsdCBkYXRhdHlwZSBwcmVmaXggJyVzJwoAJXM6JWk6JWk6IGVycm9yOiBkdXBsaWNhdGUgZGF0YXR5cGUgcHJlZml4ICclcycKACVzOiVpOiVpOiBlcnJvcjogdW5kZWNsYXJlZCBkYXRhdHlwZSBwcmVmaXggJyVzJwoAJXM6JWk6JWk6IHdhcm5pbmc6IG92ZXJyaWRpbmcgZGVmYXVsdCBuYW1lc3BhY2UgcHJlZml4ICclcycKACVzOiVpOiVpOiBlcnJvcjogZHVwbGljYXRlIG5hbWVzcGFjZSBwcmVmaXggJyVzJwoAJXM6JWk6JWk6IGVycm9yOiB1bmRlY2xhcmVkIG5hbWVzcGFjZSBwcmVmaXggJyVzJwoAZXJyb3I6IGxvb3AgaW4gcGF0dGVybiBmb3IgZWxlbWVudCAnJXMnCgBlcnJvcjogYmFkIHBhdGggYWZ0ZXIgJ2xpc3QnIGluIGVsZW1lbnQgJyVzJwoAZXJyb3I6IGJhZCBwYXRoIGFmdGVyICctJyBpbiBlbGVtZW50ICclcycKAGVycm9yOiBiYWQgcGF0aCBiZWZvcmUgJyonIG9yICcrJyBpbiBlbGVtZW50ICclcycKAGVycm9yOiBiYWQgcGF0aCBpbiBhdHRyaWJ1dGUgJyVzJyBvZiBlbGVtZW50ICclcycKACVzOiVpOiVpOiBlcnJvcjogY2Fubm90IG9wZW4gZXh0ZXJuYWwgZ3JhbW1hciAnJXMnCgAlczolaTolaTogZXJyb3I6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gJyVzJwoAbm8gZGF0YXR5cGUgbGlicmFyeSBmb3IgVVJJICclcycKACd2YWx1ZScgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBvZiAnZW51bWVyYXRpb24nCgB0aGUgYnVpbHRpbiBkZXJpdmVkIGRhdGF0eXBlIHRoYXQgc3BlY2lmaWVzIHRoZSBkZXNpcmVkIHZhbHVlIGZvciB0aGUgd2hpdGVTcGFjZSBmYWNldCBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkIG9mICd3aGl0ZVNwYWNlJwoAdW5rbm93biBvcHRpb24gJy0lYycKACVzOiVpOiVpOiBlcnJvcjogZmlyc3QgYXJndW1lbnQgZm9yICctJyBpcyBub3QgJyonIG9yICdwcmVmaXg6KicKAGludmFsaWQgcGFyYW1ldGVyIHZhbHVlICVzPSIlcyIKAGF0dHJpYnV0ZSAlc14lcyB3aXRoIGludmFsaWQgdmFsdWUgIiVzIgoAJXM6JWk6JWk6IGVycm9yOiBzeW50YXggZXJyb3I6ICVzIHVuZXhwZWN0ZWQgCgAlczolaTolaTogZXJyb3I6IEkvTyBlcnJvcjogJXMKCgAAAAAAAQAAAAEAAAABAAAAAQAAAAMAAAADAAAAAwAAAAIAAAACAAAAAwAAAAMAAAADAAAAAwAAAAMAAAACAAAAAwAAAAEAAAADAAAAAgAAAAEAAAADAAAAAwAAAAMAAAAWAAAAIwAAABUAAADlEQAAHR8AAOseAADXHgAAqB4AAM0eAACgHgAACR8AAPceAAApHwAA4R4AALUeAAA/HwAAMx8AAEcfAADEHgAAvB4AABQfAACuHgAAAR8AAIQMAACzEQAApBEAAHMfAABuHwAAaR8AAHsfAACYHgAAjx8AAGAfAACDHwAAfx8AAIsfAACHHwAAnB4AAJQeAABcHwAAVB8AAHcfAACQHgAAWB8AAGQfAACTHwAAIQ8AAAQAAAAQAAAACAAAAG0iAAAeKAAAyyQAAIsiAACgKAAAdSgAAEcoAADTKA==");l(e,11392,"AQAAAAEAAAABAAAAAwAAAAMAAAACAAAAAwAAAAMAAAACAAAAAQAAAAIAAAAtIwAAUSMAADkkAAAWJAAA8yMAANAjAAB/JAAAXCQAAOMiAAB9IwAAByMAAKIjAAA1AAAANgAAADc=");l(e,11508,"GwUAALALAAADEwAAshoAAJkOAADJCwAARxAAAO4QAACMBgAAFBIAAO4EAABlEgAANQQAAN0MAAAaBAAAxBAAAL8EAAAuEAAA1gYAAAIOAAA3EgAAOhEAAM0FAABvBAAACQcAAKYNAABpBQAATwUAAEkEAAC8EwAAmxMAABQTAAAlFAAAEBQAAEcTAADcEwAAkwQAAGMRAABgEwAA5goAACMAQ0RBVEEASUQASURSRUYASURSRUZTAEVOVElUWQBFTlRJVElFUwBOTVRPS0VOAE5NVE9LRU5TAAAAAGh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZQ==");l(e,11776,"aHR0cDovL3d3dy53My5vcmcvMjAwMC94bWxucy8AAAB4bWw9aHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlAAAAAFYAAABXAAAAWAAAAFkAAABaAAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAYQAAAGIAAABjAAAAZAAAAGUAAABmAAAAAQ==");l(e,11937,"FQoAAAk=");l(e,11960,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhY=");l(e,12256,"//////////////////////////////////////////8AAAAAAAAABP7//4f+//8HAAAAAAAAAAD//3////9///////////N//v3//////3///////////w/g/////zH8////AAAAAAAAAP//////////////AQD4Aw==");l(e,12400,"QNf///v/////f39U/f8PAP7f///////////+3/////8DAP///////58Z////zz8DAAAAAAAA/v///38C/v///38=");l(e,12474,"////BwcAAAAAAP7//wf+BwAAAAD+//////////98/38vAGAAAADg////////IwAAAP8DAAAA4J/5///9xQMAAACwAwADAOCH+f///W0DAAAAXgAAHADgr/v///3tIwAAAAABAAAA4J/5///9zSMAAACwAwAAAODHPdYYx78DAAAAAAAAAADg3/3///3vAwAAAAADAAAA4N/9///97wMAAABAAwAAAODf/f///f8DAAAAAAM=");l(e,12672,"/v////9/DQA/AAAAAAAAAJYl8P6ubA0gHw==");l(e,12712,"//7///8D");l(e,12756,"/////z8A/////38A7doHAAAAAFABUDGCq2IsAAAAAEAAyYD1BwAAAAAIAQL/////////////////////////D///////////////A///Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAEBM");l(e,12880,"Bw==");l(e,12896,"gAAAAP4DAAD+////////////HwD+/////////////wfg/////x8=");l(e,12960,"//////////////////////////8/");l(e,12992,"//////////////////////////8P");l(e,13029,"YP8H/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/8=");l(e,13376,"/v////9//wf/f/8DAAAAAJYl8P6ubP87Xz//AwAAAAAAAAAD/wOgwv/+////A/7/3w+//v8//gI=");l(e,13466,"/x8CAAAAoAAAAP7/PgD+////////////H2b+/////////////3dWAAAAVwAAAFgAAABZAAAAWgAAAFsAAABcAAAAXQAAAF4AAABfAAAAYAAAAGEAAABiAAAAYwAAAGQAAABnAAAAaAAAAAEAAAAB");l(e,13589,"FQoAABU=");l(e,13612,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcH");l(e,13834,"AQFpAAAAagAAAGsAAABsAAAAbQAAAGsAAABuAAAAbwAAAHAAAABWAAAAVwAAAFgAAABZAAAAWgAAAFsAAABcAAAAXQAAAF4AAABfAAAAYAAAAGEAAABiAAAAYwAAAGQAAABnAAAAaAAAAAEAAAAB");l(e,13957,"FQoAABU=");l(e,13980,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcH");l(e,14202,"AQFpAAAAagAAAGsAAABsAAAAbQAAAGsAAABuAAAAbwAAAHAAAAACAwQFBgcIAAAJCgsMDQ4PEBE=");l(e,14270,"EhMAFA==");l(e,14288,"FRY=");l(e,14318,"AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBFw==");l(e,14412,"AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARg=");l(e,14496,"GQMaGxwdHgAAHyAhIiMkJRAR");l(e,14526,"EhMmFA==");l(e,14544,"JxY=");l(e,14574,"AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBFw==");l(e,14668,"AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARg=");l(e,14752,"TC4AAAw+AAC8OQAALDsAACw7AACcPAAAvDkAAFYAAABXAAAAWAAAAFkAAABaAAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAYQAAAGIAAABjAAAAZAAAAGcAAABoAAAAAQAAAAE=");l(e,14865,"FQoAAAk=");l(e,14888,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcH");l(e,15110,"AQFpAAAAagAAAGsAAABsAAAAbQAAAGsAAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAAdQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAewAAAHwAAAB9AAAAfgAAAH8AAACAAAAAgQAAAAI=");l(e,15233,"FQoAAAk=");l(e,15256,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhY=");l(e,15516,"ggAAAIMAAACEAAAAhQAAAIYAAACHAAAAiAAAAIkAAACKAAAAiwAAAIwAAACNAAAAjgAAAI8AAACQAAAAkQAAAJIAAAACAAAAAAE=");l(e,15601,"FQoAAAk=");l(e,15624,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhY=");l(e,15884,"VgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAXwAAAGAAAABhAAAAYgAAAGMAAABkAAAAkwAAAGYAAAABAAAAAQ==");l(e,15969,"FQoAAAk=");l(e,15992,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkWEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwc");l(e,16252,"dmVyc2lvbgBlbmNvZGluZwBzdGFuZGFsb25lAHllcwBubwAAvD8AAHxFAAAsQQAAnEIAAJxCAAAMRAAALEEAAFYAAABXAAAAWAAAAFkAAABaAAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAYQAAAGIAAABjAAAAZAAAAGUAAABmAAAAAQ==");l(e,16401,"FQoAAAk=");l(e,16424,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhY=");l(e,16684,"VgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAXwAAAGAAAABhAAAAYgAAAGMAAABkAAAAZwAAAGgAAAABAAAAAQ==");l(e,16769,"FQoAAAk=");l(e,16792,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgcHBwcH");l(e,17014,"AQFpAAAAagAAAGsAAABsAAAAbQAAAGsAAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAAdQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAewAAAHwAAAB9AAAAfgAAAH8AAACAAAAAgQAAAAI=");l(e,17137,"FQoAAAk=");l(e,17160,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhY=");l(e,17420,"ggAAAIMAAACEAAAAhQAAAIYAAACHAAAAiAAAAIkAAACKAAAAiwAAAIwAAACNAAAAjgAAAI8AAACQAAAAkQAAAJIAAAACAAAAAAE=");l(e,17505,"FQoAAAk=");l(e,17528,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcFhwcHBwcHBwcHBwWHBocHBYcHBwcHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWHBYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYcFhYWFhYWFhY=");l(e,17788,"VgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAXwAAAGAAAABhAAAAYgAAAGMAAABkAAAAkwAAAGYAAAABAAAAAQ==");l(e,17873,"FQoAAAk=");l(e,17896,"FRAMExweAw0fICEiIxsaERkZGRkZGRkZGRkXEgIOCw8cGBgYGBgYFhYWFhYWFhYWFhYWFhYWFhYWFhYUHAQcFhwYGBgYGBgWFhYWFhYWFhYWFhYWFhYWFhYWFhwkHBwc");l(e,18156,"AgAAAAMAAAAEAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAQ==");l(e,18268,"AQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAE=");l(e,18348,"AQAAAAAAAAACAAAAAwAAAAQAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAARE9DVFlQRQBTWVNURU0AUFVCTElDAEVOVElUWQBBVFRMSVNUAEVMRU1FTlQATk9UQVRJT04ASU5DTFVERQBJR05PUkUATkRBVEEAQ0RBVEEASUQASURSRUYASURSRUZTAEVOVElUSUVTAE5NVE9LRU4ATk1UT0tFTlMASU1QTElFRABSRVFVSVJFRABGSVhFRABFTVBUWQBBTlkAUENEQVRBAC9jc2wucm5jAG5hbWVzcGFjZSBhID0gImh0dHA6Ly9yZWxheG5nLm9yZy9ucy9jb21wYXRpYmlsaXR5L2Fubm90YXRpb25zLzEuMCIKbmFtZXNwYWNlIGJpYm8gPSAiaHR0cDovL3B1cmwub3JnL29udG9sb2d5L2JpYm8vIgpuYW1lc3BhY2UgY3MgPSAiaHR0cDovL3B1cmwub3JnL25ldC94YmlibGlvL2NzbCIKbmFtZXNwYWNlIGRjID0gImh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgpuYW1lc3BhY2Ugc2NoID0gImh0dHA6Ly9wdXJsLm9jbGMub3JnL2RzZGwvc2NoZW1hdHJvbiIKbmFtZXNwYWNlIHhodG1sID0gImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiCgojIENTTCBzY2hlbWEgbWV0YWRhdGEKCmRjOnRpdGxlIFsgIkNpdGF0aW9uIFN0eWxlIExhbmd1YWdlIiBdCmRjOmNyZWF0b3IgWyAiQnJ1Y2UgRCdBcmN1cyIgXQpkYzpjcmVhdG9yIFsgIlNpbW9uIEtvcm5ibGl0aCIgXQpiaWJvOmVkaXRvciBbICJGcmFuayBCZW5uZXR0IiBdCmJpYm86ZWRpdG9yIFsgIlJpbnR6ZSBaZWxsZSIgXQpkYzpyaWdodHMgWwogICJDb3B5cmlnaHQgMjAwNy0yMDIwIENpdGF0aW9uIFN0eWxlIExhbmd1YWdlIGFuZCBjb250cmlidXRvcnMiCl0KZGM6bGljZW5zZSBbICJNSVQgbGljZW5zZSIgXQpkYzpkZXNjcmlwdGlvbiBbCiAgIlJFTEFYIE5HIGNvbXBhY3Qgc2NoZW1hIGZvciB0aGUgQ2l0YXRpb24gU3R5bGUgTGFuZ3VhZ2UgKENTTCkuIgpdCgojIyBTdWJwYXJ0cyBvZiB0aGUgQ1NMIHNjaGVtYQppbmNsdWRlICJjc2wtY2hvb3NlLnJuYyIKaW5jbHVkZSAiY3NsLXRlcm1zLnJuYyIKaW5jbHVkZSAiY3NsLXR5cGVzLnJuYyIKaW5jbHVkZSAiY3NsLXZhcmlhYmxlcy5ybmMiCmluY2x1ZGUgImNzbC1jYXRlZ29yaWVzLnJuYyIKIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiMjIGNzOnN0eWxlIGFuZCBjczpsb2NhbGUgLSBSb290IEVsZW1lbnRzCmRpdiB7CiAgc3RhcnQgPQogICAgaW5kZXBlbmRlbnQtc3R5bGUuc3R5bGUgfCBkZXBlbmRlbnQtc3R5bGUuc3R5bGUgfCBsb2NhbGUtZmlsZS5sb2NhbGUKICBpbmRlcGVuZGVudC1zdHlsZS5zdHlsZSA9CiAgICBlbGVtZW50IGNzOnN0eWxlIHsKICAgICAgCiAgICAgICMjIFNlbGVjdCB3aGV0aGVyIGNpdGF0aW9ucyBhcHBlYXIgaW4tdGV4dCBvciBhcyBub3Rlcy4KICAgICAgYXR0cmlidXRlIGNsYXNzIHsgImluLXRleHQiIHwgIm5vdGUiIH0sCiAgICAgIHN0eWxlLmRlZmF1bHQtbG9jYWxlLAogICAgICBzdHlsZS5vcHRpb25zLAogICAgICB2ZXJzaW9uLAogICAgICBpbmRlcGVuZGVudC1zdHlsZS5zdHlsZS5pbmZvLAogICAgICAoc3R5bGUubG9jYWxlKgogICAgICAgJiBzdHlsZS5tYWNybyoKICAgICAgICYgc3R5bGUuY2l0YXRpb24KICAgICAgICYgc3R5bGUuYmlibGlvZ3JhcGh5PykKICAgIH0KICBkZXBlbmRlbnQtc3R5bGUuc3R5bGUgPQogICAgZWxlbWVudCBjczpzdHlsZSB7CiAgICAgIHN0eWxlLmRlZmF1bHQtbG9jYWxlLCB2ZXJzaW9uLCBkZXBlbmRlbnQtc3R5bGUuc3R5bGUuaW5mbwogICAgfQogIHN0eWxlLmRlZmF1bHQtbG9jYWxlID0KICAgIAogICAgIyMgU2V0IGEgZGVmYXVsdCBzdHlsZSBsb2NhbGUuCiAgICBhdHRyaWJ1dGUgZGVmYXVsdC1sb2NhbGUgeyB4c2Q6bGFuZ3VhZ2UgfT8KICB2ZXJzaW9uID0KICAgIAogICAgIyMgSW5kaWNhdGUgQ1NMIHZlcnNpb24gY29tcGF0aWJpbGl0eS4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiMS4wIiBdIGF0dHJpYnV0ZSB2ZXJzaW9uIHsgIjEuMCIgfQp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczppbmZvIC0gU3R5bGUgYW5kIExvY2FsZSBGaWxlIE1ldGFkYXRhCmRpdiB7CiAgCiAgIyMgTWV0YWRhdGEgZm9yIGluZGVwZW5kZW50IHN0eWxlcy4KICBpbmRlcGVuZGVudC1zdHlsZS5zdHlsZS5pbmZvID0KICAgIGVsZW1lbnQgY3M6aW5mbyB7CiAgICAgIGluZm8uYXV0aG9yKgogICAgICAmIGluZm8uY2F0ZWdvcnkqCiAgICAgICYgaW5mby5jb250cmlidXRvcioKICAgICAgJiBpbmZvLmlkCiAgICAgICYgaW5mby5pc3NuKgogICAgICAmIGluZm8uZWlzc24/CiAgICAgICYgaW5mby5pc3NubD8KICAgICAgJiBpbmRlcGVuZGVudC1zdHlsZS5pbmZvLmxpbmsqCiAgICAgICYgaW5mby5wdWJsaXNoZWQ/CiAgICAgICYgaW5mby5yaWdodHM/CiAgICAgICYgaW5mby5zdW1tYXJ5PwogICAgICAmIGluZm8udGl0bGUKICAgICAgJiBpbmZvLnRpdGxlLXNob3J0PwogICAgICAmIGluZm8udXBkYXRlZAogICAgfQogIAogICMjIE1ldGFkYXRhIGZvciBkZXBlbmRlbnQgc3R5bGVzLgogIGRlcGVuZGVudC1zdHlsZS5zdHlsZS5pbmZvID0KICAgIGVsZW1lbnQgY3M6aW5mbyB7CiAgICAgIGluZm8uYXV0aG9yKgogICAgICAmIGluZm8uY2F0ZWdvcnkqCiAgICAgICYgaW5mby5jb250cmlidXRvcioKICAgICAgJiBpbmZvLmlkCiAgICAgICYgaW5mby5pc3NuKgogICAgICAmIGluZm8uZWlzc24/CiAgICAgICYgaW5mby5pc3NubD8KICAgICAgJiBkZXBlbmRlbnQtc3R5bGUuaW5mby5saW5rKwogICAgICAmIGluZm8ucHVibGlzaGVkPwogICAgICAmIGluZm8ucmlnaHRzPwogICAgICAmIGluZm8uc3VtbWFyeT8KICAgICAgJiBpbmZvLnRpdGxlCiAgICAgICYgaW5mby50aXRsZS1zaG9ydD8KICAgICAgJiBpbmZvLnVwZGF0ZWQKICAgIH0KICAKICAjIyBNZXRhZGF0YSBmb3IgbG9jYWxlIGZpbGVzLgogIGxvY2FsZS1maWxlLmxvY2FsZS5pbmZvID0KICAgIGVsZW1lbnQgY3M6aW5mbyB7IGluZm8udHJhbnNsYXRvciogJiBpbmZvLnJpZ2h0cz8gJiBpbmZvLnVwZGF0ZWQ/IH0KICBpbmZvLmF1dGhvciA9IGVsZW1lbnQgY3M6YXV0aG9yIHsgcGVyc29uYWwtZGV0YWlscyB9CiAgaW5mby5jb250cmlidXRvciA9IGVsZW1lbnQgY3M6Y29udHJpYnV0b3IgeyBwZXJzb25hbC1kZXRhaWxzIH0KICBpbmZvLnRyYW5zbGF0b3IgPSBlbGVtZW50IGNzOnRyYW5zbGF0b3IgeyBwZXJzb25hbC1kZXRhaWxzIH0KICBwZXJzb25hbC1kZXRhaWxzID0KICAgIGVsZW1lbnQgY3M6bmFtZSB7IHRleHQgfQogICAgJiBlbGVtZW50IGNzOmVtYWlsIHsgdGV4dCB9PwogICAgJiBlbGVtZW50IGNzOnVyaSB7IHhzZDphbnlVUkkgfT8KICBpbmZvLmNhdGVnb3J5ID0KICAgIAogICAgIyMgU3BlY2lmeSB0aGUgY2l0YXRpb24gZm9ybWF0IG9mIHRoZSBzdHlsZSAodXNpbmcgdGhlICJjaXRhdGlvbi1mb3JtYXQiCiAgICAjIyBhdHRyaWJ1dGUpIG9yIHRoZSBmaWVsZHMgYW5kIGRpc2NpcGxpbmVzIGZvciB3aGljaCB0aGUgc3R5bGUgaXMKICAgICMjIHJlbGV2YW50ICh1c2luZyB0aGUgImZpZWxkIiBhdHRyaWJ1dGUpLgogICAgZWxlbWVudCBjczpjYXRlZ29yeSB7CiAgICAgIGF0dHJpYnV0ZSBjaXRhdGlvbi1mb3JtYXQgeyBjYXRlZ29yeS5jaXRhdGlvbi1mb3JtYXQgfQogICAgICB8IGF0dHJpYnV0ZSBmaWVsZCB7IGNhdGVnb3J5LmZpZWxkIH0KICAgIH0KICBpbmZvLmlkID0KICAgIAogICAgIyMgU3BlY2lmeSB0aGUgdW5pcXVlIGFuZCBzdGFibGUgaWRlbnRpZmllciBmb3IgdGhlIHN0eWxlLiBBIFVSSQogICAgIyMgaXMgdmFsaWQsIGJ1dCBuZXcgc3R5bGVzIHNob3VsZCB1c2UgYSBVVUlEIHRvIGVuc3VyZSBzdGFiaWxpdHkKICAgICMjIGFuZCB1bmlxdWVuZXNzLgogICAgZWxlbWVudCBjczppZCB7IHhzZDphbnlVUkkgfQogIGluZm8uaXNzbiA9CiAgICAKICAgICMjIFNwZWNpZnkgdGhlIGpvdXJuYWwncyBJU1NOKHMpIGZvciBqb3VybmFsLXNwZWNpZmljIHN0eWxlcy4gQW4gSVNTTgogICAgIyMgbXVzdCBjb25zaXN0IG9mIGZvdXIgZGlnaXRzLCBhIGh5cGhlbiwgdGhyZWUgZGlnaXRzLCBhbmQgYSBjaGVjawogICAgIyMgZGlnaXQgKGEgbnVtZXJhbCBkaWdpdCBvciByb21hbiBYKSwgZS5nLiAiMTIzNC0xMjMxIi4KICAgIGVsZW1lbnQgY3M6aXNzbiB7IGlzc24gfQogIGluZm8uZWlzc24gPQogICAgCiAgICAjIyBTcGVjaWZ5IHRoZSBqb3VybmFsJ3MgZUlTU04gZm9yIGpvdXJuYWwtc3BlY2lmaWMgc3R5bGVzLgogICAgZWxlbWVudCBjczplaXNzbiB7IGlzc24gfQogIGluZm8uaXNzbmwgPQogICAgCiAgICAjIyBTcGVjaWZ5IHRoZSBqb3VybmFsJ3MgSVNTTi1MIGZvciBqb3VybmFsLXNwZWNpZmljIHN0eWxlcy4KICAgIGVsZW1lbnQgY3M6aXNzbmwgeyBpc3NuIH0KICBpc3NuID0geHNkOnN0cmluZyB7IHBhdHRlcm4gPSAiXGR7NH1cLVxkezN9KFxkfHh8WCkiIH0KICBpbmRlcGVuZGVudC1zdHlsZS5pbmZvLmxpbmsgPQogICAgZWxlbWVudCBjczpsaW5rIHsKICAgICAgYXR0cmlidXRlIGhyZWYgeyB4c2Q6YW55VVJJIH0sCiAgICAgIAogICAgICAjIyBTcGVjaWZ5IGhvdyB0aGUgVVJMIHJlbGF0ZXMgdG8gdGhlIHN0eWxlLgogICAgICBhdHRyaWJ1dGUgcmVsIHsKICAgICAgICAKICAgICAgICAjIyBUaGUgVVJJIG9mIHRoZSBDU0wgc3R5bGUgaXRzZWxmLgogICAgICAgICJzZWxmIgogICAgICAgIHwgCiAgICAgICAgICAjIyBVUkkgb2YgdGhlIHN0eWxlIGZyb20gd2hpY2ggdGhlIGN1cnJlbnQgc3R5bGUgaXMgZGVyaXZlZC4KICAgICAgICAgICJ0ZW1wbGF0ZSIKICAgICAgICB8IAogICAgICAgICAgIyMgVVJJIG9mIHN0eWxlIGRvY3VtZW50YXRpb24uCiAgICAgICAgICAiZG9jdW1lbnRhdGlvbiIKICAgICAgfSwKICAgICAgaW5mby10ZXh0CiAgICB9CiAgZGVwZW5kZW50LXN0eWxlLmluZm8ubGluayA9CiAgICBlbGVtZW50IGNzOmxpbmsgewogICAgICBhdHRyaWJ1dGUgaHJlZiB7IHhzZDphbnlVUkkgfSwKICAgICAgCiAgICAgICMjIFNwZWNpZnkgaG93IHRoZSBVUkwgcmVsYXRlcyB0byB0aGUgc3R5bGUuCiAgICAgIGF0dHJpYnV0ZSByZWwgewogICAgICAgIAogICAgICAgICMjIFRoZSBVUkkgb2YgdGhlIENTTCBzdHlsZSBpdHNlbGYuCiAgICAgICAgInNlbGYiCiAgICAgICAgfCAKICAgICAgICAgICMjIFVSSSBvZiB0aGUgQ1NMIHN0eWxlIHdob3NlIGNvbnRlbnQgc2hvdWxkIGJlIHVzZWQgZm9yCiAgICAgICAgICAjIyBwcm9jZXNzaW5nLiBSZXF1aXJlZCBmb3IgZGVwZW5kZW50IHN0eWxlcy4KICAgICAgICAgICJpbmRlcGVuZGVudC1wYXJlbnQiCiAgICAgICAgfCAKICAgICAgICAgICMjIFVSSSBvZiBzdHlsZSBkb2N1bWVudGF0aW9uLgogICAgICAgICAgImRvY3VtZW50YXRpb24iCiAgICAgIH0sCiAgICAgIGluZm8tdGV4dAogICAgfQogIGluZm8ucHVibGlzaGVkID0KICAgIAogICAgIyMgU3BlY2lmeSB3aGVuIHRoZSBzdHlsZSB3YXMgaW5pdGlhbGx5IGNyZWF0ZWQgb3IgbWFkZSBhdmFpbGFibGUuCiAgICBlbGVtZW50IGNzOnB1Ymxpc2hlZCB7IHhzZDpkYXRlVGltZSB9CiAgaW5mby5yaWdodHMgPQogICAgZWxlbWVudCBjczpyaWdodHMgewogICAgICBhdHRyaWJ1dGUgbGljZW5zZSB7IHhzZDphbnlVUkkgfT8sCiAgICAgIGluZm8tdGV4dAogICAgfQogIGluZm8uc3VtbWFyeSA9IGVsZW1lbnQgY3M6c3VtbWFyeSB7IGluZm8tdGV4dCB9CiAgaW5mby50aXRsZSA9IGVsZW1lbnQgY3M6dGl0bGUgeyBpbmZvLXRleHQgfQogIGluZm8udGl0bGUtc2hvcnQgPQogICAgCiAgICAjIyBTcGVjaWZ5IGFuIGFiYnJldmlhdGVkIHN0eWxlIHRpdGxlIChlLmcuLCAiQVBBIikKICAgIGVsZW1lbnQgY3M6dGl0bGUtc2hvcnQgeyBpbmZvLXRleHQgfQogIGluZm8udXBkYXRlZCA9CiAgICAKICAgICMjIFNwZWNpZnkgd2hlbiB0aGUgc3R5bGUgd2FzIGxhc3QgdXBkYXRlZCAoZS5nLiwKICAgICMjICIyMDA3LTEwLTI2VDIxOjMyOjUyKzAyOjAwIikKICAgIGVsZW1lbnQgY3M6dXBkYXRlZCB7IHhzZDpkYXRlVGltZSB9CiAgaW5mby10ZXh0ID0KICAgIGF0dHJpYnV0ZSB4bWw6bGFuZyB7IHhzZDpsYW5ndWFnZSB9PywKICAgIHRleHQKfQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKIyMgY3M6bG9jYWxlIGluIEluZGVwZW5kZW50IFN0eWxlcwpkaXYgewogIHN0eWxlLmxvY2FsZSA9CiAgICAKICAgICMjIFVzZSB0byAocmUpZGVmaW5lIGxvY2FsaXplZCB0ZXJtcywgZGF0ZXMgYW5kIG9wdGlvbnMuCiAgICBlbGVtZW50IGNzOmxvY2FsZSB7CiAgICAgIAogICAgICAjIyBTcGVjaWZ5IHRoZSBhZmZlY3RlZCBsb2NhbGUocykuIElmICJ4bWw6bGFuZyIgaXMgbm90IHNldCwgdGhlCiAgICAgICMjICJjczpsb2NhbGUiIGVsZW1lbnQgYWZmZWN0cyBhbGwgbG9jYWxlcy4KICAgICAgYXR0cmlidXRlIHhtbDpsYW5nIHsgeHNkOmxhbmd1YWdlIH0/LAogICAgICAobG9jYWxlLnN0eWxlLW9wdGlvbnM/ICYgbG9jYWxlLmRhdGUqICYgbG9jYWxlLnRlcm1zPykKICAgIH0KfQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKIyMgY3M6bG9jYWxlIENvbnRlbnRzIC0gTG9jYWxpemF0aW9uIERhdGEKZGl2IHsKICAKICAjIyBMb2NhbGl6ZWQgZ2xvYmFsIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhcyBhdHRyaWJ1dGVzIGluIHRoZQogICMjIGNzOnN0eWxlLW9wdGlvbnMgZWxlbWVudC4gSWYgZnV0dXJlIHZlcnNpb25zIG9mIENTTCBpbmNsdWRlIGxvY2FsaXplZAogICMjIG9wdGlvbnMgdGhhdCBhcmUgY2l0YXRpb24gb3IgYmlibGlvZ3JhcGh5IHNwZWNpZmljLCB0aGUgZWxlbWVudHMKICAjIyBjczpjaXRhdGlvbi1vcHRpb25zIGFuZCBjczpiaWJsaW9ncmFwaHktb3B0aW9ucyBjYW4gYmUgYWRkZWQuCiAgbG9jYWxlLnN0eWxlLW9wdGlvbnMgPQogICAgZWxlbWVudCBjczpzdHlsZS1vcHRpb25zIHsKICAgICAgCiAgICAgICMjIExpbWl0IHRoZSAib3JkaW5hbCIgZm9ybSB0byB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aC4KICAgICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJmYWxzZSIgXQogICAgICBhdHRyaWJ1dGUgbGltaXQtZGF5LW9yZGluYWxzLXRvLWRheS0xIHsgeHNkOmJvb2xlYW4gfT8sCiAgICAgIAogICAgICAjIyBTcGVjaWZ5IHdoZXRoZXIgcHVuY3R1YXRpb24gKGEgcGVyaW9kIG9yIGNvbW1hKSBpcyBwbGFjZWQgd2l0aGluCiAgICAgICMjIG9yIG91dHNpZGUgKGRlZmF1bHQpIHRoZSBjbG9zaW5nIHF1b3RhdGlvbiBtYXJrLgogICAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImZhbHNlIiBdCiAgICAgIGF0dHJpYnV0ZSBwdW5jdHVhdGlvbi1pbi1xdW90ZSB7IHhzZDpib29sZWFuIH0/CiAgICB9CiAgbG9jYWxlLWZpbGUubG9jYWxlID0KICAgIGVsZW1lbnQgY3M6bG9jYWxlIHsKICAgICAgCiAgICAgICMjIFNwZWNpZnkgdGhlIGxvY2FsZSBvZiB0aGUgbG9jYWxlIGZpbGUuCiAgICAgIGF0dHJpYnV0ZSB4bWw6bGFuZyB7IHhzZDpsYW5ndWFnZSB9LAogICAgICB2ZXJzaW9uLAogICAgICBsb2NhbGUtZmlsZS5sb2NhbGUuaW5mbz8sCiAgICAgIChsb2NhbGUuc3R5bGUtb3B0aW9ucyAmIGxvY2FsZS5kYXRlKyAmIGxvY2FsZS50ZXJtcykKICAgIH0KICBsb2NhbGUuZGF0ZSA9CiAgICBlbGVtZW50IGNzOmRhdGUgewogICAgICBkYXRlLmZvcm0sCiAgICAgIGRlbGltaXRlciwKICAgICAgZm9udC1mb3JtYXR0aW5nLAogICAgICB0ZXh0LWNhc2UsCiAgICAgIGxvY2FsZS5kYXRlLmRhdGUtcGFydCsKICAgIH0KICBkYXRlLmZvcm0gPQogICAgCiAgICAjIyBTZWxlY3QgdGhlIGxvY2FsaXplZCBkYXRlIGZvcm1hdCAoInRleHQiIG9yICJudW1lcmljIikuCiAgICBhdHRyaWJ1dGUgZm9ybSB7CiAgICAgIAogICAgICAjIyBUZXh0IGRhdGUgZm9ybSAoZS5nLiwgIkRlY2VtYmVyIDE1LCAyMDA1IikuCiAgICAgICJ0ZXh0IgogICAgICB8IAogICAgICAgICMjIE51bWVyaWMgZGF0ZSBmb3JtIChlLmcuLCAiMjAwNS0xMi0xNSIpLgogICAgICAgICJudW1lcmljIgogICAgfQogIGxvY2FsZS5kYXRlLmRhdGUtcGFydCA9CiAgICBlbGVtZW50IGNzOmRhdGUtcGFydCB7CiAgICAgIGFmZml4ZXMsIGZvbnQtZm9ybWF0dGluZywgdGV4dC1jYXNlLCAoZGF5IHwgbW9udGggfCB5ZWFyKQogICAgfQogIGxvY2FsZS50ZXJtcyA9IGVsZW1lbnQgY3M6dGVybXMgeyB0ZXJtcy50ZXJtKyB9CiAgCiAgIyMgVGhlICJjczp0ZXJtIiBlbGVtZW50IGNhbiBlaXRoZXIgaG9sZCBhIGJhc2ljIHN0cmluZywgb3IgImNzOnNpbmdsZSIgYW5kCiAgIyMgImNzOm11bHRpcGxlIiBjaGlsZCBlbGVtZW50cyB0byBnaXZlIHNpbmd1bGFyIGFuZCBwbHVyYWwgZm9ybXMgb2YgdGhlIHRlcm0uCiAgdGVybXMudGVybSA9CiAgICBlbGVtZW50IGNzOnRlcm0gewogICAgICB0ZXJtLmF0dHJpYnV0ZXMsCiAgICAgICh0ZXh0IHwgKHRlcm0uc2luZ2xlLCB0ZXJtLm11bHRpcGxlKSkKICAgIH0KICB0ZXJtLmF0dHJpYnV0ZXMgPQogICAgKGF0dHJpYnV0ZSBuYW1lIHsgdGVybXMgfSwKICAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImxvbmciIF0gYXR0cmlidXRlIGZvcm0geyB0ZXJtLmZvcm0gfT8pCiAgICB8IChhdHRyaWJ1dGUgbmFtZSB7IHRlcm1zLm9yZGluYWxzIH0sCiAgICAgICBhdHRyaWJ1dGUgZm9ybSB7ICJsb25nIiB9PywKICAgICAgIGF0dHJpYnV0ZSBnZW5kZXItZm9ybSB7ICJtYXNjdWxpbmUiIHwgImZlbWluaW5lIiB9PywKICAgICAgIGF0dHJpYnV0ZSBtYXRjaCB7CiAgICAgICAgICJsYXN0LWRpZ2l0IiB8ICJsYXN0LXR3by1kaWdpdHMiIHwgIndob2xlLW51bWJlciIKICAgICAgIH0/KQogICAgfCAoYXR0cmlidXRlIG5hbWUgeyB0ZXJtcy5sb25nLW9yZGluYWxzIH0sCiAgICAgICBhdHRyaWJ1dGUgZm9ybSB7ICJsb25nIiB9PywKICAgICAgIGF0dHJpYnV0ZSBnZW5kZXItZm9ybSB7ICJtYXNjdWxpbmUiIHwgImZlbWluaW5lIiB9KQogICAgfCAoYXR0cmlidXRlIG5hbWUgeyB0ZXJtcy5nZW5kZXItYXNzaWduYWJsZSB9LAogICAgICAgYXR0cmlidXRlIGZvcm0geyAibG9uZyIgfT8sCiAgICAgICBhdHRyaWJ1dGUgZ2VuZGVyIHsgIm1hc2N1bGluZSIgfCAiZmVtaW5pbmUiIH0pCiAgCiAgIyMgInZlcmItc2hvcnQiIHJldmVydHMgdG8gInZlcmIiIGlmIHRoZSAidmVyYi1zaG9ydCIgZm9ybSBpcyBub3QgYXZhaWxhYmxlLgogICMjICJzeW1ib2wiIHJldmVydHMgdG8gInNob3J0IiBpZiB0aGUgInN5bWJvbCIgZm9ybSBpcyBub3QgYXZhaWxhYmxlLgogICMjICJ2ZXJiIiBhbmQgInNob3J0IiByZXZlcnQgdG8gImxvbmciIGlmIHRoZSBzcGVjaWZpZWQgZm9ybSBpcyBub3QgYXZhaWxhYmxlLgogIHRlcm0uZm9ybSA9ICJsb25nIiB8ICJ2ZXJiIiB8ICJzaG9ydCIgfCAidmVyYi1zaG9ydCIgfCAic3ltYm9sIgogIHRlcm0uc2luZ2xlID0KICAgIAogICAgIyMgU2luZ3VsYXIgdmVyc2lvbiBvZiB0aGUgdGVybS4KICAgIGVsZW1lbnQgY3M6c2luZ2xlIHsgdGV4dCB9CiAgdGVybS5tdWx0aXBsZSA9CiAgICAKICAgICMjIFBsdXJhbCB2ZXJzaW9uIG9mIHRoZSB0ZXJtLgogICAgZWxlbWVudCBjczptdWx0aXBsZSB7IHRleHQgfQp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczptYWNybwpkaXYgewogIHN0eWxlLm1hY3JvID0KICAgIAogICAgIyMgVXNlIHRvIGNyZWF0ZSBjb2xsZWN0aW9ucyBvZiAocmV1c2FibGUpIGZvcm1hdHRpbmcgaW5zdHJ1Y3Rpb25zLgogICAgZWxlbWVudCBjczptYWNybyB7CiAgICAgIGF0dHJpYnV0ZSBuYW1lIHsgeHNkOk5NVE9LRU4gfSwKICAgICAgcmVuZGVyaW5nLWVsZW1lbnQrCiAgICB9Cn0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiMjIFJlbmRlcmluZyBFbGVtZW50cwpkaXYgewogIHJlbmRlcmluZy1lbGVtZW50ID0KICAgIHJlbmRlcmluZy1lbGVtZW50Lm5hbWVzCiAgICB8IHJlbmRlcmluZy1lbGVtZW50LmRhdGUKICAgIHwgcmVuZGVyaW5nLWVsZW1lbnQubGFiZWwKICAgIHwgcmVuZGVyaW5nLWVsZW1lbnQudGV4dAogICAgfCByZW5kZXJpbmctZWxlbWVudC5udW1iZXIKICAgIHwgcmVuZGVyaW5nLWVsZW1lbnQuY2hvb3NlCiAgICB8IHJlbmRlcmluZy1lbGVtZW50Lmdyb3VwCn0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiMjIGNzOmNpdGF0aW9uIGFuZCBjczpiaWJsaW9ncmFwaHkKZGl2IHsKICBzdHlsZS5jaXRhdGlvbiA9CiAgICAKICAgICMjIFVzZSB0byBkZXNjcmliZSB0aGUgZm9ybWF0dGluZyBvZiBjaXRhdGlvbnMuCiAgICBlbGVtZW50IGNzOmNpdGF0aW9uIHsgY2l0YXRpb24ub3B0aW9ucywgc29ydD8sIGNpdGF0aW9uLmxheW91dCB9CiAgc3R5bGUuYmlibGlvZ3JhcGh5ID0KICAgIAogICAgIyMgVXNlIHRvIGRlc2NyaWJlIHRoZSBmb3JtYXR0aW5nIG9mIHRoZSBiaWJsaW9ncmFwaHkuCiAgICBlbGVtZW50IGNzOmJpYmxpb2dyYXBoeSB7CiAgICAgIGJpYmxpb2dyYXBoeS5vcHRpb25zLCBzb3J0PywgYmlibGlvZ3JhcGh5LmxheW91dAogICAgfQogIGNpdGF0aW9uLmxheW91dCA9CiAgICBlbGVtZW50IGNzOmxheW91dCB7CiAgICAgIGFmZml4ZXMsIGRlbGltaXRlciwgZm9udC1mb3JtYXR0aW5nLCByZW5kZXJpbmctZWxlbWVudCsKICAgIH0KICBiaWJsaW9ncmFwaHkubGF5b3V0ID0KICAgIGVsZW1lbnQgY3M6bGF5b3V0IHsgYWZmaXhlcywgZm9udC1mb3JtYXR0aW5nLCByZW5kZXJpbmctZWxlbWVudCsgfQp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczpuYW1lcyBSZW5kZXJpbmcgRWxlbWVudApkaXYgewogIHJlbmRlcmluZy1lbGVtZW50Lm5hbWVzID0KICAgIGVsZW1lbnQgY3M6bmFtZXMgewogICAgICBuYW1lcy5hdHRyaWJ1dGVzLAogICAgICAoKG5hbWVzLm5hbWU/LCBuYW1lcy5ldC1hbD8pICYgbmFtZXMubGFiZWw/KSwKICAgICAgbmFtZXMuc3Vic3RpdHV0ZT8KICAgIH0KICBuYW1lcy5hdHRyaWJ1dGVzID0KICAgIGF0dHJpYnV0ZSB2YXJpYWJsZSB7CiAgICAgIGxpc3QgeyB2YXJpYWJsZXMubmFtZXMrIH0KICAgIH0sCiAgICBhZmZpeGVzLAogICAgCiAgICAjIyBTcGVjaWZ5IHRoZSBkZWxpbWl0ZXIgZm9yIG5hbWUgbGlzdHMgb2YgbmFtZSB2YXJpYWJsZXMgcmVuZGVyZWQgYnkKICAgICMjIHRoZSBzYW1lIGNzOm5hbWVzIGVsZW1lbnQuCiAgICBkZWxpbWl0ZXIsCiAgICBkaXNwbGF5LAogICAgZm9udC1mb3JtYXR0aW5nCiAgbmFtZXMubmFtZSA9CiAgICBlbGVtZW50IGNzOm5hbWUgewogICAgICBuYW1lLmF0dHJpYnV0ZXMsCiAgICAgIAogICAgICAjIyBTZWxlY3QgdGhlICJsb25nIiAoZmlyc3QgbmFtZSArIGxhc3QgbmFtZSwgZm9yIFdlc3Rlcm4gbmFtZXMpLAogICAgICAjIyAic2hvcnQiIChsYXN0IG5hbWUgb25seSwgZm9yIFdlc3Rlcm4gbmFtZXMpLCBvciAiY291bnQiIG5hbWUgZm9ybQogICAgICAjIyAocmV0dXJuaW5nIHRoZSBudW1iZXIgb2YgbmFtZXMgaW4gdGhlIG5hbWUgdmFyaWFibGUsIHdoaWNoIGNhbiBiZQogICAgICAjIyB1c2VmdWwgZm9yIHNvbWUgc29ydGluZyBhbGdvcml0aG1zKS4KICAgICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJsb25nIiBdCiAgICAgIGF0dHJpYnV0ZSBmb3JtIHsgImxvbmciIHwgInNob3J0IiB8ICJjb3VudCIgfT8sCiAgICAgIGFmZml4ZXMsCiAgICAgIAogICAgICAjIyBTZXQgdGhlIGRlbGltaXRlciBmb3IgbmFtZXMgaW4gYSBuYW1lIHZhcmlhYmxlIChlLmcuLCAiLCAiIGluCiAgICAgICMjICJEb2UsIFNtaXRoIikKICAgICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICIsICIgXSBkZWxpbWl0ZXIsCiAgICAgIGZvbnQtZm9ybWF0dGluZywKICAgICAgbmFtZS5uYW1lLXBhcnQqCiAgICB9CiAgbmFtZS5hdHRyaWJ1dGVzID0KICAgIAogICAgIyMgVXNlIHRvIHNlcGFyYXRlIHRoZSBzZWNvbmQtdG8tbGFzdCBhbmQgbGFzdCBuYW1lIG9mIGEgbmFtZSBsaXN0IGJ5CiAgICAjIyB0aGUgImFuZCIgdGVybSBvciBhbXBlcnNhbmQuCiAgICBhdHRyaWJ1dGUgYW5kIHsKICAgICAgCiAgICAgICMjIFVzZSB0aGUgImFuZCIgdGVybSAoZS5nLiwgIkRvZSwgSm9obnNvbiBhbmQgU21pdGgiKS4KICAgICAgInRleHQiCiAgICAgIHwgCiAgICAgICAgIyMgVXNlIHRoZSAiYW1wZXJzYW5kIiAoZS5nLiwgIkRvZSwgSm9obnNvbiAmIFNtaXRoIikuCiAgICAgICAgInN5bWJvbCIKICAgIH0/LAogICAgCiAgICAjIyBTcGVjaWZ5IHdoZW4gdGhlIG5hbWUgZGVsaW1pdGVyIGlzIHVzZWQgYmV0d2VlbiBhIHRydW5jYXRlZCBuYW1lIGxpc3QKICAgICMjIGFuZCB0aGUgImV0LWFsIiAob3IgImFuZCBvdGhlcnMiKSB0ZXJtIGluIGNhc2Ugb2YgZXQtYWwgYWJicmV2aWF0aW9uCiAgICAjIyAoZS5nLiwgIlNtaXRoLCBEb2UgZXQgYWwuIiBvciAiU21pdGgsIERvZSwgZXQgYWwuIikuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImNvbnRleHR1YWwiIF0KICAgIGF0dHJpYnV0ZSBkZWxpbWl0ZXItcHJlY2VkZXMtZXQtYWwgewogICAgICAKICAgICAgIyMgVGhlIG5hbWUgZGVsaW1pdGVyIGlzIG9ubHkgdXNlZCB3aGVuIHRoZSB0cnVuY2F0ZWQgbmFtZSBsaXN0CiAgICAgICMjIGNvbnNpc3RzIG9mIHR3byBvciBtb3JlIG5hbWVzLgogICAgICAiY29udGV4dHVhbCIKICAgICAgfCAKICAgICAgICAjIyBUaGUgbmFtZSBkZWxpbWl0ZXIgaXMgYWx3YXlzIHVzZWQuCiAgICAgICAgImFsd2F5cyIKICAgICAgfCAKICAgICAgICAjIyBUaGUgbmFtZSBkZWxpbWl0ZXIgaXMgbmV2ZXIgdXNlZC4KICAgICAgICAibmV2ZXIiCiAgICAgIHwgCiAgICAgICAgIyMgVGhlIG5hbWUgZGVsaW1pdGVyIGlzIG9ubHkgdXNlZCBpZiB0aGUgcHJlY2VkaW5nIG5hbWUgaXMgaW52ZXJ0ZWQgYXMKICAgICAgICAjIyBhIHJlc3VsdCBvZiB0aGUgIm5hbWUtYXMtc29ydC1vcmRlciIgYXR0cmlidXRlLgogICAgICAgICJhZnRlci1pbnZlcnRlZC1uYW1lIgogICAgfT8sCiAgICAKICAgICMjIFNwZWNpZnkgd2hlbiB0aGUgbmFtZSBkZWxpbWl0ZXIgaXMgdXNlZCBiZXR3ZWVuIHRoZSBzZWNvbmQtdG8tbGFzdAogICAgIyMgYW5kIGxhc3QgbmFtZSBvZiBhIG5vbi10cnVuY2F0ZWQgbmFtZSBsaXN0LiBPbmx5IGhhcyBhbiBlZmZlY3Qgd2hlbgogICAgIyMgdGhlICJhbmQiIHRlcm0gb3IgYW1wZXJzYW5kIGlzIHVzZWQgKGUuZy4sICJEb2UgYW5kIFNtaXRoIiBvciAiRG9lLAogICAgIyMgYW5kIFNtaXRoIikuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImNvbnRleHR1YWwiIF0KICAgIGF0dHJpYnV0ZSBkZWxpbWl0ZXItcHJlY2VkZXMtbGFzdCB7CiAgICAgIAogICAgICAjIyBUaGUgbmFtZSBkZWxpbWl0ZXIgaXMgb25seSB1c2VkIHdoZW4gdGhlIG5hbWUgbGlzdCBjb25zaXN0cyBvZgogICAgICAjIyB0aHJlZSBvciBtb3JlIG5hbWVzLgogICAgICAiY29udGV4dHVhbCIKICAgICAgfCAKICAgICAgICAjIyBUaGUgbmFtZSBkZWxpbWl0ZXIgaXMgYWx3YXlzIHVzZWQuCiAgICAgICAgImFsd2F5cyIKICAgICAgfCAKICAgICAgICAjIyBUaGUgbmFtZSBkZWxpbWl0ZXIgaXMgbmV2ZXIgdXNlZC4KICAgICAgICAibmV2ZXIiCiAgICAgIHwgCiAgICAgICAgIyMgVGhlIG5hbWUgZGVsaW1pdGVyIGlzIG9ubHkgdXNlZCBpZiB0aGUgcHJlY2VkaW5nIG5hbWUgaXMgaW52ZXJ0ZWQgYXMKICAgICAgICAjIyBhIHJlc3VsdCBvZiB0aGUgIm5hbWUtYXMtc29ydC1vcmRlciIgYXR0cmlidXRlLgogICAgICAgICJhZnRlci1pbnZlcnRlZC1uYW1lIgogICAgfT8sCiAgICAKICAgICMjIFNldCB0aGUgbWluaW11bSBudW1iZXIgb2YgbmFtZXMgbmVlZGVkIGluIGEgbmFtZSB2YXJpYWJsZSB0byBhY3RpdmF0ZQogICAgIyMgZXQtYWwgYWJicmV2aWF0aW9uLgogICAgYXR0cmlidXRlIGV0LWFsLW1pbiB7IHhzZDppbnRlZ2VyIH0/LAogICAgCiAgICAjIyBTZXQgdGhlIG51bWJlciBvZiBuYW1lcyB0byByZW5kZXIgd2hlbiBldC1hbCBhYmJyZXZpYXRpb24gaXMgYWN0aXZlLgogICAgYXR0cmlidXRlIGV0LWFsLXVzZS1maXJzdCB7IHhzZDppbnRlZ2VyIH0/LAogICAgCiAgICAjIyBBcyAiZXQtYWwtbWluIiwgYnV0IG9ubHkgYWZmZWN0aW5nIHN1YnNlcXVlbnQgY2l0YXRpb25zIHRvIGFuIGl0ZW0uCiAgICBhdHRyaWJ1dGUgZXQtYWwtc3Vic2VxdWVudC1taW4geyB4c2Q6aW50ZWdlciB9PywKICAgIAogICAgIyMgQXMgImV0LWFsLXVzZS1maXJzdCIsIGJ1dCBvbmx5IGFmZmVjdGluZyBzdWJzZXF1ZW50IGNpdGF0aW9ucyB0byBhbgogICAgIyMgaXRlbS4KICAgIGF0dHJpYnV0ZSBldC1hbC1zdWJzZXF1ZW50LXVzZS1maXJzdCB7IHhzZDppbnRlZ2VyIH0/LAogICAgCiAgICAjIyBJZiBzZXQgdG8gInRydWUiLCB0aGUgImV0LWFsIiAob3IgImFuZCBvdGhlcnMiKSB0ZXJtIGlzIHJlcGxhY2VkIGJ5CiAgICAjIyBhbiBlbGxpcHNpcyBmb2xsb3dlZCBieSB0aGUgbGFzdCBuYW1lIG9mIHRoZSBuYW1lIHZhcmlhYmxlLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJmYWxzZSIgXQogICAgYXR0cmlidXRlIGV0LWFsLXVzZS1sYXN0IHsgeHNkOmJvb2xlYW4gfT8sCiAgICAKICAgICMjIElmIHNldCB0byAiZmFsc2UiLCBuYW1lcyBhcmUgbm90IGluaXRpYWxpemVkIGFuZCAiaW5pdGlhbGl6ZS13aXRoIgogICAgIyMgb25seSBhZmZlY3RzIGluaXRpYWxzIGFscmVhZHkgcHJlc2VudCBpbiB0aGUgaW5wdXQgZGF0YS4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAidHJ1ZSIgXSBhdHRyaWJ1dGUgaW5pdGlhbGl6ZSB7IHhzZDpib29sZWFuIH0/LAogICAgCiAgICAjIyBBY3RpdmF0ZSBpbml0aWFsaXppbmcgb2YgZ2l2ZW4gbmFtZXMuIFRoZSBhdHRyaWJ1dGUgdmFsdWUgaXMgYXBwZW5kZWQKICAgICMjIHRvIGVhY2ggaW5pdGlhbCAoZS5nLiwgd2l0aCAiLiAiLCAiT3Jzb24gV2VsbGVzIiBiZWNvbWVzICJPLiBXZWxsZXMiKS4KICAgIGF0dHJpYnV0ZSBpbml0aWFsaXplLXdpdGggeyB0ZXh0IH0/LAogICAgCiAgICAjIyBTcGVjaWZ5IHdoZXRoZXIgKGFuZCB3aGljaCkgbmFtZXMgc2hvdWxkIGJlIHJlbmRlcmVkIGluIHRoZWlyIHNvcnQKICAgICMjIG9yZGVyIChlLmcuLCAiRG9lLCBKb2huIiBpbnN0ZWFkIG9mICJKb2huIERvZSIpLgogICAgYXR0cmlidXRlIG5hbWUtYXMtc29ydC1vcmRlciB7CiAgICAgIAogICAgICAjIyBSZW5kZXIgdGhlIGZpcnN0IG5hbWUgb2YgZWFjaCBuYW1lIHZhcmlhYmxlIGluIHNvcnQgb3JkZXIuCiAgICAgICJmaXJzdCIKICAgICAgfCAKICAgICAgICAjIyBSZW5kZXIgYWxsIG5hbWVzIGluIHNvcnQgb3JkZXIuCiAgICAgICAgImFsbCIKICAgIH0/LAogICAgCiAgICAjIyBTZXRzIHRoZSBkZWxpbWl0ZXIgZm9yIG5hbWUtcGFydHMgdGhhdCBoYXZlIHN3aXRjaGVkIHBvc2l0aW9ucyBhcyBhCiAgICAjIyByZXN1bHQgb2YgIm5hbWUtYXMtc29ydC1vcmRlciIgKGUuZy4sICIsICIgaW4gIkRvZSwgSm9obiIpLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICIsICIgXSBhdHRyaWJ1dGUgc29ydC1zZXBhcmF0b3IgeyB0ZXh0IH0/CiAgbmFtZS5uYW1lLXBhcnQgPQogICAgCiAgICAjIyBVc2UgdG8gZm9ybWF0IGluZGl2aWR1YWwgbmFtZSBwYXJ0cyAoZS5nLiwgIkphbmUgRE9FIikuCiAgICBlbGVtZW50IGNzOm5hbWUtcGFydCB7CiAgICAgIGF0dHJpYnV0ZSBuYW1lIHsgImZhbWlseSIgfCAiZ2l2ZW4iIH0sCiAgICAgIGFmZml4ZXMsCiAgICAgIGZvbnQtZm9ybWF0dGluZywKICAgICAgdGV4dC1jYXNlCiAgICB9CiAgbmFtZXMuZXQtYWwgPQogICAgCiAgICAjIyBTcGVjaWZ5IHRoZSB0ZXJtIHVzZWQgZm9yIGV0LWFsIGFiYnJldmlhdGlvbiBhbmQgaXRzIGZvcm1hdHRpbmcuCiAgICBlbGVtZW50IGNzOmV0LWFsIHsKICAgICAgCiAgICAgICMjIFNlbGVjdCB0aGUgdGVybSB0byB1c2UgZm9yIGV0LWFsIGFiYnJldmlhdGlvbi4KICAgICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJldC1hbCIgXQogICAgICBhdHRyaWJ1dGUgdGVybSB7ICJldC1hbCIgfCAiYW5kIG90aGVycyIgfT8sCiAgICAgIGZvbnQtZm9ybWF0dGluZwogICAgfQogIAogICMjIEluaGVyaXRzIHZhcmlhYmxlIGZyb20gdGhlIHBhcmVudCBjczpuYW1lcyBlbGVtZW50LgogIG5hbWVzLmxhYmVsID0KICAgIGVsZW1lbnQgY3M6bGFiZWwgewogICAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImxvbmciIF0gYXR0cmlidXRlIGZvcm0geyB0ZXJtLmZvcm0gfT8sCiAgICAgIGxhYmVsLmF0dHJpYnV0ZXMtc2hhcmVkCiAgICB9CiAgbmFtZXMuc3Vic3RpdHV0ZSA9CiAgICAKICAgICMjIFNwZWNpZnkgc3Vic3RpdHV0aW9uIG9wdGlvbnMgd2hlbiB0aGUgbmFtZSB2YXJpYWJsZXMgc2VsZWN0ZWQgb24gdGhlCiAgICAjIyBwYXJlbnQgY3M6bmFtZXMgZWxlbWVudCBhcmUgZW1wdHkuCiAgICBlbGVtZW50IGNzOnN1YnN0aXR1dGUgeyAoc3Vic3RpdHV0ZS5uYW1lcyB8IHJlbmRlcmluZy1lbGVtZW50KSsgfQogIAogICMjIFNob3J0IHZlcnNpb24gb2YgY3M6bmFtZXMsIHdpdGhvdXQgY2hpbGRyZW4sIGFsbG93ZWQgaW4gY3M6c3Vic3RpdHV0ZS4KICBzdWJzdGl0dXRlLm5hbWVzID0gZWxlbWVudCBjczpuYW1lcyB7IG5hbWVzLmF0dHJpYnV0ZXMgfQp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczpkYXRlIFJlbmRlcmluZyBFbGVtZW50CmRpdiB7CiAgcmVuZGVyaW5nLWVsZW1lbnQuZGF0ZSA9CiAgICBlbGVtZW50IGNzOmRhdGUgewogICAgICBhdHRyaWJ1dGUgdmFyaWFibGUgeyB2YXJpYWJsZXMuZGF0ZXMgfSwKICAgICAgKCgKICAgICAgICAjIyBMaW1pdCB0aGUgZGF0ZSBwYXJ0cyByZW5kZXJlZC4KICAgICAgICBbIGE6ZGVmYXVsdFZhbHVlID0gInllYXItbW9udGgtZGF5IiBdCiAgICAgICAgYXR0cmlidXRlIGRhdGUtcGFydHMgewogICAgICAgICAgCiAgICAgICAgICAjIyBZZWFyLCBtb250aCBhbmQgZGF5CiAgICAgICAgICAieWVhci1tb250aC1kYXkiCiAgICAgICAgICB8IAogICAgICAgICAgICAjIyBZZWFyIGFuZCBtb250aAogICAgICAgICAgICAieWVhci1tb250aCIKICAgICAgICAgIHwgCiAgICAgICAgICAgICMjIFllYXIgb25seQogICAgICAgICAgICAieWVhciIKICAgICAgICB9PywKICAgICAgICBkYXRlLmZvcm0sCiAgICAgICAgcmVuZGVyaW5nLWVsZW1lbnQuZGF0ZS5kYXRlLXBhcnQubG9jYWxpemVkKikKICAgICAgIHwgKHJlbmRlcmluZy1lbGVtZW50LmRhdGUuZGF0ZS1wYXJ0Lm5vbi1sb2NhbGl6ZWQrLCBkZWxpbWl0ZXIpKSwKICAgICAgYWZmaXhlcywKICAgICAgZGlzcGxheSwKICAgICAgZm9udC1mb3JtYXR0aW5nLAogICAgICB0ZXh0LWNhc2UKICAgIH0KICByZW5kZXJpbmctZWxlbWVudC5kYXRlLmRhdGUtcGFydC5sb2NhbGl6ZWQgPQogICAgCiAgICAjIyBTcGVjaWZ5IG92ZXJyaWRpbmcgZm9ybWF0dGluZyBmb3IgbG9jYWxpemVkIGRhdGVzIChhZmZpeGVzCiAgICAjIyBjYW5ub3QgYmUgb3ZlcnJpZGRlbiwgYXMgdGhlc2UgYXJlIGNvbnNpZGVyZWQgbG9jYWxlLXNwZWNpZmljKS4KICAgICMjIEV4YW1wbGUgdXNlcyBhcmUgZm9yY2luZyB0aGUgdXNlIG9mIGxlYWRpbmctemVyb3MsIG9yIG9mIHRoZQogICAgIyMgInNob3J0IiBtb250aCBmb3JtLiBIYXMgbm8gZWZmZWN0IG9uIHdoaWNoLCBhbmQgaW4gd2hhdCBvcmRlciwKICAgICMjIGRhdGUgcGFydHMgYXJlIHJlbmRlcmVkLgogICAgZWxlbWVudCBjczpkYXRlLXBhcnQgewogICAgICBmb250LWZvcm1hdHRpbmcsIHRleHQtY2FzZSwgKGRheSB8IG1vbnRoIHwgeWVhcikKICAgIH0KICByZW5kZXJpbmctZWxlbWVudC5kYXRlLmRhdGUtcGFydC5ub24tbG9jYWxpemVkID0KICAgIAogICAgIyMgU3BlY2lmeSwgaW4gdGhlIGRlc2lyZWQgb3JkZXIsIHRoZSBkYXRlIHBhcnRzIHRoYXQgc2hvdWxkIGJlCiAgICAjIyByZW5kZXJlZCBhbmQgdGhlaXIgZm9ybWF0dGluZy4KICAgIGVsZW1lbnQgY3M6ZGF0ZS1wYXJ0IHsKICAgICAgYWZmaXhlcywgZm9udC1mb3JtYXR0aW5nLCB0ZXh0LWNhc2UsIChkYXkgfCBtb250aCB8IHllYXIpCiAgICB9CiAgZGF5ID0KICAgIGF0dHJpYnV0ZSBuYW1lIHsgImRheSIgfSwKICAgIAogICAgIyMgRGF5IGZvcm1zOiAibnVtZXJpYyIgKCI1IiksICJudW1lcmljLWxlYWRpbmctemVyb3MiICgiMDUiKSwgIm9yZGluYWwiCiAgICAjIyAoIjV0aCIpLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJudW1lcmljIiBdCiAgICBhdHRyaWJ1dGUgZm9ybSB7ICJudW1lcmljIiB8ICJudW1lcmljLWxlYWRpbmctemVyb3MiIHwgIm9yZGluYWwiIH0/LAogICAgcmFuZ2UtZGVsaW1pdGVyCiAgbW9udGggPQogICAgYXR0cmlidXRlIG5hbWUgeyAibW9udGgiIH0sCiAgICAKICAgICMjIE1vbnRocyBmb3JtczogImxvbmciIChlLmcuLCAiSmFudWFyeSIpLCAic2hvcnQiICgiSmFuLiIpLCAibnVtZXJpYyIKICAgICMjICgiMSIpLCBhbmQgIm51bWVyaWMtbGVhZGluZy16ZXJvcyIgKCIwMSIpLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJsb25nIiBdCiAgICBhdHRyaWJ1dGUgZm9ybSB7CiAgICAgICJsb25nIiB8ICJzaG9ydCIgfCAibnVtZXJpYyIgfCAibnVtZXJpYy1sZWFkaW5nLXplcm9zIgogICAgfT8sCiAgICByYW5nZS1kZWxpbWl0ZXIsCiAgICBzdHJpcC1wZXJpb2RzCiAgeWVhciA9CiAgICBhdHRyaWJ1dGUgbmFtZSB7ICJ5ZWFyIiB9LAogICAgCiAgICAjIyBZZWFyIGZvcm1zOiAibG9uZyIgKCIyMDA1IiksICJzaG9ydCIgKCIwNSIpLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJsb25nIiBdIGF0dHJpYnV0ZSBmb3JtIHsgInNob3J0IiB8ICJsb25nIiB9PywKICAgIHJhbmdlLWRlbGltaXRlcgogIHJhbmdlLWRlbGltaXRlciA9CiAgICAKICAgICMjIFNwZWNpZnkgYSBkZWxpbWl0ZXIgZm9yIGRhdGUgcmFuZ2VzIChieSBkZWZhdWx0IHRoZSBlbi1kYXNoKS4gQSBjdXN0b20KICAgICMjIGRlbGltaXRlciBpcyByZXRyaWV2ZWQgZnJvbSB0aGUgbGFyZ2VzdCBkYXRlIHBhcnQgKCJkYXkiLCAibW9udGgiIG9yCiAgICAjIyAieWVhciIpIHRoYXQgZGlmZmVycyBiZXR3ZWVuIHRoZSB0d28gZGF0ZXMuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gIuKAkyIgXSBhdHRyaWJ1dGUgcmFuZ2UtZGVsaW1pdGVyIHsgdGV4dCB9Pwp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczp0ZXh0IFJlbmRlcmluZyBFbGVtZW50CmRpdiB7CiAgcmVuZGVyaW5nLWVsZW1lbnQudGV4dCA9CiAgICAKICAgICMjIFVzZSB0byBjYWxsIG1hY3JvcywgcmVuZGVyIHZhcmlhYmxlcywgdGVybXMsIG9yIHZlcmJhdGltIHRleHQuCiAgICBlbGVtZW50IGNzOnRleHQgewogICAgICB0ZXh0LmF0dHJpYnV0ZXMsCiAgICAgIGFmZml4ZXMsCiAgICAgIGRpc3BsYXksCiAgICAgIGZvbnQtZm9ybWF0dGluZywKICAgICAgcXVvdGVzLAogICAgICBzdHJpcC1wZXJpb2RzLAogICAgICB0ZXh0LWNhc2UKICAgIH0KICB0ZXh0LmF0dHJpYnV0ZXMgPQogICAgCiAgICAjIyBTZWxlY3QgYSBtYWNyby4KICAgIGF0dHJpYnV0ZSBtYWNybyB7IHhzZDpOTVRPS0VOIH0KICAgIHwgKAogICAgICAgIyMgU2VsZWN0IGEgdGVybS4KICAgICAgIGF0dHJpYnV0ZSB0ZXJtIHsgdGVybXMgfSwKICAgICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAibG9uZyIgXSBhdHRyaWJ1dGUgZm9ybSB7IHRlcm0uZm9ybSB9PywKICAgICAgIAogICAgICAgIyMgU3BlY2lmeSB0ZXJtIHBsdXJhbGl0eTogc2luZ3VsYXIgKCJmYWxzZSIpIG9yIHBsdXJhbCAoInRydWUiKS4KICAgICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiZmFsc2UiIF0gYXR0cmlidXRlIHBsdXJhbCB7IHhzZDpib29sZWFuIH0/KQogICAgfCAKICAgICAgIyMgU3BlY2lmeSB2ZXJiYXRpbSB0ZXh0LgogICAgICBhdHRyaWJ1dGUgdmFsdWUgeyB0ZXh0IH0KICAgIHwgKAogICAgICAgIyMgU2VsZWN0IGEgdmFyaWFibGUuCiAgICAgICBhdHRyaWJ1dGUgdmFyaWFibGUgeyB2YXJpYWJsZXMuc3RhbmRhcmQgfSwKICAgICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAibG9uZyIgXSBhdHRyaWJ1dGUgZm9ybSB7ICJzaG9ydCIgfCAibG9uZyIgfT8pCn0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiMjIGNzOm51bWJlciBSZW5kZXJpbmcgRWxlbWVudApkaXYgewogIHJlbmRlcmluZy1lbGVtZW50Lm51bWJlciA9CiAgICAKICAgICMjIFVzZSB0byByZW5kZXIgYSBudW1iZXIgdmFyaWFibGUuCiAgICBlbGVtZW50IGNzOm51bWJlciB7CiAgICAgIG51bWJlci5hdHRyaWJ1dGVzLCBhZmZpeGVzLCBkaXNwbGF5LCBmb250LWZvcm1hdHRpbmcsIHRleHQtY2FzZQogICAgfQogIG51bWJlci5hdHRyaWJ1dGVzID0KICAgIGF0dHJpYnV0ZSB2YXJpYWJsZSB7IHZhcmlhYmxlcy5udW1iZXJzIH0sCiAgICAKICAgICMjIE51bWJlciBmb3JtczogIm51bWVyaWMiICgiNCIpLCAib3JkaW5hbCIgKCI0dGgiKSwgImxvbmctb3JkaW5hbCIKICAgICMjICgiZm91cnRoIiksICJyb21hbiIgKCJpdiIpLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJudW1lcmljIiBdCiAgICBhdHRyaWJ1dGUgZm9ybSB7ICJudW1lcmljIiB8ICJvcmRpbmFsIiB8ICJsb25nLW9yZGluYWwiIHwgInJvbWFuIiB9Pwp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczpsYWJlbCBSZW5kZXJpbmcgRWxlbWVudApkaXYgewogIHJlbmRlcmluZy1lbGVtZW50LmxhYmVsID0KICAgIAogICAgIyMgVXNlIHRvIHJlbmRlciBhIHRlcm0gd2hvc2UgcGx1cmFsaXphdGlvbiBkZXBlbmRzIG9uIHRoZSBjb250ZW50IG9mIGEKICAgICMjIHZhcmlhYmxlLiBFLmcuLCBpZiAicGFnZSIgdmFyaWFibGUgaG9sZHMgYSByYW5nZSwgdGhlIHBsdXJhbCBsYWJlbAogICAgIyMgInBwLiIgaXMgc2VsZWN0ZWQgaW5zdGVhZCBvZiB0aGUgc2luZ3VsYXIgInAuIi4KICAgIGVsZW1lbnQgY3M6bGFiZWwgeyBsYWJlbC5hdHRyaWJ1dGVzLCBsYWJlbC5hdHRyaWJ1dGVzLXNoYXJlZCB9CiAgbGFiZWwuYXR0cmlidXRlcyA9CiAgICBhdHRyaWJ1dGUgdmFyaWFibGUgeyB2YXJpYWJsZXMubnVtYmVycyB8ICJsb2NhdG9yIiB8ICJwYWdlIiB9LAogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJsb25nIiBdCiAgICBhdHRyaWJ1dGUgZm9ybSB7ICJsb25nIiB8ICJzaG9ydCIgfCAic3ltYm9sIiB9PwogIGxhYmVsLmF0dHJpYnV0ZXMtc2hhcmVkID0KICAgIAogICAgIyMgU3BlY2lmeSB3aGVuIHRoZSBwbHVyYWwgdmVyc2lvbiBvZiBhIHRlcm0gaXMgc2VsZWN0ZWQuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImNvbnRleHR1YWwiIF0KICAgIGF0dHJpYnV0ZSBwbHVyYWwgeyAiYWx3YXlzIiB8ICJuZXZlciIgfCAiY29udGV4dHVhbCIgfT8sCiAgICBhZmZpeGVzLAogICAgZm9udC1mb3JtYXR0aW5nLAogICAgc3RyaXAtcGVyaW9kcywKICAgIHRleHQtY2FzZQp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBjczpncm91cCBSZW5kZXJpbmcgRWxlbWVudApkaXYgewogIHJlbmRlcmluZy1lbGVtZW50Lmdyb3VwID0KICAgIAogICAgIyMgVXNlIHRvIGdyb3VwIHJlbmRlcmluZyBlbGVtZW50cy4gR3JvdXBzIGFyZSB1c2VmdWwgZm9yIHNldHRpbmcgYQogICAgIyMgZGVsaW1pdGVyIGZvciB0aGUgZ3JvdXAgY2hpbGRyZW4sIGZvciBvcmdhbml6aW5nIHRoZSBsYXlvdXQgb2YKICAgICMjIGJpYmxpb2dyYXBoaWMgZW50cmllcyAodXNpbmcgdGhlICJkaXNwbGF5IiBhdHRyaWJ1dGUpLCBhbmQgZm9yCiAgICAjIyBzdXBwcmVzc2luZyB0aGUgcmVuZGVyaW5nIG9mIHRlcm1zIGFuZCB2ZXJiYXRpbSB0ZXh0IHdoZW4gdmFyaWFibGVzCiAgICAjIyBhcmUgZW1wdHkuCiAgICBlbGVtZW50IGNzOmdyb3VwIHsKICAgICAgZ3JvdXAuYXR0cmlidXRlcywKICAgICAgYWZmaXhlcywKICAgICAgZGVsaW1pdGVyLAogICAgICBkaXNwbGF5LAogICAgICBmb250LWZvcm1hdHRpbmcsCiAgICAgIHJlbmRlcmluZy1lbGVtZW50KwogICAgfQogIGdyb3VwLmF0dHJpYnV0ZXMgPSBub3RBbGxvd2VkPwp9CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojIyBTdHlsZSBPcHRpb25zCmRpdiB7CiAgc3R5bGUub3B0aW9ucyA9CiAgICBzdHlsZS5kZW1vdGUtbm9uLWRyb3BwaW5nLXBhcnRpY2xlLAogICAgc3R5bGUuaW5pdGlhbGl6ZS13aXRoLWh5cGhlbiwKICAgIHN0eWxlLnBhZ2UtcmFuZ2UtZm9ybWF0LAogICAgbmFtZXMtaW5oZXJpdGFibGUtb3B0aW9ucywKICAgIG5hbWUtaW5oZXJpdGFibGUtb3B0aW9ucwogIGNpdGF0aW9uLm9wdGlvbnMgPQogICAgY2l0YXRpb24uY2l0ZS1ncm91cC1kZWxpbWl0ZXIsCiAgICBjaXRhdGlvbi5jb2xsYXBzZS1vcHRpb25zLAogICAgY2l0YXRpb24uZGlzYW1iaWd1YXRlLW9wdGlvbnMsCiAgICBjaXRhdGlvbi5uZWFyLW5vdGUtZGlzdGFuY2UsCiAgICBuYW1lcy1pbmhlcml0YWJsZS1vcHRpb25zLAogICAgbmFtZS1pbmhlcml0YWJsZS1vcHRpb25zCiAgYmlibGlvZ3JhcGh5Lm9wdGlvbnMgPQogICAgYmlibGlvZ3JhcGh5LmhhbmdpbmctaW5kZW50LAogICAgYmlibGlvZ3JhcGh5LmxpbmUtZm9ybWF0dGluZy1vcHRpb25zLAogICAgYmlibGlvZ3JhcGh5LnNlY29uZC1maWVsZC1hbGlnbiwKICAgIGJpYmxpb2dyYXBoeS5zdWJzZXF1ZW50LWF1dGhvci1zdWJzdGl0dXRlLW9wdGlvbnMsCiAgICBuYW1lcy1pbmhlcml0YWJsZS1vcHRpb25zLAogICAgbmFtZS1pbmhlcml0YWJsZS1vcHRpb25zCiAgc3R5bGUuZGVtb3RlLW5vbi1kcm9wcGluZy1wYXJ0aWNsZSA9CiAgICAKICAgICMjIFNwZWNpZnkgd2hldGhlciB0aGUgbm9uLWRyb3BwaW5nIHBhcnRpY2xlIGlzIGRlbW90ZWQgaW4gaW52ZXJ0ZWQKICAgICMjIG5hbWVzIChlLmcuLCAiS29uaW5nLCBXLiBkZSIpLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJkaXNwbGF5LWFuZC1zb3J0IiBdCiAgICBhdHRyaWJ1dGUgZGVtb3RlLW5vbi1kcm9wcGluZy1wYXJ0aWNsZSB7CiAgICAgICJuZXZlciIgfCAic29ydC1vbmx5IiB8ICJkaXNwbGF5LWFuZC1zb3J0IgogICAgfT8KICBzdHlsZS5pbml0aWFsaXplLXdpdGgtaHlwaGVuID0KICAgIAogICAgIyMgU3BlY2lmeSB3aGV0aGVyIGNvbXBvdW5kIGdpdmVuIG5hbWVzIChlLmcuLCAiSmVhbi1MdWMiKSBhcmUKICAgICMjIGluaXRpYWxpemVkIHdpdGggKCJKLUwiKSBvciB3aXRob3V0IGEgaHlwaGVuICgiSkwiKS4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAidHJ1ZSIgXQogICAgYXR0cmlidXRlIGluaXRpYWxpemUtd2l0aC1oeXBoZW4geyB4c2Q6Ym9vbGVhbiB9PwogIHN0eWxlLnBhZ2UtcmFuZ2UtZm9ybWF0ID0KICAgIAogICAgIyMgUmVmb3JtYXQgcGFnZSByYW5nZXMgaW4gdGhlICJwYWdlIiB2YXJpYWJsZS4KICAgIGF0dHJpYnV0ZSBwYWdlLXJhbmdlLWZvcm1hdCB7CiAgICAgICJleHBhbmRlZCIKICAgICAgfCAibWluaW1hbCIKICAgICAgfCAibWluaW1hbC10d28iCiAgICAgIHwgImNoaWNhZ28iCiAgICAgIHwgImNoaWNhZ28tMTUiCiAgICAgIHwgImNoaWNhZ28tMTYiCiAgICB9PwogIGNpdGF0aW9uLmNpdGUtZ3JvdXAtZGVsaW1pdGVyID0KICAgIAogICAgIyMgQWN0aXZhdGUgY2l0ZSBncm91cGluZyBhbmQgc3BlY2lmeSB0aGUgZGVsaW1pdGVyIGZvciBjaXRlcyB3aXRoaW4gYQogICAgIyMgY2l0ZSBncm91cC4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiLCAiIF0gYXR0cmlidXRlIGNpdGUtZ3JvdXAtZGVsaW1pdGVyIHsgdGV4dCB9PwogIGNpdGF0aW9uLmNvbGxhcHNlLW9wdGlvbnMgPQogICAgCiAgICAjIyBBY3RpdmF0ZSBjaXRlIGdyb3VwaW5nIGFuZCBzcGVjaWZ5IHRoZSBtZXRob2Qgb2YgY2l0YXRpb24gY29sbGFwc2luZy4KICAgIGF0dHJpYnV0ZSBjb2xsYXBzZSB7CiAgICAgIAogICAgICAjIyBDb2xsYXBzZSByYW5nZXMgb2YgbnVtZXJpYyBjaXRlcywgZS5nLiBmcm9tICJbMSwyLDNdIiB0byAiWzEtM10iLgogICAgICAiY2l0YXRpb24tbnVtYmVyIgogICAgICB8IAogICAgICAgICMjIENvbGxhcHNlIGNpdGVzIGJ5IHN1cHByZXNzaW5nIHJlcGVhdGVkIG5hbWVzLCBlLmcuIGZyb20gIihEb2UKICAgICAgICAjIyAyMDAwLCBEb2UgMjAwMSkiIHRvICIoRG9lIDIwMDAsIDIwMDEpIi4KICAgICAgICAieWVhciIKICAgICAgfCAKICAgICAgICAjIyBDb2xsYXBzZSBjaXRlcyBhcyB3aXRoICJ5ZWFyIiwgYnV0IGFsc28gc3VwcHJlc3NlcyByZXBlYXRlZAogICAgICAgICMjIHllYXJzLCBlLmcuIGZyb20gIihEb2UgMjAwMGEsIERvZSAyMDAwYikiIHRvICIoRG9lIDIwMDBhLCBiKSIuCiAgICAgICAgInllYXItc3VmZml4IgogICAgICB8IAogICAgICAgICMjIENvbGxhcHNlcyBjaXRlcyBhcyB3aXRoICJ5ZWFyLXN1ZmZpeCIsIGJ1dCBhbHNvIGNvbGxhcHNlcwogICAgICAgICMjIHJhbmdlcyBvZiB5ZWFyLXN1ZmZpeGVzLCBlLmcuIGZyb20gIihEb2UgMjAwMGEsIERvZSAyMDAwYiwKICAgICAgICAjIyBEb2UgMjAwMGMpIiB0byAiKERvZSAyMDAwYS1jKSIuCiAgICAgICAgInllYXItc3VmZml4LXJhbmdlZCIKICAgIH0/LAogICAgCiAgICAjIyBTcGVjaWZ5IHRoZSBkZWxpbWl0ZXIgYmV0d2VlbiB5ZWFyLXN1ZmZpeGVzLiBEZWZhdWx0cyB0byB0aGUgY2l0ZQogICAgIyMgZGVsaW1pdGVyLgogICAgYXR0cmlidXRlIHllYXItc3VmZml4LWRlbGltaXRlciB7IHRleHQgfT8sCiAgICAKICAgICMjIFNwZWNpZnkgdGhlIGRlbGltaXRlciBmb2xsb3dpbmcgYSBncm91cCBvZiBjb2xsYXBzZWQgY2l0ZXMuIERlZmF1bHRzCiAgICAjIyB0byB0aGUgY2l0ZSBkZWxpbWl0ZXIuCiAgICBhdHRyaWJ1dGUgYWZ0ZXItY29sbGFwc2UtZGVsaW1pdGVyIHsgdGV4dCB9PwogIGNpdGF0aW9uLmRpc2FtYmlndWF0ZS1vcHRpb25zID0KICAgIAogICAgIyMgU2V0IHRvICJ0cnVlIiB0byBhY3RpdmF0ZSBkaXNhbWJpZ3VhdGlvbiBieSBzaG93aW5nIG5hbWVzIHRoYXQgd2VyZQogICAgIyMgb3JpZ2luYWxseSBoaWRkZW4gYXMgYSByZXN1bHQgb2YgZXQtYWwgYWJicmV2aWF0aW9uLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJmYWxzZSIgXQogICAgYXR0cmlidXRlIGRpc2FtYmlndWF0ZS1hZGQtbmFtZXMgeyB4c2Q6Ym9vbGVhbiB9PywKICAgIAogICAgIyMgU2V0IHRvICJ0cnVlIiB0byBhY3RpdmF0ZSBkaXNhbWJpZ3VhdGlvbiBieSBleHBhbmRpbmcgbmFtZXMsIHNob3dpbmcKICAgICMjIGluaXRpYWxzIG9yIGZ1bGwgZ2l2ZW4gbmFtZXMuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImZhbHNlIiBdCiAgICBhdHRyaWJ1dGUgZGlzYW1iaWd1YXRlLWFkZC1naXZlbm5hbWUgeyB4c2Q6Ym9vbGVhbiB9PywKICAgIAogICAgIyMgU2V0IHRvICJ0cnVlIiB0byBhY3RpdmF0ZSBkaXNhbWJpZ3VhdGlvbiBieSBhZGRpbmcgeWVhci1zdWZmaXhlcwogICAgIyMgKGUuZy4sICIoRG9lIDIwMDdhLCBEb2UgMjAwN2IpIikgZm9yIGl0ZW1zIGZyb20gdGhlIHNhbWUgYXV0aG9yKHMpCiAgICAjIyBhbmQgeWVhci4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiZmFsc2UiIF0KICAgIGF0dHJpYnV0ZSBkaXNhbWJpZ3VhdGUtYWRkLXllYXItc3VmZml4IHsgeHNkOmJvb2xlYW4gfT8sCiAgICAKICAgICMjIFNwZWNpZnkgaG93IG5hbWUgYXJlIGV4cGFuZGVkIGZvciBkaXNhbWJpZ3VhdGlvbi4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiYnktY2l0ZSIgXQogICAgYXR0cmlidXRlIGdpdmVubmFtZS1kaXNhbWJpZ3VhdGlvbi1ydWxlIHsKICAgICAgCiAgICAgICMjIEVhY2ggYW1iaWd1b3VzIG5hbWVzIGlzIHByb2dyZXNzaXZlbHkgdHJhbnNmb3JtZWQgdW50aWwKICAgICAgIyMgZGlzYW1iaWd1YXRlZCAod2hlbiBkaXNhbWJpZ3VhdGlvbiBpcyBub3QgcG9zc2libGUsIHRoZSBuYW1lCiAgICAgICMjIHJlbWFpbnMgaW4gaXRzIG9yaWdpbmFsIGZvcm0pLgogICAgICAiYWxsLW5hbWVzIgogICAgICB8IAogICAgICAgICMjIEFzICJhbGwtbmFtZXMiLCBidXQgbmFtZSBleHBhbnNpb24gaXMgbGltaXRlZCB0byBzaG93aW5nCiAgICAgICAgIyMgaW5pdGlhbHMuCiAgICAgICAgImFsbC1uYW1lcy13aXRoLWluaXRpYWxzIgogICAgICB8IAogICAgICAgICMjIEFzICJhbGwtbmFtZXMiLCBidXQgZGlzYW1iaWd1YXRpb24gaXMgbGltaXRlZCB0byB0aGUgZmlyc3QgbmFtZQogICAgICAgICMjIG9mIGVhY2ggY2l0ZS4KICAgICAgICAicHJpbWFyeS1uYW1lIgogICAgICB8IAogICAgICAgICMjIEFzICJhbGwtbmFtZXMtd2l0aC1pbml0aWFscyIsIGJ1dCBkaXNhbWJpZ3VhdGlvbiBpcyBsaW1pdGVkIHRvCiAgICAgICAgIyMgdGhlIGZpcnN0IG5hbWUgb2YgZWFjaCBjaXRlLgogICAgICAgICJwcmltYXJ5LW5hbWUtd2l0aC1pbml0aWFscyIKICAgICAgfCAKICAgICAgICAjIyBBcyAiYWxsLW5hbWVzIiwgYnV0IG9ubHkgYW1iaWd1b3VzIG5hbWVzIGluIGFtYmlndW91cyBjaXRlcyBhcmUKICAgICAgICAjIyBleHBhbmRlZC4KICAgICAgICAiYnktY2l0ZSIKICAgIH0/CiAgY2l0YXRpb24ubmVhci1ub3RlLWRpc3RhbmNlID0KICAgIAogICAgIyMgU2V0IHRoZSBudW1iZXIgb2YgcHJlY2VkaW5nIG5vdGVzIChmb290bm90ZXMgb3IgZW5kbm90ZXMpIHdpdGhpbgogICAgIyMgd2hpY2ggdGhlIGN1cnJlbnQgaXRlbSBuZWVkcyB0byBoYXZlIGJlZW4gcHJldmlvdXNseSBjaXRlZCBpbiBvcmRlcgogICAgIyMgZm9yIHRoZSAibmVhci1ub3RlIiBwb3NpdGlvbiB0byBiZSAidHJ1ZSIuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gIjUiIF0KICAgIGF0dHJpYnV0ZSBuZWFyLW5vdGUtZGlzdGFuY2UgeyB4c2Q6aW50ZWdlciB9PwogIGJpYmxpb2dyYXBoeS5oYW5naW5nLWluZGVudCA9CiAgICAKICAgICMjIFNldCB0byAidHJ1ZSIgdG8gcmVuZGVyIGJpYmxpb2dyYXBoaWMgZW50cmllcyB3aXRoIGhhbmdpbmcgaW5kZW50cy4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiZmFsc2UiIF0KICAgIGF0dHJpYnV0ZSBoYW5naW5nLWluZGVudCB7IHhzZDpib29sZWFuIH0/CiAgYmlibGlvZ3JhcGh5LmxpbmUtZm9ybWF0dGluZy1vcHRpb25zID0KICAgIAogICAgIyMgU2V0IHRoZSBzcGFjaW5nIGJldHdlZW4gYmlibGlvZ3JhcGhpYyBlbnRyaWVzLgogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICIxIiBdCiAgICBhdHRyaWJ1dGUgZW50cnktc3BhY2luZyB7IHhzZDpub25OZWdhdGl2ZUludGVnZXIgfT8sCiAgICAKICAgICMjIFNldCB0aGUgc3BhY2luZyBiZXR3ZWVuIGJpYmxpb2dyYXBoaWMgbGluZXMuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gIjEiIF0KICAgIGF0dHJpYnV0ZSBsaW5lLXNwYWNpbmcgewogICAgICB4c2Q6aW50ZWdlciB7IG1pbkV4Y2x1c2l2ZSA9ICIwIiB9CiAgICB9PwogIGJpYmxpb2dyYXBoeS5zZWNvbmQtZmllbGQtYWxpZ24gPQogICAgCiAgICAjIyBVc2UgdG8gYWxpZ24gYW55IHN1YnNlcXVlbnQgbGluZXMgb2YgYmlibGlvZ3JhcGhpYyBlbnRyaWVzIHdpdGggdGhlCiAgICAjIyBiZWdpbm5pbmcgb2YgdGhlIHNlY29uZCBmaWVsZC4KICAgIGF0dHJpYnV0ZSBzZWNvbmQtZmllbGQtYWxpZ24gewogICAgICAKICAgICAgIyMgQWxpZ24gdGhlIGZpcnN0IGZpZWxkIHdpdGggdGhlIG1hcmdpbi4KICAgICAgImZsdXNoIgogICAgICB8IAogICAgICAgICMjIFB1dCB0aGUgZmlyc3QgZmllbGQgaW4gdGhlIG1hcmdpbiBhbmQgYWxpZ24gYWxsIHN1YnNlcXVlbnQKICAgICAgICAjIyBsaW5lcyBvZiB0ZXh0IHdpdGggdGhlIG1hcmdpbi4KICAgICAgICAibWFyZ2luIgogICAgfT8KICBiaWJsaW9ncmFwaHkuc3Vic2VxdWVudC1hdXRob3Itc3Vic3RpdHV0ZS1vcHRpb25zID0KICAgIAogICAgIyMgU3Vic3RpdHV0ZSBuYW1lcyB0aGF0IHJlcGVhdCBpbiBzdWJzZXF1ZW50IGJpYmxpb2dyYXBoaWMgZW50cmllcyBieQogICAgIyMgdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KICAgIGF0dHJpYnV0ZSBzdWJzZXF1ZW50LWF1dGhvci1zdWJzdGl0dXRlIHsgdGV4dCB9PywKICAgIAogICAgIyMgU3BlY2lmeSB0aGUgbWV0aG9kIG9mIHN1YnN0aXR1dGlvbiBvZiBuYW1lcyByZXBlYXRlZCBpbiBzdWJzZXF1ZW50CiAgICAjIyBiaWJsaW9ncmFwaGljIGVudHJpZXMuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImNvbXBsZXRlLWFsbCIgXQogICAgYXR0cmlidXRlIHN1YnNlcXVlbnQtYXV0aG9yLXN1YnN0aXR1dGUtcnVsZSB7CiAgICAgIAogICAgICAjIyBSZXF1aXJlcyBhIG1hdGNoIG9mIGFsbCByZW5kZXJlZCBuYW1lcyBpbiB0aGUgbmFtZSB2YXJpYWJsZSwgYW5kCiAgICAgICMjIHN1YnN0aXR1dGVzIG9uY2UgZm9yIGFsbCBuYW1lcy4KICAgICAgImNvbXBsZXRlLWFsbCIKICAgICAgfCAKICAgICAgICAjIyBSZXF1aXJlcyBhIG1hdGNoIG9mIGFsbCByZW5kZXJlZCBuYW1lcyBpbiB0aGUgbmFtZSB2YXJpYWJsZSwKICAgICAgICAjIyBhbmQgc3Vic3RpdHV0ZXMgZm9yIGVhY2ggbmFtZS4KICAgICAgICAiY29tcGxldGUtZWFjaCIKICAgICAgfCAKICAgICAgICAjIyBTdWJzdGl0dXRlcyBmb3IgZWFjaCBuYW1lLCB1bnRpbCB0aGUgZmlyc3QgbWlzbWF0Y2guCiAgICAgICAgInBhcnRpYWwtZWFjaCIKICAgICAgfCAKICAgICAgICAjIyBTdWJzdGl0dXRlcyB0aGUgZmlyc3QgbmFtZSBpZiBpdCBtYXRjaGVzLgogICAgICAgICJwYXJ0aWFsLWZpcnN0IgogICAgfT8KICAKICAjIyBPcHRpb25zIGFmZmVjdGluZyBjczpuYW1lcywgZm9yIGNzOnN0eWxlLCBjczpjaXRhdGlvbiBhbmQgY3M6YmlibGlvZ3JhcGh5LgogIG5hbWVzLWluaGVyaXRhYmxlLW9wdGlvbnMgPQogICAgCiAgICAjIyBJbmhlcml0YWJsZSBuYW1lIG9wdGlvbiwgY29tcGFuaW9uIGZvciAiZGVsaW1pdGVyIiBvbiBjczpuYW1lcy4KICAgIGF0dHJpYnV0ZSBuYW1lcy1kZWxpbWl0ZXIgeyB0ZXh0IH0/CiAgCiAgIyMgT3B0aW9ucyBhZmZlY3RpbmcgY3M6bmFtZSwgZm9yIGNzOnN0eWxlLCBjczpjaXRhdGlvbiBhbmQgY3M6YmlibGlvZ3JhcGh5LgogIG5hbWUtaW5oZXJpdGFibGUtb3B0aW9ucyA9CiAgICBuYW1lLmF0dHJpYnV0ZXMsCiAgICAKICAgICMjIEluaGVyaXRhYmxlIG5hbWUgb3B0aW9uLCBjb21wYW5pb24gZm9yICJkZWxpbWl0ZXIiIG9uIGNzOm5hbWUuCiAgICBhdHRyaWJ1dGUgbmFtZS1kZWxpbWl0ZXIgeyB0ZXh0IH0/LAogICAgCiAgICAjIyBJbmhlcml0YWJsZSBuYW1lIG9wdGlvbiwgY29tcGFuaW9uIGZvciAiZm9ybSIgb24gY3M6bmFtZS4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAibG9uZyIgXQogICAgYXR0cmlidXRlIG5hbWUtZm9ybSB7ICJsb25nIiB8ICJzaG9ydCIgfCAiY291bnQiIH0/Cn0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiMjIGNzOnNvcnQgLSBTb3J0aW5nCmRpdiB7CiAgc29ydCA9CiAgICAKICAgICMjIFNwZWNpZnkgaG93IGNpdGVzIGFuZCBiaWJsaW9ncmFwaGljIGVudHJpZXMgc2hvdWxkIGJlIHNvcnRlZC4gQnkKICAgICMjIGRlZmF1bHQsIGl0ZW1zIGFwcGVhciBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhleSB3ZXJlIGNpdGVkLgogICAgZWxlbWVudCBjczpzb3J0IHsgc29ydC5rZXkrIH0KICBzb3J0LmtleSA9CiAgICBlbGVtZW50IGNzOmtleSB7CiAgICAgIChhdHRyaWJ1dGUgdmFyaWFibGUgeyB2YXJpYWJsZXMgfQogICAgICAgfCBhdHRyaWJ1dGUgbWFjcm8geyB4c2Q6Tk1UT0tFTiB9KSwKICAgICAgCiAgICAgICMjIFRoZSBtaW5pbXVtIG51bWJlciBvZiBuYW1lcyBuZWVkZWQgaW4gYSBuYW1lIHZhcmlhYmxlIHRvIGFjdGl2YXRlCiAgICAgICMjIG5hbWUgbGlzdCB0cnVuY2F0aW9uLiBPdmVycmlkZXMgdGhlIHZhbHVlcyBzZXQgb24gYW55CiAgICAgICMjICJldC1hbC0oc3Vic2VxdWVudC0pbWluIiBhdHRyaWJ1dGVzLgogICAgICBhdHRyaWJ1dGUgbmFtZXMtbWluIHsgeHNkOmludGVnZXIgfT8sCiAgICAgIAogICAgICAjIyBUaGUgbnVtYmVyIG9mIG5hbWVzIHRvIHJlbmRlciB3aGVuIG5hbWUgbGlzdCB0cnVuY2F0aW9uIGlzCiAgICAgICMjIGFjdGl2YXRlZC4gT3ZlcnJpZGVzIHRoZSB2YWx1ZXMgc2V0IG9uIHRoZQogICAgICAjIyAiZXQtYWwtKHN1YnNlcXVlbnQtKXVzZS1maXJzdCIgYXR0cmlidXRlcy4KICAgICAgYXR0cmlidXRlIG5hbWVzLXVzZS1maXJzdCB7IHhzZDppbnRlZ2VyIH0/LAogICAgICAKICAgICAgIyMgVXNlIHRvIG92ZXJyaWRlIHRoZSB2YWx1ZSBvZiB0aGUgImV0LWF0LXVzZS1sYXN0IiBhdHRyaWJ1dGUuCiAgICAgIGF0dHJpYnV0ZSBuYW1lcy11c2UtbGFzdCB7IHhzZDpib29sZWFuIH0/LAogICAgICAKICAgICAgIyMgU2VsZWN0IGJldHdlZW4gYW4gYXNjZW5kaW5nIGFuZCBkZXNjZW5kaW5nIHNvcnQuCiAgICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiYXNjZW5kaW5nIiBdCiAgICAgIGF0dHJpYnV0ZSBzb3J0IHsgImFzY2VuZGluZyIgfCAiZGVzY2VuZGluZyIgfT8KICAgIH0KfQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKIyMgRm9ybWF0dGluZyBhdHRyaWJ1dGVzLgpkaXYgewogIGFmZml4ZXMgPQogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICIiIF0gYXR0cmlidXRlIHByZWZpeCB7IHRleHQgfT8sCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gIiIgXSBhdHRyaWJ1dGUgc3VmZml4IHsgdGV4dCB9PwogIGRlbGltaXRlciA9IGF0dHJpYnV0ZSBkZWxpbWl0ZXIgeyB0ZXh0IH0/CiAgZGlzcGxheSA9CiAgICAKICAgICMjIEJ5IGRlZmF1bHQsIGJpYmxpb2dyYXBoaWMgZW50cmllcyBjb25zaXN0IG9mIGNvbnRpbnVvdXMgcnVucyBvZiB0ZXh0LgogICAgIyMgV2l0aCB0aGUgImRpc3BsYXkiIGF0dHJpYnV0ZSwgcG9ydGlvbnMgb2YgZWFjaCBlbnRyeSBjYW4gYmUKICAgICMjIGluZGl2aWR1YWxseSBwb3NpdGlvbmVkLgogICAgYXR0cmlidXRlIGRpc3BsYXkgewogICAgICAKICAgICAgIyMgUGxhY2VzIHRoZSBjb250ZW50IGluIGEgYmxvY2sgc3RyZXRjaGluZyBmcm9tIG1hcmdpbiB0byBtYXJnaW4uCiAgICAgICJibG9jayIKICAgICAgfCAKICAgICAgICAjIyBQbGFjZXMgdGhlIGNvbnRlbnQgaW4gYSBibG9jayBzdGFydGluZyBhdCB0aGUgbGVmdCBtYXJnaW4uCiAgICAgICAgImxlZnQtbWFyZ2luIgogICAgICB8IAogICAgICAgICMjIFBsYWNlcyB0aGUgY29udGVudCBpbiBhIGJsb2NrIHRvIHRoZSByaWdodCBvZiBhIHByZWNlZGluZwogICAgICAgICMjICJsZWZ0LW1hcmdpbiIgYmxvY2suCiAgICAgICAgInJpZ2h0LWlubGluZSIKICAgICAgfCAKICAgICAgICAjIyBQbGFjZXMgdGhlIGNvbnRlbnQgaW4gYSBibG9jayBpbmRlbnRlZCB0byB0aGUgcmlnaHQgYnkgYSBzdGFuZGFyZAogICAgICAgICMjIGFtb3VudC4KICAgICAgICAiaW5kZW50IgogICAgfT8KICAKICAjIyBUaGUgZm9udC1mb3JtYXR0aW5nIGF0dHJpYnV0ZXMgYXJlIGJhc2VkIG9uIHRob3NlIG9mIENTUyBhbmQgWFNMLUZPLgogIGZvbnQtZm9ybWF0dGluZyA9CiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gIm5vcm1hbCIgXQogICAgYXR0cmlidXRlIGZvbnQtc3R5bGUgeyAiaXRhbGljIiB8ICJub3JtYWwiIHwgIm9ibGlxdWUiIH0/LAogICAgWyBhOmRlZmF1bHRWYWx1ZSA9ICJub3JtYWwiIF0KICAgIGF0dHJpYnV0ZSBmb250LXZhcmlhbnQgeyAibm9ybWFsIiB8ICJzbWFsbC1jYXBzIiB9PywKICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAibm9ybWFsIiBdCiAgICBhdHRyaWJ1dGUgZm9udC13ZWlnaHQgeyAibm9ybWFsIiB8ICJib2xkIiB8ICJsaWdodCIgfT8sCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gIm5vbmUiIF0KICAgIGF0dHJpYnV0ZSB0ZXh0LWRlY29yYXRpb24geyAibm9uZSIgfCAidW5kZXJsaW5lIiB9PywKICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiYmFzZWxpbmUiIF0KICAgIGF0dHJpYnV0ZSB2ZXJ0aWNhbC1hbGlnbiB7ICJiYXNlbGluZSIgfCAic3VwIiB8ICJzdWIiIH0/CiAgcXVvdGVzID0KICAgIAogICAgIyMgV2hlbiBzZXQgdG8gInRydWUiLCBxdW90ZXMgYXJlIHBsYWNlZCBhcm91bmQgdGhlIHJlbmRlcmVkIHRleHQuCiAgICBbIGE6ZGVmYXVsdFZhbHVlID0gImZhbHNlIiBdIGF0dHJpYnV0ZSBxdW90ZXMgeyB4c2Q6Ym9vbGVhbiB9PwogIHN0cmlwLXBlcmlvZHMgPQogICAgCiAgICAjIyBXaGVuIHNldCB0byAidHJ1ZSIsIHBlcmlvZHMgYXJlIHJlbW92ZWQgZnJvbSB0aGUgcmVuZGVyZWQgdGV4dC4KICAgIFsgYTpkZWZhdWx0VmFsdWUgPSAiZmFsc2UiIF0KICAgIGF0dHJpYnV0ZSBzdHJpcC1wZXJpb2RzIHsgeHNkOmJvb2xlYW4gfT8KICB0ZXh0LWNhc2UgPQogICAgYXR0cmlidXRlIHRleHQtY2FzZSB7CiAgICAgIAogICAgICAjIyBSZW5kZXJzIHRleHQgaW4gbG93ZXJjYXNlLgogICAgICAibG93ZXJjYXNlIgogICAgICB8IAogICAgICAgICMjIFJlbmRlcnMgdGV4dCBpbiB1cHBlcmNhc2UuCiAgICAgICAgInVwcGVyY2FzZSIKICAgICAgfCAKICAgICAgICAjIyBDYXBpdGFsaXplcyB0aGUgZmlyc3QgY2hhcmFjdGVyIChvdGhlciBjaGFyYWN0ZXJzIHJlbWFpbiBpbgogICAgICAgICMjIHRoZWlyIG9yaWdpbmFsIGNhc2UpLgogICAgICAgICJjYXBpdGFsaXplLWZpcnN0IgogICAgICB8IAogICAgICAgICMjIENhcGl0YWxpemVzIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgZXZlcnkgd29yZCAob3RoZXIgY2hhcmFjdGVycwogICAgICAgICMjIHJlbWFpbiBpbiB0aGVpciBvcmlnaW5hbCBjYXNlKS4KICAgICAgICAiY2FwaXRhbGl6ZS1hbGwiCiAgICAgIHwgCiAgICAgICAgIyMgUmVuZGVycyB0ZXh0IGluIHRpdGxlIGNhc2UuCiAgICAgICAgInRpdGxlIgogICAgICB8IAogICAgICAgICMjIFJlbmRlcnMgdGV4dCBpbiBzZW50ZW5jZSBjYXNlLgogICAgICAgICMjIERlcHJlY2F0ZWQuIFdpbGwgYmUgcmVtb3ZlZCBpbiBDU0wgMS4xCiAgICAgICAgInNlbnRlbmNlIgogICAgfT8KfQoAALtIAACmgQAAxEgAAAAAAADwFwEATm8gZXJyb3IgaW5mb3JtYXRpb24ASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATXVsdGlob3AgYXR0ZW1wdGVkAAAAAAClAlsA8AG1BYwFJQGDBh0DlAT/AMcDMQMLBrwBjwF/A8oEKwDaBq8AQgNOA9wBDgQVAKEGDQGUAgsCOAZkArwC/wJdA+cECwfPAssF7wXbBeECHgZFAoUAggJsA28E8QDzAxgF2QDaA0wGVAJ7AZ0DvQQAAFEAFQK7ALMDbQD/AYUELwX5BDgAZQFGAZ8AtwaoAXMCUwE=");l(e,53864,"IQQAAAAAAAAAAC8C");l(e,53896,"NQRHBFYE");l(e,53918,"oAQ=");l(e,53938,"RgVgBW4FYQYAAM8BAAAAAAAAAADJBukG+QYAAAAA0XSeAFedvSqAcFIP//8+JwoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFGAAAADUAAABxAAAAa////877//+Sv///AAAAAAAAAAAZAAoAGRkZAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABkAEQoZGRkDCgcAAQAJCxgAAAkGCwAACwAGGQAAABkZGQ==");l(e,54129,"DgAAAAAAAAAAGQAKDRkZGQANAAACAAkOAAAACQAOAAAO");l(e,54187,"DA==");l(e,54199,"EwAAAAATAAAAAAkMAAAAAAAMAAAM");l(e,54245,"EA==");l(e,54257,"DwAAAAQPAAAAAAkQAAAAAAAQAAAQ");l(e,54303,"Eg==");l(e,54315,"EQAAAAARAAAAAAkSAAAAAAASAAASAAAaAAAAGhoa");l(e,54370,"GgAAABoaGgAAAAAAAAk=");l(e,54419,"FA==");l(e,54431,"FwAAAAAXAAAAAAkUAAAAAAAUAAAU");l(e,54477,"Fg==");l(e,54489,"FQAAAAAVAAAAAAkWAAAAAAAWAAAWAAAwMTIzNDU2Nzg5QUJDREVG");l(e,54528,"GQAAABoAAAAbAAAAIgAAAPgQAADKCgAAtAYAAKIFAACgBgAAFAQAACkPAAANDQAADBIAALwGAADIBQAANhMAAJsSAAA8EwAAMgYAABgGAAAJEAAAuAUAAKIOAAAkAAAAJwAAACkAAAAyAAAAAAAAACsrAADiFQAAohQAAGgQAACjDQAAowgAAIcUAABUFgAABRYAALYOAABGBwAAaA4AAJkPAAB2BwAAhg0AAO0TAAD8DwAAPggAADMJAAAIBQAAfQgAAPsJAABRBgAAOQYAAC4OAAAYCgAAMxYAAOQVAAABEgAArAkAAMgJAAAHCQAANgoAAN4IAABnFAAAzAYAAIwPAAC1BwAAUAsAAN0JAABUFAAAGQ4AANQKAADNDgAAfhQAAHYPAAAAFAAAgQ8AAKMPAADBCAAAXw0AAHkNAAAmCwAAlQUAAP8UAABQCAAA+gcAANMNAACOCQAAHRUAAPQUAADbCwAAkQ0AAHgGAABwFgAAIRYAADIPAABNCQAA4w4AAGEJAADJBwAA8AgAAFQPAADBDgAAIgkAAAMNAACVCAAA7w4AAHIUAADkDQAA7BQAABcRAABfFAAAExUAAIYHAADhBwAAgwkAAFoHAACQFAAALwoAAAEPAACmBQAAChUAAK4PAACoDgAAaAsAAJ8JAAA4CwAAsBUAAHMPAAD6DgAAoA0AAEMHAACvBQAArhUAAJ8UAACzEgAA4A4AAKwVAABAFAAAcA8AAJ0NAABJFQAAnBQAAD0UAACwEgAAZRAAALUPAACaDQAAkAsAAEcVAACZFAAAfg8AAPcOAACXDQAAJxUAAG0PAABcDQAAjQs=");l(e,55172,"HwAAAH8AAACfAAAADwcAAA8HAAALGAAADhgAAAwgAAAPIAAAKiAAAC4gAABqIAAAbyAAAP/+AAD//gAA+f8AAPv/AABz0QEAetEBAAEADgABAA4AIAAOAH8ADgAA4AAA//gAAAAADwD9/w8AAAAQAP3/EAAA+wAAT/sAAAAGAAD/BgAAUPsAAP/9AABw/gAA/v4AADAFAACPBQAAkCEAAP8hAAAAAAAAfwAAAIAJAAD/CQAAgCUAAJ8lAAAAMQAALzEAAKAxAAC/MQAAACUAAH8lAAAAKAAA/ygAAADQAQD/0AEAADMAAP8zAAAw/gAAT/4AAAD5AAD/+gAAAPgCAB/6AgCALgAA/y4AAAAwAAA/MAAAAE4AAP+fAAAANAAAtU0AAAAAAgDWpgIAoBMAAP8TAAAAAwAAbwMAACD+AAAv/gAA0CAAAP8gAAAAJAAAPyQAAKAgAADPIAAAAAQAAP8EAAAABAEATwQBAAAJAAB/CQAAACcAAL8nAABgJAAA/yQAAAAyAAD/MgAAABIAAH8TAAAAIAAAbyAAAKAlAAD/JQAAoBAAAP8QAAAwAwEATwMBAHADAAD/AwAAAB8AAP8fAACACgAA/woAAAAKAAB/CgAAAP8AAO//AAAwMQAAjzEAAAARAAD/EQAAAKwAAKPXAACQBQAA/wUAAEAwAACfMAAAUAIAAK8CAADwLwAA/y8AAJAxAACfMQAAAC8AAN8vAACADAAA/wwAAKAwAAD/MAAAgBcAAP8XAACADgAA/w4AAIAAAAD/AAAAAAEAAH8BAACAAQAATwIAAAAeAAD/HgAAACEAAE8hAAAADQAAfw0AAADUAQD/1wEAACIAAP8iAAAAJgAA/yYAAAAjAAD/IwAAABgAAK8YAAAA0QEA/9EBAAAQAACfEAAAUCEAAI8hAACAFgAAnxYAAAADAQAvAwEAQCQAAF8kAAAACwAAfws=");l(e,55905,"4AAA//gAAAAADwD9/w8AAAAQAP3/EACgFgAA/xYAAIANAAD/DQAAUP4AAG/+AACwAgAA/wI=");l(e,55968,"//4AAP/+AADw/wAA/f8AAHAgAACfIAAAAAcAAE8HAAAAAA4AfwAOAIALAAD/CwAAAAwAAH8MAACABwAAvwcAAAAOAAB/DgAAAA8AAP8PAAAAFAAAfxYAAJCkAADPpAAAAKAAAI+k");l(e,56080,"YQAAAHoAAACqAAAAqgAAALUAAAC1AAAAugAAALoAAADfAAAA9gAAAPgAAAD/AAAAAQEAAAEBAAADAQAAAwEAAAUBAAAFAQAABwEAAAcBAAAJAQAACQEAAAsBAAALAQAADQEAAA0BAAAPAQAADwEAABEBAAARAQAAEwEAABMBAAAVAQAAFQEAABcBAAAXAQAAGQEAABkBAAAbAQAAGwEAAB0BAAAdAQAAHwEAAB8BAAAhAQAAIQEAACMBAAAjAQAAJQEAACUBAAAnAQAAJwEAACkBAAApAQAAKwEAACsBAAAtAQAALQEAAC8BAAAvAQAAMQEAADEBAAAzAQAAMwEAADUBAAA1AQAANwEAADgBAAA6AQAAOgEAADwBAAA8AQAAPgEAAD4BAABAAQAAQAEAAEIBAABCAQAARAEAAEQBAABGAQAARgEAAEgBAABJAQAASwEAAEsBAABNAQAATQEAAE8BAABPAQAAUQEAAFEBAABTAQAAUwEAAFUBAABVAQAAVwEAAFcBAABZAQAAWQEAAFsBAABbAQAAXQEAAF0BAABfAQAAXwEAAGEBAABhAQAAYwEAAGMBAABlAQAAZQEAAGcBAABnAQAAaQEAAGkBAABrAQAAawEAAG0BAABtAQAAbwEAAG8BAABxAQAAcQEAAHMBAABzAQAAdQEAAHUBAAB3AQAAdwEAAHoBAAB6AQAAfAEAAHwBAAB+AQAAgAEAAIMBAACDAQAAhQEAAIUBAACIAQAAiAEAAIwBAACNAQAAkgEAAJIBAACVAQAAlQEAAJkBAACbAQAAngEAAJ4BAAChAQAAoQEAAKMBAACjAQAApQEAAKUBAACoAQAAqAEAAKoBAACrAQAArQEAAK0BAACwAQAAsAEAALQBAAC0AQAAtgEAALYBAAC5AQAAugEAAL0BAAC/AQAAxgEAAMYBAADJAQAAyQEAAMwBAADMAQAAzgEAAM4BAADQAQAA0AEAANIBAADSAQAA1AEAANQBAADWAQAA1gEAANgBAADYAQAA2gEAANoBAADcAQAA3QEAAN8BAADfAQAA4QEAAOEBAADjAQAA4wEAAOUBAADlAQAA5wEAAOcBAADpAQAA6QEAAOsBAADrAQAA7QEAAO0BAADvAQAA8AEAAPMBAADzAQAA9QEAAPUBAAD5AQAA+QEAAPsBAAD7AQAA/QEAAP0BAAD/AQAA/wEAAAECAAABAgAAAwIAAAMCAAAFAgAABQIAAAcCAAAHAgAACQIAAAkCAAALAgAACwIAAA0CAAANAgAADwIAAA8CAAARAgAAEQIAABMCAAATAgAAFQIAABUCAAAXAgAAFwIAABkCAAAZAgAAGwIAABsCAAAdAgAAHQIAAB8CAAAfAgAAIwIAACMCAAAlAgAAJQIAACcCAAAnAgAAKQIAACkCAAArAgAAKwIAAC0CAAAtAgAALwIAAC8CAAAxAgAAMQIAADMCAAAzAgAAUAIAAK0CAACQAwAAkAMAAKwDAADOAwAA0AMAANEDAADVAwAA1wMAANsDAADbAwAA3QMAAN0DAADfAwAA3wMAAOEDAADhAwAA4wMAAOMDAADlAwAA5QMAAOcDAADnAwAA6QMAAOkDAADrAwAA6wMAAO0DAADtAwAA7wMAAPMDAAD1AwAA9QMAADAEAABfBAAAYQQAAGEEAABjBAAAYwQAAGUEAABlBAAAZwQAAGcEAABpBAAAaQQAAGsEAABrBAAAbQQAAG0EAABvBAAAbwQAAHEEAABxBAAAcwQAAHMEAAB1BAAAdQQAAHcEAAB3BAAAeQQAAHkEAAB7BAAAewQAAH0EAAB9BAAAfwQAAH8EAACBBAAAgQQAAI0EAACNBAAAjwQAAI8EAACRBAAAkQQAAJMEAACTBAAAlQQAAJUEAACXBAAAlwQAAJkEAACZBAAAmwQAAJsEAACdBAAAnQQAAJ8EAACfBAAAoQQAAKEEAACjBAAAowQAAKUEAAClBAAApwQAAKcEAACpBAAAqQQAAKsEAACrBAAArQQAAK0EAACvBAAArwQAALEEAACxBAAAswQAALMEAAC1BAAAtQQAALcEAAC3BAAAuQQAALkEAAC7BAAAuwQAAL0EAAC9BAAAvwQAAL8EAADCBAAAwgQAAMQEAADEBAAAyAQAAMgEAADMBAAAzAQAANEEAADRBAAA0wQAANMEAADVBAAA1QQAANcEAADXBAAA2QQAANkEAADbBAAA2wQAAN0EAADdBAAA3wQAAN8EAADhBAAA4QQAAOMEAADjBAAA5QQAAOUEAADnBAAA5wQAAOkEAADpBAAA6wQAAOsEAADtBAAA7QQAAO8EAADvBAAA8QQAAPEEAADzBAAA8wQAAPUEAAD1BAAA+QQAAPkEAABhBQAAhwUAAAEeAAABHgAAAx4AAAMeAAAFHgAABR4AAAceAAAHHgAACR4AAAkeAAALHgAACx4AAA0eAAANHgAADx4AAA8eAAARHgAAER4AABMeAAATHgAAFR4AABUeAAAXHgAAFx4AABkeAAAZHgAAGx4AABseAAAdHgAAHR4AAB8eAAAfHgAAIR4AACEeAAAjHgAAIx4AACUeAAAlHgAAJx4AACceAAApHgAAKR4AACseAAArHgAALR4AAC0eAAAvHgAALx4AADEeAAAxHgAAMx4AADMeAAA1HgAANR4AADceAAA3HgAAOR4AADkeAAA7HgAAOx4AAD0eAAA9HgAAPx4AAD8eAABBHgAAQR4AAEMeAABDHgAARR4AAEUeAABHHgAARx4AAEkeAABJHgAASx4AAEseAABNHgAATR4AAE8eAABPHgAAUR4AAFEeAABTHgAAUx4AAFUeAABVHgAAVx4AAFceAABZHgAAWR4AAFseAABbHgAAXR4AAF0eAABfHgAAXx4AAGEeAABhHgAAYx4AAGMeAABlHgAAZR4AAGceAABnHgAAaR4AAGkeAABrHgAAax4AAG0eAABtHgAAbx4AAG8eAABxHgAAcR4AAHMeAABzHgAAdR4AAHUeAAB3HgAAdx4AAHkeAAB5HgAAex4AAHseAAB9HgAAfR4AAH8eAAB/HgAAgR4AAIEeAACDHgAAgx4AAIUeAACFHgAAhx4AAIceAACJHgAAiR4AAIseAACLHgAAjR4AAI0eAACPHgAAjx4AAJEeAACRHgAAkx4AAJMeAACVHgAAmx4AAKEeAAChHgAAox4AAKMeAAClHgAApR4AAKceAACnHgAAqR4AAKkeAACrHgAAqx4AAK0eAACtHgAArx4AAK8eAACxHgAAsR4AALMeAACzHgAAtR4AALUeAAC3HgAAtx4AALkeAAC5HgAAux4AALseAAC9HgAAvR4AAL8eAAC/HgAAwR4AAMEeAADDHgAAwx4AAMUeAADFHgAAxx4AAMceAADJHgAAyR4AAMseAADLHgAAzR4AAM0eAADPHgAAzx4AANEeAADRHgAA0x4AANMeAADVHgAA1R4AANceAADXHgAA2R4AANkeAADbHgAA2x4AAN0eAADdHgAA3x4AAN8eAADhHgAA4R4AAOMeAADjHgAA5R4AAOUeAADnHgAA5x4AAOkeAADpHgAA6x4AAOseAADtHgAA7R4AAO8eAADvHgAA8R4AAPEeAADzHgAA8x4AAPUeAAD1HgAA9x4AAPceAAD5HgAA+R4AAAAfAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAH8gAAB/IAAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE0EAQAa1AEAM9QBAE7UAQBU1AEAVtQBAGfUAQCC1AEAm9QBALbUAQC51AEAu9QBALvUAQC91AEAwNQBAMLUAQDD1AEAxdQBAM/UAQDq1AEAA9UBAB7VAQA31QEAUtUBAGvVAQCG1QEAn9UBALrVAQDT1QEA7tUBAAfWAQAi1gEAO9YBAFbWAQBv1gEAitYBAKPWAQDC1gEA2tYBANzWAQDh1gEA/NYBABTXAQAW1wEAG9cBADbXAQBO1wEAUNcBAFXXAQBw1wEAiNcBAIrXAQCP1wEAqtcBAMLXAQDE1wEAydcBALACAAC4AgAAuwIAAMECAADQAgAA0QIAAOACAADkAgAA7gIAAO4CAAB6AwAAegMAAFkFAABZBQAAQAYAAEAGAADlBgAA5gYAAEYOAABGDgAAxg4AAMYOAABDGAAAQxgAAAUwAAAFMAAAMTAAADUwAACdMAAAnjAAAPwwAAD+MAAAcP8AAHD/AACe/wAAn/8AALsBAAC7AQAAwAEAAMMBAADQBQAA6gUAAPAFAADyBQAAIQYAADoGAABBBgAASgYAAHEGAADTBgAA1QYAANUGAAD6BgAA/AYAABAHAAAQBwAAEgcAACwHAACABwAApQcAAAUJAAA5CQAAPQkAAD0JAABQCQAAUAkAAFgJAABhCQAAhQkAAIwJAACPCQAAkAkAAJMJAACoCQAAqgkAALAJAACyCQAAsgkAALYJAAC5CQAA3AkAAN0JAADfCQAA4QkAAPAJAADxCQAABQoAAAoKAAAPCgAAEAoAABMKAAAoCgAAKgoAADAKAAAyCgAAMwoAADUKAAA2CgAAOAoAADkKAABZCgAAXAoAAF4KAABeCgAAcgoAAHQKAACFCgAAiwoAAI0KAACNCgAAjwoAAJEKAACTCgAAqAoAAKoKAACwCgAAsgoAALMKAAC1CgAAuQoAAL0KAAC9CgAA0AoAANAKAADgCgAA4AoAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA2CwAAOQsAAD0LAAA9CwAAXAsAAF0LAABfCwAAYQsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAtQsAALcLAAC5CwAABQwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADMMAAA1DAAAOQwAAGAMAABhDAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAAN4MAADeDAAA4AwAAOEMAAAFDQAADA0AAA4NAAAQDQAAEg0AACgNAAAqDQAAOQ0AAGANAABhDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAAEOAAAwDgAAMg4AADMOAABADgAARQ4AAIEOAACCDgAAhA4AAIQOAACHDgAAiA4AAIoOAACKDgAAjQ4AAI0OAACUDgAAlw4AAJkOAACfDgAAoQ4AAKMOAAClDgAApQ4AAKcOAACnDgAAqg4AAKsOAACtDgAAsA4AALIOAACzDgAAvQ4AAL0OAADADgAAxA4AANwOAADdDgAAAA8AAAAPAABADwAARw8AAEkPAABqDwAAiA8AAIsPAAAAEAAAIRAAACMQAAAnEAAAKRAAACoQAABQEAAAVRAAANAQAAD2EAAAABEAAFkRAABfEQAAohEAAKgRAAD5EQAAABIAAAYSAAAIEgAARhIAAEgSAABIEgAAShIAAE0SAABQEgAAVhIAAFgSAABYEgAAWhIAAF0SAABgEgAAhhIAAIgSAACIEgAAihIAAI0SAACQEgAArhIAALASAACwEgAAshIAALUSAAC4EgAAvhIAAMASAADAEgAAwhIAAMUSAADIEgAAzhIAANASAADWEgAA2BIAAO4SAADwEgAADhMAABATAAAQEwAAEhMAABUTAAAYEwAAHhMAACATAABGEwAASBMAAFoTAACgEwAA9BMAAAEUAABsFgAAbxYAAHYWAACBFgAAmhYAAKAWAADqFgAAgBcAALMXAAAgGAAAQhgAAEQYAAB3GAAAgBgAAKgYAAA1IQAAOCEAAAYwAAAGMAAAQTAAAJQwAAChMAAA+jAAAAUxAAAsMQAAMTEAAI4xAACgMQAAtzEAAAA0AAC1TQAAAE4AAKWfAAAAoAAAjKQAAACsAACj1wAAAPkAAC36AAAd+wAAHfsAAB/7AAAo+wAAKvsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AACx+wAA0/sAAD39AABQ/QAAj/0AAJL9AADH/QAA8P0AAPv9AABw/gAAcv4AAHT+AAB0/gAAdv4AAPz+AABm/wAAb/8AAHH/AACd/wAAoP8AAL7/AADC/wAAx/8AAMr/AADP/wAA0v8AANf/AADa/wAA3P8AAAADAQAeAwEAMAMBAEkDAQAAAAIA1qYCAAD4AgAd+gIAxQEAAMUBAADIAQAAyAEAAMsBAADLAQAA8gEAAPIBAACIHwAAjx8AAJgfAACfHwAAqB8AAK8fAAC8HwAAvB8AAMwfAADMHwAA/B8AAPwfAABBAAAAWgAAAMAAAADWAAAA2AAAAN4AAAAAAQAAAAEAAAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxAEAAMcBAADHAQAAygEAAMoBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPEBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAiAgAAIgIAACQCAAAkAgAAJgIAACYCAAAoAgAAKAIAACoCAAAqAgAALAIAACwCAAAuAgAALgIAADACAAAwAgAAMgIAADICAACGAwAAhgMAAIgDAACKAwAAjAMAAIwDAACOAwAAjwMAAJEDAAChAwAAowMAAKsDAADSAwAA1AMAANoDAADaAwAA3AMAANwDAADeAwAA3gMAAOADAADgAwAA4gMAAOIDAADkAwAA5AMAAOYDAADmAwAA6AMAAOgDAADqAwAA6gMAAOwDAADsAwAA7gMAAO4DAAD0AwAA9AMAAAAEAAAvBAAAYAQAAGAEAABiBAAAYgQAAGQEAABkBAAAZgQAAGYEAABoBAAAaAQAAGoEAABqBAAAbAQAAGwEAABuBAAAbgQAAHAEAABwBAAAcgQAAHIEAAB0BAAAdAQAAHYEAAB2BAAAeAQAAHgEAAB6BAAAegQAAHwEAAB8BAAAfgQAAH4EAACABAAAgAQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxwQAAMcEAADLBAAAywQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA+AQAAPgEAAAxBQAAVgUAAKAQAADFEAAAAB4AAAAeAAACHgAAAh4AAAQeAAAEHgAABh4AAAYeAAAIHgAACB4AAAoeAAAKHgAADB4AAAweAAAOHgAADh4AABAeAAAQHgAAEh4AABIeAAAUHgAAFB4AABYeAAAWHgAAGB4AABgeAAAaHgAAGh4AABweAAAcHgAAHh4AAB4eAAAgHgAAIB4AACIeAAAiHgAAJB4AACQeAAAmHgAAJh4AACgeAAAoHgAAKh4AACoeAAAsHgAALB4AAC4eAAAuHgAAMB4AADAeAAAyHgAAMh4AADQeAAA0HgAANh4AADYeAAA4HgAAOB4AADoeAAA6HgAAPB4AADweAAA+HgAAPh4AAEAeAABAHgAAQh4AAEIeAABEHgAARB4AAEYeAABGHgAASB4AAEgeAABKHgAASh4AAEweAABMHgAATh4AAE4eAABQHgAAUB4AAFIeAABSHgAAVB4AAFQeAABWHgAAVh4AAFgeAABYHgAAWh4AAFoeAABcHgAAXB4AAF4eAABeHgAAYB4AAGAeAABiHgAAYh4AAGQeAABkHgAAZh4AAGYeAABoHgAAaB4AAGoeAABqHgAAbB4AAGweAABuHgAAbh4AAHAeAABwHgAAch4AAHIeAAB0HgAAdB4AAHYeAAB2HgAAeB4AAHgeAAB6HgAAeh4AAHweAAB8HgAAfh4AAH4eAACAHgAAgB4AAIIeAACCHgAAhB4AAIQeAACGHgAAhh4AAIgeAACIHgAAih4AAIoeAACMHgAAjB4AAI4eAACOHgAAkB4AAJAeAACSHgAAkh4AAJQeAACUHgAAoB4AAKAeAACiHgAAoh4AAKQeAACkHgAAph4AAKYeAACoHgAAqB4AAKoeAACqHgAArB4AAKweAACuHgAArh4AALAeAACwHgAAsh4AALIeAAC0HgAAtB4AALYeAAC2HgAAuB4AALgeAAC6HgAAuh4AALweAAC8HgAAvh4AAL4eAADAHgAAwB4AAMIeAADCHgAAxB4AAMQeAADGHgAAxh4AAMgeAADIHgAAyh4AAMoeAADMHgAAzB4AAM4eAADOHgAA0B4AANAeAADSHgAA0h4AANQeAADUHgAA1h4AANYeAADYHgAA2B4AANoeAADaHgAA3B4AANweAADeHgAA3h4AAOAeAADgHgAA4h4AAOIeAADkHgAA5B4AAOYeAADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAAC4HwAAux8AAMgfAADLHwAA2B8AANsfAADoHwAA7B8AAPgfAAD7HwAAAiEAAAIhAAAHIQAAByEAAAshAAANIQAAECEAABIhAAAVIQAAFSEAABkhAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAAC0hAAAwIQAAMSEAADMhAAAzIQAAIf8AADr/AAAABAEAJQQBAADUAQAZ1AEANNQBAE3UAQBo1AEAgdQBAJzUAQCc1AEAntQBAJ/UAQCi1AEAotQBAKXUAQCm1AEAqdQBAKzUAQCu1AEAtdQBANDUAQDp1AEABNUBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQA41QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAbNUBAIXVAQCg1QEAudUBANTVAQDt1QEACNYBACHWAQA81gEAVdYBAHDWAQCJ1gEAqNYBAMDWAQDi1gEA+tYBABzXAQA01wEAVtcBAG7XAQCQ1wEAqNcB");l(e,64288,"AwkAAAMJAAA+CQAAQAkAAEkJAABMCQAAggkAAIMJAAC+CQAAwAkAAMcJAADICQAAywkAAMwJAADXCQAA1wkAAD4KAABACgAAgwoAAIMKAAC+CgAAwAoAAMkKAADJCgAAywoAAMwKAAACCwAAAwsAAD4LAAA+CwAAQAsAAEALAABHCwAASAsAAEsLAABMCwAAVwsAAFcLAACDCwAAgwsAAL4LAAC/CwAAwQsAAMILAADGCwAAyAsAAMoLAADMCwAA1wsAANcLAAABDAAAAwwAAEEMAABEDAAAggwAAIMMAAC+DAAAvgwAAMAMAADEDAAAxwwAAMgMAADKDAAAywwAANUMAADWDAAAAg0AAAMNAAA+DQAAQA0AAEYNAABIDQAASg0AAEwNAABXDQAAVw0AAIINAACDDQAAzw0AANENAADYDQAA3w0AAPINAADzDQAAPg8AAD8PAAB/DwAAfw8AACwQAAAsEAAAMRAAADEQAAA4EAAAOBAAAFYQAABXEAAAtBcAALYXAAC+FwAAxRcAAMcXAADIFwAAZdEBAGbRAQBt0QEActEB");l(e,64720,"iAQAAIkEAADdBgAA3gYAAN0gAADgIAAA4iAAAOMgAAAAAwAATgMAAGADAABiAwAAgwQAAIYEAACRBQAAoQUAAKMFAAC5BQAAuwUAAL0FAAC/BQAAvwUAAMEFAADCBQAAxAUAAMQFAABLBgAAVQYAAHAGAABwBgAA1gYAANwGAADfBgAA5AYAAOcGAADoBgAA6gYAAO0GAAARBwAAEQcAADAHAABKBwAApgcAALAHAAABCQAAAgkAADwJAAA8CQAAQQkAAEgJAABNCQAATQkAAFEJAABUCQAAYgkAAGMJAACBCQAAgQkAALwJAAC8CQAAwQkAAMQJAADNCQAAzQkAAOIJAADjCQAAAgoAAAIKAAA8CgAAPAoAAEEKAABCCgAARwoAAEgKAABLCgAATQoAAHAKAABxCgAAgQoAAIIKAAC8CgAAvAoAAMEKAADFCgAAxwoAAMgKAADNCgAAzQoAAAELAAABCwAAPAsAADwLAAA/CwAAPwsAAEELAABDCwAATQsAAE0LAABWCwAAVgsAAIILAACCCwAAwAsAAMALAADNCwAAzQsAAD4MAABADAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAvwwAAL8MAADGDAAAxgwAAMwMAADNDAAAQQ0AAEMNAABNDQAATQ0AAMoNAADKDQAA0g0AANQNAADWDQAA1g0AADEOAAAxDgAANA4AADoOAABHDgAATg4AALEOAACxDgAAtA4AALkOAAC7DgAAvA4AAMgOAADNDgAAGA8AABkPAAA1DwAANQ8AADcPAAA3DwAAOQ8AADkPAABxDwAAfg8AAIAPAACEDwAAhg8AAIcPAACQDwAAlw8AAJkPAAC8DwAAxg8AAMYPAAAtEAAAMBAAADIQAAAyEAAANhAAADcQAAA5EAAAORAAAFgQAABZEAAAtxcAAL0XAADGFwAAxhcAAMkXAADTFwAAqRgAAKkYAADQIAAA3CAAAOEgAADhIAAAKjAAAC8wAACZMAAAmjAAAB77AAAe+wAAIP4AACP+AABn0QEAadEBAHvRAQCC0QEAhdEBAIvRAQCq0QEArdEB");l(e,65536,"MAAAADkAAABgBgAAaQYAAPAGAAD5BgAAZgkAAG8JAADmCQAA7wkAAGYKAABvCgAA5goAAO8KAABmCwAAbwsAAOcLAADvCwAAZgwAAG8MAADmDAAA7wwAAGYNAABvDQAAUA4AAFkOAADQDgAA2Q4AACAPAAApDwAAQBAAAEkQAABpEwAAcRMAAOAXAADpFwAAEBgAABkYAAAQ/wAAGf8AAM7XAQD/1wE=");l(e,65712,"7hYAAPAWAABgIQAAgyEAAAcwAAAHMAAAITAAACkwAAA4MAAAOjAAAEoDAQBKAwEAsgAAALMAAAC5AAAAuQAAALwAAAC+AAAA9AkAAPkJAADwCwAA8gsAACoPAAAzDwAAchMAAHwTAABwIAAAcCAAAHQgAAB5IAAAgCAAAIkgAABTIQAAXyEAAGAkAACbJAAA6iQAAOokAAB2JwAAkycAAJIxAACVMQAAIDIAACkyAACAMgAAiTIAACADAQAjAwEAXwAAAF8AAAA/IAAAQCAAAPswAAD7MAAAM/4AADT+AABN/gAAT/4AAD//AAA//wAAZf8AAGX/");l(e,65968,"LQAAAC0AAACtAAAArQAAAIoFAACKBQAABhgAAAYYAAAQIAAAFSAAABwwAAAcMAAAMDAAADAwAAAx/gAAMv4AAFj+AABY/gAAY/4AAGP+AAAN/wAADf8=");l(e,66064,"KQAAACkAAABdAAAAXQAAAH0AAAB9AAAAOw8AADsPAAA9DwAAPQ8AAJwWAACcFgAARiAAAEYgAAB+IAAAfiAAAI4gAACOIAAAKiMAACojAAAJMAAACTAAAAswAAALMAAADTAAAA0wAAAPMAAADzAAABEwAAARMAAAFTAAABUwAAAXMAAAFzAAABkwAAAZMAAAGzAAABswAAAeMAAAHzAAAD/9AAA//QAANv4AADb+AAA4/gAAOP4AADr+AAA6/gAAPP4AADz+AAA+/gAAPv4AAED+AABA/gAAQv4AAEL+AABE/gAARP4AAFr+AABa/gAAXP4AAFz+AABe/gAAXv4AAAn/AAAJ/wAAPf8AAD3/AABd/wAAXf8AAGP/AABj/wAAuwAAALsAAAAZIAAAGSAAAB0gAAAdIAAAOiAAADogAACrAAAAqwAAABggAAAYIAAAGyAAABwgAAAfIAAAHyAAADkgAAA5IA==");l(e,66432,"IQAAACMAAAAlAAAAJwAAACoAAAAqAAAALAAAACwAAAAuAAAALwAAADoAAAA7AAAAPwAAAEAAAABcAAAAXAAAAKEAAAChAAAAtwAAALcAAAC/AAAAvwAAAH4DAAB+AwAAhwMAAIcDAABaBQAAXwUAAIkFAACJBQAAvgUAAL4FAADABQAAwAUAAMMFAADDBQAA8wUAAPQFAAAMBgAADAYAABsGAAAbBgAAHwYAAB8GAABqBgAAbQYAANQGAADUBgAAAAcAAA0HAABkCQAAZQkAAHAJAABwCQAA9A0AAPQNAABPDgAATw4AAFoOAABbDgAABA8AABIPAACFDwAAhQ8AAEoQAABPEAAA+xAAAPsQAABhEwAAaBMAAG0WAABuFgAA6xYAAO0WAADUFwAA2hcAANwXAADcFwAAABgAAAUYAAAHGAAAChgAABYgAAAXIAAAICAAACcgAAAwIAAAOCAAADsgAAA+IAAAQSAAAEMgAABIIAAATSAAAAEwAAADMAAAMP4AADD+AABJ/gAATP4AAFD+AABS/gAAVP4AAFf+AABf/gAAYf4AAGj+AABo/gAAav4AAGv+AAAB/wAAA/8AAAX/AAAH/wAACv8AAAr/AAAM/wAADP8AAA7/AAAP/wAAGv8AABv/AAAf/wAAIP8AADz/AAA8/wAAYf8AAGH/AABk/wAAZP8=");l(e,66960,"KAAAACgAAABbAAAAWwAAAHsAAAB7AAAAOg8AADoPAAA8DwAAPA8AAJsWAACbFgAAGiAAABogAAAeIAAAHiAAAEUgAABFIAAAfSAAAH0gAACNIAAAjSAAACkjAAApIwAACDAAAAgwAAAKMAAACjAAAAwwAAAMMAAADjAAAA4wAAAQMAAAEDAAABQwAAAUMAAAFjAAABYwAAAYMAAAGDAAABowAAAaMAAAHTAAAB0wAAA+/QAAPv0AADX+AAA1/gAAN/4AADf+AAA5/gAAOf4AADv+AAA7/gAAPf4AAD3+AAA//gAAP/4AAEH+AABB/gAAQ/4AAEP+AABZ/gAAWf4AAFv+AABb/gAAXf4AAF3+AAAI/wAACP8AADv/AAA7/wAAW/8AAFv/AABi/wAAYv8AACQAAAAkAAAAogAAAKUAAADyCQAA8wkAAD8OAAA/DgAA2xcAANsXAACgIAAAryAAAGn+AABp/gAABP8AAAT/AADg/wAA4f8AAOX/AADm/wAAXgAAAF4AAABgAAAAYAAAAKgAAACoAAAArwAAAK8AAAC0AAAAtAAAALgAAAC4AAAAuQIAALoCAADCAgAAzwIAANICAADfAgAA5QIAAO0CAAB0AwAAdQMAAIQDAACFAwAAvR8AAL0fAAC/HwAAwR8AAM0fAADPHwAA3R8AAN8fAADtHwAA7x8AAP0fAAD+HwAAmzAAAJwwAAA+/wAAPv8AAED/AABA/wAA4/8AAOP/AAArAAAAKwAAADwAAAA+AAAAfAAAAHwAAAB+AAAAfgAAAKwAAACsAAAAsQAAALEAAADXAAAA1wAAAPcAAAD3AAAARCAAAEQgAAB6IAAAfCAAAIogAACMIAAAkCEAAJQhAACaIQAAmyEAAKAhAACgIQAAoyEAAKMhAACmIQAApiEAAK4hAACuIQAAziEAAM8hAADSIQAA0iEAANQhAADUIQAAACIAAPEiAAAIIwAACyMAACAjAAAhIwAAtyUAALclAADBJQAAwSUAAG8mAABvJgAAKfsAACn7AABi/gAAYv4AAGT+AABm/gAAC/8AAAv/AAAc/wAAHv8AAFz/AABc/wAAXv8AAF7/AADi/wAA4v8AAOn/AADs/wAAwdYBAMHWAQDb1gEA29YBAPvWAQD71gEAFdcBABXXAQA11wEANdcBAE/XAQBP1wEAb9cBAG/XAQCJ1wEAidcBAKnXAQCp1wEAw9cBAMPXAQ==");l(e,67888,"pgAAAKcAAACpAAAAqQAAAK4AAACuAAAAsAAAALAAAAC2AAAAtgAAAIIEAACCBAAA6QYAAOkGAAD9BgAA/gYAAPoJAAD6CQAAcAsAAHALAAABDwAAAw8AABMPAAAXDwAAGg8AAB8PAAA0DwAANA8AADYPAAA2DwAAOA8AADgPAAC+DwAAxQ8AAMcPAADMDwAAzw8AAM8PAAAAIQAAASEAAAMhAAAGIQAACCEAAAkhAAAUIQAAFCEAABYhAAAYIQAAHiEAACMhAAAlIQAAJSEAACchAAAnIQAAKSEAACkhAAAuIQAALiEAADIhAAAyIQAAOiEAADohAACVIQAAmSEAAJwhAACfIQAAoSEAAKIhAACkIQAApSEAAKchAACtIQAAryEAAM0hAADQIQAA0SEAANMhAADTIQAA1SEAAPMhAAAAIwAAByMAAAwjAAAfIwAAIiMAACgjAAArIwAAeyMAAH0jAACaIwAAACQAACYkAABAJAAASiQAAJwkAADpJAAAACUAAJUlAACgJQAAtiUAALglAADAJQAAwiUAAPclAAAAJgAAEyYAABkmAABuJgAAcCYAAHEmAAABJwAABCcAAAYnAAAJJwAADCcAACcnAAApJwAASycAAE0nAABNJwAATycAAFInAABWJwAAVicAAFgnAABeJwAAYScAAGcnAACUJwAAlCcAAJgnAACvJwAAsScAAL4nAAAAKAAA/ygAAIAuAACZLgAAmy4AAPMuAAAALwAA1S8AAPAvAAD7LwAABDAAAAQwAAASMAAAEzAAACAwAAAgMAAANjAAADcwAAA+MAAAPzAAAJAxAACRMQAAljEAAJ8xAAAAMgAAHDIAACoyAABDMgAAYDIAAHsyAAB/MgAAfzIAAIoyAACwMgAAwDIAAMsyAADQMgAA/jIAAAAzAAB2MwAAezMAAN0zAADgMwAA/jMAAJCkAAChpAAApKQAALOkAAC1pAAAwKQAAMKkAADEpAAAxqQAAMakAADk/wAA5P8AAOj/AADo/wAA7f8AAO7/AAD8/wAA/f8AAADQAQD10AEAANEBACbRAQAq0QEAZNEBAGrRAQBs0QEAg9EBAITRAQCM0QEAqdEBAK7RAQDd0QEAKCAAACggAAApIAAAKSA=");l(e,68752,"IAAAACAAAACgAAAAoAAAAIAWAACAFgAAACAAAAsgAAAvIAAALyAAAAAwAAAAMAAAQQAAAFoAAABhAAAAegAAAMAAAADWAAAA2AAAAPYAAAD4AAAA/wAAAAABAAAxAQAANAEAAD4BAABBAQAASAEAAEoBAAB+AQAAgAEAAMMBAADNAQAA8AEAAPQBAAD1AQAA+gEAABcCAABQAgAAqAIAALsCAADBAgAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAAzgMAANADAADWAwAA2gMAANoDAADcAwAA3AMAAN4DAADeAwAA4AMAAOADAADiAwAA8wMAAAEEAAAMBAAADgQAAE8EAABRBAAAXAQAAF4EAACBBAAAkAQAAMQEAADHBAAAyAQAAMsEAADMBAAA0AQAAOsEAADuBAAA9QQAAPgEAAD5BAAAMQUAAFYFAABZBQAAWQUAAGEFAACGBQAA0AUAAOoFAADwBQAA8gUAACEGAAA6BgAAQQYAAEoGAABxBgAAtwYAALoGAAC+BgAAwAYAAM4GAADQBgAA0wYAANUGAADVBgAA5QYAAOYGAAAFCQAAOQkAAD0JAAA9CQAAWAkAAGEJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAADcCQAA3QkAAN8JAADhCQAA8AkAAPEJAAAFCgAACgoAAA8KAAAQCgAAEwoAACgKAAAqCgAAMAoAADIKAAAzCgAANQoAADYKAAA4CgAAOQoAAFkKAABcCgAAXgoAAF4KAAByCgAAdAoAAIUKAACLCgAAjQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAL0KAADgCgAA4AoAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA2CwAAOQsAAD0LAAA9CwAAXAsAAF0LAABfCwAAYQsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAtQsAALcLAAC5CwAABQwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADMMAAA1DAAAOQwAAGAMAABhDAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAAN4MAADeDAAA4AwAAOEMAAAFDQAADA0AAA4NAAAQDQAAEg0AACgNAAAqDQAAOQ0AAGANAABhDQAAAQ4AAC4OAAAwDgAAMA4AADIOAAAzDgAAQA4AAEUOAACBDgAAgg4AAIQOAACEDgAAhw4AAIgOAACKDgAAig4AAI0OAACNDgAAlA4AAJcOAACZDgAAnw4AAKEOAACjDgAApQ4AAKUOAACnDgAApw4AAKoOAACrDgAArQ4AAK4OAACwDgAAsA4AALIOAACzDgAAvQ4AAL0OAADADgAAxA4AAEAPAABHDwAASQ8AAGkPAACgEAAAxRAAANAQAAD2EAAAABEAAAARAAACEQAAAxEAAAURAAAHEQAACREAAAkRAAALEQAADBEAAA4RAAASEQAAPBEAADwRAAA+EQAAPhEAAEARAABAEQAATBEAAEwRAABOEQAAThEAAFARAABQEQAAVBEAAFURAABZEQAAWREAAF8RAABhEQAAYxEAAGMRAABlEQAAZREAAGcRAABnEQAAaREAAGkRAABtEQAAbhEAAHIRAABzEQAAdREAAHURAACeEQAAnhEAAKgRAACoEQAAqxEAAKsRAACuEQAArxEAALcRAAC4EQAAuhEAALoRAAC8EQAAwhEAAOsRAADrEQAA8BEAAPARAAD5EQAA+REAAAAeAACbHgAAoB4AAPkeAAAAHwAAFR8AABgfAAAdHwAAIB8AAEUfAABIHwAATR8AAFAfAABXHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAH0fAACAHwAAtB8AALYfAAC8HwAAvh8AAL4fAADCHwAAxB8AAMYfAADMHwAA0B8AANMfAADWHwAA2x8AAOAfAADsHwAA8h8AAPQfAAD2HwAA/B8AACYhAAAmIQAAKiEAACshAAAuIQAALiEAAIAhAACCIQAAQTAAAJQwAAChMAAA+jAAAAUxAAAsMQAAAKwAAKPXAAAHMAAABzAAACEwAAApMAAAAE4AAKWf");l(e,70449,"AwAARQMAAGADAABhAwAAgwQAAIYEAACRBQAAoQUAAKMFAAC5BQAAuwUAAL0FAAC/BQAAvwUAAMEFAADCBQAAxAUAAMQFAABLBgAAUgYAAHAGAABwBgAA1gYAANwGAADdBgAA3wYAAOAGAADkBgAA5wYAAOgGAADqBgAA7QYAAAEJAAADCQAAPAkAADwJAAA+CQAATAkAAE0JAABNCQAAUQkAAFQJAABiCQAAYwkAAIEJAACDCQAAvAkAALwJAAC+CQAAvgkAAL8JAAC/CQAAwAkAAMQJAADHCQAAyAkAAMsJAADNCQAA1wkAANcJAADiCQAA4wkAAAIKAAACCgAAPAoAADwKAAA+CgAAPgoAAD8KAAA/CgAAQAoAAEIKAABHCgAASAoAAEsKAABNCgAAcAoAAHEKAACBCgAAgwoAALwKAAC8CgAAvgoAAMUKAADHCgAAyQoAAMsKAADNCgAAAQsAAAMLAAA8CwAAPAsAAD4LAABDCwAARwsAAEgLAABLCwAATQsAAFYLAABXCwAAggsAAIMLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADXCwAA1wsAAAEMAAADDAAAPgwAAEQMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAACCDAAAgwwAAL4MAADEDAAAxgwAAMgMAADKDAAAzQwAANUMAADWDAAAAg0AAAMNAAA+DQAAQw0AAEYNAABIDQAASg0AAE0NAABXDQAAVw0AADEOAAAxDgAANA4AADoOAABHDgAATg4AALEOAACxDgAAtA4AALkOAAC7DgAAvA4AAMgOAADNDgAAGA8AABkPAAA1DwAANQ8AADcPAAA3DwAAOQ8AADkPAAA+DwAAPg8AAD8PAAA/DwAAcQ8AAIQPAACGDwAAiw8AAJAPAACVDwAAlw8AAJcPAACZDwAArQ8AALEPAAC3DwAAuQ8AALkPAADQIAAA3CAAAOEgAADhIAAAKjAAAC8wAACZMAAAmTAAAJowAACaMA==");l(e,71216,"MAAAADkAAABgBgAAaQYAAPAGAAD5BgAAZgkAAG8JAADmCQAA7wkAAGYKAABvCgAA5goAAO8KAABmCwAAbwsAAOcLAADvCwAAZgwAAG8MAADmDAAA7wwAAGYNAABvDQAAUA4AAFkOAADQDgAA2Q4AACAPAAApDw==");l(e,71344,"twAAALcAAADQAgAA0QIAAIcDAACHAwAAQAYAAEAGAABGDgAARg4AAMYOAADGDgAABTAAAAUwAAAxMAAANTAAAJ0wAACeMAAA/DAAAP4wAAA0");l(e,71440,"QBUAACkVAADfFQAAxxUAADkVAADHEQAAohUAADAVAACZFQAAyREAAMERAACyFQAAMwUAANgOAACkEAAAAhEAAFoRAABMDwAA8REAAEkOAAA9BwAASgUAAMMPAABABQAAFQ0AALgPAAApBQAALgYAAI8MAAD4EQAA6g8AALoMAADKDAAApwwAAB0QAACXDAAAAAYAAAkQAABVEQAAog4AAKkQAACoBgAA7w8AAAYGAABSDgAAmgcAAMoPAABrEAAAhRAAANEPAAB4EAAAkhAAANsPAADcDQAAqQcAAKUSAAAF");l(e,71676,"xg==");l(e,71700,"xwAAAMgAAAAAGwE=");l(e,71724,"Ag==");l(e,71740,"//////////8=");l(e,71808,"oB1R")}var r=new ArrayBuffer(16);var s=new Int32Array(r);var t=new Float32Array(r);var u=new Float64Array(r);function v(w){return s[w]}function x(w,y){s[w]=y}function z(){return u[0]}function A(y){u[0]=y}function B(y){t[2]=y}function ma(na){var C=na.a;var D=C.buffer;var E=new Int8Array(D);var F=new Int16Array(D);var G=new Int32Array(D);var H=new Uint8Array(D);var I=new Uint16Array(D);var J=new Uint32Array(D);var K=new Float32Array(D);var L=new Float64Array(D);var M=Math.imul;var N=Math.fround;var O=Math.abs;var P=Math.clz32;var Q=Math.min;var R=Math.max;var S=Math.floor;var T=Math.ceil;var U=Math.trunc;var V=Math.sqrt;var W=na.abort;var X=NaN;var Y=Infinity;var Z=na.b;var _=na.c;var $=na.d;var aa=na.e;var ba=na.f;var ca=na.g;var da=na.h;var ea=na.i;var fa=na.j;var ga=na.k;var ha=na.l;var ia=5316e3;var ja=0;
// EMSCRIPTEN_START_FUNCS
function Rb(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,I=0,K=0;l=ia-16|0;ia=l;G[l+4>>2]=f;j=G[a+356>>2];a:{if(G[a+144>>2]==(b|0)){t=a+288|0;s=a+292|0;break a}t=G[a+300>>2];s=t+4|0}w=j+132|0;p=a+416|0;o=a+428|0;B=a+292|0;C=a+288|0;n=j+92|0;q=j+80|0;y=a+256|0;b:{c:{d:{while(1){e:{G[t>>2]=c;k=G[l+4>>2];G[s>>2]=k;f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{if((e|0)>0){m=e;break s}if(e?h:0){break c}m=15;i=5;t:{switch(e+15|0){case 15:G[t>>2]=k;i=4;break b;case 11:if(G[a+144>>2]!=(b|0)){if(!H[G[a+300>>2]+20|0]){break c}break d}if(H[a+488|0]){break d}i=3;break b;case 13:break r;case 0:break s;case 14:break b;default:break t}}G[l+4>>2]=d;m=0-e|0;k=d}e=1;i=0;u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{P:{Q:{R:{S:{T:{U:{V:{W:{X:{Y:{Z:{_:{$:{aa:{ba:{ca:{da:{ea:{fa:{ga:{ha:{ia:{ja:{ka:{la:{ma:{na:{oa:{pa:{qa:{ra:{sa:{ta:{ua:{va:{wa:{xa:{ya:{za:{u=ka[G[y>>2]](y,m,c,k,b)|0;switch(u+1|0){case 40:break v;case 34:break w;case 18:break x;case 12:break y;case 4:break z;case 1:break A;case 57:break B;case 56:break C;case 46:break D;case 49:break E;case 47:break F;case 48:break G;case 52:break I;case 54:break J;case 55:break K;case 53:break L;case 44:break M;case 42:case 43:break N;case 41:break O;case 60:case 61:break P;case 50:break Q;case 51:break R;case 45:break S;case 59:break T;case 0:break U;case 21:break V;case 20:break W;case 22:break X;case 19:break Y;case 11:break Z;case 10:break _;case 17:break $;case 16:break aa;case 14:break ba;case 6:break ca;case 13:break da;case 38:case 39:break ea;case 36:case 37:break fa;case 32:case 33:break ga;case 31:break ia;case 30:break ja;case 29:break ka;case 28:break la;case 27:break ma;case 26:break na;case 25:break oa;case 24:break pa;case 23:break qa;case 35:break ra;case 3:break sa;case 9:break ta;case 15:break ua;case 7:break va;case 58:break wa;case 8:break xa;case 5:break ya;case 2:break za;default:break g}}i=se(a,0,c,G[l+4>>2]);if(i){break b}b=G[a+144>>2];break f}if(G[a+84>>2]){e=G[l+4>>2];G[l+12>>2]=c;if(!G[o>>2]){if(!qa(p)){break e}}while(1){Aa:{ka[G[b+60>>2]](b,l+12|0,e,o,G[a+424>>2]);if((e|0)==G[l+12>>2]){break Aa}if(qa(p)){continue}break e}break}if(!G[a+432>>2]){break e}k=G[a+428>>2];if((k|0)==G[a+424>>2]){if(!qa(p)){break e}k=G[o>>2]}i=1;G[a+428>>2]=k+1;e=0;E[k|0]=0;f=G[a+432>>2];G[a+320>>2]=f;if(!f){break b}G[a+328>>2]=0;G[a+432>>2]=G[a+428>>2]}G[a+324>>2]=0;if(e){break g}break f}e=G[a+84>>2];if(!e){break g}ka[e|0](G[a+4>>2],G[a+320>>2],G[a+324>>2],G[a+328>>2],1);G[a+320>>2]=0;e=G[a+416>>2];i=G[a+420>>2];Ba:{Ca:{if(!i){c=e;break Ca}if(!e){break Ba}while(1){c=e;e=G[e>>2];G[c>>2]=i;i=c;if(e){continue}break}}G[a+420>>2]=c}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;break f}i=se(a,1,c,G[l+4>>2]);if(i){break b}b=G[a+144>>2];break f}E[a+489|0]=0;e=cb(a,w,11668,36);G[a+316>>2]=e;if(!e){i=1;break b}E[j+129|0]=1;if(!G[a+84>>2]){break ua}if(!(ka[G[b+56>>2]](b,c,G[l+4>>2],t)|0)){i=32;break b}e=G[l+4>>2];f=G[b+68>>2];G[l+12>>2]=f+c;Da:{Ea:{if(!G[o>>2]){if(!qa(p)){break Ea}}e=e-f|0;while(1){ka[G[b+60>>2]](b,l+12|0,e,o,G[a+424>>2]);if((e|0)==G[l+12>>2]){break Da}if(qa(p)){continue}break}}i=1;break b}i=1;if(!G[a+432>>2]){break b}e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){break b}e=G[o>>2]}G[a+428>>2]=e+1;E[e|0]=0;r=G[a+432>>2];if(!r){break b}f=r;m=f;k=f;i=H[f|0];Fa:{if(!i){break Fa}while(1){e=m;k=f;Ga:{Ha:{f=(i<<24>>24)-10|0;if(f>>>0>22|!(1<<f&4194313)){break Ha}m=r;if((e|0)==(m|0)){break Ga}i=32;if(H[e-1|0]!=32){break Ha}m=e;break Ga}E[e|0]=i;m=e+1|0}f=k+1|0;i=H[k+1|0];if(i){continue}break}k=r;if((m|0)==(k|0)){break Fa}e=m-1|0;k=H[e|0]==32?e:m}e=0;E[k|0]=0;G[a+328>>2]=r;G[a+432>>2]=G[a+428>>2];break i}e=1;if(ka[G[b+56>>2]](b,c,G[l+4>>2],t)|0){break i}i=32;break b}e=G[a+320>>2];if(e){ka[G[a+84>>2]](G[a+4>>2],e,G[a+324>>2],G[a+328>>2],0);e=G[a+416>>2];k=G[a+420>>2];Ia:{Ja:{if(!k){i=e;break Ja}if(!e){break Ia}while(1){i=e;e=G[e>>2];G[i>>2]=k;k=i;if(e){continue}break}}G[a+420>>2]=i}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;e=0}else{e=1}if(H[a+489|0]?1:G[a+324>>2]){i=H[j+129|0];E[j+129|0]=1;Ka:{if(!G[a+492>>2]|!G[a+112>>2]){break Ka}f=cb(a,w,11668,36);if(!f){i=1;break b}La:{if(!H[a+489|0]){m=G[f+20>>2];break La}m=G[a+360>>2];G[f+20>>2]=m}E[j+131|0]=0;if(!(ka[G[a+112>>2]](G[a+116>>2],0,m,G[f+16>>2],G[f+24>>2])|0)){i=21;break b}if(H[j+131|0]){if(H[j+130|0]){break Ka}f=G[a+108>>2];if(!f){break Ka}if(ka[f|0](G[a+4>>2])|0){break Ka}i=22;break b}if(G[a+324>>2]){break Ka}E[j+129|0]=i}E[a+489|0]=0}f=G[a+88>>2];if(!f){break h}ka[f|0](G[a+4>>2]);break f}Ma:{if(!H[a+489|0]){break Ma}e=H[j+129|0];E[j+129|0]=1;if(!G[a+492>>2]|!G[a+112>>2]){break Ma}b=cb(a,w,11668,36);if(!b){i=1;break b}f=G[a+360>>2];G[b+20>>2]=f;E[j+131|0]=0;if(!(ka[G[a+112>>2]](G[a+116>>2],0,f,G[b+16>>2],G[b+24>>2])|0)){i=21;break b}if(H[j+131|0]){if(H[j+130|0]){break Ma}b=G[a+108>>2];if(!b){break Ma}if(ka[b|0](G[a+4>>2])|0){break Ma}i=22;break b}E[j+129|0]=e}G[a+280>>2]=66;i=Qb(a,0,G[a+144>>2],c,d,g,!H[a+484|0]);if(i){break b}b=G[a+364>>2];if(!b){i=0;break b}while(1){f=G[b+4>>2];c=G[b+36>>2];d=G[b+24>>2]+1|0;i=c+d|0;if((f|0)==(i|0)){i=0;break b}k=G[b+8>>2];e=d+k|0;if((e|0)>(G[b+40>>2]-c|0)){c=ka[G[a+16>>2]](c,e)|0;if(!c){i=1;break b}f=G[b+36>>2];if((f|0)==G[b+12>>2]){G[b+12>>2]=c}g=G[b+16>>2];if(g){G[b+16>>2]=c+(g-f|0)}G[b+36>>2]=c;G[b+40>>2]=c+e;i=c+d|0;k=G[b+8>>2];f=G[b+4>>2]}G[b+4>>2]=Pa(i,f,k);b=G[b>>2];if(b){continue}break}i=0;break b}e=Oc(a,b,c,G[l+4>>2]);G[a+344>>2]=e;if(e){break ha}i=1;break b}e=Nc(a,b,c,G[l+4>>2]);G[a+348>>2]=e;if(!e){i=1;break b}G[a+332>>2]=0;F[a+352>>1]=0;break ha}G[a+332>>2]=11670;E[a+352|0]=1;break ha}G[a+332>>2]=11676;E[a+353|0]=1;break ha}G[a+332>>2]=11679;break ha}G[a+332>>2]=11685;break ha}G[a+332>>2]=11692;break ha}G[a+332>>2]=11699;break ha}G[a+332>>2]=11708;break ha}G[a+332>>2]=11716}if(!H[j+128|0]|!G[a+132>>2]){break g}break f}if(!H[j+128|0]|!G[a+132>>2]){break g}e=G[a+332>>2]?1024:(u|0)==32?7783:7791;i=H[e|0];if(i){while(1){k=G[a+428>>2];if((k|0)==G[a+424>>2]){if(!qa(p)){i=1;break b}k=G[o>>2];i=H[e|0]}G[o>>2]=k+1;E[k|0]=i;i=H[e+1|0];e=e+1|0;if(i){continue}break}}i=1;if(!G[a+432>>2]){break b}e=G[l+4>>2];G[l+12>>2]=c;if(!G[o>>2]){if(!qa(p)){break b}}while(1){Na:{ka[G[b+60>>2]](b,l+12|0,e,o,G[a+424>>2]);if((e|0)==G[l+12>>2]){break Na}if(qa(p)){continue}break b}break}c=G[a+432>>2];if(!c){break b}G[a+332>>2]=c;break f}if(!H[j+128|0]){break g}m=H[a+352|0];k=G[a+348>>2];f=G[a+344>>2];i=G[f+12>>2];Oa:{Pa:{if(!H[a+353|0]){break Pa}if((i|0)>0){r=G[f+20>>2];e=0;while(1){if((k|0)==G[r+M(e,12)>>2]){break Oa}e=e+1|0;if((i|0)!=(e|0)){continue}break}}if(G[f+8>>2]|H[k+9|0]){break Pa}G[f+8>>2]=k}Qa:{if((i|0)!=G[f+16>>2]){e=G[f+20>>2];break Qa}if(!i){G[f+16>>2]=8;e=ka[G[a+12>>2]](96)|0;G[f+20>>2]=e;if(e){break Qa}i=1;break b}e=ka[G[a+16>>2]](G[f+20>>2],M(i,24))|0;if(!e){i=1;break b}G[f+20>>2]=e;G[f+16>>2]=i<<1}i=G[f+12>>2];e=M(i,12)+e|0;G[e+8>>2]=0;G[e>>2]=k;E[e+4|0]=m;if(!m){E[k+8|0]=1}G[f+12>>2]=i+1}if(!G[a+132>>2]){break g}e=G[a+332>>2];if(!e){break g}f=H[e|0];if(!((f|0)!=40&((f|0)!=78|H[e+1|0]!=79))){e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){i=1;break b}e=G[o>>2]}i=1;G[a+428>>2]=e+1;E[e|0]=41;e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){break b}e=G[o>>2]}G[a+428>>2]=e+1;E[e|0]=0;G[a+332>>2]=G[a+432>>2];G[a+432>>2]=G[a+428>>2]}G[s>>2]=c;ka[G[a+132>>2]](G[a+4>>2],G[G[a+344>>2]>>2],G[G[a+348>>2]>>2],G[a+332>>2],0,(u|0)==36);e=G[a+416>>2];i=G[a+420>>2];Ra:{Sa:{if(!i){c=e;break Sa}if(!e){break Ra}while(1){c=e;e=G[e>>2];G[c>>2]=i;i=c;if(e){continue}break}}G[a+420>>2]=c}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;break f}if(!H[j+128|0]){break g}f=H[a+352|0];e=G[b+68>>2];i=Mc(a,b,f,e+c|0,G[l+4>>2]-e|0,q);if(i){break b}e=G[n>>2];Ta:{if((e|0)==G[j+96>>2]|f){break Ta}f=e-1|0;if(H[f|0]!=32){break Ta}G[n>>2]=f;e=f}if(G[j+88>>2]==(e|0)){if(!qa(q)){i=1;break b}e=G[n>>2]}G[n>>2]=e+1;E[e|0]=0;k=G[j+96>>2];G[j+96>>2]=G[n>>2];r=H[a+352|0];m=G[a+348>>2];f=G[a+344>>2];i=G[f+12>>2];Ua:{if(!(!k|(i|0)<=0)){v=G[f+20>>2];e=0;while(1){if((m|0)==G[v+M(e,12)>>2]){break Ua}e=e+1|0;if((i|0)!=(e|0)){continue}break}}Va:{if((i|0)!=G[f+16>>2]){e=G[f+20>>2];break Va}if(!i){G[f+16>>2]=8;e=ka[G[a+12>>2]](96)|0;G[f+20>>2]=e;if(e){break Va}i=1;break b}e=ka[G[a+16>>2]](G[f+20>>2],M(i,24))|0;if(!e){i=1;break b}G[f+20>>2]=e;G[f+16>>2]=i<<1}i=G[f+12>>2];e=M(i,12)+e|0;G[e+8>>2]=k;G[e>>2]=m;E[e+4|0]=r;if(!r){E[m+8|0]=1}G[f+12>>2]=i+1}if(!G[a+132>>2]){break g}e=G[a+332>>2];if(!e){break g}f=H[e|0];if(!((f|0)!=40&((f|0)!=78|H[e+1|0]!=79))){e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){i=1;break b}e=G[o>>2]}i=1;G[a+428>>2]=e+1;E[e|0]=41;e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){break b}e=G[o>>2]}G[a+428>>2]=e+1;E[e|0]=0;G[a+332>>2]=G[a+432>>2];G[a+432>>2]=G[a+428>>2]}G[s>>2]=c;ka[G[a+132>>2]](G[a+4>>2],G[G[a+344>>2]>>2],G[G[a+348>>2]>>2],G[a+332>>2],k,(u|0)==38);e=G[a+416>>2];i=G[a+420>>2];Wa:{Xa:{if(!i){c=e;break Xa}if(!e){break Wa}while(1){c=e;e=G[e>>2];G[c>>2]=i;i=c;if(e){continue}break}}G[a+420>>2]=c}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;break f}if(!H[j+128|0]){break g}e=G[b+68>>2];i=qe(a,b,e+c|0,G[l+4>>2]-e|0);e=G[j+120>>2];f=G[a+316>>2];Ya:{if(f){G[f+4>>2]=e;k=f;f=G[j+116>>2];G[k+8>>2]=f-e;G[j+120>>2]=f;if(!G[a+136>>2]){break Ya}G[s>>2]=c;e=0;f=G[a+316>>2];ka[G[a+136>>2]](G[a+4>>2],G[f>>2],H[f+33|0],G[f+4>>2],G[f+8>>2],G[a+360>>2],0,0,0);if(!i){break h}break b}G[j+116>>2]=e}e=1;if(!i){break h}break b}E[a+489|0]=0;E[j+129|0]=1;Za:{if(G[a+84>>2]){e=G[l+4>>2];f=G[b+68>>2];G[l+12>>2]=f+c;if(!G[o>>2]){if(!qa(p)){break j}}e=e-f|0;while(1){_a:{ka[G[b+60>>2]](b,l+12|0,e,o,G[a+424>>2]);if((e|0)==G[l+12>>2]){break _a}if(qa(p)){continue}break j}break}if(!G[a+432>>2]){break j}k=G[a+428>>2];if((k|0)==G[a+424>>2]){if(!qa(p)){break j}k=G[o>>2]}i=1;G[a+428>>2]=k+1;e=0;E[k|0]=0;f=G[a+432>>2];G[a+324>>2]=f;if(!f){break b}G[a+432>>2]=G[a+428>>2];break Za}G[a+324>>2]=11668}$a:{if(H[j+130|0]|G[a+492>>2]){break $a}f=G[a+108>>2];if(!f){break $a}if(ka[f|0](G[a+4>>2])|0){break $a}i=22;break b}if(G[a+316>>2]){break ba}f=cb(a,w,11668,36);G[a+316>>2]=f;if(!f){i=1;break b}G[f+24>>2]=0}if(!H[j+128|0]|!G[a+316>>2]){break h}f=G[l+4>>2];i=G[b+68>>2];G[l+12>>2]=i+c;if(!G[n>>2]){if(!qa(q)){break k}}f=f-i|0;while(1){ab:{ka[G[b+60>>2]](b,l+12|0,f,n,G[j+88>>2]);if((f|0)==G[l+12>>2]){break ab}if(qa(q)){continue}break k}break}if(!G[j+96>>2]){break k}k=G[j+92>>2];if((k|0)==G[j+88>>2]){if(!qa(q)){break k}k=G[n>>2]}i=1;G[n>>2]=k+1;E[k|0]=0;f=G[a+316>>2];k=G[j+96>>2];G[f+16>>2]=k;if(!k){break b}G[f+20>>2]=G[a+360>>2];G[j+96>>2]=G[n>>2];if(!G[a+136>>2]){break h}break f}if(!G[a+136>>2]|(!H[j+128|0]|!G[a+316>>2])){break g}G[s>>2]=c;c=G[a+316>>2];ka[G[a+136>>2]](G[a+4>>2],G[c>>2],H[c+33|0],0,0,G[c+20>>2],G[c+16>>2],G[c+24>>2],0);break f}if(!H[j+128|0]|!G[a+316>>2]){break g}e=G[l+4>>2];G[l+12>>2]=c;if(!G[n>>2]){if(!qa(q)){break l}}while(1){bb:{ka[G[b+60>>2]](b,l+12|0,e,n,G[j+88>>2]);if((e|0)==G[l+12>>2]){break bb}if(qa(q)){continue}break l}break}if(!G[j+96>>2]){break l}e=G[j+92>>2];if((e|0)==G[j+88>>2]){if(!qa(q)){break l}e=G[n>>2]}i=1;G[n>>2]=e+1;E[e|0]=0;e=G[j+96>>2];G[G[a+316>>2]+28>>2]=e;if(!e){break b}G[j+96>>2]=G[n>>2];if(G[a+92>>2]){G[s>>2]=c;c=G[a+316>>2];ka[G[a+92>>2]](G[a+4>>2],G[c>>2],G[c+20>>2],G[c+16>>2],G[c+24>>2],G[c+28>>2]);break f}if(!G[a+136>>2]){break g}G[s>>2]=c;c=G[a+316>>2];ka[G[a+136>>2]](G[a+4>>2],G[c>>2],0,0,0,G[c+20>>2],G[c+16>>2],G[c+24>>2],G[c+28>>2]);break f}if(ka[G[b+48>>2]](b,c,G[l+4>>2])|0){G[a+316>>2]=0;break g}if(!H[j+128|0]){break u}e=G[l+4>>2];G[l+12>>2]=c;cb:{db:{if(!G[n>>2]){if(!qa(q)){break db}}while(1){ka[G[b+60>>2]](b,l+12|0,e,n,G[j+88>>2]);if((e|0)==G[l+12>>2]){break cb}if(qa(q)){continue}break}}i=1;break b}i=1;if(!G[j+96>>2]){break b}e=G[j+92>>2];if((e|0)==G[j+88>>2]){if(!qa(q)){break b}e=G[n>>2]}G[n>>2]=e+1;E[e|0]=0;f=G[j+96>>2];if(!f){break b}e=cb(a,j,f,36);G[a+316>>2]=e;if(!e){break b}if((f|0)!=G[e>>2]){G[n>>2]=G[j+96>>2];G[a+316>>2]=0;break g}G[j+96>>2]=G[n>>2];E[e+33|0]=0;G[e+24>>2]=0;E[e+34|0]=!(G[a+476>>2]?1:G[a+300>>2]!=0);if(!G[a+136>>2]){break g}break f}if(H[j+128|0]){e=G[l+4>>2];G[l+12>>2]=c;eb:{fb:{if(!G[n>>2]){if(!qa(q)){break fb}}while(1){ka[G[b+60>>2]](b,l+12|0,e,n,G[j+88>>2]);if((e|0)==G[l+12>>2]){break eb}if(qa(q)){continue}break}}i=1;break b}i=1;if(!G[j+96>>2]){break b}e=G[j+92>>2];if((e|0)==G[j+88>>2]){if(!qa(q)){break b}e=G[n>>2]}G[n>>2]=e+1;E[e|0]=0;f=G[j+96>>2];if(!f){break b}e=cb(a,w,f,36);G[a+316>>2]=e;if(!e){break b}if((f|0)!=G[e>>2]){G[n>>2]=G[j+96>>2];G[a+316>>2]=0;break g}G[j+96>>2]=G[n>>2];E[e+33|0]=1;G[e+24>>2]=0;E[e+34|0]=!(G[a+476>>2]?1:G[a+300>>2]!=0);if(!G[a+136>>2]){break g}break f}G[n>>2]=G[j+96>>2];G[a+316>>2]=0;break g}G[a+336>>2]=0;G[a+340>>2]=0;if(!G[a+96>>2]){break g}e=G[l+4>>2];G[l+12>>2]=c;if(!G[o>>2]){if(!qa(p)){break m}}while(1){gb:{ka[G[b+60>>2]](b,l+12|0,e,o,G[a+424>>2]);if((e|0)==G[l+12>>2]){break gb}if(qa(p)){continue}break m}break}if(!G[a+432>>2]){break m}e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){break m}e=G[o>>2]}i=1;G[a+428>>2]=e+1;E[e|0]=0;c=G[a+432>>2];G[a+336>>2]=c;if(!c){break b}G[a+432>>2]=G[a+428>>2];break f}if(!(ka[G[b+56>>2]](b,c,G[l+4>>2],t)|0)){i=32;break b}if(!G[a+336>>2]){break g}e=G[l+4>>2];f=c;c=G[b+68>>2];G[l+12>>2]=f+c;hb:{ib:{if(!G[o>>2]){if(!qa(p)){break ib}}c=e-c|0;while(1){ka[G[b+60>>2]](b,l+12|0,c,o,G[a+424>>2]);if((c|0)==G[l+12>>2]){break hb}if(qa(p)){continue}break}}i=1;break b}i=1;if(!G[a+432>>2]){break b}e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){break b}e=G[o>>2]}G[a+428>>2]=e+1;E[e|0]=0;e=G[a+432>>2];if(!e){break b}m=e;k=e;c=H[e|0];if(!c){E[e|0]=0;G[a+340>>2]=e;G[a+432>>2]=G[a+428>>2];break f}while(1){f=k;i=m;jb:{kb:{k=(c<<24>>24)-10|0;if(k>>>0>22|!(1<<k&4194313)){break kb}k=e;if((f|0)==(e|0)){break jb}c=32;if(H[f-1|0]!=32){break kb}k=f;break jb}E[f|0]=c;k=f+1|0}m=i+1|0;c=H[i+1|0];if(c){continue}break}if((e|0)!=(k|0)){c=k-1|0;c=H[c|0]==32?c:k}else{c=e}E[c|0]=0;G[a+340>>2]=e;G[a+432>>2]=G[a+428>>2];break f}m=1;if(!(!G[a+336>>2]|!G[a+96>>2])){e=G[l+4>>2];f=G[b+68>>2];G[l+12>>2]=f+c;lb:{mb:{if(!G[o>>2]){if(!qa(p)){break mb}}e=e-f|0;while(1){ka[G[b+60>>2]](b,l+12|0,e,o,G[a+424>>2]);if((e|0)==G[l+12>>2]){break lb}if(qa(p)){continue}break}}i=1;break b}i=1;if(!G[a+432>>2]){break b}e=G[a+428>>2];if((e|0)==G[a+424>>2]){if(!qa(p)){break b}e=G[o>>2]}G[a+428>>2]=e+1;m=0;E[e|0]=0;e=G[a+432>>2];if(!e){break b}G[s>>2]=c;ka[G[a+96>>2]](G[a+4>>2],G[a+336>>2],G[a+360>>2],e,G[a+340>>2])}e=G[a+416>>2];k=G[a+420>>2];nb:{ob:{if(!k){i=e;break ob}if(!e){break nb}while(1){i=e;e=G[e>>2];G[i>>2]=k;k=i;if(e){continue}break}}G[a+420>>2]=i}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;if(m){break g}break f}m=1;if(!(!G[a+340>>2]|!G[a+96>>2])){G[s>>2]=c;ka[G[a+96>>2]](G[a+4>>2],G[a+336>>2],G[a+360>>2],0,G[a+340>>2]);m=0}e=G[a+416>>2];k=G[a+420>>2];pb:{qb:{if(!k){i=e;break qb}if(!e){break pb}while(1){i=e;e=G[e>>2];G[i>>2]=k;k=i;if(e){continue}break}}G[a+420>>2]=i}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;if(m){break g}break f}i=(m|0)==28?10:(m|0)==12?17:2;break b}f=G[a+80>>2];rb:{if(!f){break rb}e=G[l+4>>2];G[l+12>>2]=c;if(!H[b+72|0]){i=C;k=B;if(G[a+144>>2]!=(b|0)){i=G[a+300>>2];k=i+4|0}while(1){G[l+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,l+12|0,e,l+8|0,G[a+48>>2]);G[k>>2]=G[l+12>>2];c=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],c,G[l+8>>2]-c|0);G[i>>2]=G[l+12>>2];if((e|0)!=G[l+12>>2]){continue}break}break rb}ka[f|0](G[a+4>>2],c,e-c|0)}i=pe(a,b,l+4|0,d,g,h);if(i){break b}if(G[l+4>>2]){break f}G[a+280>>2]=67;i=0;break b}e=G[a+468>>2];if(e>>>0>J[a+260>>2]){break n}if(e){i=1;e=e<<1;G[a+468>>2]=e;e=ka[G[a+16>>2]](G[a+464>>2],e)|0;if(!e){break b}G[a+464>>2]=e;e=G[j+184>>2];if(!e){break n}e=ka[G[a+16>>2]](e,G[a+468>>2]<<2)|0;if(!e){break b}G[j+184>>2]=e;break n}G[a+468>>2]=32;e=ka[G[a+12>>2]](32)|0;G[a+464>>2]=e;if(e){break n}i=1;break b}e=G[a+464>>2]+G[a+260>>2]|0;if(H[e|0]==124){i=2;break b}E[e|0]=44;if(!H[j+160|0]|!G[a+128>>2]){break g}break f}f=G[a+464>>2]+G[a+260>>2]|0;i=H[f|0];if((i|0)==44){i=2;break b}sb:{if(i|!H[j+160|0]){break sb}i=G[j+164>>2]+M(G[(G[j+184>>2]+(G[j+180>>2]<<2)|0)-4>>2],28)|0;if(G[i>>2]==3){break sb}G[i>>2]=5;e=!G[a+128>>2]}E[f|0]=124;if(e){break g}break f}E[j+129|0]=1;if(!G[a+492>>2]){i=H[j+130|0];E[j+128|0]=i;break o}e=G[l+4>>2];f=G[b+68>>2];G[l+12>>2]=f+c;tb:{ub:{if(!G[n>>2]){if(!qa(q)){break ub}}e=e-f|0;while(1){ka[G[b+60>>2]](b,l+12|0,e,n,G[j+88>>2]);if((e|0)==G[l+12>>2]){break tb}if(qa(q)){continue}break}}i=1;break b}i=1;if(!G[j+96>>2]){break b}e=G[j+92>>2];if((e|0)==G[j+88>>2]){if(!qa(q)){break b}e=G[n>>2]}G[n>>2]=e+1;f=0;E[e|0]=0;k=G[j+96>>2];if(!k){break b}z=G[j+140>>2];vb:{if(!z){break vb}m=G[a+496>>2];i=k;v=H[i|0];e=v;if(e){while(1){m=M(m,1000003)^e&255;e=H[i+1|0];i=i+1|0;if(e){continue}break}}D=G[j+132>>2];e=z-1|0;x=e&m;r=G[D+(x<<2)>>2];if(!r){break vb}I=e>>>2|0;A=0;K=0-z&m;while(1){i=k;e=v;m=G[r>>2];if((e|0)==H[m|0]){while(1){if(!(e&255)){f=r;break vb}f=H[m+1|0];e=H[i+1|0];m=m+1|0;i=i+1|0;if((e|0)==(f|0)){continue}break}}f=0;A=A&255?A:K>>>H[j+136|0]-1&I|1;e=A&255;x=(e>>>0>x>>>0?z:0)+(x-e|0)|0;r=G[(x<<2)+D>>2];if(r){continue}break}}G[n>>2]=k;if(!G[a+272>>2]){break q}wb:{if(H[j+130|0]){if(!G[a+300>>2]){break wb}break q}if(H[j+129|0]){break q}}if(!f){i=11;break b}if(H[f+34|0]){break p}i=24;break b}if(!G[a+128>>2]){break g}c=Oc(a,b,c,G[l+4>>2]);G[a+344>>2]=c;if(!c){i=1;break b}G[j+176>>2]=0;G[j+180>>2]=0;E[j+160|0]=1;break f}if(!H[j+160|0]){break g}if(G[a+128>>2]){e=ka[G[a+12>>2]](20)|0;if(!e){i=1;break b}G[e+4>>2]=0;G[e+8>>2]=0;G[e+12>>2]=0;G[e+16>>2]=0;G[e>>2]=(u|0)==41?2:1;G[s>>2]=c;ka[G[a+128>>2]](G[a+4>>2],G[G[a+344>>2]>>2],e);e=0}else{e=1}E[j+160|0]=0;if(e){break g}break f}if(!H[j+160|0]){break g}G[G[j+164>>2]+M(G[(G[j+184>>2]+(G[j+180>>2]<<2)|0)-4>>2],28)>>2]=3;if(!G[a+128>>2]){break g}break f}e=2;break J}e=3}if(!H[j+160|0]){break g}f=G[l+4>>2]-G[b+68>>2]|0;break H}if(!H[j+160|0]){break g}e=0;f=G[l+4>>2]}i=1;k=oe(a);if((k|0)<0){break b}k=M(k,28);m=k+G[j+164>>2]|0;G[m+4>>2]=e;G[m>>2]=4;e=Oc(a,b,c,f);if(!e){break b}f=G[e>>2];G[(k+G[j+164>>2]|0)+8>>2]=f;e=0;while(1){i=e+f|0;e=e+1|0;if(H[i|0]){continue}break}G[j+168>>2]=G[j+168>>2]+e;if(!G[a+128>>2]){break g}break f}i=1;break D}i=2;break D}i=3}if(!H[j+160|0]){break g}f=G[a+128>>2];k=G[j+180>>2]-1|0;G[j+180>>2]=k;G[(G[j+164>>2]+M(G[G[j+184>>2]+(k<<2)>>2],28)|0)+4>>2]=i;e=!f;if(k){break h}if(f){i=G[a+356>>2];f=ka[G[a+12>>2]](M(G[i+176>>2],20)+G[i+168>>2]|0)|0;if(!f){i=1;break b}i=G[i+176>>2];G[l+12>>2]=f+20;G[l+8>>2]=f+M(i,20);ne(a,0,f,l+12|0,l+8|0);G[s>>2]=c;ka[G[a+128>>2]](G[a+4>>2],G[G[a+344>>2]>>2],f)}G[j+168>>2]=0;E[j+160|0]=0;break h}if(Lc(a,b,c,G[l+4>>2])){break f}i=1;break b}if(Kc(a,b,c,G[l+4>>2])){break f}i=1;break b}if((m|0)!=14){break g}break f}if(!G[a+84>>2]){break g}break f}if(!H[j+128|0]|!G[a+136>>2]){break g}break f}if(!G[a+96>>2]){break g}break f}if(!H[j+128|0]|!G[a+132>>2]){break g}break f}if(!G[a+128>>2]){break g}break f}G[n>>2]=G[j+96>>2];G[a+316>>2]=0;break g}i=6;break b}if(f){break p}E[j+128|0]=H[j+130|0];if((u|0)!=60){break g}e=G[a+120>>2];if(!e){break g}ka[e|0](G[a+4>>2],k,1);break f}if(H[f+32|0]){i=12;break b}if(G[f+4>>2]){i=me(a,f,(u|0)==60);if(!i){break f}break b}i=G[a+112>>2];if(i){e=0;E[j+131|0]=0;E[f+32|0]=1;if(!(ka[i|0](G[a+116>>2],0,G[f+20>>2],G[f+16>>2],G[f+24>>2])|0)){E[f+32|0]=0;i=21;break b}E[f+32|0]=0;i=H[j+130|0];if(H[j+131|0]){break o}E[j+128|0]=i;break f}E[j+128|0]=H[j+130|0];break g}if(i&255){break h}f=G[a+108>>2];if(!f){break h}if(ka[f|0](G[a+4>>2])|0){break h}i=22;break b}E[G[a+464>>2]+G[a+260>>2]|0]=0;if(!H[j+160|0]){break g}e=oe(a);if((e|0)<0){i=1;break b}G[G[j+184>>2]+(G[j+180>>2]<<2)>>2]=e;G[j+180>>2]=G[j+180>>2]+1;G[G[j+164>>2]+M(e,28)>>2]=6;if(!G[a+128>>2]){break g}break f}G[a+336>>2]=0;i=1;break b}G[G[a+316>>2]+28>>2]=0;i=1;break b}G[G[a+316>>2]+16>>2]=0;i=1;break b}G[a+324>>2]=0;i=1;break b}if(!H[j+128|0]|!G[a+316>>2]){break h}f=G[l+4>>2];i=G[b+68>>2];G[l+12>>2]=i+c;xb:{yb:{if(!G[n>>2]){if(!qa(q)){break yb}}f=f-i|0;while(1){ka[G[b+60>>2]](b,l+12|0,f,n,G[j+88>>2]);if((f|0)==G[l+12>>2]){break xb}if(qa(q)){continue}break}}i=1;break b}i=1;if(!G[j+96>>2]){break b}k=G[j+92>>2];if((k|0)==G[j+88>>2]){if(!qa(q)){break b}k=G[n>>2]}G[n>>2]=k+1;E[k|0]=0;m=G[j+96>>2];if(!m){break b}r=m;f=m;i=f;k=H[f|0];zb:{if(!k){break zb}while(1){i=f;v=r;Ab:{Bb:{f=(k<<24>>24)-10|0;if(f>>>0>22|!(1<<f&4194313)){break Bb}f=m;if((i|0)==(f|0)){break Ab}k=32;if(H[i-1|0]!=32){break Bb}f=i;break Ab}E[i|0]=k;f=i+1|0}r=v+1|0;k=H[v+1|0];if(k){continue}break}i=m;if((i|0)==(f|0)){break zb}i=f-1|0;i=H[i|0]==32?i:f}E[i|0]=0;G[G[a+316>>2]+24>>2]=m;G[j+96>>2]=G[n>>2];if(G[a+136>>2]){break f}}if(!e){break f}}f=G[a+80>>2];if(!f){break f}e=G[l+4>>2];G[l+12>>2]=c;if(!H[b+72|0]){i=C;k=B;if(G[a+144>>2]!=(b|0)){i=G[a+300>>2];k=i+4|0}while(1){G[l+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,l+12|0,e,l+8|0,G[a+48>>2]);G[k>>2]=G[l+12>>2];c=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],c,G[l+8>>2]-c|0);G[i>>2]=G[l+12>>2];if((e|0)!=G[l+12>>2]){continue}break}break f}ka[f|0](G[a+4>>2],c,e-c|0)}i=35;Cb:{switch(G[a+480>>2]-2|0){case 1:G[g>>2]=G[l+4>>2];i=0;break b;case 0:break b;default:break Cb}}c=G[l+4>>2];e=ka[G[b>>2]](b,c,d,l+4|0)|0;continue}break}G[a+320>>2]=0;i=1;break b}if((ka[G[y>>2]](y,-4,d,d,b)|0)!=-1){break c}i=29;break b}G[g>>2]=c;i=0}ia=l+16|0;return i}function Ld(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,F=0,I=0,K=0,L=0;K=ia-16|0;ia=K;u=ia-160|0;ia=u;G[u+60>>2]=a;G[u+20>>2]=a;G[u+24>>2]=-1;d=u+16|0;Ec(d);n=ia-48|0;ia=n;t=G[13508];C=G[13505];while(1){e=G[d+4>>2];a:{if((e|0)!=G[d+104>>2]){G[d+4>>2]=e+1;e=H[e|0];break a}e=Ja(d)}if(Gc(e)){continue}break}k=1;b:{c:{switch(e-43|0){case 0:case 2:break c;default:break b}}k=(e|0)==45?-1:1;e=G[d+4>>2];if((e|0)!=G[d+104>>2]){G[d+4>>2]=e+1;e=H[e|0];break b}e=Ja(d)}d:{e:{f:{while(1){if(E[f+1279|0]==(e|32)){g:{if(f>>>0>6){break g}e=G[d+4>>2];if((e|0)!=G[d+104>>2]){G[d+4>>2]=e+1;e=H[e|0];break g}e=Ja(d)}f=f+1|0;if((f|0)!=8){continue}break f}break}if((f|0)!=3){if((f|0)==8){break f}if(f>>>0<4){break e}if((f|0)==8){break f}}g=G[d+116>>2];if((g|0)>0|(g|0)>=0){G[d+4>>2]=G[d+4>>2]-1}if(f>>>0<4){break f}g=(g|0)<0;while(1){if(!g){G[d+4>>2]=G[d+4>>2]-1}f=f-1|0;if(f>>>0>3){continue}break}}g=0;e=ia-16|0;ia=e;i=(B(N(N(k|0)*N(Y))),v(2));d=i&2147483647;h:{if(d-8388608>>>0<=2130706431){k=d<<25;f=(d>>>7|0)+1065353216|0;break h}k=i<<25;f=i>>>7|2147418112;if(d>>>0>=2139095040){break h}k=0;f=0;if(!d){break h}f=d;d=P(d);Ra(e,f,0,0,0,d+81|0);g=G[e>>2];h=G[e+4>>2];k=G[e+8>>2];f=G[e+12>>2]^65536|16265-d<<16}G[n>>2]=g;G[n+4>>2]=h;G[n+8>>2]=k;G[n+12>>2]=i&-2147483648|f;ia=e+16|0;g=G[n+8>>2];h=G[n+12>>2];j=G[n>>2];i=G[n+4>>2];break d}i:{j:{k:{if(f){break k}f=0;while(1){if(E[f+3762|0]!=(e|32)){break k}l:{if(f>>>0>1){break l}e=G[d+4>>2];if((e|0)!=G[d+104>>2]){G[d+4>>2]=e+1;e=H[e|0];break l}e=Ja(d)}f=f+1|0;if((f|0)!=3){continue}break}break j}m:{switch(f|0){case 0:n:{if((e|0)!=48){break n}f=G[d+4>>2];o:{if((f|0)!=G[d+104>>2]){G[d+4>>2]=f+1;f=H[f|0];break o}f=Ja(d)}if((f&-33)==88){e=ia-432|0;ia=e;f=G[d+4>>2];p:{if((f|0)!=G[d+104>>2]){G[d+4>>2]=f+1;f=H[f|0];break p}f=Ja(d)}q:{r:{while(1){if((f|0)!=48){s:{if((f|0)!=46){break q}f=G[d+4>>2];if((f|0)==G[d+104>>2]){break s}G[d+4>>2]=f+1;f=H[f|0];break r}}else{f=G[d+4>>2];if((f|0)!=G[d+104>>2]){o=1;G[d+4>>2]=f+1;f=H[f|0]}else{o=1;f=Ja(d)}continue}break}f=Ja(d)}w=1;if((f|0)!=48){break q}while(1){f=q;q=f-1|0;r=r-!f|0;f=G[d+4>>2];t:{if((f|0)!=G[d+104>>2]){G[d+4>>2]=f+1;f=H[f|0];break t}f=Ja(d)}if((f|0)==48){continue}break}o=1}i=1073676288;u:{while(1){v:{c=f|32;w:{x:{F=f-48|0;if(F>>>0<10){break x}if((f|0)!=46&c-97>>>0>=6){break u}if((f|0)!=46){break x}if(w){break v}w=1;q=g;r=h;break w}f=(f|0)>57?c-87|0:F;y:{if((h|0)<=0&g>>>0<=7|(h|0)<0){p=f+(p<<4)|0;break y}if(!h&g>>>0<=28){Za(e+48|0,f);Ea(e+32|0,z,A,j,i,0,0,0,1073414144);z=G[e+32>>2];A=G[e+36>>2];j=G[e+40>>2];i=G[e+44>>2];Ea(e+16|0,G[e+48>>2],G[e+52>>2],G[e+56>>2],G[e+60>>2],z,A,j,i);Wa(e,G[e+16>>2],G[e+20>>2],G[e+24>>2],G[e+28>>2],m,l,x,y);x=G[e+8>>2];y=G[e+12>>2];m=G[e>>2];l=G[e+4>>2];break y}if(!f|L){break y}Ea(e+80|0,z,A,j,i,0,0,0,1073610752);Wa(e- -64|0,G[e+80>>2],G[e+84>>2],G[e+88>>2],G[e+92>>2],m,l,x,y);x=G[e+72>>2];y=G[e+76>>2];L=1;m=G[e+64>>2];l=G[e+68>>2]}g=g+1|0;h=g?h:h+1|0;o=1}f=G[d+4>>2];if((f|0)!=G[d+104>>2]){G[d+4>>2]=f+1;f=H[f|0]}else{f=Ja(d)}continue}break}f=46}z:{if(!o){g=G[d+116>>2];if((g|0)>0|(g|0)>=0){A:{g=G[d+4>>2];G[d+4>>2]=g-1;G[d+4>>2]=g-2;if(!w){break A}G[d+4>>2]=g-3}}jb(e+96|0,+(k|0)*0);m=G[e+96>>2];l=G[e+100>>2];d=G[e+108>>2];g=G[e+104>>2];break z}if((h|0)<=0&g>>>0<=7|(h|0)<0){j=g;i=h;while(1){p=p<<4;j=j+1|0;i=j?i:i+1|0;if((j|0)!=8|i){continue}break}}B:{C:{D:{if((f&-33)==80){j=Md(d);f=ja;i=f;if(j|(f|0)!=-2147483648){break B}f=G[d+116>>2];if((f|0)>0|(f|0)>=0){break D}break C}j=0;i=0;if(G[d+116>>2]<0){break B}}G[d+4>>2]=G[d+4>>2]-1}j=0;i=0}if(!p){jb(e+112|0,+(k|0)*0);m=G[e+112>>2];l=G[e+116>>2];d=G[e+124>>2];g=G[e+120>>2];break z}g=w?q:g;h=(w?r:h)<<2|g>>>30;g=j+(g<<2)|0;f=h+i|0;f=g>>>0<j>>>0?f+1|0:f;d=g;g=d-32|0;h=f-(d>>>0<32)|0;d=h;if(g>>>0>0-t>>>0&(d|0)>=0|(d|0)>0){G[18106]=68;Za(e+160|0,k);Ea(e+144|0,G[e+160>>2],G[e+164>>2],G[e+168>>2],G[e+172>>2],-1,-1,-1,2147418111);Ea(e+128|0,G[e+144>>2],G[e+148>>2],G[e+152>>2],G[e+156>>2],-1,-1,-1,2147418111);m=G[e+128>>2];l=G[e+132>>2];d=G[e+140>>2];g=G[e+136>>2];break z}d=t-226|0;f=d>>31;if((h|0)>=(f|0)&d>>>0<=g>>>0|(f|0)<(h|0)){if((p|0)>=0){while(1){Wa(e+416|0,m,l,x,y,0,0,0,-1073807360);f=Cc(m,l,x,y,1073610752);d=(f|0)<0;Wa(e+400|0,m,l,x,y,d?m:G[e+416>>2],d?l:G[e+420>>2],d?x:G[e+424>>2],d?y:G[e+428>>2]);d=g;g=d-1|0;h=h-!d|0;x=G[e+408>>2];y=G[e+412>>2];m=G[e+400>>2];l=G[e+404>>2];p=p<<1|(f|0)>=0;if((p|0)>=0){continue}break}}f=h-((t>>31)+(g>>>0<t>>>0)|0)|0;d=(g-t|0)+32|0;f=d>>>0<32?f+1|0:f;h=d>>>0<C>>>0&(f|0)<=0|(f|0)<0?(d|0)>0?d:0:C;E:{if((h|0)>=113){Za(e+384|0,k);q=G[e+392>>2];r=G[e+396>>2];z=G[e+384>>2];A=G[e+388>>2];i=0;d=0;break E}jb(e+352|0,Dc(144-h|0));Za(e+336|0,k);z=G[e+336>>2];A=G[e+340>>2];q=G[e+344>>2];r=G[e+348>>2];Pd(e+368|0,G[e+352>>2],G[e+356>>2],G[e+360>>2],G[e+364>>2],z,A,q,r);s=G[e+376>>2];D=G[e+380>>2];i=G[e+372>>2];d=G[e+368>>2]}h=!(p&1)&((Ab(m,l,x,y,0,0,0,0)|0)!=0&(h|0)<32);Jb(e+320|0,h+p|0);Ea(e+304|0,z,A,q,r,G[e+320>>2],G[e+324>>2],G[e+328>>2],G[e+332>>2]);f=d;Wa(e+272|0,G[e+304>>2],G[e+308>>2],G[e+312>>2],G[e+316>>2],d,i,s,D);d=h;Ea(e+288|0,z,A,q,r,d?0:m,d?0:l,d?0:x,d?0:y);Wa(e+256|0,G[e+288>>2],G[e+292>>2],G[e+296>>2],G[e+300>>2],G[e+272>>2],G[e+276>>2],G[e+280>>2],G[e+284>>2]);Bc(e+240|0,G[e+256>>2],G[e+260>>2],G[e+264>>2],G[e+268>>2],f,i,s,D);d=G[e+240>>2];h=G[e+244>>2];f=G[e+248>>2];i=G[e+252>>2];if(!Ab(d,h,f,i,0,0,0,0)){G[18106]=68}Od(e+224|0,d,h,f,i,g);m=G[e+224>>2];l=G[e+228>>2];d=G[e+236>>2];g=G[e+232>>2];break z}G[18106]=68;Za(e+208|0,k);Ea(e+192|0,G[e+208>>2],G[e+212>>2],G[e+216>>2],G[e+220>>2],0,0,0,65536);Ea(e+176|0,G[e+192>>2],G[e+196>>2],G[e+200>>2],G[e+204>>2],0,0,0,65536);m=G[e+176>>2];l=G[e+180>>2];d=G[e+188>>2];g=G[e+184>>2]}G[n+16>>2]=m;G[n+20>>2]=l;G[n+24>>2]=g;G[n+28>>2]=d;ia=e+432|0;g=G[n+24>>2];h=G[n+28>>2];j=G[n+16>>2];i=G[n+20>>2];break d}if(G[d+116>>2]<0){break n}G[d+4>>2]=G[d+4>>2]-1}f=d;d=e;p=k;e=0;c=ia-8976|0;ia=c;D=t+C|0;F=0-D|0;F:{G:{while(1){if((d|0)!=48){H:{if((d|0)!=46){break F}d=G[f+4>>2];if((d|0)==G[f+104>>2]){break H}G[f+4>>2]=d+1;d=H[d|0];break G}}else{d=G[f+4>>2];if((d|0)!=G[f+104>>2]){e=1;G[f+4>>2]=d+1;d=H[d|0]}else{e=1;d=Ja(f)}continue}break}d=Ja(f)}l=1;if((d|0)!=48){break F}while(1){d=g;g=d-1|0;h=h-!d|0;d=G[f+4>>2];I:{if((d|0)!=G[f+104>>2]){G[f+4>>2]=d+1;d=H[d|0];break I}d=Ja(f)}if((d|0)==48){continue}break}e=1}G[c+784>>2]=0;J:{K:{k=(d|0)==46;m=d-48|0;L:{M:{N:{if(k|m>>>0<=9){while(1){O:{if(k&1){if(!l){g=j;h=i;l=1;break O}k=!e;break N}k=j+1|0;i=k?i:i+1|0;j=k;if((o|0)<=2044){w=(d|0)==48?w:j;e=(c+784|0)+(o<<2)|0;if(s){m=(M(G[e>>2],10)+d|0)-48|0}G[e>>2]=m;e=1;k=s+1|0;d=(k|0)==9;s=d?0:k;o=d+o|0;break O}if((d|0)==48){break O}G[c+8960>>2]=G[c+8960>>2]|1;w=18396}d=G[f+4>>2];P:{if((d|0)!=G[f+104>>2]){G[f+4>>2]=d+1;d=H[d|0];break P}d=Ja(f)}k=(d|0)==46;m=d-48|0;if(k|m>>>0<10){continue}break}}g=l?g:j;h=l?h:i;if(!(!e|(d&-33)!=69)){m=Md(f);d=ja;l=d;Q:{if(m|(d|0)!=-2147483648){break Q}m=0;l=0;if(G[f+116>>2]<0){break Q}G[f+4>>2]=G[f+4>>2]-1}if(!e){break L}h=h+l|0;g=g+m|0;h=g>>>0<m>>>0?h+1|0:h;break K}k=!e;if((d|0)<0){break M}}if(G[f+116>>2]<0){break M}G[f+4>>2]=G[f+4>>2]-1}if(!k){break K}}G[18106]=28;j=0;i=0;Ec(f);d=0;f=0;break J}d=G[c+784>>2];if(!d){jb(c,+(p|0)*0);j=G[c>>2];i=G[c+4>>2];d=G[c+12>>2];f=G[c+8>>2];break J}if(!((g|0)!=(j|0)|(h|0)!=(i|0)|(j>>>0>9&(i|0)>=0|(i|0)>0)|(d>>>C|0?(C|0)<=30:0))){Za(c+48|0,p);Jb(c+32|0,d);Ea(c+16|0,G[c+48>>2],G[c+52>>2],G[c+56>>2],G[c+60>>2],G[c+32>>2],G[c+36>>2],G[c+40>>2],G[c+44>>2]);j=G[c+16>>2];i=G[c+20>>2];d=G[c+28>>2];f=G[c+24>>2];break J}if(g>>>0>(t|0)/-2>>>0&(h|0)>=0|(h|0)>0){G[18106]=68;Za(c+96|0,p);Ea(c+80|0,G[c+96>>2],G[c+100>>2],G[c+104>>2],G[c+108>>2],-1,-1,-1,2147418111);Ea(c- -64|0,G[c+80>>2],G[c+84>>2],G[c+88>>2],G[c+92>>2],-1,-1,-1,2147418111);j=G[c+64>>2];i=G[c+68>>2];d=G[c+76>>2];f=G[c+72>>2];break J}d=t-226|0;f=g>>>0<d>>>0;d=d>>31;if(f&(h|0)<=(d|0)|(d|0)>(h|0)){G[18106]=68;Za(c+144|0,p);Ea(c+128|0,G[c+144>>2],G[c+148>>2],G[c+152>>2],G[c+156>>2],0,0,0,65536);Ea(c+112|0,G[c+128>>2],G[c+132>>2],G[c+136>>2],G[c+140>>2],0,0,0,65536);j=G[c+112>>2];i=G[c+116>>2];d=G[c+124>>2];f=G[c+120>>2];break J}if(s){if((s|0)<=8){d=(c+784|0)+(o<<2)|0;f=G[d>>2];while(1){f=M(f,10);s=s+1|0;if((s|0)!=9){continue}break}G[d>>2]=f}o=o+1|0}R:{l=g;if((w|0)>(g|0)|(w|0)>=9|(g|0)>17){break R}if((l|0)==9){Za(c+192|0,p);Jb(c+176|0,G[c+784>>2]);Ea(c+160|0,G[c+192>>2],G[c+196>>2],G[c+200>>2],G[c+204>>2],G[c+176>>2],G[c+180>>2],G[c+184>>2],G[c+188>>2]);j=G[c+160>>2];i=G[c+164>>2];d=G[c+172>>2];f=G[c+168>>2];break J}if((l|0)<=8){Za(c+272|0,p);Jb(c+256|0,G[c+784>>2]);Ea(c+240|0,G[c+272>>2],G[c+276>>2],G[c+280>>2],G[c+284>>2],G[c+256>>2],G[c+260>>2],G[c+264>>2],G[c+268>>2]);Za(c+224|0,G[(0-l<<2)+54016>>2]);zd(c+208|0,G[c+240>>2],G[c+244>>2],G[c+248>>2],G[c+252>>2],G[c+224>>2],G[c+228>>2],G[c+232>>2],G[c+236>>2]);j=G[c+208>>2];i=G[c+212>>2];d=G[c+220>>2];f=G[c+216>>2];break J}g=(M(l,-3)+C|0)+27|0;d=G[c+784>>2];if(d>>>g|0?(g|0)<=30:0){break R}Za(c+352|0,p);Jb(c+336|0,d);Ea(c+320|0,G[c+352>>2],G[c+356>>2],G[c+360>>2],G[c+364>>2],G[c+336>>2],G[c+340>>2],G[c+344>>2],G[c+348>>2]);Za(c+304|0,G[(l<<2)+53944>>2]);Ea(c+288|0,G[c+320>>2],G[c+324>>2],G[c+328>>2],G[c+332>>2],G[c+304>>2],G[c+308>>2],G[c+312>>2],G[c+316>>2]);j=G[c+288>>2];i=G[c+292>>2];d=G[c+300>>2];f=G[c+296>>2];break J}while(1){d=o;o=d-1|0;if(!G[(c+784|0)+(o<<2)>>2]){continue}break}s=0;g=(l|0)%9|0;S:{if(!g){k=0;break S}g=(l|0)>=0?g:g+9|0;T:{if(!d){k=0;d=0;break T}h=G[(0-g<<2)+54016>>2];e=1e9/(h|0)|0;m=0;f=0;k=0;while(1){i=m;j=(c+784|0)+(f<<2)|0;m=G[j>>2];o=(m>>>0)/(h>>>0)|0;i=i+o|0;G[j>>2]=i;i=!i&(f|0)==(k|0);k=i?k+1&2047:k;l=i?l-9|0:l;m=M(e,m-M(h,o)|0);f=f+1|0;if((f|0)!=(d|0)){continue}break}if(!m){break T}G[(c+784|0)+(d<<2)>>2]=m;d=d+1|0}l=(l-g|0)+9|0}while(1){o=(c+784|0)+(k<<2)|0;U:{while(1){if(((l|0)!=36|J[o>>2]>=10384593)&(l|0)>=36){break U}e=d+2047|0;m=0;while(1){j=e&2047;e=(c+784|0)+(j<<2)|0;g=G[e>>2];i=g>>>3|0;h=g<<29;g=h+m|0;f=i;f=g>>>0<h>>>0?f+1|0:f;h=f;if(!f&g>>>0<1000000001){m=0}else{f=g;m=li(f,h,1e9);g=f-ki(m,ja,1e9,0)|0}G[e>>2]=g;d=(j|0)!=(d-1&2047)?d:(j|0)==(k|0)?d:g?d:j;e=j-1|0;if((j|0)!=(k|0)){continue}break}s=s-29|0;if(!m){continue}break}k=k-1&2047;if((k|0)==(d|0)){g=c+784|0;h=g+((d+2046&2047)<<2)|0;d=d-1&2047;G[h>>2]=G[h>>2]|G[g+(d<<2)>>2]}l=l+9|0;G[(c+784|0)+(k<<2)>>2]=m;continue}break}V:{W:while(1){g=d+1&2047;i=(c+784|0)+((d-1&2047)<<2)|0;while(1){h=(l|0)>45?9:1;X:{while(1){e=k;f=0;Y:{while(1){Z:{k=e+f&2047;if((k|0)==(d|0)){break Z}k=G[(c+784|0)+(k<<2)>>2];j=G[(f<<2)+53968>>2];if(k>>>0<j>>>0){break Z}if(j>>>0<k>>>0){break Y}f=f+1|0;if((f|0)!=4){continue}}break}if((l|0)!=36){break Y}g=0;h=0;f=0;j=0;i=0;while(1){k=e+f&2047;if((k|0)==(d|0)){d=d+1&2047;G[(c+(d<<2)|0)+780>>2]=0}Jb(c+768|0,G[(c+784|0)+(k<<2)>>2]);Ea(c+752|0,g,h,j,i,0,0,1342177280,1075633366);Wa(c+736|0,G[c+752>>2],G[c+756>>2],G[c+760>>2],G[c+764>>2],G[c+768>>2],G[c+772>>2],G[c+776>>2],G[c+780>>2]);j=G[c+744>>2];i=G[c+748>>2];g=G[c+736>>2];h=G[c+740>>2];f=f+1|0;if((f|0)!=4){continue}break}Za(c+720|0,p);Ea(c+704|0,g,h,j,i,G[c+720>>2],G[c+724>>2],G[c+728>>2],G[c+732>>2]);j=G[c+712>>2];i=G[c+716>>2];g=0;h=0;m=G[c+704>>2];l=G[c+708>>2];w=s+113|0;k=w-t|0;o=(k|0)<(C|0);f=o?(k|0)>0?k:0:C;if((f|0)<=112){break X}break V}s=h+s|0;k=d;if((e|0)==(d|0)){continue}break}j=1e9>>>h|0;m=-1<<h^-1;f=0;k=e;while(1){o=(c+784|0)+(e<<2)|0;w=G[o>>2];f=(w>>>h|0)+f|0;G[o>>2]=f;f=!f&(e|0)==(k|0);k=f?k+1&2047:k;l=f?l-9|0:l;f=M(j,m&w);e=e+1&2047;if((e|0)!=(d|0)){continue}break}if(!f){continue}if((g|0)!=(k|0)){G[(c+784|0)+(d<<2)>>2]=f;d=g;continue W}G[i>>2]=G[i>>2]|1;continue}break}break}jb(c+656|0,Dc(225-f|0));Pd(c+688|0,G[c+656>>2],G[c+660>>2],G[c+664>>2],G[c+668>>2],m,l,j,i);x=G[c+696>>2];y=G[c+700>>2];z=G[c+688>>2];A=G[c+692>>2];jb(c+640|0,Dc(113-f|0));Nd(c+672|0,m,l,j,i,G[c+640>>2],G[c+644>>2],G[c+648>>2],G[c+652>>2]);g=G[c+672>>2];h=G[c+676>>2];q=G[c+680>>2];r=G[c+684>>2];Bc(c+624|0,m,l,j,i,g,h,q,r);Wa(c+608|0,z,A,x,y,G[c+624>>2],G[c+628>>2],G[c+632>>2],G[c+636>>2]);j=G[c+616>>2];i=G[c+620>>2];m=G[c+608>>2];l=G[c+612>>2]}t=e+4&2047;_:{if((t|0)==(d|0)){break _}t=G[(c+784|0)+(t<<2)>>2];$:{if(t>>>0<=499999999){if(!t&(e+5&2047)==(d|0)){break $}jb(c+496|0,+(p|0)*.25);Wa(c+480|0,g,h,q,r,G[c+496>>2],G[c+500>>2],G[c+504>>2],G[c+508>>2]);q=G[c+488>>2];r=G[c+492>>2];g=G[c+480>>2];h=G[c+484>>2];break $}if((t|0)!=5e8){jb(c+592|0,+(p|0)*.75);Wa(c+576|0,g,h,q,r,G[c+592>>2],G[c+596>>2],G[c+600>>2],G[c+604>>2]);q=G[c+584>>2];r=G[c+588>>2];g=G[c+576>>2];h=G[c+580>>2];break $}I=+(p|0);if((e+5&2047)==(d|0)){jb(c+528|0,I*.5);Wa(c+512|0,g,h,q,r,G[c+528>>2],G[c+532>>2],G[c+536>>2],G[c+540>>2]);q=G[c+520>>2];r=G[c+524>>2];g=G[c+512>>2];h=G[c+516>>2];break $}jb(c+560|0,I*.75);Wa(c+544|0,g,h,q,r,G[c+560>>2],G[c+564>>2],G[c+568>>2],G[c+572>>2]);q=G[c+552>>2];r=G[c+556>>2];g=G[c+544>>2];h=G[c+548>>2]}if((f|0)>111){break _}Nd(c+464|0,g,h,q,r,0,0,0,1073676288);if(Ab(G[c+464>>2],G[c+468>>2],G[c+472>>2],G[c+476>>2],0,0,0,0)){break _}Wa(c+448|0,g,h,q,r,0,0,0,1073676288);q=G[c+456>>2];r=G[c+460>>2];g=G[c+448>>2];h=G[c+452>>2]}Wa(c+432|0,m,l,j,i,g,h,q,r);Bc(c+416|0,G[c+432>>2],G[c+436>>2],G[c+440>>2],G[c+444>>2],z,A,x,y);j=G[c+424>>2];i=G[c+428>>2];m=G[c+416>>2];l=G[c+420>>2];aa:{if((-2-D|0)>=(w&2147483647)){break aa}G[c+408>>2]=j;G[c+412>>2]=i&2147483647;G[c+400>>2]=m;G[c+404>>2]=l;Ea(c+384|0,m,l,j,i,0,0,0,1073610752);p=G[c+400>>2];t=G[c+404>>2];x=G[c+408>>2];y=G[c+412>>2];d=Cc(p,t,x,y,1081081856);e=(d|0)<0;j=e?j:G[c+392>>2];i=e?i:G[c+396>>2];m=e?m:G[c+384>>2];l=e?l:G[c+388>>2];s=((d|0)>=0)+s|0;if((s+110|0)<=(F|0)){if((((Cc(p,t,x,y,1081081856)|0)<0?o:o&(f|0)!=(k|0))|0)!=1){break aa}if(!Ab(g,h,q,r,0,0,0,0)){break aa}}G[18106]=68}Od(c+368|0,m,l,j,i,s);j=G[c+368>>2];i=G[c+372>>2];d=G[c+380>>2];f=G[c+376>>2]}G[n+40>>2]=f;G[n+44>>2]=d;G[n+32>>2]=j;G[n+36>>2]=i;ia=c+8976|0;g=G[n+40>>2];h=G[n+44>>2];j=G[n+32>>2];i=G[n+36>>2];break d;case 3:break j;default:break m}}f=G[d+116>>2];if((f|0)>0|(f|0)>=0){G[d+4>>2]=G[d+4>>2]-1}G[18106]=28;break i}ba:{g=G[d+4>>2];ca:{if((g|0)!=G[d+104>>2]){G[d+4>>2]=g+1;f=H[g|0];break ca}f=Ja(d)}if((f|0)==40){f=1;break ba}g=0;h=2147450880;if(G[d+116>>2]<0){break d}G[d+4>>2]=G[d+4>>2]-1;break d}while(1){g=G[d+4>>2];da:{if((g|0)!=G[d+104>>2]){G[d+4>>2]=g+1;e=H[g|0];break da}e=Ja(d)}if(!(!(e-48>>>0<10|e-65>>>0<26|(e|0)==95)&e-97>>>0>=26)){f=f+1|0;continue}break}g=0;h=2147450880;if((e|0)==41){break d}e=G[d+116>>2];if((e|0)>0|(e|0)>=0){G[d+4>>2]=G[d+4>>2]-1}if(!f){break d}while(1){f=f-1|0;if((e|0)>0|(e|0)>=0){G[d+4>>2]=G[d+4>>2]-1}if(f){continue}break}break d}Ec(d)}G[u>>2]=j;G[u+4>>2]=i;G[u+8>>2]=g;G[u+12>>2]=h;ia=n+48|0;g=G[u+8>>2];d=G[u+12>>2];h=G[u>>2];f=G[u+4>>2];if(b){G[b>>2]=((G[u+20>>2]+G[u+136>>2]|0)-G[u+60>>2]|0)+a}a=K;G[a+8>>2]=g;G[a+12>>2]=d;G[a>>2]=h;G[a+4>>2]=f;ia=u+160|0;I=yd(G[a>>2],G[a+4>>2],G[a+8>>2],G[a+12>>2]);ia=a+16|0;return I}function Ag(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((b|0)==(c|0)){return-4}a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{e=c-b|0;if(e&1){c=e&-2;if(!c){break t}c=b+c|0}u:{v:{e=H[b|0];switch(e-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break p;case 4:case 5:case 6:case 7:break q;case 0:case 1:case 2:case 3:break r;case 39:break v;default:break u}}if(H[b+1|0]<=253){break p}break q}if(!e){break s}break p}return-1}w:{x:{y:{z:{A:{B:{C:{j=a+76|0;switch(H[j+H[b+1|0]|0]){case 0:case 1:case 8:break q;case 7:break r;case 6:break w;case 5:break x;case 4:break y;case 10:break z;case 9:break A;case 3:break B;case 2:break C;default:break p}}f=-1;g=b+2|0;if((g|0)==(c|0)){break c}D:{E:{F:{h=H[g|0];switch(h-216|0){case 4:case 5:case 6:case 7:break b;case 39:break D;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break E;case 0:case 1:case 2:case 3:break h;default:break F}}if(!h){break n}}e=H[b+3|0];break e}e=H[b+3|0];if(e>>>0<=253){break e}break b}return jc(a,b+2|0,c,d)|0}a=b+2|0;if((a|0)==(c|0)){return-3}c=H[b+3|0];e=b+4|0;b=H[b+2|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+j|0]}G[d>>2]=(b|0)==10?e:a;return 7}G[d>>2]=b+2;return 7}f=-5;e=b+2|0;if((e|0)==(c|0)){break c}if(H[e|0]|H[b+3|0]!=93){break o}g=b+4|0;if((g|0)==(c|0)){break c}if(H[b+4|0]|H[b+5|0]!=62){break o}break b}f=-2;if((c-b|0)<2){break c}e=b+2|0;break o}f=-2;if((c-b|0)<3){break c}e=b+3|0;break o}f=-2;if((c-b|0)<4){break c}e=b+4|0;break o}G[d>>2]=b;break a}e=b+2|0}if((c|0)!=(e|0)){b=a+76|0;while(1){G:{H:{I:{J:{K:{L:{a=H[e|0];switch(a-216|0){case 4:case 5:case 6:case 7:break m;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break H;case 0:case 1:case 2:case 3:break J;case 39:break L;default:break K}}if(H[e+1|0]>253){break m}break H}if(a){break H}M:{switch(H[b+H[e+1|0]|0]){case 5:if((c-e|0)>1){break H}break m;case 0:case 1:case 2:case 3:case 8:case 9:case 10:break m;case 4:break I;case 7:break J;case 6:break M;default:break H}}if((c-e|0)<=2){break m}a=e+3|0;break G}if((c-e|0)<=3){break m}a=e+4|0;break G}a=e+2|0;if((a|0)==(c|0)){break m}if(H[a|0]|H[e+3|0]!=93){break G}g=e+4|0;if((g|0)==(c|0)){break m}if(H[e+4|0]|H[e+5|0]!=62){break G}break b}a=e+2|0}e=a;if((a|0)!=(c|0)){continue}break}}G[d>>2]=c;break l}e=H[b+3|0];switch(H[j+e|0]-5|0){case 11:break i;case 10:break j;case 12:break k;case 17:case 19:break d;case 24:break e;case 0:break f;case 1:break g;case 2:break h;default:break b}}G[d>>2]=e}f=6;break c}a=b+4|0;if((c|0)==(a|0)){break c}g=0;N:{O:{P:{Q:{R:{S:{T:{U:{V:{h=H[a|0];switch(h-216|0){case 4:case 5:case 6:case 7:break N;case 0:case 1:case 2:case 3:break R;case 39:break T;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break U;default:break V}}if(!h){break S}}e=H[b+5|0];break P}e=H[b+5|0];if(e>>>0>253){break N}break P}W:{e=H[b+5|0];switch(H[j+e|0]-5|0){case 17:case 19:break O;case 24:break P;case 1:break Q;case 2:break R;case 0:break W;default:break N}}f=-2;if((c-a|0)<2){break c}break N}f=-2;if((c-a|0)>=4){break N}break c}f=-2;if((c-a|0)>=3){break N}break c}if(!(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1)){break N}}b=b+6|0;if((c|0)==(b|0)){break c}e=a;while(1){a=b;X:{Y:{Z:{_:{$:{aa:{ba:{ca:{da:{h=H[b|0];switch(h-216|0){case 4:case 5:case 6:case 7:break N;case 0:case 1:case 2:case 3:break $;case 39:break ba;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ca;default:break da}}if(!h){break aa}}b=H[e+3|0];break Y}b=H[e+3|0];if(b>>>0>253){break N}break Y}b=H[e+3|0];k=H[j+b|0];if(k-22>>>0<6){break X}ea:{switch(k-5|0){case 0:f=-2;if((c-a|0)>=2){break N}break c;case 24:break Y;case 6:break Z;case 4:case 5:case 16:break _;case 2:break $;case 1:break ea;default:break N}}f=-2;if((c-a|0)>=3){break N}break c}f=-2;if((c-a|0)>=4){break N}break c}a=e+4|0;if((c|0)==(a|0)){break c}while(1){if(H[a|0]){break N}fa:{switch(H[j+H[a+1|0]|0]-9|0){case 2:a=a+2|0;g=5;break N;case 0:case 1:case 12:break fa;default:break N}}a=a+2|0;if((c|0)!=(a|0)){continue}break}break c}a=e+4|0;g=5;break N}if(!(G[(b>>>3&28|H[h+14496|0]<<5)+12224>>2]>>>b&1)){break N}}e=a;b=a+2|0;if((c|0)!=(b|0)){continue}break}break c}G[d>>2]=a;return g|0}return Ud(a,b+4|0,c,d)|0}e=b+4|0;if((e|0)==(c|0)){break c}ga:{if(H[b+4|0]){break ga}ha:{switch(H[j+H[b+5|0]|0]-20|0){case 7:return Sd(a,b+6|0,c,d)|0;case 0:break ha;default:break ga}}e=-1;a=b+6|0;if((c-a|0)>=12){e=0;ia:{if(H[a|0]|H[a+1|0]!=67){break ia}b=a+2|0;if(H[a+2|0]){a=b;break ia}if(H[a+3|0]!=68){a=b;break ia}b=a+4|0;if(H[a+4|0]){a=b;break ia}if(H[a+5|0]!=65){a=b;break ia}b=a+6|0;if(H[a+6|0]){a=b;break ia}if(H[a+7|0]!=84){a=b;break ia}b=a+8|0;if(H[a+8|0]){a=b;break ia}if(H[a+9|0]!=65){a=b;break ia}b=a+10|0;if(H[a+10|0]){a=b;break ia}c=b;b=H[a+11|0]==91;a=b?a+12|0:c;e=b<<3}G[d>>2]=a}return e|0}G[d>>2]=e;break a}f=-2;if((c-g|0)>=4){break b}break c}f=-2;if((c-g|0)>=3){break b}break c}f=-2;if((c-g|0)>=2){break b}break c}if(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1){break d}break b}b=b+4|0;if((c|0)==(b|0)){break c}while(1){ja:{ka:{la:{ma:{na:{oa:{pa:{qa:{ra:{sa:{h=H[b|0];switch(h-216|0){case 4:case 5:case 6:case 7:break ka;case 0:case 1:case 2:case 3:break oa;case 39:break qa;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ra;default:break sa}}if(!h){break pa}}g=H[b+1|0];break la}g=H[b+1|0];if(g>>>0<=253){break la}break ka}e=2;ta:{ua:{va:{wa:{xa:{ya:{g=H[b+1|0];switch(H[j+g|0]-5|0){case 12:break wa;case 6:break xa;case 4:case 5:case 16:break ya;case 17:case 19:case 20:case 21:case 22:break ja;case 24:break la;case 0:break ma;case 1:break na;case 2:break oa;case 18:break ta;default:break ka}}h=b+2|0;if((h|0)==(c|0)){break c}g=b;while(1){za:{b=h;Aa:{Ba:{Ca:{Da:{Ea:{h=H[g+2|0];if(h){switch(h-216|0){case 39:break za;case 0:case 1:case 2:case 3:break Ba;case 4:case 5:case 6:case 7:break ka;default:break Ea}}h=0;e=H[g+3|0];switch(H[j+e|0]-5|0){case 24:break va;case 12:break wa;case 6:break xa;case 4:case 5:case 16:break Aa;case 2:break Ba;case 1:break Ca;case 0:break Da;case 17:case 19:break ua;default:break ka}}e=H[g+3|0];break va}f=-2;if((c-b|0)>=2){break ka}break c}f=-2;if((c-b|0)>=3){break ka}break c}f=-2;if((c-b|0)>=4){break ka}break c}g=b;h=b+2|0;if((h|0)!=(c|0)){continue}break c}break}h=255;e=H[g+3|0];if(e>>>0>253){break ka}break va}G[d>>2]=b+2;return 2}a=b+2|0;if((a|0)==(c|0)){break c}if(!(!H[b+2|0]&H[b+3|0]==62)){G[d>>2]=a;break a}G[d>>2]=b+4;return 4}if(!(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1)){break ka}}j=a;k=d;i=0;h=0;f=ia-16|0;ia=f;b=g+4|0;G[f+12>>2]=b;d=-1;Fa:{if((b|0)==(c|0)){break Fa}e=c;g=j+76|0;while(1){Ga:{a=b;Ha:{Ia:{Ja:{Ka:{La:{Ma:{Na:{Oa:{Pa:{Qa:{Ra:{Sa:{Ta:{Ua:{Va:{Wa:{Xa:{Ya:{l=H[b|0];switch(l-216|0){case 4:case 5:case 6:case 7:break Ga;case 0:case 1:case 2:case 3:break Ua;case 39:break Wa;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break Xa;default:break Ya}}if(!l){break Va}}c=H[b+1|0];break Ja}c=H[b+1|0];if(c>>>0<=253){break Ja}break Ga}Za:{c=H[b+1|0];switch(H[g+c|0]-5|0){case 17:case 19:case 20:case 21:case 22:break Ia;case 24:break Ja;case 0:break Qa;case 9:break Ra;case 4:case 5:case 16:break Sa;case 18:break Ta;case 2:break Ua;case 1:break Za;default:break Ga}}d=-2;if((e-b|0)>=3){break Ga}break Fa}d=-2;a=b;if((e-b|0)>=4){break Ga}break Fa}if(i){break Ga}a=b+2|0;G[f+12>>2]=a;if((a|0)==(e|0)){break Fa}_a:{$a:{ab:{i=H[a|0];switch(i-216|0){case 4:case 5:case 6:case 7:break Ga;case 0:case 1:case 2:case 3:break Oa;case 39:break _a;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break $a;default:break ab}}if(!i){break Pa}}c=H[b+3|0];break La}c=H[b+3|0];if(c>>>0>253){break Ga}break La}c=b+2|0;G[f+12>>2]=c;if((c|0)==(e|0)){break Fa}while(1){a=c;if(H[b+2|0]){break Ga}bb:{switch(H[g+H[b+3|0]|0]-9|0){case 5:break Ra;case 0:case 1:case 12:break bb;default:break Ga}}c=a+2|0;G[f+12>>2]=c;b=a;if((c|0)!=(e|0)){continue}break}break Fa}b=a+2|0;G[f+12>>2]=b;if((b|0)==(e|0)){break Fa}while(1){c=b;if(H[a+2|0]){a=c;break Ga}i=H[g+H[a+3|0]|0];if((i&254)!=12){if(i>>>0>21){a=c;break Ga}if(!(1<<i&2098688)){a=c;break Ga}b=c+2|0;G[f+12>>2]=b;a=c;if((b|0)!=(e|0)){continue}break Fa}break}c=a+4|0;G[f+12>>2]=c;if((c|0)==(e|0)){break Fa}while(1){b=7;cb:{db:{eb:{fb:{gb:{a=H[c|0];switch(a-216|0){case 0:case 1:case 2:case 3:break cb;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break db;case 39:break eb;case 4:case 5:case 6:case 7:break fb;default:break gb}}if(a){break db}b=H[g+H[c+1|0]|0];break cb}b=8;break cb}b=0;if(H[c+1|0]>253){break cb}}b=29}if((b|0)!=(i|0)){a=c;hb:{ib:{jb:{kb:{switch(b|0){case 5:if((e-c|0)>=2){break jb}d=-2;break Fa;case 6:if((e-c|0)<3){d=-2;break Fa}c=c+3|0;break ib;case 7:if((e-c|0)<4){d=-2;break Fa}c=c+4|0;break ib;case 0:case 1:case 2:case 8:break Ga;case 3:break kb;default:break jb}}a=jc(j,c+2|0,e,f+12|0);if((a|0)>0){c=G[f+12>>2];break hb}d=a;if(a){break Fa}a=G[f+12>>2];break Ga}c=c+2|0}G[f+12>>2]=c}if((c|0)!=(e|0)){continue}break Fa}break}a=c+2|0;G[f+12>>2]=a;if((a|0)==(e|0)){break Fa}if(H[a|0]){break Ga}lb:{mb:{nb:{switch(H[g+H[c+3|0]|0]-9|0){case 8:break lb;case 2:break mb;case 0:case 1:case 12:break nb;default:break Ga}}b=c+4|0;G[f+12>>2]=b;c=a;if((b|0)==(e|0)){break Fa}while(1){a=b;ob:{pb:{qb:{rb:{sb:{tb:{ub:{i=H[b|0];if(i){vb:{switch(i-216|0){case 4:case 5:case 6:case 7:break Ga;case 0:case 1:case 2:case 3:break pb;case 39:break vb;default:break ub}}b=H[c+3|0];if(b>>>0<=253){break tb}break Ga}b=H[c+3|0];switch(H[g+b|0]-5|0){case 12:break lb;case 6:break mb;case 4:case 5:case 16:break ob;case 2:break pb;case 1:break qb;case 0:break rb;case 17:case 19:break sb;case 24:break tb;default:break Ga}}b=H[c+3|0]}if(!(G[(b>>>3&28|H[i+14240|0]<<5)+12224>>2]>>>b&1)){break Ga}}b=c+4|0;G[f+12>>2]=b;i=0;break Ha}d=-2;if((e-a|0)>=2){break Ga}break Fa}d=-2;if((e-a|0)>=3){break Ga}break Fa}d=-2;if((e-a|0)>=4){break Ga}break Fa}b=a+2|0;G[f+12>>2]=b;c=a;if((b|0)!=(e|0)){continue}break}break Fa}a=a+2|0;h=1;break Ga}b=a+2|0;G[f+12>>2]=b;if((b|0)==(e|0)){break Fa}if(H[b|0]){a=b;break Ga}c=b;b=H[a+3|0]==62;a=b?a+4|0:c;h=b?3:0;break Ga}d=-2;if((e-b|0)<2){break Fa}break Ga}c=H[b+3|0];switch(H[g+c|0]-5|0){case 17:case 19:break Ka;case 24:break La;case 0:break Ma;case 1:break Na;case 2:break Oa;default:break Ga}}d=-2;if((e-a|0)>=4){break Ga}break Fa}d=-2;if((e-a|0)>=3){break Ga}break Fa}d=-2;if((e-a|0)>=2){break Ga}break Fa}if(!(G[(c>>>3&28|H[i+14240|0]<<5)+12224>>2]>>>c&1)){break Ga}}b=b+4|0;G[f+12>>2]=b;i=1;break Ha}if(G[(c>>>3&28|H[l+14496|0]<<5)+12224>>2]>>>c&1){break Ia}a=b;break Ga}b=b+2|0;G[f+12>>2]=b}if((b|0)!=(e|0)){continue}break Fa}break}G[k>>2]=a;d=h}ia=f+16|0;return d|0}if(k){break ka}h=b+2|0;if((h|0)==(c|0)){break c}wb:{xb:{yb:{zb:{Ab:{Bb:{Cb:{Db:{Eb:{i=H[h|0];switch(i-216|0){case 4:case 5:case 6:case 7:break wb;case 0:case 1:case 2:case 3:break Ab;case 39:break Cb;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break Db;default:break Eb}}if(!i){break Bb}}g=H[b+3|0];break xb}g=H[b+3|0];if(g>>>0<=253){break xb}break wb}k=1;e=4;g=H[b+3|0];switch(H[j+g|0]-5|0){case 24:break xb;case 0:break yb;case 1:break zb;case 2:break Ab;case 17:case 19:break ja;default:break wb}}f=-2;if((c-h|0)>=4){break wb}break c}f=-2;if((c-h|0)>=3){break wb}break c}f=-2;if((c-h|0)>=2){break wb}break c}k=1;e=4;if(G[(g>>>3&28|H[i+14240|0]<<5)+12224>>2]>>>g&1){break ja}}G[d>>2]=h;break a}f=-2;if((c-b|0)>=4){break ka}break c}f=-2;if((c-b|0)>=3){break ka}break c}f=-2;if((c-b|0)>=2){break ka}break c}e=2;if(G[(g>>>3&28|H[h+14496|0]<<5)+12224>>2]>>>g&1){break ja}}G[d>>2]=b;break a}b=b+e|0;if((c|0)!=(b|0)){continue}break}}return f|0}G[d>>2]=g}return 0}function Sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((b|0)==(c|0)){return-4}a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{e=c-b|0;if(e&1){c=e&-2;if(!c){break t}c=b+c|0}u:{v:{e=H[b+1|0];switch(e-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break p;case 4:case 5:case 6:case 7:break q;case 0:case 1:case 2:case 3:break r;case 39:break v;default:break u}}if(H[b|0]<=253){break p}break q}if(!e){break s}break p}return-1}w:{x:{y:{z:{A:{B:{C:{j=a+76|0;switch(H[j+H[b|0]|0]){case 0:case 1:case 8:break q;case 7:break r;case 6:break w;case 5:break x;case 4:break y;case 10:break z;case 9:break A;case 3:break B;case 2:break C;default:break p}}f=-1;g=b+2|0;if((g|0)==(c|0)){break c}D:{E:{F:{h=H[b+3|0];switch(h-216|0){case 4:case 5:case 6:case 7:break b;case 39:break D;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break E;case 0:case 1:case 2:case 3:break h;default:break F}}if(!h){break n}}e=H[g|0];break e}e=H[g|0];if(e>>>0<=253){break e}break b}return kc(a,b+2|0,c,d)|0}a=b+2|0;if((a|0)==(c|0)){return-3}c=H[b+2|0];e=b+4|0;b=H[b+3|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+j|0]}G[d>>2]=(b|0)==10?e:a;return 7}G[d>>2]=b+2;return 7}f=-5;e=b+2|0;if((e|0)==(c|0)){break c}if(H[b+3|0]|H[e|0]!=93){break o}g=b+4|0;if((g|0)==(c|0)){break c}if(H[b+5|0]|H[b+4|0]!=62){break o}break b}f=-2;if((c-b|0)<2){break c}e=b+2|0;break o}f=-2;if((c-b|0)<3){break c}e=b+3|0;break o}f=-2;if((c-b|0)<4){break c}e=b+4|0;break o}G[d>>2]=b;break a}e=b+2|0}if((c|0)!=(e|0)){b=a+76|0;while(1){G:{H:{I:{J:{K:{L:{a=H[e+1|0];switch(a-216|0){case 4:case 5:case 6:case 7:break m;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break H;case 0:case 1:case 2:case 3:break J;case 39:break L;default:break K}}if(H[e|0]>253){break m}break H}if(a){break H}M:{switch(H[b+H[e|0]|0]){case 5:if((c-e|0)>1){break H}break m;case 0:case 1:case 2:case 3:case 8:case 9:case 10:break m;case 4:break I;case 7:break J;case 6:break M;default:break H}}if((c-e|0)<=2){break m}a=e+3|0;break G}if((c-e|0)<=3){break m}a=e+4|0;break G}a=e+2|0;if((a|0)==(c|0)){break m}if(H[e+3|0]|H[a|0]!=93){break G}h=e+4|0;if((h|0)==(c|0)){break m}if(H[e+5|0]|H[e+4|0]!=62){break G}G[d>>2]=h;break a}a=e+2|0}e=a;if((a|0)!=(c|0)){continue}break}}G[d>>2]=c;break l}e=H[g|0];switch(H[j+e|0]-5|0){case 11:break i;case 10:break j;case 12:break k;case 17:case 19:break d;case 24:break e;case 0:break f;case 1:break g;case 2:break h;default:break b}}G[d>>2]=e}f=6;break c}a=b+4|0;if((c|0)==(a|0)){break c}h=0;N:{O:{P:{Q:{R:{S:{T:{U:{V:{g=H[b+5|0];switch(g-216|0){case 4:case 5:case 6:case 7:break N;case 0:case 1:case 2:case 3:break R;case 39:break T;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break U;default:break V}}if(!g){break S}}e=H[a|0];break P}e=H[a|0];if(e>>>0>253){break N}break P}W:{e=H[a|0];switch(H[j+e|0]-5|0){case 17:case 19:break O;case 24:break P;case 1:break Q;case 2:break R;case 0:break W;default:break N}}f=-2;if((c-a|0)<2){break c}break N}f=-2;if((c-a|0)>=4){break N}break c}f=-2;if((c-a|0)>=3){break N}break c}if(!(G[(e>>>3&28|H[g+14240|0]<<5)+12224>>2]>>>e&1)){break N}}b=b+6|0;if((c|0)==(b|0)){break c}e=a;while(1){a=b;X:{Y:{Z:{_:{$:{aa:{ba:{ca:{da:{g=H[e+3|0];switch(g-216|0){case 4:case 5:case 6:case 7:break N;case 0:case 1:case 2:case 3:break $;case 39:break ba;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ca;default:break da}}if(!g){break aa}}b=H[a|0];break Y}b=H[a|0];if(b>>>0>253){break N}break Y}b=H[a|0];k=H[j+b|0];if(k-22>>>0<6){break X}ea:{switch(k-5|0){case 0:f=-2;if((c-a|0)>=2){break N}break c;case 24:break Y;case 6:break Z;case 4:case 5:case 16:break _;case 2:break $;case 1:break ea;default:break N}}f=-2;if((c-a|0)>=3){break N}break c}f=-2;if((c-a|0)>=4){break N}break c}a=e+4|0;if((c|0)==(a|0)){break c}while(1){if(H[a+1|0]){break N}fa:{switch(H[j+H[a|0]|0]-9|0){case 2:a=a+2|0;h=5;break N;case 0:case 1:case 12:break fa;default:break N}}a=a+2|0;if((c|0)!=(a|0)){continue}break}break c}a=e+4|0;h=5;break N}if(!(G[(b>>>3&28|H[g+14496|0]<<5)+12224>>2]>>>b&1)){break N}}e=a;b=a+2|0;if((c|0)!=(b|0)){continue}break}break c}G[d>>2]=a;return h|0}return Zd(a,b+4|0,c,d)|0}e=b+4|0;if((e|0)==(c|0)){break c}ga:{if(H[b+5|0]){break ga}ha:{switch(H[j+H[b+4|0]|0]-20|0){case 7:return Xd(a,b+6|0,c,d)|0;case 0:break ha;default:break ga}}e=-1;a=b+6|0;if((c-a|0)>=12){e=0;ia:{if(H[a+1|0]|H[a|0]!=67){break ia}b=a+2|0;if(H[a+3|0]){a=b;break ia}if(H[b|0]!=68){a=b;break ia}b=a+4|0;if(H[a+5|0]){a=b;break ia}if(H[b|0]!=65){a=b;break ia}b=a+6|0;if(H[a+7|0]){a=b;break ia}if(H[b|0]!=84){a=b;break ia}b=a+8|0;if(H[a+9|0]){a=b;break ia}if(H[b|0]!=65){a=b;break ia}b=a+10|0;if(H[a+11|0]){a=b;break ia}c=b;b=H[b|0]==91;a=b?a+12|0:c;e=b<<3}G[d>>2]=a}return e|0}G[d>>2]=e;break a}f=-2;if((c-g|0)>=4){break b}break c}f=-2;if((c-g|0)>=3){break b}break c}f=-2;if((c-g|0)>=2){break b}break c}if(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1){break d}break b}b=b+4|0;if((c|0)==(b|0)){break c}while(1){ja:{ka:{la:{ma:{na:{oa:{pa:{qa:{ra:{sa:{g=H[b+1|0];switch(g-216|0){case 4:case 5:case 6:case 7:break ka;case 0:case 1:case 2:case 3:break oa;case 39:break qa;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ra;default:break sa}}if(!g){break pa}}h=H[b|0];break la}h=H[b|0];if(h>>>0<=253){break la}break ka}e=2;ta:{ua:{va:{wa:{xa:{ya:{h=H[b|0];switch(H[j+h|0]-5|0){case 12:break wa;case 6:break xa;case 4:case 5:case 16:break ya;case 17:case 19:case 20:case 21:case 22:break ja;case 24:break la;case 0:break ma;case 1:break na;case 2:break oa;case 18:break ta;default:break ka}}h=b+2|0;if((h|0)==(c|0)){break c}g=b;while(1){za:{b=h;Aa:{Ba:{Ca:{Da:{Ea:{h=H[g+3|0];if(h){switch(h-216|0){case 39:break za;case 0:case 1:case 2:case 3:break Ba;case 4:case 5:case 6:case 7:break ka;default:break Ea}}h=0;e=H[b|0];switch(H[j+e|0]-5|0){case 24:break va;case 12:break wa;case 6:break xa;case 4:case 5:case 16:break Aa;case 2:break Ba;case 1:break Ca;case 0:break Da;case 17:case 19:break ua;default:break ka}}e=H[b|0];break va}f=-2;if((c-b|0)>=2){break ka}break c}f=-2;if((c-b|0)>=3){break ka}break c}f=-2;if((c-b|0)>=4){break ka}break c}g=b;h=b+2|0;if((h|0)!=(c|0)){continue}break c}break}h=255;e=H[b|0];if(e>>>0>253){break ka}break va}G[d>>2]=b+2;return 2}a=b+2|0;if((a|0)==(c|0)){break c}if(!(!H[b+3|0]&H[b+2|0]==62)){G[d>>2]=a;break a}G[d>>2]=b+4;return 4}if(!(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1)){break ka}}j=a;k=d;i=0;h=0;f=ia-16|0;ia=f;b=g+4|0;G[f+12>>2]=b;d=-1;Fa:{if((b|0)==(c|0)){break Fa}e=c;g=j+76|0;while(1){Ga:{a=b;Ha:{Ia:{Ja:{Ka:{La:{Ma:{Na:{Oa:{Pa:{Qa:{Ra:{Sa:{Ta:{Ua:{Va:{Wa:{Xa:{Ya:{l=H[b+1|0];switch(l-216|0){case 4:case 5:case 6:case 7:break Ga;case 0:case 1:case 2:case 3:break Ua;case 39:break Wa;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break Xa;default:break Ya}}if(!l){break Va}}c=H[b|0];break Ja}c=H[b|0];if(c>>>0<=253){break Ja}break Ga}Za:{c=H[b|0];switch(H[g+c|0]-5|0){case 17:case 19:case 20:case 21:case 22:break Ia;case 24:break Ja;case 0:break Qa;case 9:break Ra;case 4:case 5:case 16:break Sa;case 18:break Ta;case 2:break Ua;case 1:break Za;default:break Ga}}d=-2;if((e-b|0)>=3){break Ga}break Fa}d=-2;a=b;if((e-b|0)>=4){break Ga}break Fa}if(i){break Ga}a=b+2|0;G[f+12>>2]=a;if((a|0)==(e|0)){break Fa}_a:{$a:{ab:{i=H[b+3|0];switch(i-216|0){case 4:case 5:case 6:case 7:break Ga;case 0:case 1:case 2:case 3:break Oa;case 39:break _a;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break $a;default:break ab}}if(!i){break Pa}}c=H[a|0];break La}c=H[a|0];if(c>>>0>253){break Ga}break La}c=b+2|0;G[f+12>>2]=c;if((c|0)==(e|0)){break Fa}while(1){a=c;if(H[b+3|0]){break Ga}bb:{switch(H[g+H[a|0]|0]-9|0){case 5:break Ra;case 0:case 1:case 12:break bb;default:break Ga}}c=a+2|0;G[f+12>>2]=c;b=a;if((c|0)!=(e|0)){continue}break}break Fa}c=a+2|0;G[f+12>>2]=c;if((c|0)==(e|0)){break Fa}while(1){b=c;if(H[a+3|0]){a=b;break Ga}c=H[g+H[b|0]|0];if((c&254)!=12){if(c>>>0>21){a=b;break Ga}if(!(1<<c&2098688)){a=b;break Ga}c=b+2|0;G[f+12>>2]=c;a=b;if((c|0)!=(e|0)){continue}break Fa}break}b=a+4|0;G[f+12>>2]=b;if((b|0)==(e|0)){break Fa}while(1){i=7;cb:{db:{eb:{fb:{gb:{a=H[b+1|0];switch(a-216|0){case 0:case 1:case 2:case 3:break cb;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break db;case 39:break eb;case 4:case 5:case 6:case 7:break fb;default:break gb}}if(a){break db}i=H[g+H[b|0]|0];break cb}i=8;break cb}i=0;if(H[b|0]>253){break cb}}i=29}if((c|0)!=(i|0)){a=b;hb:{ib:{jb:{kb:{switch(i|0){case 5:if((e-b|0)>=2){break jb}d=-2;break Fa;case 6:if((e-b|0)<3){d=-2;break Fa}b=b+3|0;break ib;case 7:if((e-b|0)<4){d=-2;break Fa}b=b+4|0;break ib;case 0:case 1:case 2:case 8:break Ga;case 3:break kb;default:break jb}}a=kc(j,b+2|0,e,f+12|0);if((a|0)>0){b=G[f+12>>2];break hb}d=a;if(a){break Fa}a=G[f+12>>2];break Ga}b=b+2|0}G[f+12>>2]=b}if((b|0)!=(e|0)){continue}break Fa}break}a=b+2|0;G[f+12>>2]=a;if((a|0)==(e|0)){break Fa}if(H[b+3|0]){break Ga}lb:{mb:{nb:{switch(H[g+H[a|0]|0]-9|0){case 8:break lb;case 2:break mb;case 0:case 1:case 12:break nb;default:break Ga}}b=b+4|0;G[f+12>>2]=b;c=a;if((b|0)==(e|0)){break Fa}while(1){a=b;ob:{pb:{qb:{rb:{sb:{tb:{ub:{b=H[c+3|0];if(b){vb:{switch(b-216|0){case 4:case 5:case 6:case 7:break Ga;case 0:case 1:case 2:case 3:break pb;case 39:break vb;default:break ub}}i=H[a|0];if(i>>>0<=253){break tb}break Ga}i=H[a|0];switch(H[g+i|0]-5|0){case 12:break lb;case 6:break mb;case 4:case 5:case 16:break ob;case 2:break pb;case 1:break qb;case 0:break rb;case 17:case 19:break sb;case 24:break tb;default:break Ga}}i=H[a|0]}if(!(G[(i>>>3&28|H[b+14240|0]<<5)+12224>>2]>>>i&1)){break Ga}}b=c+4|0;G[f+12>>2]=b;i=0;break Ha}d=-2;if((e-a|0)>=2){break Ga}break Fa}d=-2;if((e-a|0)>=3){break Ga}break Fa}d=-2;if((e-a|0)>=4){break Ga}break Fa}b=a+2|0;G[f+12>>2]=b;c=a;if((b|0)!=(e|0)){continue}break}break Fa}a=a+2|0;h=1;break Ga}b=a+2|0;G[f+12>>2]=b;if((b|0)==(e|0)){break Fa}if(H[a+3|0]){a=b;break Ga}c=b;b=H[a+2|0]==62;a=b?a+4|0:c;h=b?3:0;break Ga}d=-2;if((e-b|0)<2){break Fa}break Ga}c=H[a|0];switch(H[g+c|0]-5|0){case 17:case 19:break Ka;case 24:break La;case 0:break Ma;case 1:break Na;case 2:break Oa;default:break Ga}}d=-2;if((e-a|0)>=4){break Ga}break Fa}d=-2;if((e-a|0)>=3){break Ga}break Fa}d=-2;if((e-a|0)>=2){break Ga}break Fa}if(!(G[(c>>>3&28|H[i+14240|0]<<5)+12224>>2]>>>c&1)){break Ga}}b=b+4|0;G[f+12>>2]=b;i=1;break Ha}if(G[(c>>>3&28|H[l+14496|0]<<5)+12224>>2]>>>c&1){break Ia}a=b;break Ga}b=b+2|0;G[f+12>>2]=b}if((b|0)!=(e|0)){continue}break Fa}break}G[k>>2]=a;d=h}ia=f+16|0;return d|0}if(k){break ka}g=b+2|0;if((g|0)==(c|0)){break c}wb:{xb:{yb:{zb:{Ab:{Bb:{Cb:{Db:{Eb:{i=H[b+3|0];switch(i-216|0){case 4:case 5:case 6:case 7:break wb;case 0:case 1:case 2:case 3:break Ab;case 39:break Cb;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break Db;default:break Eb}}if(!i){break Bb}}h=H[g|0];break xb}h=H[g|0];if(h>>>0<=253){break xb}break wb}k=1;e=4;h=H[g|0];switch(H[j+h|0]-5|0){case 24:break xb;case 0:break yb;case 1:break zb;case 2:break Ab;case 17:case 19:break ja;default:break wb}}f=-2;if((c-g|0)>=4){break wb}break c}f=-2;if((c-g|0)>=3){break wb}break c}f=-2;if((c-g|0)>=2){break wb}break c}k=1;e=4;if(G[(h>>>3&28|H[i+14240|0]<<5)+12224>>2]>>>h&1){break ja}}break b}f=-2;if((c-b|0)>=4){break ka}break c}f=-2;if((c-b|0)>=3){break ka}break c}f=-2;if((c-b|0)>=2){break ka}break c}e=2;if(G[(h>>>3&28|H[g+14496|0]<<5)+12224>>2]>>>h&1){break ja}}G[d>>2]=b;break a}b=b+e|0;if((c|0)!=(b|0)){continue}break}}return f|0}G[d>>2]=g}return 0}function Qb(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=ia-48|0;ia=h;G[h+36>>2]=d;r=G[a+356>>2];a:{if(G[a+144>>2]==(c|0)){t=a+288|0;i=a+292|0;break a}t=G[a+300>>2];i=t+4|0}w=i;G[t>>2]=d;x=r+92|0;y=r+80|0;z=a+428|0;A=a+416|0;s=a+292|0;p=a+288|0;b:{c:{while(1){d=G[h+36>>2];G[h+32>>2]=d;i=ka[G[c+4>>2]](c,d,e,h+32|0)|0;d=G[h+32>>2];G[w>>2]=d;j=17;d:{e:{f:{g:{switch(i+5|0){case 2:if(g){G[f>>2]=G[h+36>>2];j=0;break b}G[w>>2]=e;d=G[a+60>>2];h:{if(d){E[h|0]=10;ka[d|0](G[a+4>>2],h,1);break h}g=G[a+80>>2];if(!g){break h}d=G[h+36>>2];G[h>>2]=d;if(!H[c+72|0]){if(G[a+144>>2]!=(c|0)){p=G[a+300>>2];s=p+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,e,h+44|0,G[a+48>>2]);G[s>>2]=G[h>>2];d=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],d,G[h+44>>2]-d|0);G[p>>2]=G[h>>2];if(G[h>>2]!=(e|0)){continue}break}break h}ka[g|0](G[a+4>>2],d,e-d|0)}if(!b){j=3;break b}j=13;if(G[a+312>>2]!=(b|0)){break b}break c;case 1:if(g){G[f>>2]=G[h+36>>2];j=0;break b}if((b|0)<=0){j=3;break b}j=13;if(G[a+312>>2]!=(b|0)){break b}G[f>>2]=G[h+36>>2];j=0;break b;case 5:G[t>>2]=d;j=4;break b;case 4:if(!g){j=5;break b}G[f>>2]=G[h+36>>2];j=0;break b;case 3:if(!g){j=6;break b}G[f>>2]=G[h+36>>2];j=0;break b;case 14:i=G[c+68>>2];d=ka[G[c+48>>2]](c,i+G[h+36>>2]|0,d-i|0)|0;E[h+40|0]=d;if(d&255){d=G[a+60>>2];if(d){ka[d|0](G[a+4>>2],h+40|0,1);break d}k=G[a+80>>2];if(!k){break d}d=G[h+32>>2];i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if((d|0)!=G[h>>2]){continue}break}break d}ka[k|0](G[a+4>>2],i,d-i|0);break d}d=G[h+32>>2];i=G[c+68>>2];G[h>>2]=i+G[h+36>>2];i:{j:{if(!G[x>>2]){if(!qa(y)){break j}}d=d-i|0;while(1){ka[G[c+60>>2]](c,h,d,x,G[r+88>>2]);if((d|0)==G[h>>2]){break i}if(qa(y)){continue}break}}j=1;break b}j=1;if(!G[r+96>>2]){break b}d=G[r+92>>2];if((d|0)==G[r+88>>2]){if(!qa(y)){break b}d=G[x>>2]}G[r+92>>2]=d+1;E[d|0]=0;l=G[r+96>>2];if(!l){break b}k=0;n=G[r+8>>2];k:{if(!n){break k}i=G[a+496>>2];j=l;o=H[j|0];d=o;if(d){while(1){i=M(i,1000003)^d&255;d=H[j+1|0];j=j+1|0;if(d){continue}break}}v=G[r>>2];d=n-1|0;q=d&i;m=G[v+(q<<2)>>2];if(!m){break k}B=d>>>2|0;u=0;C=0-n&i;while(1){j=l;d=o;i=G[m>>2];if((d|0)==H[i|0]){while(1){if(!(d&255)){k=m;break k}k=H[i+1|0];d=H[j+1|0];i=i+1|0;j=j+1|0;if((d|0)==(k|0)){continue}break}}k=0;u=u&255?u:B&C>>>H[r+4|0]-1|1;d=u&255;q=(d>>>0>q>>>0?n:0)+(q-d|0)|0;m=G[v+(q<<2)>>2];if(m){continue}break}}G[r+92>>2]=l;l:{if(!(H[r+130|0]?0:H[r+129|0])){if(!k){j=11;break b}if(H[k+34|0]){break l}j=24;break b}if(k){break l}d=G[a+120>>2];if(d){ka[d|0](G[a+4>>2],l,0);break d}if(!G[a+80>>2]){break d}Pc(a,c,G[h+36>>2],G[h+32>>2]);break d}if(H[k+32|0]){j=12;break b}if(G[k+28>>2]){j=15;break b}if(G[k+4>>2]){if(H[a+308|0]){break f}d=G[a+120>>2];if(d){ka[d|0](G[a+4>>2],G[k>>2],0);break d}if(!G[a+80>>2]){break d}Pc(a,c,G[h+36>>2],G[h+32>>2]);break d}if(G[a+112>>2]){j=1;E[k+32|0]=1;l=0;m=0;m:{n:{n=G[a+356>>2];o:{if(!G[n+156>>2]){break o}i=a+416|0;d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(i)){break n}d=G[a+428>>2]}m=1;G[a+428>>2]=d+1;E[d|0]=61;o=G[G[n+156>>2]+20>>2]-(H[a+472|0]!=0)|0;if((o|0)<=0){break o}while(1){d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(i)){break n}d=G[a+428>>2]}q=H[G[G[n+156>>2]+16>>2]+l|0];G[a+428>>2]=d+1;E[d|0]=q;l=l+1|0;if((o|0)!=(l|0)){continue}break}}o=a+416|0;d=G[n+60>>2];u=d+(G[n+68>>2]<<2)|0;while(1){if((d|0)!=(u|0)){q=G[d>>2];i=d+4|0;d=i;if(!q){continue}d=i;if(!G[q+4>>2]){continue}if(m){d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(o)){break n}d=G[a+428>>2]}G[a+428>>2]=d+1;E[d|0]=12}d=G[q>>2];m=H[d|0];if(m){while(1){l=G[a+428>>2];if((l|0)==G[a+424>>2]){if(!qa(o)){break n}m=H[d|0];l=G[a+428>>2]}G[a+428>>2]=l+1;E[l|0]=m;m=H[d+1|0];d=d+1|0;if(m){continue}break}}d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(o)){break n}d=G[a+428>>2]}m=1;G[a+428>>2]=d+1;E[d|0]=61;l=0;d=i;v=G[G[q+4>>2]+20>>2]-(H[a+472|0]!=0)|0;if((v|0)<=0){continue}while(1){d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(o)){break n}d=G[a+428>>2]}B=H[G[G[q+4>>2]+16>>2]+l|0];G[a+428>>2]=d+1;E[d|0]=B;l=l+1|0;if((v|0)!=(l|0)){continue}break}d=i;continue}break}d=G[n>>2];q=d+(G[n+8>>2]<<2)|0;while(1){if((d|0)!=(q|0)){l=G[d>>2];i=d+4|0;d=i;if(!l){continue}d=i;if(!H[l+32|0]){continue}if(m){d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(o)){break n}d=G[a+428>>2]}G[a+428>>2]=d+1;E[d|0]=12}m=1;d=i;l=G[l>>2];n=H[l|0];if(!n){continue}while(1){d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(o)){break n}n=H[l|0];d=G[a+428>>2]}G[a+428>>2]=d+1;E[d|0]=n;n=H[l+1|0];l=l+1|0;if(n){continue}break}d=i;continue}break}d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(o)){break n}d=G[a+428>>2]}G[a+428>>2]=d+1;E[d|0]=0;d=G[a+432>>2];break m}d=0}E[k+32|0]=0;if(!d){break b}if(!(ka[G[a+112>>2]](G[a+116>>2],d,G[k+20>>2],G[k+16>>2],G[k+24>>2])|0)){j=21;break b}G[a+428>>2]=G[a+432>>2];break d}if(!G[a+80>>2]){break d}Pc(a,c,G[h+36>>2],G[h+32>>2]);break d;case 6:case 7:d=G[a+368>>2];p:{if(d){G[a+368>>2]=G[d>>2];break p}j=1;d=ka[G[a+12>>2]](48)|0;if(!d){break b}i=ka[G[a+12>>2]](32)|0;G[d+36>>2]=i;if(!i){ka[G[a+20>>2]](d);break b}G[d+40>>2]=i+32}G[d+44>>2]=0;G[d>>2]=G[a+364>>2];G[a+364>>2]=d;G[d+16>>2]=0;G[d+20>>2]=0;i=G[h+36>>2]+G[c+68>>2]|0;G[d+4>>2]=i;i=ka[G[c+32>>2]](c,i)|0;G[d+8>>2]=i;G[a+312>>2]=G[a+312>>2]+1;k=G[d+4>>2];G[h>>2]=k;G[h+40>>2]=G[d+36>>2];l=i+k|0;ka[G[c+60>>2]](c,h,l,h+40|0,G[d+40>>2]-1|0);i=G[h+40>>2];j=G[d+36>>2];k=i-j|0;q:{if((l|0)!=G[h>>2]){while(1){i=j;j=G[d+40>>2]-j<<1;i=ka[G[a+16>>2]](i,j)|0;if(!i){break q}G[d+36>>2]=i;j=i+j|0;G[d+40>>2]=j;G[h+40>>2]=i+k;ka[G[c+60>>2]](c,h,l,h+40|0,j-1|0);i=G[h+40>>2];j=G[d+36>>2];k=i-j|0;if((l|0)!=G[h>>2]){continue}break}}G[d+24>>2]=k;G[d+12>>2]=j;E[i|0]=0;j=ke(a,c,G[h+36>>2],d+12|0,d+44|0);if(j){break b}i=G[a+52>>2];r:{if(i){ka[i|0](G[a+4>>2],G[d+12>>2],G[a+392>>2]);break r}k=G[a+80>>2];if(!k){break r}d=G[h+32>>2];i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if((d|0)!=G[h>>2]){continue}break}break r}ka[k|0](G[a+4>>2],i,d-i|0)}d=G[a+416>>2];i=G[a+420>>2];s:{t:{if(!i){j=d;break t}if(!d){break s}while(1){j=d;d=G[d>>2];G[j>>2]=i;i=j;if(d){continue}break}}G[a+420>>2]=j}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;break d}j=1;break b;case 8:case 9:d=G[c+68>>2];i=G[h+36>>2];G[h+28>>2]=0;d=d+i|0;i=ka[G[c+32>>2]](c,d)|0;G[h+44>>2]=d;u:{v:{if(!G[z>>2]){if(!qa(A)){break v}}d=d+i|0;while(1){ka[G[c+60>>2]](c,h+44|0,d,z,G[a+424>>2]);if((d|0)==G[h+44>>2]){break u}if(qa(A)){continue}break}}j=1;break b}j=1;if(!G[a+432>>2]){break b}d=G[a+428>>2];if((d|0)==G[a+424>>2]){if(!qa(A)){break b}d=G[z>>2]}G[a+428>>2]=d+1;E[d|0]=0;d=G[a+432>>2];G[h>>2]=d;if(!d){break b}G[a+432>>2]=G[a+428>>2];j=ke(a,c,G[h+36>>2],h,h+28|0);if(j){break b}G[a+432>>2]=G[a+428>>2];w:{x:{d=G[a+52>>2];y:{if(!d){d=G[a+56>>2];if(!d){break x}j=G[h>>2];break y}j=G[h>>2];ka[d|0](G[a+4>>2],j,G[a+392>>2]);d=G[a+56>>2];if(!d){break w}if(!G[a+52>>2]){break y}G[t>>2]=G[w>>2];d=G[a+56>>2]}ka[d|0](G[a+4>>2],j);break w}k=G[a+80>>2];if(!k){break w}d=G[h+32>>2];i=G[h+36>>2];G[h+44>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+40>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h+44|0,d,h+40|0,G[a+48>>2]);G[k>>2]=G[h+44>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+40>>2]-j|0);G[i>>2]=G[h+44>>2];if((d|0)!=G[h+44>>2]){continue}break}break w}ka[k|0](G[a+4>>2],i,d-i|0)}d=G[a+416>>2];i=G[a+420>>2];z:{A:{if(!i){j=d;break A}if(!d){break z}while(1){j=d;d=G[d>>2];G[j>>2]=i;i=j;if(d){continue}break}}G[a+420>>2]=j}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;d=G[h+28>>2];if(d){while(1){i=G[a+104>>2];if(i){ka[i|0](G[a+4>>2],G[G[d>>2]>>2])}i=G[d+4>>2];G[d+4>>2]=G[a+376>>2];G[a+376>>2]=d;G[G[d>>2]+4>>2]=G[d+8>>2];d=i;if(d){continue}break}}if(G[a+312>>2]){break d}j=Jc(a,G[h+32>>2],e,f);break b;case 10:if(G[a+312>>2]==(b|0)){j=13;break b}l=G[a+364>>2];G[a+364>>2]=G[l>>2];G[l>>2]=G[a+368>>2];G[a+368>>2]=l;B:{k=G[h+36>>2]+(G[c+68>>2]<<1)|0;i=ka[G[c+32>>2]](c,k)|0;if((i|0)==G[l+8>>2]){j=G[l+4>>2];d=k;C:{D:{E:{if(i>>>0>=4){if((d|j)&3){break E}while(1){if(G[j>>2]!=G[d>>2]){break E}d=d+4|0;j=j+4|0;i=i-4|0;if(i>>>0>3){continue}break}}if(!i){break D}}while(1){m=H[j|0];o=H[d|0];if((m|0)==(o|0)){d=d+1|0;j=j+1|0;i=i-1|0;if(i){continue}break D}break}d=m-o|0;break C}d=0}if(!d){break B}}G[t>>2]=k;j=7;break b}G[a+312>>2]=G[a+312>>2]-1;d=G[a+56>>2];F:{if(d){G:{if(!H[a+236|0]){break G}j=G[l+16>>2];if(!j){break G}d=G[l+12>>2]+G[l+28>>2]|0;k=H[j|0];if(k){while(1){E[d|0]=k;d=d+1|0;k=H[j+1|0];j=j+1|0;if(k){continue}break}}H:{if(!H[a+237|0]){break H}j=G[l+20>>2];if(!j){break H}E[d|0]=H[a+472|0];d=d+1|0;k=H[j|0];if(!k){break H}while(1){E[d|0]=k;d=d+1|0;k=H[j+1|0];j=j+1|0;if(k){continue}break}}E[d|0]=0;d=G[a+56>>2]}ka[d|0](G[a+4>>2],G[l+12>>2]);break F}k=G[a+80>>2];if(!k){break F}d=G[h+32>>2];i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){k=p;i=s;if(G[a+144>>2]!=(c|0)){k=G[a+300>>2];i=k+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[i>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[k>>2]=G[h>>2];if((d|0)!=G[h>>2]){continue}break}break F}ka[k|0](G[a+4>>2],i,d-i|0)}d=G[l+44>>2];if(d){while(1){i=G[a+104>>2];if(i){ka[i|0](G[a+4>>2],G[G[d>>2]>>2]);i=G[l+44>>2]}else{i=d}i=G[i+4>>2];G[l+44>>2]=i;G[d+4>>2]=G[a+376>>2];G[a+376>>2]=d;G[G[d>>2]+4>>2]=G[d+8>>2];d=i;if(d){continue}break}}if(G[a+312>>2]){break d}j=Jc(a,G[h+32>>2],e,f);break b;case 15:d=ka[G[c+44>>2]](c,G[h+36>>2])|0;if((d|0)<0){j=14;break b}i=G[a+60>>2];if(i){ka[i|0](G[a+4>>2],h,Ic(d,h));break d}k=G[a+80>>2];if(!k){break d}d=G[h+32>>2];i=G[h+36>>2];G[h>>2]=i;if(H[c+72|0]){break e}i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if((d|0)!=G[h>>2]){continue}break};break d;case 12:i=G[a+60>>2];if(i){E[h|0]=10;ka[i|0](G[a+4>>2],h,1);break d}k=G[a+80>>2];if(!k){break d}i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if(G[h>>2]!=(d|0)){continue}break}break d}ka[k|0](G[a+4>>2],i,d-i|0);break d;case 13:i=G[a+72>>2];I:{if(i){ka[i|0](G[a+4>>2]);break I}k=G[a+80>>2];if(!k){break I}i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if(G[h>>2]!=(d|0)){continue}break}break I}ka[k|0](G[a+4>>2],i,d-i|0)}j=je(a,c,h+32|0,e,f,g);if(j){break b}if(G[h+32>>2]){break d}G[a+280>>2]=70;j=0;break b;case 0:if(g){G[f>>2]=G[h+36>>2];j=0;break b}d=G[a+60>>2];J:{if(d){if(!H[c+72|0]){G[h>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h+36|0,e,h,G[a+48>>2]);c=G[a+44>>2];ka[G[a+60>>2]](G[a+4>>2],c,G[h>>2]-c|0);break J}c=G[h+36>>2];ka[d|0](G[a+4>>2],c,e-c|0);break J}g=G[a+80>>2];if(!g){break J}d=G[h+36>>2];G[h>>2]=d;if(!H[c+72|0]){if(G[a+144>>2]!=(c|0)){p=G[a+300>>2];s=p+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,e,h+44|0,G[a+48>>2]);G[s>>2]=G[h>>2];d=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],d,G[h+44>>2]-d|0);G[p>>2]=G[h>>2];if(G[h>>2]!=(e|0)){continue}break}break J}ka[g|0](G[a+4>>2],d,e-d|0)}if(!b){G[t>>2]=e;j=3;break b}if(G[a+312>>2]==(b|0)){break c}G[t>>2]=e;j=13;break b;case 11:i=G[a+60>>2];if(i){if(!H[c+72|0]){while(1){G[h>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h+36|0,d,h,G[a+48>>2]);G[w>>2]=G[h+36>>2];d=G[a+44>>2];ka[i|0](G[a+4>>2],d,G[h>>2]-d|0);d=G[h+36>>2];if((d|0)==G[h+32>>2]){break d}G[t>>2]=d;d=G[h+32>>2];continue}}k=G[h+36>>2];ka[i|0](G[a+4>>2],k,d-k|0);break d}k=G[a+80>>2];if(!k){break d}i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if(G[h>>2]!=(d|0)){continue}break}break d}ka[k|0](G[a+4>>2],i,d-i|0);break d;case 16:if(Lc(a,c,G[h+36>>2],d)){break d}j=1;break b;case 18:if(Kc(a,c,G[h+36>>2],d)){break d}j=1;break b;case 17:break b;default:break g}}k=G[a+80>>2];if(!k){break d}i=G[h+36>>2];G[h>>2]=i;if(!H[c+72|0]){i=p;k=s;if(G[a+144>>2]!=(c|0)){i=G[a+300>>2];k=i+4|0}while(1){G[h+44>>2]=G[a+44>>2];ka[G[c+60>>2]](c,h,d,h+44|0,G[a+48>>2]);G[k>>2]=G[h>>2];j=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],j,G[h+44>>2]-j|0);G[i>>2]=G[h>>2];if(G[h>>2]!=(d|0)){continue}break}break d}ka[k|0](G[a+4>>2],i,d-i|0);break d}j=me(a,k,0);if(!j){break d}break b}ka[k|0](G[a+4>>2],i,d-i|0)}d=G[h+32>>2];G[h+36>>2]=d;G[t>>2]=d;j=35;K:{switch(G[a+480>>2]-2|0){case 1:break K;case 0:break b;default:continue}}break}G[f>>2]=G[h+32>>2];j=0;break b}G[f>>2]=e;j=0}ia=h+48|0;return j}function ji(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=ia+-64|0;ia=n;if(!H[71844]){E[71844]=1;if(!H[72212]){E[72212]=1;ec();if(!H[72100]){E[72100]=1;ec();G[18026]=128;G[18027]=za(128,1);Zb(72112);Zb(72128);Zb(72144);Zb(72160);Zb(72176)}G[13635]=37;if(!H[72192]){ec();E[72192]=1}G[13655]=38}G[13656]=1;if(!H[72216]){E[72216]=1;if(!H[71900]){E[71900]=1;ec();if(!H[72420]){E[72420]=1;if(!H[72240]){G[18061]=512;E[72240]=1;a=za(512,4);G[18063]=31;G[18062]=a;a=za(31,8);G[18065]=512;G[18064]=a;a=za(512,1);G[18067]=1024;G[18066]=a;G[18068]=za(1024,12);rb(72276,256,42,43);rb(72300,31,44,45);rb(72324,32,46,47);rb(72348,1024,48,49);Le()}G[13658]=51}G[17976]=4096;G[17856]=12;a=za(4096,20);G[17978]=4;G[17977]=a;G[17979]=za(4,12);rb(71920,4096,13,14);G[17986]=0;G[17987]=0;a=G[18011];if(!G[17978]){G[17978]=0;G[17979]=sa(G[17979],0,0,12)}c=xa(a);o=G[17979];d=G[17986];a=o+M(d,12)|0;G[a+8>>2]=15;G[a+4>>2]=16;G[a>>2]=c;a=d+1|0;G[17986]=a;c=G[18011];if((a|0)==G[17978]){d=a<<1;G[17978]=d;G[17979]=sa(o,d,a,12)}c=xa(c);o=G[17979];d=G[17986];a=o+M(d,12)|0;G[a+8>>2]=17;G[a+4>>2]=18;G[a>>2]=c;a=d+1|0;G[17986]=a;c=G[18024];d=G[18011];if((a|0)==G[17978]){f=a<<1;G[17978]=f;G[17979]=sa(o,f,a,12)}c=xa(c+d|0);d=G[17986];a=G[17979]+M(d,12)|0;G[a+8>>2]=19;G[a+4>>2]=20;G[a>>2]=c;G[17986]=d+1}G[13632]=40}G[13657]=2;if(!H[72224]){G[18057]=16;E[72224]=1;G[18055]=za(16,4)}ue(2679,3,4);ue(2632,5,6);G[17962]=1024;a=za(1024,1);G[17963]=a;G[17970]=0;E[a|0]=0;G[17966]=-1;G[17965]=-1;G[17971]=0}c=1;E[71820]=1;G[17956]=16;G[17954]=0;E[71828]=0;a:{b:{h=G[b+4>>2];if(!h){break b}a=b+4|0;c:while(1){d:{o=b;b=1;if(H[h|0]!=45){break d}while(1){e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{d=E[b+h|0];switch(d-63|0){case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 42:case 43:case 44:case 45:case 46:case 48:case 51:case 53:case 54:break f;case 0:case 41:break g;case 55:break h;case 36:break i;case 49:break j;case 52:break k;case 47:break m;case 50:break n;default:break o}}if(d){break f}b=a;break l}G[17956]=0;E[71820]=0;break e}b=a;a=G[o+8>>2];if(!a){break l}b=o+8|0;G[17956]=Wb(a)}a=b+4|0;h=G[b+4>>2];if(h){continue c}break b}G[18059]=1;G[17974]=1;break e}G[17954]=1;break e}E[71828]=1;break e}G[n+16>>2]=6669;ka[G[13633]](8666,n+16|0)|0;break e}ka[G[13633]](8260,0)|0;break a}G[n>>2]=d;ka[G[13633]](10810,n)|0}b=b+1|0;h=G[a>>2];continue}}break}q=ia-112|0;ia=q;a=ia-16|0;ia=a;c=q+8|0;b=c;if((pd(b,h,Fc(h))|0)==-1){d=G[b+4>>2];G[a+12>>2]=Db(G[18106]);G[a+4>>2]=-1;G[a+8>>2]=-1;G[a>>2]=d;ya(1,b,0,a)}G[b>>2]=G[b>>2]|2;ia=a+16|0;b=-1;if(!od(c)){a=ia-16|0;ia=a;G[17989]=G[17988];Va(72112);Qa(72112,xa(3837),xa(4736),0);Qa(72112,xa(2167),xa(2144),0);Qa(72112,0,0,1);Qa(72112,-1,0,1);Va(72144);Va(72160);Va(72176);c=q+8|0;b=nd(c);if((b|0)!=-1){Qa(72144,0,b,0)}b=Sa(72144,0);p:{if(b){b=G[(G[18036]+M(b,12)|0)+4>>2];break p}b=G[c+4>>2];d=c+M(G[c+56>>2],20)|0;f=G[d+72>>2];G[a+4>>2]=G[d+68>>2];G[a+8>>2]=f;G[a>>2]=b;ya(1,c,70,a);b=0}dc(c);$a(72112);ia=a+16|0}a=q+8|0;Aa(G[a+60>>2]);G[a+60>>2]=0;Aa(G[a+80>>2]);G[a+80>>2]=0;c=G[a>>2];if(c&1){G[a>>2]=c&-2;Aa(G[a+12>>2]);c=G[a>>2]}G[a+24>>2]=-1;G[a+12>>2]=0;q:{if(!(c&2)){break q}G[a>>2]=c&-3;c=G[a+8>>2];if((c|0)==-1){break q}Vb(c);G[a+8>>2]=-1}Aa(G[a+4>>2]);G[a+4>>2]=0;h=0;r:{if(od(a)){break r}l=ia-32|0;ia=l;G[18050]=1024;G[18049]=0;c=za(1024,4);G[18051]=c;G[18052]=0;s:{t:{e=G[17996];d=G[e+(b<<2)>>2];u:{if((d&255)!=14){a=b;break u}a=b;while(1){if((d&255)!=14){break t}a=G[((a<<2)+e|0)+4>>2];d=G[(a<<2)+e>>2];if((d&255)!=14){break u}if((a|0)!=(b|0)){continue}break}}if((d|0)>=0){G[18052]=1;G[c>>2]=a;a=(a<<2)+e|0;G[a>>2]=G[a>>2]|-2147483648;g=1}a=0;v:{while(1){f=a;i=G[(a<<2)+c>>2];a=H[(i<<2)+e|0];if(a>>>0>14){break v}a=1<<a;w:{if(a&18958){break w}x:{y:{z:{if(!(a&1136)){if(!(a&12672)){break v}d=i+1<<2;b=G[d+e>>2];c=b;a=H[(b<<2)+e|0];if((a|0)==14){break z}c=b;break y}k=i+2<<2;b=G[k+e>>2];A:{B:{C:{j=i+1<<2;d=G[j+e>>2];c=d;a=H[(c<<2)+e|0];if((a|0)==14){while(1){if((a&255)!=14){break t}c=G[((c<<2)+e|0)+4>>2];a=H[(c<<2)+e|0];if((a|0)==14&(c|0)!=(d|0)){continue}break}d=H[(b<<2)+e|0];if((d|0)==14){break C}a=b;break B}c=d;d=H[(b<<2)+e|0];if((d|0)==14){break C}a=b;break A}a=b;while(1){if((d&255)!=14){break t}a=G[((a<<2)+e|0)+4>>2];d=H[(a<<2)+e|0];if((d|0)!=14){break B}if((a|0)!=(b|0)){continue}break}}xd(i);b=G[17996];G[b+j>>2]=c;G[b+k>>2]=a;wd(i);g=G[18052]}b=g+2|0;if((b|0)>G[18050]){b=b<<1;G[18050]=b;G[18051]=sa(G[18051],b,g,4)}e=G[17996];b=e+(c<<2)|0;if(G[b>>2]>=0){d=G[18052];G[18052]=d+1;G[G[18051]+(d<<2)>>2]=c;G[b>>2]=G[b>>2]|-2147483648}d=(a<<2)+e|0;if(G[d>>2]<0){break w}b=G[18052];G[18052]=b+1;G[G[18051]+(b<<2)>>2]=a;break x}while(1){if((a&255)!=14){break t}c=G[((c<<2)+e|0)+4>>2];a=H[(c<<2)+e|0];if((a|0)==14&(b|0)!=(c|0)){continue}break}xd(i);G[d+G[17996]>>2]=c;wd(i);g=G[18052]}if(G[18050]<=(g|0)){a=(g<<1)+2|0;G[18050]=a;G[18051]=sa(G[18051],a,g,4)}e=G[17996];d=e+(c<<2)|0;if(G[d>>2]<0){break w}a=G[18052];G[18052]=a+1;G[G[18051]+(a<<2)>>2]=c}G[d>>2]=G[d>>2]|-2147483648}c=G[18051];a=f+1|0;g=G[18052];if((a|0)!=(g|0)){continue}break}d=f+1|0;g=d&3;b=0;a=0;if(f>>>0>=3){i=d&-4;f=0;while(1){d=a<<2;k=(G[d+c>>2]<<2)+e|0;G[k>>2]=G[k>>2]&2147483647;k=(G[(d|4)+c>>2]<<2)+e|0;G[k>>2]=G[k>>2]&2147483647;k=(G[(d|8)+c>>2]<<2)+e|0;G[k>>2]=G[k>>2]&2147483647;d=(G[(d|12)+c>>2]<<2)+e|0;G[d>>2]=G[d>>2]&2147483647;a=a+4|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}if(g){while(1){d=(G[(a<<2)+c>>2]<<2)+e|0;G[d>>2]=G[d>>2]&2147483647;a=a+1|0;b=b+1|0;if((g|0)!=(b|0)){continue}break}}e=0;D:{if(G[18049]){break D}a=-1;while(1){E:{if(!cc(G[c>>2])){break E}if(!e){ob(0,0);break E}a=Ya(a);G[l+16>>2]=a;ob(1,l+16|0);Aa(a)}a=G[17996];c=G[18051];b=G[18052];F:{while(1){e=e+1|0;if((b|0)==(e|0)){break F}d=(G[(e<<2)+c>>2]<<2)+a|0;if(H[d|0]!=13){continue}break}c=d+4|0;a=G[d+8>>2];continue}break}e=0;if(G[18049]){break D}G:{if(!b){break G}while(1){a=(G[(e<<2)+c>>2]<<2)+a|0;H:{if(H[a|0]!=13){break H}b=G[a+8>>2];a=G[a+4>>2];ib(a);if(zb(a)){break H}a=Ya(b);G[l>>2]=a;ob(2,l);Aa(a)}c=G[18051];e=e+1|0;if((e|0)==G[18052]){break G}a=G[17996];continue}}if(ad(G[c>>2])){ob(3,0)}c=G[18052];if(!c){break D}d=G[17996];b=G[18051];e=0;while(1){a=(G[(e<<2)+b>>2]<<2)+d|0;if(H[a|0]==13){ac(G[a+4>>2],G[a+8>>2]);c=G[18052];d=G[17996];b=G[18051]}e=e+1|0;if((e|0)!=(c|0)){continue}break}a=0;if(G[18049]|!c){break D}b=G[17996];i=G[18051];e=0;while(1){d=b+(G[i+(e<<2)>>2]<<2)|0;g=G[d>>2];I:{if(g&256){d=a;break I}f=0;J:{K:{L:{switch((g&255)-1|0){case 3:if(E[(b+(G[d+4>>2]<<2)|0)+1|0]&1|E[(b+(G[d+8>>2]<<2)|0)+1|0]&1){break K}break J;case 4:if(!(E[(b+(G[d+4>>2]<<2)|0)+1|0]&1)){break J}if(E[(b+(G[d+8>>2]<<2)|0)+1|0]&1){break K}break J;case 5:if(!(E[(b+(G[d+4>>2]<<2)|0)+1|0]&1)){break J}if(E[(b+(G[d+8>>2]<<2)|0)+1|0]&1){break K}break J;default:Z(6674,5339,389,2886);W();case 0:case 7:case 8:case 9:case 10:case 11:case 12:break J;case 6:break L}}if(!(E[(b+(G[d+4>>2]<<2)|0)+1|0]&1)){break J}}G[d>>2]=g|256;f=1}d=(a|0)!=0|f;a=d}e=e+1|0;if((e|0)!=(c|0)){continue}a=0;e=0;if(d){continue}break}}a=G[18051];b=G[a>>2];Aa(a);G[18051]=0;ia=l+32|0;a=G[18049]?0:b;break s}Z(6674,5339,106,4191);W()}Z(6932,5339,54,4625);W()}if(!a){break r}l=ia-16|0;ia=l;G[l+12>>2]=a;f=G[17989];d=za(G[17988]-f|0,4);M:{N:{O:{if((a|0)<(f|0)){break O}b=G[17996]+(a<<2)|0;if(G[b>>2]<0){break O}G[d>>2]=a;G[b>>2]=G[b>>2]|-2147483648;h=G[17996];a=1;e=0;while(1){P:{Q:{R:{S:{T:{U:{V:{c=h+(G[d+(e<<2)>>2]<<2)|0;switch(H[c|0]-1|0){case 0:case 1:case 2:case 8:case 10:break P;case 12:break R;case 11:break S;case 7:break T;case 6:break U;case 3:case 4:case 5:case 9:break V;default:break N}}b=G[c+4>>2];c=G[c+8>>2];if((c|0)<(f|0)){break Q}g=h+(c<<2)|0;if(G[g>>2]<0){break Q}G[d+(a<<2)>>2]=c;G[g>>2]=G[g>>2]|-2147483648;a=a+1|0;break Q}b=G[c+4>>2];break Q}b=G[c+4>>2];break Q}b=G[c+4>>2];break Q}b=G[c+4>>2]}if((b|0)<(f|0)){break P}c=h+(b<<2)|0;if(G[c>>2]<0){break P}G[d+(a<<2)>>2]=b;G[c>>2]=G[c>>2]|-2147483648;a=a+1|0}e=e+1|0;if((e|0)!=(a|0)){continue}break}}Aa(d);break M}Z(6674,5313,401,3395);W()}k=l+12|0;b=G[17989];f=za(G[17988]-b|0,4);c=G[17988];d=(c|0)==(b|0);W:{if(d){break W}e=G[17996];a=b;while(1){h=e+(a<<2)|0;G[f+(a-b<<2)>>2]=G[h>>2]>=0?-1:a;a=G[(H[h|0]<<2)+11056>>2]+a|0;if((c|0)!=(a|0)){continue}break}if(d){break W}d=0;a=b;while(1){e=f+(a-b<<2)|0;X:{if(G[e>>2]!=(a|0)){break X}c=va(71960,a);if((c|0)==(a|0)){break X}if(!(G[f+(c-b<<2)>>2]==-1&(b|0)<=(c|0))){d=G[17996]+(a<<2)|0;G[d>>2]=G[d>>2]&2147483647;G[e>>2]=c;d=1;break X}Ka(71960,c);wa(71960,a)}a=G[(H[G[17996]+(a<<2)|0]<<2)+11056>>2]+a|0;if((a|0)!=G[17988]){continue}break}if(!d){break W}while(1){c=(a|0)!=(b|0);h=0;a=b;if(!c){break W}while(1){j=f+(a-b<<2)|0;Y:{if(G[j>>2]!=(a|0)){break Y}Z:{_:{$:{aa:{ba:{ca:{da:{ea:{fa:{ga:{c=G[17996];i=a<<2;g=c+i|0;switch(H[g|0]-1|0){case 0:case 1:case 2:case 8:case 10:break Y;case 12:break ca;case 11:break da;case 7:break ea;case 6:break fa;case 3:case 4:case 5:case 9:break ga;default:break $}}d=G[g+4>>2];e=1;g=G[g+8>>2];if((g|0)<(b|0)){break aa}m=g;g=G[f+(g-b<<2)>>2];if((m|0)==(g|0)){break aa}Ka(71960,a);e=0;c=G[17996];G[(i+c|0)+8>>2]=g;break aa}d=G[g+4>>2];break ba}d=G[g+4>>2];break ba}d=G[g+4>>2];break ba}d=G[g+4>>2]}e=1}if((b|0)>(d|0)){break _}g=d;d=G[f+(d-b<<2)>>2];if((g|0)==(d|0)){break _}if(e){Ka(71960,a);c=G[17996]}G[(c+i|0)+4>>2]=d;break Z}Z(6674,5313,462,3379);W()}if(e){break Y}}c=va(71960,a);ha:{if((c|0)!=-1){if(!(G[f+(c-b<<2)>>2]==-1&(b|0)<=(c|0))){d=i+G[17996]|0;G[d>>2]=G[d>>2]&2147483647;G[j>>2]=c;break ha}Ka(71960,c)}wa(71960,a)}h=1}a=G[(H[G[17996]+(a<<2)|0]<<2)+11056>>2]+a|0;if((a|0)!=G[17988]){continue}break}if(h){continue}break}}a=G[k>>2];if((a|0)>=(b|0)){G[k>>2]=G[f+(a-b<<2)>>2]}Aa(f);b=G[17989];c=G[17988];if((b|0)!=(c|0)){d=G[17996];while(1){a=b<<2;f=a+d|0;e=G[f>>2];ia:{if((e|0)<0){a=f;f=e&2147483647;G[a>>2]=f;break ia}Ka(71960,b);d=G[17996];a=a+d|0;f=G[a>>2]|1073741824;G[a>>2]=f;c=G[17988]}b=G[((f&255)<<2)+11056>>2]+b|0;if((c|0)!=(b|0)){continue}break}b=G[17989]}g=za(G[17988]-b|0,4);d=b;ja:{h=G[17988];if((h|0)==(b|0)){break ja}e=G[17996];a=b;d=a;while(1){f=G[(a<<2)+e>>2];c=G[((f&255)<<2)+11056>>2];ka:{if(f&1073741824){G[g+(a-b<<2)>>2]=-1;break ka}Ka(71960,a);G[g+(a-b<<2)>>2]=d;d=c+d|0;h=G[17988];e=G[17996]}a=a+c|0;if((h|0)!=(a|0)){continue}break}if((b|0)==(h|0)){break ja}f=G[17996];c=b;la:{while(1){ma:{a=(c<<2)+f|0;e=H[a|0];i=G[(e<<2)+11056>>2];p=g+(c-b<<2)|0;if(G[p>>2]!=-1){na:{oa:{pa:{switch(e-1|0){case 3:case 4:case 5:case 9:e=G[a+4>>2];j=G[a+8>>2];if((j|0)<(b|0)){break oa}m=j;j=G[g+(j-b<<2)>>2];if((m|0)==(j|0)){break oa}G[a+8>>2]=j;break oa;case 6:e=G[a+4>>2];break oa;case 7:e=G[a+4>>2];break oa;case 11:e=G[a+4>>2];break oa;case 0:case 1:case 2:case 8:case 10:break na;case 12:break pa;default:break ma}}e=G[a+4>>2]}if((b|0)>(e|0)){break na}j=e;e=G[g+(e-b<<2)>>2];if((j|0)==(e|0)){break na}G[a+4>>2]=e}e=G[p>>2];if((e|0)!=(c|0)){j=0;a=0;if(i-1>>>0>=3){r=i&-4;p=0;while(1){G[(a+e<<2)+f>>2]=G[(a+c<<2)+f>>2];m=a|1;G[(m+e<<2)+f>>2]=G[(c+m<<2)+f>>2];m=a|2;G[(m+e<<2)+f>>2]=G[(c+m<<2)+f>>2];m=a|3;G[(m+e<<2)+f>>2]=G[(c+m<<2)+f>>2];a=a+4|0;p=p+4|0;if((r|0)!=(p|0)){continue}break}}p=i&3;while(1){G[(a+e<<2)+f>>2]=G[(a+c<<2)+f>>2];a=a+1|0;j=j+1|0;if((p|0)!=(j|0)){continue}break}if((e+i|0)>=(h|0)){break la}}wa(71960,e);h=G[17988];f=G[17996]}c=c+i|0;if((h|0)!=(c|0)){continue}break ja}break}Z(6674,5313,528,3368);W()}Z(3402,5313,532,3368);W()}a=G[k>>2];if((a|0)>=(b|0)){G[k>>2]=G[g+(a-b<<2)>>2]}Aa(g);qa:{if(G[17988]==(d|0)){break qa}G[17988]=d;a=G[18008];if((a|0)<8193){break qa}b=a;a=d<<1;if((b|0)<=(a|0)){break qa}a=(a|0)>2048?a:2048;G[18008]=a;G[17996]=sa(G[17996],a,d,4)}h=G[l+12>>2];ia=l+16|0}ia=q+112|0;G[17959]=h;G[17958]=h;ra:{if(!h){break ra}h=o+8|0;b=G[h>>2];sa:{if(b){while(1){G[17960]=b;a=Fc(b);ta:{if((a|0)==-1){a=G[13633];b=G[17960];G[n+36>>2]=Db(G[18106]);G[n+32>>2]=b;ka[a|0](8737,n+32|0)|0;G[17959]=0;break ta}if(H[71820]){G[n+48>>2]=G[17960];ka[G[13633]](8758,n+48|0)|0}Ed(a);Vb(a);b=G[17963];if(G[17962]>=16385){Aa(b);G[17962]=1024;b=za(1024,1);G[17963]=b}G[17970]=0;E[b|0]=0;G[17966]=-1;G[17965]=-1;G[17971]=0}b=G[h+4>>2];h=h+4|0;if(b){continue}break}if(G[17959]){break ra}b=9654;if(E[71820]&1){break sa}break ra}if(H[71828]){break ra}G[17960]=3701;Ed(0);b=G[17963];if(G[17962]>=16385){Aa(b);G[17962]=1024;b=za(1024,1);G[17963]=b}G[17970]=0;E[b|0]=0;G[17966]=-1;G[17965]=-1;G[17971]=0;if(G[17959]){break ra}b=8351;if(!(E[71820]&1)){break ra}}ka[G[13633]](b,0)|0}c=!G[17959];break a}ka[G[13633]](8260,0)|0}ia=n- -64|0;return c|0}function ub(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=ia-224|0;ia=e;g=rc(a,71440,44);G[e+176>>2]=0;G[e+104>>2]=0;a:{b:{c:{d:{e:{switch(g-14|0){case 14:G[e+108>>2]=7059;G[e+176>>2]=1;break b;case 21:G[e+108>>2]=6984;G[e+176>>2]=1;G[e+212>>2]=6646;break c;case 18:G[e+108>>2]=6984;G[e+176>>2]=1;G[e+212>>2]=6674;break c;case 19:G[e+108>>2]=6695;G[e+176>>2]=1;G[e+204>>2]=6674;break d;case 17:G[e+108>>2]=6996;G[e+176>>2]=1;G[e+204>>2]=6645;break d;case 0:G[e+108>>2]=7059;G[e+176>>2]=1;G[e+212>>2]=6515;h=144;G[e+104>>2]=144;G[e+204>>2]=6564;break b;case 26:G[e+108>>2]=6984;G[e+176>>2]=1;G[e+212>>2]=6674;h=144;G[e+104>>2]=144;G[e+204>>2]=6606;break b;case 22:G[e+108>>2]=7059;G[e+176>>2]=1;G[e+212>>2]=6496;h=144;G[e+104>>2]=144;G[e+204>>2]=6547;break b;case 29:G[e+108>>2]=6984;G[e+176>>2]=1;G[e+212>>2]=6674;h=144;G[e+104>>2]=144;G[e+204>>2]=6610;break b;case 13:G[e+108>>2]=7059;G[e+176>>2]=1;G[e+212>>2]=6503;h=144;G[e+104>>2]=144;G[e+204>>2]=6553;break b;case 27:G[e+108>>2]=6984;G[e+176>>2]=1;G[e+212>>2]=6674;h=144;G[e+104>>2]=144;G[e+204>>2]=6595;break b;case 16:G[e+108>>2]=7059;G[e+176>>2]=1;G[e+212>>2]=6520;h=144;G[e+104>>2]=144;G[e+204>>2]=6568;break b;case 28:break e;default:break a}}G[e+108>>2]=6984;G[e+176>>2]=1;G[e+212>>2]=6674;h=144;G[e+104>>2]=144;G[e+204>>2]=6616;break b}h=16;G[e+104>>2]=16;break b}h=128;G[e+104>>2]=128}g=17}f=ua(b);if(f){while(1){f=(b+f|0)+1|0;f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{h=rc(b,71616,12)<<24>>24;switch(h|0){case 12:break i;case 0:break j;case 11:break k;case 7:break l;case 6:break m;case 4:break n;case 3:break o;case 9:break p;case 10:break q;case 1:break r;case 8:break s;case 5:break t;case 2:break u;default:break h}}G[e+180>>2]=Xa(f,e+220|0);if(H[G[e+220>>2]]?0:H[f|0]){break f}G[e+20>>2]=f;G[e+16>>2]=b;Ua(2,e+16|0);break f}G[e+188>>2]=Xa(f,e+220|0);if(H[G[e+220>>2]]?0:H[f|0]){break f}G[e+36>>2]=f;G[e+32>>2]=b;Ua(2,e+32|0);break f}G[e+184>>2]=Xa(f,e+220|0);if(H[G[e+220>>2]]?0:H[f|0]){break f}G[e+52>>2]=f;G[e+48>>2]=b;Ua(2,e+48|0);break f}G[e+196>>2]=Xa(f,e+220|0);if(H[G[e+220>>2]]?0:H[f|0]){break f}G[e+68>>2]=f;G[e+64>>2]=b;Ua(2,e- -64|0);break f}G[e+192>>2]=Xa(f,e+220|0);if(H[G[e+220>>2]]?0:H[f|0]){break f}G[e+84>>2]=f;G[e+80>>2]=b;Ua(2,e+80|0);break f}b=G[e+176>>2];if((b|0)!=16){break g}Ua(4,0);break f}G[e+200>>2]=f;break f}G[e+204>>2]=f;break f}G[e+208>>2]=f;break f}G[e+212>>2]=f;break f}Ua(5,0);break f}Ua(6,0);break f}G[e+96>>2]=b;Ua(1,e+96|0);break f}Z(6674,5333,536,1871);W()}G[e+176>>2]=b+1;G[((b<<2)+e|0)+108>>2]=f}h=G[e+104>>2]|1<<h;G[e+104>>2]=h;b=(ua(f)+f|0)+1|0;f=ua(b);if(f){continue}break}}G[e+216>>2]=2;v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{switch(g|0){case 13:a=G[e+176>>2];G[((a<<2)+e|0)+108>>2]=6648;b=1;f=a+1|0;g=2147483647;break v;case 17:b=1;a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=7076;J:{K:{if(h&2){a=c;b=d+a|0;L:{if(!d){break L}while(1){f=b-1|0;g=E[f|0];if((g|0)!=48){if(!ta(g)){break L}}b=f;if((f|0)!=(a|0)){continue}break}b=a}M:{while(1){f=0;if((a|0)==(b|0)){break M}g=H[a|0];a=a+1|0;if((g|0)!=46){continue}break}if((a|0)==(b|0)){break M}f=b-a|0}a=h&1024;g=G[e+196>>2];b=!a&(g|0)>=(f|0);if(!a){break J}if((f|0)<=(g|0)){break K}break J}if(!(h&1024)){break J}}b=c+d|0;N:{if(!d){a=c;break N}a=c;while(1){if(!ta(E[a|0])){f=H[a|0]-43|0;if(f>>>0>5|!(1<<f&37)){break N}}a=a+1|0;if((b|0)!=(a|0)){continue}break}a=b}O:{P:{Q:{R:{if((a|0)==(b|0)){g=H[b|0];a=b;break R}g=(c+d|0)-a|0;f=0;S:{while(1){j=E[a|0];if((j|0)==46){f=f?f:1;break P}if(ta(j)){break S}f=f+1|0;a=a+1|0;if((b|0)!=(a|0)){continue}break}a=b;f=g}g=H[a|0];if(f){break Q}}f=1}if((g|0)!=46){break O}}T:{if((a|0)==(b|0)){break T}while(1){g=b-1|0;j=E[g|0];if((j|0)!=48){if(!ta(j)){break T}}b=g;if((g|0)!=(a|0)){continue}break}b=a}U:{while(1){g=0;if((a|0)==(b|0)){break U}j=H[a|0];a=a+1|0;if((j|0)!=46){continue}break}if((a|0)==(b|0)){break U}g=b-a|0}f=f+g|0}b=G[e+192>>2]>=(f|0)}g=2147483647;if(!(h&216)){break w}V:{W:{X:{Y:{Z:{_:{f=G[e+104>>2];$:{aa:{if(f&64){a=G[e+208>>2];h=Tb(c,d,a,ua(a));f=G[e+104>>2];j=f&128;a=!j&(h|0)>0;if(!j){break $}if((h|0)>0){break aa}break $}if(!(f&128)){break _}}a=G[e+212>>2];a=(Tb(c,d,a,ua(a))^-1)>>>31|0;f=G[e+104>>2]}if(!(f&16)){break Y}if(a){break Z}a=0;break V}if(!(f&16)){break X}}a=G[e+204>>2];a=(Tb(c,d,a,ua(a))|0)<=0;f=G[e+104>>2]}if(!(f&8)){break V}if(a){break W}a=0;break V}a=1;if(!(f&8)){break V}}a=G[e+200>>2];a=Tb(c,d,a,ua(a))>>>31|0}b=a&b;break w;case 18:case 20:b=1;a=G[e+176>>2];f=a+1|0;G[e+176>>2]=f;G[((a<<2)+e|0)+108>>2]=5451;if(!(h&216)){g=2147483647;break v}f=Ga(5525,c,d);k=-Y;ba:{if(!Ga(5570,c,d)){break ba}k=Y;if(!Ga(5571,c,d)){break ba}k=qb(c)}a=h&64;b=!(a>>>6|0);if(!(!a|!f)){a=G[e+208>>2];b=ua(a);i=-Y;ca:{if(!Ga(5570,a,b)){break ca}i=Y;if(!Ga(5571,a,b)){break ca}i=qb(a)}b=i<k}a=b;da:{if(!(h&128)){break da}a=0;if(!b|!f){break da}a=G[e+212>>2];b=ua(a);i=-Y;ea:{if(!Ga(5570,a,b)){break ea}i=Y;if(!Ga(5571,a,b)){break ea}i=qb(a)}a=i<=k}b=a;a=b;fa:{if(!(h&16)){break fa}a=0;if(!b|!f){break fa}a=G[e+204>>2];b=ua(a);i=-Y;ga:{if(!Ga(5570,a,b)){break ga}i=Y;if(!Ga(5571,a,b)){break ga}i=qb(a)}a=i>=k}if(!(h&8)){b=a;g=2147483647;break w}b=0;if(!(!a|!f)){a=G[e+200>>2];b=ua(a);i=-Y;ha:{if(!Ga(5570,a,b)){break ha}i=Y;if(!Ga(5571,a,b)){break ha}i=qb(a)}b=i>k}g=2147483647;break w;case 19:a=G[e+176>>2];G[((a<<2)+e|0)+108>>2]=7118;b=1;f=a+1|0;g=2147483647;break v;case 16:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=5810;if(!(h&216)){g=2147483647;break v}b=tb(a,1029,e+104|0,c,d)&1;g=2147483647;break w;case 15:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=6129;if(!(h&216)){g=2147483647;break v}b=tb(a,1039,e+104|0,c,d)&1;g=2147483647;break w;case 38:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=5857;if(!(h&216)){g=2147483647;break v}b=tb(a,1032,e+104|0,c,d)&1;g=2147483647;break w;case 25:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=6007;if(!(h&216)){g=2147483647;break v}b=tb(a,1035,e+104|0,c,d)&1;g=2147483647;break w;case 24:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=5762;if(!(h&216)){g=2147483647;break v}b=tb(a,1026,e+104|0,c,d)&1;g=2147483647;break w;case 23:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=6212;if(!(h&216)){g=2147483647;break v}b=tb(a,1040,e+104|0,c,d)&1;g=2147483647;break w;case 21:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=6071;if(!(h&216)){g=2147483647;break v}b=tb(a,1041,e+104|0,c,d)&1;g=2147483647;break w;case 22:b=1;g=G[e+176>>2];f=g+1|0;G[e+176>>2]=f;G[((g<<2)+e|0)+108>>2]=5951;if(!(h&216)){g=2147483647;break v}b=tb(a,1036,e+104|0,c,d)&1;g=2147483647;break w;case 26:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6682;a=c+d|0;h=0;f=c;while(1){if((a|0)==(f|0)){h=h?h-1|0:0;break x}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}h=h+1|0;while(1){if((a|0)==(f|0)){break x}h=h+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 12:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6285;h=c+d|0;ia:{if(!d){break ia}while(1){a=h-1|0;if(!ta(E[a|0])&H[a|0]!=61){break ia}b=1;g=0;h=a;if((a|0)!=(c|0)){continue}break}break w}g=0;if((c|0)==(h|0)){b=1;break w}f=c;while(1){g=!ta(E[f|0])+g|0;f=f+1|0;if((h|0)!=(f|0)){continue}break};a=g&3;g=M(g>>>2|0,3);b=1;ja:{switch(a-1|0){case 0:g=-1;break w;case 1:g=g+1|0;break w;case 2:break ja;default:break w}}g=g+2|0;break w;case 11:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6387;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break y}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break y}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 8:case 10:b=1;a=G[e+176>>2];f=a+1|0;G[e+176>>2]=f;G[((a<<2)+e|0)+108>>2]=6715;G[e+104>>2]=h&-293;g=2147483647;break v;case 34:G[e+216>>2]=1;break H;case 39:a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break z}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break z}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 29:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=7023;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break A}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break A}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 6:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6678;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break B}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break B}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 7:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6757;a=c+d|0;g=0;f=c;while(1){ka:{if((a|0)==(f|0)){break ka}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break ka}f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue}break};b=1;break w;case 9:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6709;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break C}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break C}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 5:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6736;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break D}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break D}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 2:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6736;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break E}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break E}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 3:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6736;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break F}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break F}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 4:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6768;a=c+d|0;g=0;f=c;while(1){la:{if((a|0)==(f|0)){break la}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break la}f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue}break};b=1;break w;case 1:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6736;a=c+d|0;g=0;f=c;while(1){if((a|0)==(f|0)){g=g?g-1|0:0;break G}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break G}g=g+1|0;f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue};case 0:a=G[e+176>>2];G[e+176>>2]=a+1;G[((a<<2)+e|0)+108>>2]=6768;a=c+d|0;g=0;f=c;while(1){ma:{if((a|0)==(f|0)){break ma}f=Ca(e+220|0,f)+f|0;if(ta(G[e+220>>2])){continue}g=g+1|0;while(1){if((a|0)==(f|0)){break ma}f=Ca(e+220|0,f)+f|0;if(!ta(G[e+220>>2])){continue}break}continue}break};b=1;break w;case 44:G[e>>2]=a;Ua(0,e);b=1;g=2147483647;break w;default:Z(6674,5333,662,1871);W();case 37:break I}}G[e+216>>2]=0}b=1;a=c;h=0;g=ia-16|0;ia=g;na:{if(!d){f=0;break na}j=a+d|0;while(1){f=-1;l=Ca(g+12|0,a);if(!l){break na}a=a+l|0;if(j>>>0<a>>>0){break na}h=h+1|0;f=h;if((a|0)!=(j|0)){continue}break}}ia=g+16|0;g=f;break w}b=1;break w}b=1;break w}b=1;break w}b=1;break w}b=1;break w}b=1;break w}b=1;break w}b=1;break w}b=1;break w}b=1;g=(h+1|0)/2|0}f=G[e+176>>2]}h=f-1|0;G[e+176>>2]=h;if(f){while(1){oa:{if(!b){b=0;a=h;break oa}b=(ka[G[(G[e+216>>2]<<2)+11484>>2]](G[((h<<2)+e|0)+108>>2],c,d)|0)!=0;a=G[e+176>>2]}h=a-1|0;G[e+176>>2]=h;if(a){continue}break}}a=G[e+104>>2];b=a&4?G[e+180>>2]==(g|0)&(b|0)!=0:b;b=a&32?(b|0)!=0&G[e+188>>2]>=(g|0):b;ia=e+224|0;return(a&256?(b|0)!=0&G[e+184>>2]<=(g|0):b)|0}function Ed(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;k=ia+-64|0;ia=k;b=G[17958];G[17972]=b;G[17969]=b;d=ia-16|0;ia=d;E[d+14|0]=58;f=d+14|0;a:{b:{b=Cb(500);if(b){G[b+12>>2]=56;G[b+20>>2]=57;G[b+16>>2]=58;break b}if(b){break b}b=0;break a}G[b+380>>2]=16;G[b+32>>2]=0;G[b+8>>2]=0;c=ka[G[b+12>>2]](256)|0;G[b+392>>2]=c;c:{if(!c){break c}c=ka[G[b+12>>2]](1024)|0;G[b+44>>2]=c;if(!c){ka[G[b+20>>2]](G[b+392>>2]);break c}e=b+12|0;G[b+48>>2]=c+1024;c=ka[G[b+12>>2]](188)|0;if(c){G[c+80>>2]=0;G[c+84>>2]=0;G[c+104>>2]=0;G[c+108>>2]=0;G[c+100>>2]=e;G[c+124>>2]=e;G[c+8>>2]=0;G[c+12>>2]=0;E[c+4|0]=0;G[c+28>>2]=0;G[c+32>>2]=0;E[c+24|0]=0;G[c+16>>2]=e;G[c>>2]=0;G[c+48>>2]=0;G[c+52>>2]=0;E[c+44|0]=0;G[c+36>>2]=e;G[c+20>>2]=0;G[c+96>>2]=0;G[c+88>>2]=0;G[c+92>>2]=0;G[c+112>>2]=0;G[c+116>>2]=0;G[c+120>>2]=0;G[c+68>>2]=0;G[c+72>>2]=0;E[c+64|0]=0;G[c+56>>2]=e;G[c+40>>2]=0;G[c+60>>2]=0;G[c+76>>2]=e;G[c+140>>2]=0;G[c+144>>2]=0;E[c+136|0]=0;G[c+128>>2]=1;G[c+132>>2]=0;G[c+148>>2]=e;G[c+152>>2]=0;G[c+156>>2]=0;E[c+160|0]=0;G[c+164>>2]=0;G[c+168>>2]=0;G[c+172>>2]=0;G[c+176>>2]=0;G[c+180>>2]=0;G[c+184>>2]=0;G[b+356>>2]=c;G[b+368>>2]=0;G[b+376>>2]=0;G[b+304>>2]=0;G[b+464>>2]=0;G[b+468>>2]=0;E[b+472|0]=33;G[b+248>>2]=0;G[b+124>>2]=0;G[b+416>>2]=0;G[b+420>>2]=0;F[b+236>>1]=0;G[b+396>>2]=0;G[b+400>>2]=0;G[b+440>>2]=0;G[b+444>>2]=0;G[b+424>>2]=0;G[b+428>>2]=0;G[b+432>>2]=0;E[b+404|0]=0;G[b+436>>2]=e;G[b+448>>2]=0;G[b+452>>2]=0;G[b+456>>2]=0;G[b+460>>2]=e;G[b+280>>2]=59;G[b+256>>2]=148;G[b+276>>2]=0;G[b+268>>2]=0;G[b+272>>2]=1;G[b+360>>2]=0;G[b+232>>2]=0;ge(b+148|0,b+144|0,0);G[b+52>>2]=0;G[b+56>>2]=0;G[b>>2]=0;G[b+4>>2]=0;G[b+60>>2]=0;G[b+64>>2]=0;G[b+68>>2]=0;G[b+72>>2]=0;G[b+76>>2]=0;G[b+80>>2]=0;G[b+84>>2]=0;G[b+88>>2]=0;G[b+92>>2]=0;G[b+96>>2]=0;G[b+100>>2]=0;G[b+104>>2]=0;G[b+108>>2]=0;G[b+112>>2]=0;G[b+128>>2]=0;G[b+132>>2]=0;G[b+120>>2]=0;G[b+136>>2]=0;G[b+140>>2]=0;G[b+408>>2]=0;G[b+412>>2]=0;G[b+36>>2]=0;G[b+40>>2]=0;c=G[b+8>>2];G[b+28>>2]=c;G[b+24>>2]=c;G[b+116>>2]=b;G[b+300>>2]=0;G[b+292>>2]=0;G[b+296>>2]=0;G[b+284>>2]=0;G[b+288>>2]=0;G[b+316>>2]=0;G[b+320>>2]=0;G[b+324>>2]=0;G[b+328>>2]=0;G[b+332>>2]=0;G[b+336>>2]=0;G[b+340>>2]=0;G[b+344>>2]=0;F[b+346>>1]=0;F[b+348>>1]=0;F[b+350>>1]=0;F[b+352>>1]=0;G[b+312>>2]=0;G[b+364>>2]=0;G[b+372>>2]=0;G[b+384>>2]=0;E[b+308|0]=1;G[b+252>>2]=0;G[b+240>>2]=0;G[b+244>>2]=0;G[b+476>>2]=0;G[b+480>>2]=0;G[b+492>>2]=0;G[b+496>>2]=0;F[b+488>>1]=0;if(f){E[b+236|0]=1;G[b+228>>2]=13872;E[b+472|0]=H[f|0];break a}G[b+228>>2]=13504;break a}G[b+356>>2]=c;ka[G[b+20>>2]](G[b+44>>2]);ka[G[b+20>>2]](G[b+392>>2]);ka[G[b+20>>2]](b);b=0;break a}ka[G[b+20>>2]](b);b=0}ia=d+16|0;G[17964]=b;d:{switch(G[b+480>>2]-1|0){default:G[b+492>>2]=2;break;case 0:case 2:break d}}b=G[17964];G[b+56>>2]=8;G[b+52>>2]=7;G[G[17964]+60>>2]=9;G[G[17964]+112>>2]=10;G[G[17964]+64>>2]=11;e:{f:{while(1){g:{h:{i:{j:{k:{d=G[17964];switch(G[d+480>>2]-2|0){case 0:break j;case 1:break k;default:break i}}G[d+284>>2]=33;break h}G[d+284>>2]=36;break h}f=G[d+32>>2];b=G[d+28>>2];if((f-b|0)>=1024){break g}g=G[d+24>>2];c=G[d+8>>2];i=g-c|0;l=(i|0)<1024?i:1024;l:{e=l+(b-g|0)|0;p=e+1024|0;m:{n:{if((p|0)<=(f-c|0)){if((i|0)<1025){break m}f=i-l|0;b=f+c|0;o:{if((c|0)==(b|0)){break o}i=c+e|0;if(b-i>>>0<=0-(e<<1)>>>0){Pa(c,b,e);break o}g=(b^c)&3;p:{q:{if(b>>>0>c>>>0){if(g){break p}if(!(c&3)){break q}while(1){if(!e){break o}E[c|0]=H[b|0];b=b+1|0;e=e-1|0;c=c+1|0;if(c&3){continue}break}break q}r:{if(g){break r}if(i&3){while(1){if(!e){break o}e=e-1|0;g=e+c|0;E[g|0]=H[b+e|0];if(g&3){continue}break}}if(e>>>0<=3){break r}while(1){e=e-4|0;G[e+c>>2]=G[b+e>>2];if(e>>>0>3){continue}break}}if(!e){break o}while(1){e=e-1|0;E[e+c|0]=H[b+e|0];if(e){continue}break}break o}if(e>>>0<=3){break p}while(1){G[c>>2]=G[b>>2];b=b+4|0;c=c+4|0;e=e-4|0;if(e>>>0>3){continue}break}}if(!e){break o}while(1){E[c|0]=H[b|0];c=c+1|0;b=b+1|0;e=e-1|0;if(e){continue}break}}b=G[d+28>>2]-f|0;G[d+28>>2]=b;g=G[d+24>>2]-f|0;break n}b=(f|0)==(g|0)?1024:f-g|0;while(1){b=b<<1;if((p|0)>(b|0)){continue}break}g=ka[G[d+12>>2]](b)|0;if(!g){break l}G[d+32>>2]=b+g;b=G[d+24>>2];if(b){c=b-G[d+8>>2]|0;c=(c|0)<1024?c:1024;e=Pa(g,b-c|0,c+(G[d+28>>2]-b|0)|0);ka[G[d+20>>2]](G[d+8>>2]);G[d+8>>2]=e;b=c+(e+(G[d+28>>2]-G[d+24>>2]|0)|0)|0;G[d+28>>2]=b;g=c+e|0;break n}G[d+8>>2]=g;b=G[d+28>>2]+g|0;G[d+28>>2]=b}G[d+24>>2]=g}G[d+296>>2]=0;G[d+288>>2]=0;G[d+292>>2]=0;break g}G[d+284>>2]=1}b=0}l=b;i=Nb(a,b,1024);if((i|0)<0){c=0;a=G[17960];G[k+4>>2]=Db(G[18106]);G[k>>2]=a;bc(0,k);break e}g=0;b=i;if(G[17954]){while(1){s:{c=Bd(g+l|0,b);e=(c|0)!=-1;if(!e){G[k+48>>2]=Db(G[18106]);bc(0,k+48|0);break s}g=c+g|0;d=(b|0)!=(c|0);b=b-c|0;if(d){continue}}break}G[17954]=e}s=!i;t:{u:{v:{w:{x:{d=G[17964];switch(G[d+480>>2]){case 0:break v;case 2:break w;case 3:break x;default:break u}}G[d+284>>2]=33;b=0;break t}G[d+284>>2]=36;b=0;break t}if(G[d+476>>2]){break u}if(!G[d+496>>2]){b=ga(0)|0;G[18108]=((b|0)==-1?0:b)-1;G[18109]=0;b=ki(G[18108],G[18109],1284865837,1481765933)+1|0;c=ja;c=b?c:c+1|0;G[18108]=b;G[18109]=c;G[d+496>>2]=c>>>1}if(!H[d+236|0]){break u}b=11808;y:{z:{A:{f=H[11808];if(!f){break A}u=d+372|0;j=G[d+356>>2];p=j+152|0;v=j+80|0;w=j+60|0;n=d+416|0;c=11808;while(1){B:{C:{D:{E:{F:{e=f&255;switch(e|0){case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:break D;case 0:case 12:break F;default:break E}}f=G[d+428>>2];if((f|0)==G[d+424>>2]){if(!qa(n)){break z}f=G[d+428>>2]}G[d+428>>2]=f+1;E[f|0]=0;e=G[d+432>>2];q=G[j+8>>2];G:{if(!q){break G}h=G[d+496>>2];g=H[e|0];f=g;c=e;if(f){while(1){h=M(h,1000003)^f&255;f=H[c+1|0];c=c+1|0;if(f){continue}break}}t=G[j>>2];c=q-1|0;o=c&h;m=G[t+(o<<2)>>2];if(!m){break G}x=c>>>2|0;r=0;y=0-q&h;while(1){H:{c=e;f=g;h=G[m>>2];if((f|0)==H[h|0]){while(1){if(!(f&255)){break H}z=H[h+1|0];f=H[c+1|0];h=h+1|0;c=c+1|0;if((f|0)==(z|0)){continue}break}}r=r&255?r:y>>>H[j+4|0]-1&x|1;c=r&255;o=(c>>>0>o>>>0?q:0)+(o-c|0)|0;m=G[(o<<2)+t>>2];if(m){continue}break G}break}if(!m){break G}E[m+32|0]=1}c=H[b|0];G[d+428>>2]=e;c=((c|0)!=0)+b|0;b=c;break B}if((e|0)==61){break C}}h=G[d+428>>2];if((h|0)==G[d+424>>2]){if(!qa(n)){break z}h=G[d+428>>2];f=H[b|0]}G[d+428>>2]=h+1;E[h|0]=f;b=b+1|0;break B}g=p;f=G[d+428>>2];if((f|0)!=G[d+432>>2]){if(G[d+424>>2]==(f|0)){if(!qa(n)){break z}f=G[d+428>>2]}G[d+428>>2]=f+1;e=0;E[f|0]=0;g=cb(d,w,G[d+432>>2],8);if(!g){break y}f=G[g>>2];c=G[d+432>>2];if((f|0)==(c|0)){while(1){c=G[j+92>>2];if((c|0)==G[j+88>>2]){if(!qa(v)){G[g>>2]=0;break z}c=G[j+92>>2]}h=H[f|0];G[j+92>>2]=c+1;E[c|0]=h;c=H[f|0];f=f+1|0;if(c){continue}break}c=G[j+96>>2];G[j+96>>2]=G[j+92>>2];G[g>>2]=c;if(!c){break y}c=G[d+432>>2]}G[d+428>>2]=c}while(1){I:{c=b+1|0;h=H[b+1|0];e=h;if(!e|(e|0)==12){break I}f=G[d+428>>2];if((f|0)==G[d+424>>2]){if(!qa(n)){break z}h=H[c|0];f=G[d+428>>2]}G[d+428>>2]=f+1;E[f|0]=h;b=c;continue}break}f=G[d+428>>2];if((f|0)==G[d+424>>2]){if(!qa(n)){break z}f=G[d+428>>2]}G[d+428>>2]=f+1;e=0;E[f|0]=0;if(Qc(d,g,0,G[d+432>>2],u)){break y}G[d+428>>2]=G[d+432>>2];c=H[b+1|0]?b+2|0:c;b=c}if(!H[c|0]){break A}f=H[b|0];continue}}e=1;break y}e=0}if(e){break u}G[d+284>>2]=1;b=0;break t}b=1;G[d+480>>2]=1;e=G[d+24>>2];G[d+296>>2]=e;E[d+484|0]=s;c=i+G[d+28>>2]|0;G[d+28>>2]=c;G[d+40>>2]=c;G[d+36>>2]=i+G[d+36>>2];c=ka[G[d+280>>2]](d,e,c,d+24|0)|0;G[d+284>>2]=c;if(c){G[d+280>>2]=65;G[d+292>>2]=G[d+288>>2];b=0;break t}J:{K:{switch(G[d+480>>2]){case 0:case 1:if(!s){break J}G[d+480>>2]=2;break t;case 3:break K;default:break J}}b=2}c=G[d+144>>2];ka[G[c+52>>2]](c,G[d+296>>2],G[d+24>>2],d+408|0);G[d+296>>2]=G[d+24>>2]}if(!b){break f}if(i){continue}break}c=G[17959];break e}c=0;b=G[G[17964]+284>>2];if(b-1>>>0<=39){b=G[(b<<2)+11504>>2]}else{b=0}G[k+32>>2]=b;bc(1,k+32|0);if(!G[17954]){break e}b=Nb(a,l,1024);if(!b){break e}while(1){g=0;if(!G[17954]){G[17954]=0;break e}while(1){c=Bd(g+l|0,b);if((c|0)==-1){G[k+16>>2]=Db(G[18106]);c=0;bc(0,k+16|0);G[17954]=0;break e}g=c+g|0;e=(b|0)!=(c|0);b=b-c|0;if(e){continue}break}c=0;G[17954]=1;b=Nb(a,l,1024);if(b){continue}break}}G[17959]=c;d=G[17964];if(d){c=G[d+364>>2];while(1){L:{if(!c){c=G[d+368>>2];if(!c){break L}G[d+368>>2]=0}b=G[c>>2];ka[G[d+20>>2]](G[c+36>>2]);a=G[c+44>>2];if(a){while(1){e=G[a+4>>2];ka[G[d+20>>2]](G[a+16>>2]);ka[G[d+20>>2]](a);a=e;if(a){continue}break}}ka[G[d+20>>2]](c);c=b;continue}break}a=G[d+300>>2];while(1){M:{if(!a){a=G[d+304>>2];if(!a){break M}G[d+304>>2]=0}b=G[a+8>>2];ka[G[d+20>>2]](a);a=b;continue}break}a=G[d+376>>2];if(a){while(1){b=G[a+4>>2];ka[G[d+20>>2]](G[a+16>>2]);ka[G[d+20>>2]](a);a=b;if(b){continue}break}}a=G[d+372>>2];if(a){while(1){b=G[a+4>>2];ka[G[d+20>>2]](G[a+16>>2]);ka[G[d+20>>2]](a);a=b;if(b){continue}break}}a=G[d+416>>2];if(a){while(1){b=G[a>>2];ka[G[G[d+436>>2]+8>>2]](a);a=b;if(b){continue}break}}a=G[d+420>>2];if(a){while(1){b=G[a>>2];ka[G[G[d+436>>2]+8>>2]](a);a=b;if(b){continue}break}}a=G[d+440>>2];if(a){while(1){b=G[a>>2];ka[G[G[d+460>>2]+8>>2]](a);a=b;if(b){continue}break}}a=G[d+444>>2];if(a){while(1){b=G[a>>2];ka[G[G[d+460>>2]+8>>2]](a);a=b;if(b){continue}break}}N:{if(H[d+488|0]){break N}c=G[d+356>>2];if(!c){break N}a=G[c+20>>2];e=a+(G[c+28>>2]<<2)|0;f=G[d+476>>2];while(1){if((a|0)!=(e|0)){b=G[a>>2];a=a+4|0;if(!b|!G[b+16>>2]){continue}ka[G[d+20>>2]](G[b+20>>2]);continue}break}if(G[c+8>>2]){a=0;while(1){ka[G[G[c+16>>2]+8>>2]](G[G[c>>2]+(a<<2)>>2]);a=a+1|0;if(a>>>0<J[c+8>>2]){continue}break}}ka[G[G[c+16>>2]+8>>2]](G[c>>2]);if(G[c+140>>2]){a=0;while(1){ka[G[G[c+148>>2]+8>>2]](G[G[c+132>>2]+(a<<2)>>2]);a=a+1|0;if(a>>>0<J[c+140>>2]){continue}break}}ka[G[G[c+148>>2]+8>>2]](G[c+132>>2]);if(G[c+28>>2]){a=0;while(1){ka[G[G[c+36>>2]+8>>2]](G[G[c+20>>2]+(a<<2)>>2]);a=a+1|0;if(a>>>0<J[c+28>>2]){continue}break}}ka[G[G[c+36>>2]+8>>2]](G[c+20>>2]);if(G[c+48>>2]){a=0;while(1){ka[G[G[c+56>>2]+8>>2]](G[G[c+40>>2]+(a<<2)>>2]);a=a+1|0;if(a>>>0<J[c+48>>2]){continue}break}}ka[G[G[c+56>>2]+8>>2]](G[c+40>>2]);if(G[c+68>>2]){a=0;while(1){ka[G[G[c+76>>2]+8>>2]](G[G[c+60>>2]+(a<<2)>>2]);a=a+1|0;if(a>>>0<J[c+68>>2]){continue}break}}ka[G[G[c+76>>2]+8>>2]](G[c+60>>2]);a=G[c+80>>2];if(a){while(1){b=G[a>>2];ka[G[G[c+100>>2]+8>>2]](a);a=b;if(b){continue}break}}a=G[c+84>>2];if(a){while(1){b=G[a>>2];ka[G[G[c+100>>2]+8>>2]](a);a=b;if(b){continue}break}}a=G[c+104>>2];if(a){while(1){b=G[a>>2];ka[G[G[c+124>>2]+8>>2]](a);a=b;if(b){continue}break}}a=G[c+108>>2];if(a){while(1){b=G[a>>2];ka[G[G[c+124>>2]+8>>2]](a);a=b;if(b){continue}break}}if(!f){ka[G[d+20>>2]](G[c+184>>2]);ka[G[d+20>>2]](G[c+164>>2])}ka[G[d+20>>2]](c)}ka[G[d+20>>2]](G[d+392>>2]);ka[G[d+20>>2]](G[d+464>>2]);ka[G[d+20>>2]](G[d+8>>2]);ka[G[d+20>>2]](G[d+44>>2]);ka[G[d+20>>2]](G[d+396>>2]);ka[G[d+20>>2]](G[d+240>>2]);a=G[d+252>>2];if(a){ka[a|0](G[d+244>>2])}ka[G[d+20>>2]](d)}ia=k- -64|0}function Cb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=ia-16|0;ia=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=G[18154];g=a>>>0<11?16:a+11&-8;c=g>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=G[b+72664>>2];a=f+8|0;c=G[f+8>>2];b=b+72656|0;l:{if((c|0)==(b|0)){G[18154]=mi(-2,d)&e;break l}G[c+12>>2]=b;G[b+8>>2]=c}b=d<<3;G[f+4>>2]=b|3;b=b+f|0;G[b+4>>2]=G[b+4>>2]|1;break a}k=G[18156];if(k>>>0>=g>>>0){break k}if(b){a=2<<c;a=(0-a|a)&b<<c;b=(0-a&a)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;j=G[a+72664>>2];b=G[j+8>>2];a=a+72656|0;m:{if((b|0)==(a|0)){e=mi(-2,c)&e;G[18154]=e;break m}G[b+12>>2]=a;G[a+8>>2]=b}a=j+8|0;G[j+4>>2]=g|3;d=g+j|0;b=c<<3;f=b-g|0;G[d+4>>2]=f|1;G[b+j>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+72656|0;j=G[18159];b=1<<b;n:{if(!(b&e)){G[18154]=b|e;b=c;break n}b=G[c+8>>2]}G[c+8>>2]=j;G[b+12>>2]=j;G[j+12>>2]=c;G[j+8>>2]=b}G[18159]=d;G[18156]=f;break a}h=G[18155];if(!h){break k}b=(0-h&h)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=G[((c|a)+(b>>>a|0)<<2)+72920>>2];d=(G[b+4>>2]&-8)-g|0;c=b;while(1){o:{a=G[c+16>>2];if(!a){a=G[c+20>>2];if(!a){break o}}c=(G[a+4>>2]&-8)-g|0;f=c>>>0<d>>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=G[b+24>>2];f=G[b+12>>2];if((f|0)!=(b|0)){a=G[b+8>>2];G[a+12>>2]=f;G[f+8>>2]=a;break b}c=b+20|0;a=G[c>>2];if(!a){a=G[b+16>>2];if(!a){break j}c=b+16|0}while(1){j=c;f=a;c=a+20|0;a=G[c>>2];if(a){continue}c=f+16|0;a=G[f+16>>2];if(a){continue}break}G[j>>2]=0;break b}g=-1;if(a>>>0>4294967231){break k}a=a+11|0;g=a&-8;i=G[18155];if(!i){break k}d=0-g|0;e=0;p:{if(g>>>0<256){break p}e=31;if(g>>>0>16777215){break p}a=a>>>8|0;j=a+1048320>>>16&8;a=a<<j;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|j))|0;e=(a<<1|g>>>a+21&1)+28|0}c=G[(e<<2)+72920>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=g<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{h=G[c+4>>2]&-8;j=h-g|0;if(j>>>0>=d>>>0){break t}d=j;f=c;if((g|0)!=(h|0)){break t}d=0;a=c;break r}j=G[c+20>>2];c=G[((b>>>29&4)+c|0)+16>>2];a=j?(j|0)==(c|0)?a:j:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<<e;a=(0-a|a)&i;if(!a){break k}b=(a&0-a)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=G[((c|a)+(b>>>a|0)<<2)+72920>>2]}if(!a){break q}}while(1){b=(G[a+4>>2]&-8)-g|0;c=b>>>0<d>>>0;d=c?b:d;f=c?a:f;b=G[a+16>>2];if(b){a=b}else{a=G[a+20>>2]}if(a){continue}break}}if(!f|G[18156]-g>>>0<=d>>>0){break k}e=G[f+24>>2];b=G[f+12>>2];if((f|0)!=(b|0)){a=G[f+8>>2];G[a+12>>2]=b;G[b+8>>2]=a;break c}c=f+20|0;a=G[c>>2];if(!a){a=G[f+16>>2];if(!a){break i}c=f+16|0}while(1){j=c;b=a;c=a+20|0;a=G[c>>2];if(a){continue}c=b+16|0;a=G[b+16>>2];if(a){continue}break}G[j>>2]=0;break c}c=G[18156];if(c>>>0>=g>>>0){d=G[18159];b=c-g|0;u:{if(b>>>0>=16){G[18156]=b;a=d+g|0;G[18159]=a;G[a+4>>2]=b|1;G[c+d>>2]=b;G[d+4>>2]=g|3;break u}G[18159]=0;G[18156]=0;G[d+4>>2]=c|3;a=c+d|0;G[a+4>>2]=G[a+4>>2]|1}a=d+8|0;break a}i=G[18157];if(i>>>0>g>>>0){b=i-g|0;G[18157]=b;c=G[18160];a=c+g|0;G[18160]=a;G[a+4>>2]=b|1;G[c+4>>2]=g|3;a=c+8|0;break a}a=0;h=g+47|0;if(G[18272]){c=G[18274]}else{G[18275]=-1;G[18276]=-1;G[18273]=4096;G[18274]=4096;G[18272]=l+12&-16^1431655768;G[18277]=0;G[18265]=0;c=4096}j=h+c|0;f=0-c|0;c=j&f;if(c>>>0<=g>>>0){break a}d=G[18264];if(d){b=G[18262];e=b+c|0;if(e>>>0>d>>>0|b>>>0>=e>>>0){break a}}if(H[73060]&4){break f}v:{w:{d=G[18160];if(d){a=73064;while(1){b=G[a>>2];if(b>>>0<=d>>>0&d>>>0<b+G[a+4>>2]>>>0){break w}a=G[a+8>>2];if(a){continue}break}}b=Bb(0);if((b|0)==-1){break g}e=c;d=G[18273];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=g>>>0|e>>>0>2147483646){break g}d=G[18264];if(d){a=G[18262];f=a+e|0;if(d>>>0<f>>>0|a>>>0>=f>>>0){break g}}a=Bb(e);if((b|0)!=(a|0)){break v}break e}e=f&j-i;if(e>>>0>2147483646){break g}b=Bb(e);if((b|0)==(G[a>>2]+G[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|g+48>>>0<=e>>>0)){b=G[18274];b=b+(h-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((Bb(b)|0)!=-1){e=b+e|0;b=a;break e}Bb(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}G[18265]=G[18265]|4}if(c>>>0>2147483646){break d}b=Bb(c);a=Bb(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=g+40>>>0){break d}}a=G[18262]+e|0;G[18262]=a;if(a>>>0>J[18263]){G[18263]=a}x:{y:{z:{h=G[18160];if(h){a=73064;while(1){d=G[a>>2];c=G[a+4>>2];if((d+c|0)==(b|0)){break z}a=G[a+8>>2];if(a){continue}break}break y}a=G[18158];if(!(a>>>0<=b>>>0?a:0)){G[18158]=b}a=0;G[18267]=e;G[18266]=b;G[18162]=-1;G[18163]=G[18272];G[18269]=0;while(1){d=a<<3;c=d+72656|0;G[d+72664>>2]=c;G[d+72668>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;G[18157]=c;a=a+b|0;G[18160]=a;G[a+4>>2]=c|1;G[(b+d|0)+4>>2]=40;G[18161]=G[18276];break x}if(H[a+12|0]&8|d>>>0>h>>>0|b>>>0<=h>>>0){break y}G[a+4>>2]=c+e;a=h+8&7?-8-h&7:0;c=a+h|0;G[18160]=c;b=G[18157]+e|0;a=b-a|0;G[18157]=a;G[c+4>>2]=a|1;G[(b+h|0)+4>>2]=40;G[18161]=G[18276];break x}if(J[18158]>b>>>0){G[18158]=b}c=b+e|0;a=73064;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=G[a>>2]){a=G[a+8>>2];if(a){continue}break F}break}if(!(H[a+12|0]&8)){break E}}a=73064;while(1){c=G[a>>2];if(c>>>0<=h>>>0){f=c+G[a+4>>2]|0;if(f>>>0>h>>>0){break D}}a=G[a+8>>2];continue}}G[a>>2]=b;G[a+4>>2]=G[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;G[j+4>>2]=g|3;e=c+(c+8&7?-8-c&7:0)|0;i=g+j|0;g=e-i|0;if((e|0)==(h|0)){G[18160]=i;a=G[18157]+g|0;G[18157]=a;G[i+4>>2]=a|1;break B}if(G[18159]==(e|0)){G[18159]=i;a=G[18156]+g|0;G[18156]=a;G[i+4>>2]=a|1;G[a+i>>2]=a;break B}a=G[e+4>>2];if((a&3)==1){f=a&-8;G:{if(a>>>0<=255){c=G[e+8>>2];a=a>>>3|0;b=G[e+12>>2];if((b|0)==(c|0)){G[18154]=G[18154]&mi(-2,a);break G}G[c+12>>2]=b;G[b+8>>2]=c;break G}h=G[e+24>>2];b=G[e+12>>2];H:{if((e|0)!=(b|0)){a=G[e+8>>2];G[a+12>>2]=b;G[b+8>>2]=a;break H}I:{a=e+20|0;d=G[a>>2];if(d){break I}a=e+16|0;d=G[a>>2];if(d){break I}b=0;break H}while(1){c=a;b=d;a=b+20|0;d=G[a>>2];if(d){continue}a=b+16|0;d=G[b+16>>2];if(d){continue}break}G[c>>2]=0}if(!h){break G}c=G[e+28>>2];a=(c<<2)+72920|0;J:{if(G[a>>2]==(e|0)){G[a>>2]=b;if(b){break J}G[18155]=G[18155]&mi(-2,c);break G}G[h+(G[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}G[b+24>>2]=h;a=G[e+16>>2];if(a){G[b+16>>2]=a;G[a+24>>2]=b}a=G[e+20>>2];if(!a){break G}G[b+20>>2]=a;G[a+24>>2]=b}g=f+g|0;e=e+f|0}G[e+4>>2]=G[e+4>>2]&-2;G[i+4>>2]=g|1;G[g+i>>2]=g;if(g>>>0<=255){a=g>>>3|0;b=(a<<3)+72656|0;c=G[18154];a=1<<a;K:{if(!(c&a)){G[18154]=a|c;a=b;break K}a=G[b+8>>2]}G[b+8>>2]=i;G[a+12>>2]=i;G[i+12>>2]=b;G[i+8>>2]=a;break B}a=31;if(g>>>0<=16777215){a=g>>>8|0;d=a+1048320>>>16&8;a=a<<d;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|d))|0;a=(a<<1|g>>>a+21&1)+28|0}G[i+28>>2]=a;G[i+16>>2]=0;G[i+20>>2]=0;d=(a<<2)+72920|0;c=G[18155];b=1<<a;L:{if(!(c&b)){G[18155]=b|c;G[d>>2]=i;G[i+24>>2]=d;break L}a=g<<((a|0)==31?0:25-(a>>>1|0)|0);b=G[d>>2];while(1){c=b;if((G[b+4>>2]&-8)==(g|0)){break C}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=G[d+16>>2];if(b){continue}break}G[d+16>>2]=i;G[i+24>>2]=c}G[i+12>>2]=i;G[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;G[18157]=c;a=a+b|0;G[18160]=a;G[a+4>>2]=c|1;G[(b+d|0)+4>>2]=40;G[18161]=G[18276];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0<h+16>>>0?h:a;G[c+4>>2]=27;a=G[18269];G[c+16>>2]=G[18268];G[c+20>>2]=a;a=G[18267];G[c+8>>2]=G[18266];G[c+12>>2]=a;G[18268]=c+8;G[18267]=e;G[18266]=b;G[18269]=0;a=c+24|0;while(1){G[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0<f>>>0){continue}break}if((c|0)==(h|0)){break x}G[c+4>>2]=G[c+4>>2]&-2;f=c-h|0;G[h+4>>2]=f|1;G[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+72656|0;c=G[18154];a=1<<a;M:{if(!(c&a)){G[18154]=a|c;a=b;break M}a=G[b+8>>2]}G[b+8>>2]=h;G[a+12>>2]=h;G[h+12>>2]=b;G[h+8>>2]=a;break x}a=31;G[h+16>>2]=0;G[h+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<<d;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}G[h+28>>2]=a;d=(a<<2)+72920|0;c=G[18155];b=1<<a;N:{if(!(c&b)){G[18155]=b|c;G[d>>2]=h;G[h+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=G[d>>2];while(1){c=b;if((f|0)==(G[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=G[d+16>>2];if(b){continue}break}G[d+16>>2]=h;G[h+24>>2]=c}G[h+12>>2]=h;G[h+8>>2]=h;break x}a=G[c+8>>2];G[a+12>>2]=i;G[c+8>>2]=i;G[i+24>>2]=0;G[i+12>>2]=c;G[i+8>>2]=a}a=j+8|0;break a}a=G[c+8>>2];G[a+12>>2]=h;G[c+8>>2]=h;G[h+24>>2]=0;G[h+12>>2]=c;G[h+8>>2]=a}a=G[18157];if(a>>>0<=g>>>0){break d}b=a-g|0;G[18157]=b;c=G[18160];a=c+g|0;G[18160]=a;G[a+4>>2]=b|1;G[c+4>>2]=g|3;a=c+8|0;break a}G[18106]=48;a=0;break a}O:{if(!e){break O}c=G[f+28>>2];a=(c<<2)+72920|0;P:{if(G[a>>2]==(f|0)){G[a>>2]=b;if(b){break P}i=mi(-2,c)&i;G[18155]=i;break O}G[e+(G[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}G[b+24>>2]=e;a=G[f+16>>2];if(a){G[b+16>>2]=a;G[a+24>>2]=b}a=G[f+20>>2];if(!a){break O}G[b+20>>2]=a;G[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+g|0;G[f+4>>2]=a|3;a=a+f|0;G[a+4>>2]=G[a+4>>2]|1;break Q}G[f+4>>2]=g|3;e=f+g|0;G[e+4>>2]=d|1;G[e+d>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+72656|0;c=G[18154];a=1<<a;R:{if(!(c&a)){G[18154]=a|c;a=b;break R}a=G[b+8>>2]}G[b+8>>2]=e;G[a+12>>2]=e;G[e+12>>2]=b;G[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;j=a+1048320>>>16&8;a=a<<j;c=a+520192>>>16&4;a=a<<c;b=a+245760>>>16&2;a=(a<<b>>>15|0)-(b|(c|j))|0;a=(a<<1|d>>>a+21&1)+28|0}G[e+28>>2]=a;G[e+16>>2]=0;G[e+20>>2]=0;b=(a<<2)+72920|0;S:{c=1<<a;T:{if(!(c&i)){G[18155]=c|i;G[b>>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);c=G[b>>2];while(1){b=c;if((G[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;j=(c&4)+b|0;c=G[j+16>>2];if(c){continue}break}G[j+16>>2]=e}G[e+24>>2]=b;G[e+12>>2]=e;G[e+8>>2]=e;break Q}a=G[b+8>>2];G[a+12>>2]=e;G[b+8>>2]=e;G[e+24>>2]=0;G[e+12>>2]=b;G[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=G[b+28>>2];a=(c<<2)+72920|0;V:{if(G[a>>2]==(b|0)){G[a>>2]=f;if(f){break V}G[18155]=mi(-2,c)&h;break U}G[i+(G[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}G[f+24>>2]=i;a=G[b+16>>2];if(a){G[f+16>>2]=a;G[a+24>>2]=f}a=G[b+20>>2];if(!a){break U}G[f+20>>2]=a;G[a+24>>2]=f}W:{if(d>>>0<=15){a=d+g|0;G[b+4>>2]=a|3;a=a+b|0;G[a+4>>2]=G[a+4>>2]|1;break W}G[b+4>>2]=g|3;f=b+g|0;G[f+4>>2]=d|1;G[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+72656|0;j=G[18159];a=1<<a;X:{if(!(a&e)){G[18154]=a|e;a=c;break X}a=G[c+8>>2]}G[c+8>>2]=j;G[a+12>>2]=j;G[j+12>>2]=c;G[j+8>>2]=a}G[18159]=f;G[18156]=d}a=b+8|0}ia=l+16|0;return a|0}function sh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((b|0)==(c|0)){return-4}a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{g=a+76|0;switch(H[g+H[b|0]|0]){case 4:break k;case 0:case 1:case 8:break m;case 5:break n;case 6:break o;case 7:break p;case 2:break r;case 3:break f;case 9:break g;case 10:break h;default:break q}}i=1;e=b+1|0;if((e|0)==(c|0)){break c}s:{t:{u:{v:{w:{x:{switch(H[g+H[e|0]|0]-5|0){case 0:i=2;f=-2;if((c-e|0)<2){break i}if(ka[G[a+344>>2]](a,e)|0){break w}break d;case 1:i=3;f=-2;if((c-e|0)<3){break i}if(!(ka[G[a+348>>2]](a,e)|0)){break d}break w;case 12:break t;case 10:break u;case 11:break v;case 17:case 19:break w;case 2:break x;default:break d}}i=4;f=-2;if((c-e|0)<4){break i}if(!(ka[G[a+352>>2]](a,e)|0)){break d}}b=e+i|0;if((c|0)!=(b|0)){break s}break c}f=-1;e=b+2|0;if((e|0)==(c|0)){break i}y:{switch(H[g+H[b+2|0]|0]-20|0){case 7:return be(a,b+3|0,c,d)|0;case 0:e=-1;a=b+3|0;if((c-a|0)>=6){e=0;z:{if(H[a|0]!=67){break z}if(H[a+1|0]!=68){a=a+1|0;break z}if(H[a+2|0]!=65){a=a+2|0;break z}if(H[a+3|0]!=84){a=a+3|0;break z}if(H[a+4|0]!=65){a=a+4|0;break z}b=H[a+5|0]==91;a=b?a+6|0:a+5|0;e=b<<3}G[d>>2]=a}return e|0;default:break y}}G[d>>2]=e;break b}return de(a,b+2|0,c,d)|0}b=b+2|0;if((c|0)==(b|0)){break c}e=1;i=0;A:{B:{C:{switch(H[g+H[b|0]|0]-5|0){case 0:e=2;f=-2;if((c-b|0)<2){break i}if(ka[G[a+344>>2]](a,b)|0){break B}break A;case 1:e=3;f=-2;if((c-b|0)<3){break i}if(ka[G[a+348>>2]](a,b)|0){break B}break A;case 17:case 19:break B;case 2:break C;default:break A}}e=4;f=-2;if((c-b|0)<4){break i}if(!(ka[G[a+352>>2]](a,b)|0)){break A}}b=b+e|0;if((c|0)==(b|0)){break c}D:{E:{F:{G:{while(1){e=1;H:{I:{switch(H[g+H[b|0]|0]-5|0){case 0:if((c-b|0)<2){break a}e=2;if(ka[G[a+332>>2]](a,b)|0){break H}break A;case 1:if((c-b|0)<3){break a}e=3;if(ka[G[a+336>>2]](a,b)|0){break H}break A;case 6:break F;case 4:case 5:case 16:break G;case 17:case 18:case 19:case 20:case 21:case 22:break H;case 2:break I;default:break A}}if((c-b|0)<4){break a}e=4;if(!(ka[G[a+340>>2]](a,b)|0)){break A}}b=b+e|0;if((c|0)!=(b|0)){continue}break}break c}e=b+1|0;if((e|0)==(c|0)){break c}a=b;while(1){b=e;J:{switch(H[g+H[a+1|0]|0]-9|0){case 2:break E;case 0:case 1:case 12:break J;default:break A}}a=b;e=b+1|0;if((e|0)!=(c|0)){continue}break}break c}b=b+1|0;break D}b=a+2|0}i=5}G[d>>2]=b;return i|0}i=0;while(1){e=1;K:{L:{M:{N:{switch(H[g+H[b|0]|0]-5|0){case 0:if((c-b|0)<2){break a}e=2;if(ka[G[a+332>>2]](a,b)|0){break K}break e;case 1:if((c-b|0)<3){break a}e=3;if(!(ka[G[a+336>>2]](a,b)|0)){break e}break K;case 2:if((c-b|0)<4){break a}e=4;if(!(ka[G[a+340>>2]](a,b)|0)){break e}break K;case 18:if(i){break e}f=b+1|0;if((f|0)==(c|0)){break c}i=1;e=2;O:{P:{switch(H[g+H[f|0]|0]-5|0){case 0:if((c-f|0)<2){break a}e=3;if(ka[G[a+344>>2]](a,f)|0){break K}break O;case 1:if((c-f|0)<3){break a}e=4;if(!(ka[G[a+348>>2]](a,f)|0)){break O}break K;case 17:case 19:break K;case 2:break P;default:break O}}if((c-f|0)<4){break a}e=5;if(ka[G[a+352>>2]](a,f)|0){break K}}G[d>>2]=f;break b;case 17:case 19:case 20:case 21:case 22:break K;case 12:break L;case 6:break M;case 4:case 5:case 16:break N;default:break e}}e=b+1|0;if((e|0)==(c|0)){break c}i=b;while(1){b=e;e=2;Q:{R:{S:{switch(H[g+H[i+1|0]|0]-5|0){case 0:f=-2;if((c-b|0)<2){break i}e=3;if(!(ka[G[a+344>>2]](a,b)|0)){break e}break R;case 1:f=-2;if((c-b|0)<3){break i}e=4;if(!(ka[G[a+348>>2]](a,b)|0)){break e}break R;case 12:break L;case 6:break M;case 4:case 5:case 16:break Q;case 17:case 19:break R;case 2:break S;default:break e}}f=-2;if((c-b|0)<4){break i}e=5;if(!(ka[G[a+352>>2]](a,b)|0)){break e}}h=a;k=d;f=0;g=ia-16|0;ia=g;b=e+i|0;G[g+12>>2]=b;d=-1;T:{if((b|0)==(c|0)){break T}e=h+76|0;while(1){a=b;U:{V:{W:{X:{Y:{Z:{_:{$:{aa:{switch(H[e+H[b|0]|0]-5|0){case 0:if((c-b|0)<2){d=-2;break T}if(!(ka[G[h+332>>2]](h,b)|0)){break X}b=b+2|0;break Z;case 1:if((c-b|0)<3){d=-2;break T}if(!(ka[G[h+336>>2]](h,b)|0)){break X}b=b+3|0;break Z;case 2:if((c-b|0)<4){d=-2;break T}if(!(ka[G[h+340>>2]](h,b)|0)){break X}b=b+4|0;break Z;case 18:if(f){break X}a=b+1|0;G[g+12>>2]=a;if((a|0)==(c|0)){break T}ba:{switch(H[e+H[a|0]|0]-5|0){case 17:case 19:b=b+2|0;break V;case 0:if((c-a|0)<2){d=-2;break T}if(!(ka[G[h+344>>2]](h,a)|0)){break X}b=b+3|0;break V;case 1:if((c-a|0)<3){d=-2;break T}if(!(ka[G[h+348>>2]](h,a)|0)){break X}b=b+4|0;break V;case 2:break ba;default:break X}}if((c-a|0)<4){d=-2;break T}if(!(ka[G[h+352>>2]](h,a)|0)){break X}b=b+5|0;break V;case 17:case 19:case 20:case 21:case 22:break _;case 9:break $;case 4:case 5:case 16:break aa;default:break X}}a=b+1|0;G[g+12>>2]=a;if((a|0)==(c|0)){break T}while(1){ca:{switch(H[e+H[a|0]|0]-9|0){case 5:break $;case 0:case 1:case 12:break ca;default:break X}}a=a+1|0;G[g+12>>2]=a;if((a|0)!=(c|0)){continue}break}break T}b=a+1|0;G[g+12>>2]=b;if((b|0)==(c|0)){break T}f=H[e+H[b|0]|0];if((f&254)==12){break Y}while(1){a=b;b=f&255;if(b>>>0>21|!(1<<b&2098688)){break X}b=a+1|0;G[g+12>>2]=b;if((b|0)==(c|0)){break T}f=H[e+H[b|0]|0];if((f&254)!=12){continue}break}break Y}b=b+1|0}G[g+12>>2]=b;break U}b=a+2|0;G[g+12>>2]=b;if((b|0)==(c|0)){break T}while(1){i=H[e+H[b|0]|0];if((i|0)!=(f|0)){a=b;da:{ea:{fa:{switch(i|0){case 5:if((c-b|0)<2){d=-2;break T}if(ka[G[h+356>>2]](h,b)|0){break X}b=b+2|0;break ea;case 6:if((c-b|0)<3){d=-2;break T}if(ka[G[h+360>>2]](h,b)|0){break X}b=b+3|0;break ea;case 7:if((c-b|0)<4){d=-2;break T}if(ka[G[h+364>>2]](h,b)|0){break X}b=b+4|0;break ea;case 3:a=mc(h,b+1|0,c,g+12|0);if((a|0)>0){b=G[g+12>>2];break da}d=a;if(a){break T}a=G[g+12>>2];break X;case 0:case 1:case 2:case 8:break X;default:break fa}}b=b+1|0}G[g+12>>2]=b}if((b|0)!=(c|0)){continue}break T}break}a=b+1|0;G[g+12>>2]=a;if((a|0)==(c|0)){break T}ga:{ha:{ia:{switch(H[e+H[a|0]|0]-9|0){case 2:break ga;case 8:break ha;case 0:case 1:case 12:break ia;default:break X}}b=b+2|0;G[g+12>>2]=b;f=a;if((b|0)==(c|0)){break T}while(1){a=b;ja:{switch(H[e+H[b|0]|0]-5|0){case 17:case 19:b=f+2|0;break W;case 0:if((c-a|0)<2){d=-2;break T}if(!(ka[G[h+344>>2]](h,a)|0)){break X}b=a+2|0;break W;case 1:if((c-a|0)<3){d=-2;break T}if(!(ka[G[h+348>>2]](h,a)|0)){break X}b=a+3|0;break W;case 2:if((c-a|0)<4){d=-2;break T}if(!(ka[G[h+352>>2]](h,a)|0)){break X}b=a+4|0;break W;case 6:break ga;case 12:break ha;case 4:case 5:case 16:break ja;default:break X}}b=a+1|0;G[g+12>>2]=b;f=a;if((b|0)!=(c|0)){continue}break}break T}b=a+1|0;G[g+12>>2]=b;if((b|0)==(c|0)){break T}c=b;b=H[a+1|0]==62;a=b?a+2|0:c;j=b?3:0;break X}j=1;a=a+1|0}G[k>>2]=a;d=j;break T}G[g+12>>2]=b;f=0;break U}G[g+12>>2]=b;f=1}if((b|0)!=(c|0)){continue}break}}ia=g+16|0;return d|0}i=b;e=b+1|0;if((e|0)!=(c|0)){continue}break}break c}G[d>>2]=b+1;return 2}f=-1;a=b+1|0;if((a|0)==(c|0)){break i}if(H[b+1|0]!=62){G[d>>2]=a;break b}G[d>>2]=b+2;return 4}b=b+e|0;if((c|0)!=(b|0)){continue}break}break c}e=b+1|0;break j}f=-2;if((c-b|0)<4){break i}if(ka[G[a+364>>2]](a,b)|0){break m}e=b+4|0;break j}f=-2;if((c-b|0)<3){break i}if(ka[G[a+360>>2]](a,b)|0){break m}e=b+3|0;break j}f=-2;if((c-b|0)<2){break i}if(!(ka[G[a+356>>2]](a,b)|0)){break l}}G[d>>2]=b;break b}e=b+2|0;break j}f=-5;e=b+1|0;if((e|0)==(c|0)){break i}if(H[e|0]!=93){break j}i=b+2|0;if((i|0)==(c|0)){break i}if(H[b+2|0]!=62){break j}G[d>>2]=i;break b}ka:{la:{if((c|0)!=(e|0)){while(1){ma:{na:{switch(H[g+H[e|0]|0]){case 5:if((c-e|0)<2){break la}if(ka[G[a+356>>2]](a,e)|0){break la}b=e+2|0;break ma;case 6:if((c-e|0)<3){break la}if(ka[G[a+360>>2]](a,e)|0){break la}b=e+3|0;break ma;case 7:if((c-e|0)<4){break la}if(ka[G[a+364>>2]](a,e)|0){break la}b=e+4|0;break ma;case 4:b=e+1|0;if((b|0)==(c|0)){break la}if(H[b|0]!=93){break ma}f=e+2|0;if((f|0)==(c|0)){break la}if(H[e+2|0]!=62){break ma}G[d>>2]=f;break b;case 0:case 1:case 2:case 3:case 8:case 9:case 10:break la;default:break na}}b=e+1|0}e=b;if((b|0)!=(c|0)){continue}break}}G[d>>2]=c;break ka}G[d>>2]=e}f=6}return f|0}G[d>>2]=b+1;return 7}a=b+1|0;if((a|0)==(c|0)){return-3}G[d>>2]=H[g+H[b+1|0]|0]==10?b+2|0:a;return 7}return mc(a,b+1|0,c,d)|0}G[d>>2]=b;break b}G[d>>2]=e;return 0}return-1}return 0}return-2}function Bg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==(c|0)){return-4}a:{b:{e=c-b|0;if(e&1){c=e&-2;if(!c){break b}c=b+c|0}c:{d:{e:{f:{g:{h:{i:{j:{k:{f=H[b|0];switch(f-216|0){case 0:case 1:case 2:case 3:break h;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break j;case 4:case 5:case 6:case 7:break a;case 39:break g;default:break k}}if(!f){break i}}h=H[b+1|0];break f}e=-2;i=18;l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{x:{y:{z:{A:{h=H[b+1|0];j=a+76|0;switch(H[h+j|0]-2|0){case 5:break h;case 4:break l;case 3:break m;case 17:break n;case 9:break o;case 34:break p;case 30:break q;case 29:break r;case 2:break s;case 18:break t;case 33:break u;case 28:break v;case 8:case 19:break w;case 7:break x;case 0:break y;case 11:break z;case 10:break A;case 20:case 22:break d;case 21:case 23:case 24:case 25:break e;case 27:break f;default:break a}}return Vd(12,a,b+2|0,c,d)|0}return Vd(13,a,b+2|0,c,d)|0}g=b+2|0;if((g|0)==(c|0)){return-1}f=H[b+3|0];B:{e=H[b+2|0];if(e){e=_a(e<<24>>24,f<<24>>24)}else{e=H[f+j|0]}if(e>>>0>29){break B}if(!(1<<e&557842656)){if((e|0)!=15){if((e|0)!=16){break B}e=-1;b=b+4|0;C:{if((c|0)==(b|0)){break C}D:{E:{if(H[b|0]){break E}F:{G:{H:{g=a+76|0;switch(H[g+H[b+1|0]|0]-20|0){case 2:case 4:break F;case 0:break G;case 7:break H;default:break E}}e=Sd(a,b+2|0,c,d);break C}G[d>>2]=b+2;e=33;break C}a=b+2|0;if((c|0)==(a|0)){break C}while(1){I:{if(H[b+2|0]){break I}f=H[g+H[b+3|0]|0];if(f>>>0>30){break I}if(!(1<<f&20971520)){J:{if(1<<f&2098688){break J}if((f|0)!=30){break I}if((b+4|0)==(c|0)){break C}c=H[b+5|0];b=H[b+4|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+g|0]}if(b>>>0>30){break J}if(1<<b&1075840512){break I}}G[d>>2]=a;e=16;break C}b=a;a=b+2|0;if((c|0)!=(a|0)){continue}break C}break}G[d>>2]=a;break D}G[d>>2]=b}e=0}return e|0}return Ud(a,b+4|0,c,d)|0}G[d>>2]=b;return 29}G[d>>2]=g;return 0}if((b+2|0)!=(c|0)){break w}G[d>>2]=c;return-15}a=b+2|0;if((c|0)!=(a|0)){while(1){K:{L:{if(H[b+2|0]){break L}M:{switch(H[j+H[b+3|0]|0]-9|0){case 1:case 12:break K;case 0:break M;default:break L}}if((b+4|0)!=(c|0)){break K}}G[d>>2]=a;return 15}b=a;a=b+2|0;if((c|0)!=(a|0)){continue}break}}G[d>>2]=c;return 15}return Td(a,b+2|0,c,d)|0}G[d>>2]=b+2;return 38}G[d>>2]=b+2;return 25}a=b+2|0;if((a|0)==(c|0)){return-26}N:{if(H[b+2|0]|H[b+3|0]!=93){break N}if((b+4|0)==(c|0)){return-1}if(H[b+4|0]|H[b+5|0]!=62){break N}G[d>>2]=b+6;return 34}G[d>>2]=a;return 26}G[d>>2]=b+2;return 23}e=b+2|0;if((e|0)==(c|0)){return-24}c=H[b+3|0];O:{P:{Q:{R:{S:{a=H[b+2|0];if(a){a=_a(a<<24>>24,c<<24>>24)}else{a=H[c+j|0]}switch(a-9|0){case 0:case 1:case 2:case 12:case 23:case 26:case 27:break P;case 25:break Q;case 6:break R;case 24:break S;default:break O}}G[d>>2]=b+4;return 36}G[d>>2]=b+4;return 35}G[d>>2]=b+4;return 37}G[d>>2]=e;return 24}G[d>>2]=e;return 0}G[d>>2]=b+2;return 21}G[d>>2]=b+2;return 17}f=a;g=d;d=0;e=-1;a=b+2|0;if((a|0)!=(c|0)){T:{U:{V:{W:{X:{Y:{Z:{_:{$:{aa:{ba:{ca:{b=H[a|0];switch(b-216|0){case 4:case 5:case 6:case 7:break U;case 0:case 1:case 2:case 3:break _;case 39:break aa;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ba;default:break ca}}if(!b){break $}}e=H[a+1|0];break X}e=H[a+1|0];if(e>>>0>253){break V}break X}e=H[a+1|0];switch(H[(f+e|0)+76|0]-5|0){case 17:case 19:break W;case 24:break X;case 0:break Y;case 1:break Z;case 2:break _;default:break U}}e=-2;if((c-a|0)>=4){break U}break T}e=-2;if((c-a|0)>=3){break U}break T}e=-2;if((c-a|0)>=2){break U}break T}if(!(G[(e>>>3&28|H[b+14240|0]<<5)+12224>>2]>>>e&1)){break V}}e=-20;d=a+2|0;if((d|0)==(c|0)){break T}f=f+76|0;b=a;while(1){a=d;da:{ea:{fa:{ga:{ha:{ia:{ja:{ka:{la:{j=H[b+2|0];switch(j-216|0){case 4:case 5:case 6:case 7:break V;case 0:case 1:case 2:case 3:break ha;case 39:break ja;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ka;default:break la}}if(!j){break ia}}b=H[b+3|0];break ea}b=H[b+3|0];if(b>>>0<=253){break ea}break V}d=20;b=H[b+3|0];switch(H[f+b|0]-5|0){case 4:case 5:case 6:case 16:case 25:case 27:case 31:break U;case 17:case 19:case 20:case 21:case 22:break da;case 24:break ea;case 0:break fa;case 1:break ga;case 2:break ha;default:break V}}e=-2;d=0;if((c-a|0)>=4){break U}break T}e=-2;d=0;if((c-a|0)>=3){break U}break T}e=-2;d=0;if((c-a|0)>=2){break U}break T}if(!(G[(b>>>3&28|H[j+14496|0]<<5)+12224>>2]>>>b&1)){break V}}b=a;d=b+2|0;if((d|0)!=(c|0)){continue}break}break T}d=0}G[g>>2]=a;e=d}}return e|0}if((c-b|0)<2){break c}break a}if((c-b|0)>=3){break a}break c}e=-2;if((c-b|0)>=4){break a}break c}h=H[b+1|0];if(h>>>0>253){break a}}i=18;e=1<<h;g=h>>>5<<2;if(e&G[(g|H[f+14240|0]<<5)+12224>>2]){break d}i=19;if(!(e&G[(g|H[f+14496|0]<<5)+12224>>2])){break a}break d}i=19}b=b+2|0;if((c|0)!=(b|0)){g=a+76|0;while(1){a=b;ma:{na:{oa:{pa:{qa:{ra:{sa:{ta:{ua:{va:{wa:{e=H[b|0];switch(e-216|0){case 4:case 5:case 6:case 7:break oa;case 0:case 1:case 2:case 3:break sa;case 39:break ua;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break va;default:break wa}}if(!e){break ta}}b=H[a+1|0];break pa}b=H[a+1|0];if(b>>>0<=253){break pa}break oa}xa:{ya:{za:{Aa:{Ba:{b=H[a+1|0];switch(H[g+b|0]-5|0){case 4:case 5:case 6:case 15:case 16:case 25:case 27:case 30:case 31:break xa;case 18:break ya;case 29:break za;case 28:break Aa;case 10:break Ba;case 17:case 19:case 20:case 21:case 22:break na;case 24:break pa;case 0:break qa;case 1:break ra;case 2:break sa;default:break oa}}if((i|0)==19){break oa}G[d>>2]=a+2;return 30}if((i|0)==19){break oa}G[d>>2]=a+2;return 31}if((i|0)==19){break oa}G[d>>2]=a+2;return 32}b=a+2|0;Ca:{Da:{Ea:{Fa:{Ga:{Ha:{Ia:{if((i|0)!=41){if((i|0)!=18){break ma}if((b|0)==(c|0)){return-1}i=19;Ja:{Ka:{La:{e=H[b|0];switch(e-216|0){case 0:case 1:case 2:case 3:break Ha;case 39:break Ja;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break Ka;case 4:case 5:case 6:case 7:break ma;default:break La}}if(!e){break Ia}}h=H[a+3|0];break Ea}h=H[a+3|0];if(h>>>0>253){break ma}break Ea}i=19;break ma}h=H[a+3|0];switch(H[g+h|0]-5|0){case 17:case 19:case 20:case 21:case 22:break Ca;case 24:break Ea;case 0:break Fa;case 1:break Ga;case 2:break Ha;default:break ma}}e=-2;if((c-b|0)>=4){break Da}break c}e=-2;if((c-b|0)>=3){break Da}break c}e=-2;if((c-b|0)>=2){break Da}break c}if(G[(h>>>3&28|H[e+14496|0]<<5)+12224>>2]>>>h&1){break Ca}}G[d>>2]=b;return 0}b=a+4|0;i=41;break ma}G[d>>2]=a;return i|0}e=-2;if((c-a|0)>=4){break oa}break c}e=-2;if((c-a|0)>=3){break oa}break c}e=-2;if((c-a|0)>=2){break oa}break c}if(G[(b>>>3&28|H[e+14496|0]<<5)+12224>>2]>>>b&1){break na}}G[d>>2]=a;return 0}b=a+2|0}if((b|0)!=(c|0)){continue}break}}e=0-i|0}return e|0}return-1}G[d>>2]=b;return 0}function Tg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((b|0)==(c|0)){return-4}a:{b:{e=c-b|0;if(e&1){c=e&-2;if(!c){break b}c=b+c|0}c:{d:{e:{f:{g:{h:{i:{j:{k:{f=H[b+1|0];switch(f-216|0){case 0:case 1:case 2:case 3:break h;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break j;case 4:case 5:case 6:case 7:break a;case 39:break g;default:break k}}if(!f){break i}}h=H[b|0];break f}e=-2;i=18;l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{x:{y:{z:{A:{h=H[b|0];j=a+76|0;switch(H[h+j|0]-2|0){case 5:break h;case 4:break l;case 3:break m;case 17:break n;case 9:break o;case 34:break p;case 30:break q;case 29:break r;case 2:break s;case 18:break t;case 33:break u;case 28:break v;case 8:case 19:break w;case 7:break x;case 0:break y;case 11:break z;case 10:break A;case 20:case 22:break d;case 21:case 23:case 24:case 25:break e;case 27:break f;default:break a}}return $d(12,a,b+2|0,c,d)|0}return $d(13,a,b+2|0,c,d)|0}g=b+2|0;if((g|0)==(c|0)){return-1}f=H[b+2|0];B:{e=H[b+3|0];if(e){e=_a(e<<24>>24,f<<24>>24)}else{e=H[f+j|0]}if(e>>>0>29){break B}if(!(1<<e&557842656)){if((e|0)!=15){if((e|0)!=16){break B}e=-1;b=b+4|0;C:{if((c|0)==(b|0)){break C}D:{E:{if(H[b+1|0]){break E}F:{G:{H:{g=a+76|0;switch(H[g+H[b|0]|0]-20|0){case 2:case 4:break F;case 0:break G;case 7:break H;default:break E}}e=Xd(a,b+2|0,c,d);break C}G[d>>2]=b+2;e=33;break C}a=b+2|0;if((c|0)==(a|0)){break C}while(1){I:{if(H[b+3|0]){break I}f=H[g+H[a|0]|0];if(f>>>0>30){break I}if(!(1<<f&20971520)){J:{if(1<<f&2098688){break J}if((f|0)!=30){break I}if((b+4|0)==(c|0)){break C}c=H[b+4|0];b=H[b+5|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+g|0]}if(b>>>0>30){break J}if(1<<b&1075840512){break I}}G[d>>2]=a;e=16;break C}b=a;a=b+2|0;if((c|0)!=(a|0)){continue}break C}break}G[d>>2]=a;break D}G[d>>2]=b}e=0}return e|0}return Zd(a,b+4|0,c,d)|0}G[d>>2]=b;return 29}G[d>>2]=g;return 0}if((b+2|0)!=(c|0)){break w}G[d>>2]=c;return-15}a=b+2|0;if((c|0)!=(a|0)){while(1){K:{L:{if(H[b+3|0]){break L}M:{switch(H[j+H[a|0]|0]-9|0){case 1:case 12:break K;case 0:break M;default:break L}}if((b+4|0)!=(c|0)){break K}}G[d>>2]=a;return 15}b=a;a=b+2|0;if((c|0)!=(a|0)){continue}break}}G[d>>2]=c;return 15}return Yd(a,b+2|0,c,d)|0}G[d>>2]=b+2;return 38}G[d>>2]=b+2;return 25}a=b+2|0;if((a|0)==(c|0)){return-26}N:{if(H[b+3|0]|H[b+2|0]!=93){break N}if((b+4|0)==(c|0)){return-1}if(H[b+5|0]|H[b+4|0]!=62){break N}G[d>>2]=b+6;return 34}G[d>>2]=a;return 26}G[d>>2]=b+2;return 23}e=b+2|0;if((e|0)==(c|0)){return-24}c=H[b+2|0];O:{P:{Q:{R:{S:{a=H[b+3|0];if(a){a=_a(a<<24>>24,c<<24>>24)}else{a=H[c+j|0]}switch(a-9|0){case 0:case 1:case 2:case 12:case 23:case 26:case 27:break P;case 25:break Q;case 6:break R;case 24:break S;default:break O}}G[d>>2]=b+4;return 36}G[d>>2]=b+4;return 35}G[d>>2]=b+4;return 37}G[d>>2]=e;return 24}G[d>>2]=e;return 0}G[d>>2]=b+2;return 21}G[d>>2]=b+2;return 17}f=a;g=d;d=0;e=-1;a=b+2|0;if((a|0)!=(c|0)){T:{U:{V:{W:{X:{Y:{Z:{_:{$:{aa:{ba:{ca:{b=H[a+1|0];switch(b-216|0){case 4:case 5:case 6:case 7:break U;case 0:case 1:case 2:case 3:break _;case 39:break aa;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ba;default:break ca}}if(!b){break $}}e=H[a|0];break X}e=H[a|0];if(e>>>0>253){break V}break X}e=H[a|0];switch(H[(f+e|0)+76|0]-5|0){case 17:case 19:break W;case 24:break X;case 0:break Y;case 1:break Z;case 2:break _;default:break U}}e=-2;if((c-a|0)>=4){break U}break T}e=-2;if((c-a|0)>=3){break U}break T}e=-2;if((c-a|0)>=2){break U}break T}if(!(G[(e>>>3&28|H[b+14240|0]<<5)+12224>>2]>>>e&1)){break V}}e=-20;d=a+2|0;if((d|0)==(c|0)){break T}f=f+76|0;b=a;while(1){a=d;da:{ea:{fa:{ga:{ha:{ia:{ja:{ka:{la:{j=H[b+3|0];switch(j-216|0){case 4:case 5:case 6:case 7:break V;case 0:case 1:case 2:case 3:break ha;case 39:break ja;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break ka;default:break la}}if(!j){break ia}}b=H[a|0];break ea}b=H[a|0];if(b>>>0<=253){break ea}break V}d=20;b=H[a|0];switch(H[f+b|0]-5|0){case 4:case 5:case 6:case 16:case 25:case 27:case 31:break U;case 17:case 19:case 20:case 21:case 22:break da;case 24:break ea;case 0:break fa;case 1:break ga;case 2:break ha;default:break V}}e=-2;d=0;if((c-a|0)>=4){break U}break T}e=-2;d=0;if((c-a|0)>=3){break U}break T}e=-2;d=0;if((c-a|0)>=2){break U}break T}if(!(G[(b>>>3&28|H[j+14496|0]<<5)+12224>>2]>>>b&1)){break V}}b=a;d=b+2|0;if((d|0)!=(c|0)){continue}break}break T}d=0}G[g>>2]=a;e=d}}return e|0}if((c-b|0)<2){break c}break a}if((c-b|0)>=3){break a}break c}e=-2;if((c-b|0)>=4){break a}break c}h=H[b|0];if(h>>>0>253){break a}}i=18;e=1<<h;g=h>>>5<<2;if(e&G[(g|H[f+14240|0]<<5)+12224>>2]){break d}i=19;if(!(e&G[(g|H[f+14496|0]<<5)+12224>>2])){break a}break d}i=19}b=b+2|0;if((c|0)!=(b|0)){g=a+76|0;while(1){a=b;ma:{na:{oa:{pa:{qa:{ra:{sa:{ta:{ua:{va:{wa:{e=H[b+1|0];switch(e-216|0){case 4:case 5:case 6:case 7:break oa;case 0:case 1:case 2:case 3:break sa;case 39:break ua;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break va;default:break wa}}if(!e){break ta}}b=H[a|0];break pa}b=H[a|0];if(b>>>0<=253){break pa}break oa}xa:{ya:{za:{Aa:{Ba:{b=H[a|0];switch(H[g+b|0]-5|0){case 4:case 5:case 6:case 15:case 16:case 25:case 27:case 30:case 31:break xa;case 18:break ya;case 29:break za;case 28:break Aa;case 10:break Ba;case 17:case 19:case 20:case 21:case 22:break na;case 24:break pa;case 0:break qa;case 1:break ra;case 2:break sa;default:break oa}}if((i|0)==19){break oa}G[d>>2]=a+2;return 30}if((i|0)==19){break oa}G[d>>2]=a+2;return 31}if((i|0)==19){break oa}G[d>>2]=a+2;return 32}b=a+2|0;Ca:{Da:{Ea:{Fa:{Ga:{Ha:{Ia:{if((i|0)!=41){if((i|0)!=18){break ma}if((b|0)==(c|0)){return-1}i=19;Ja:{Ka:{La:{e=H[a+3|0];switch(e-216|0){case 0:case 1:case 2:case 3:break Ha;case 39:break Ja;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break Ka;case 4:case 5:case 6:case 7:break ma;default:break La}}if(!e){break Ia}}h=H[b|0];break Ea}h=H[b|0];if(h>>>0>253){break ma}break Ea}i=19;break ma}h=H[b|0];switch(H[g+h|0]-5|0){case 17:case 19:case 20:case 21:case 22:break Ca;case 24:break Ea;case 0:break Fa;case 1:break Ga;case 2:break Ha;default:break ma}}e=-2;if((c-b|0)>=4){break Da}break c}e=-2;if((c-b|0)>=3){break Da}break c}e=-2;if((c-b|0)>=2){break Da}break c}if(G[(h>>>3&28|H[e+14496|0]<<5)+12224>>2]>>>h&1){break Ca}}G[d>>2]=b;return 0}b=a+4|0;i=41;break ma}G[d>>2]=a;return i|0}e=-2;if((c-a|0)>=4){break oa}break c}e=-2;if((c-a|0)>=3){break oa}break c}e=-2;if((c-a|0)>=2){break oa}break c}if(G[(b>>>3&28|H[e+14496|0]<<5)+12224>>2]>>>b&1){break na}}G[d>>2]=a;return 0}b=a+2|0}if((b|0)!=(c|0)){continue}break}}e=0-i|0}return e|0}return-1}G[d>>2]=b;return 0}function zd(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=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,H=0,I=0,K=0,L=0,M=0,N=0;l=ia-336|0;ia=l;m=i&65535;p=d;q=e&65535;s=(e^i)&-2147483648;k=h;x=i>>>16&32767;y=e>>>16&32767;a:{b:{if(x-32767>>>0>4294934529&y-32767>>>0>=4294934530){break b}j=e&2147483647;if(!(!d&(j|0)==2147418112?!(b|c):j>>>0<2147418112)){o=d;s=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){o=h;s=i|32768;b=f;c=g;break a}if(!(b|d|(j^2147418112|c))){if(!(f|h|(e^2147418112|g))){b=0;c=0;s=2147450880;break a}s=s|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){b=0;c=0;break a}if(!(b|d|(c|j))){b=!(f|h|(e|g));o=b?0:o;s=b?2147450880:s;b=0;c=0;break a}if(!(f|h|(e|g))){s=s|2147418112;b=0;c=0;break a}if((j|0)==65535|j>>>0<65535){i=b;d=!(p|q);h=d<<6;j=P(d?b:p)+32|0;b=P(d?c:q);b=h+((b|0)==32?j:b)|0;Ra(l+320|0,i,c,p,q,b-15|0);n=16-b|0;p=G[l+328>>2];q=G[l+332>>2];c=G[l+324>>2];b=G[l+320>>2]}if(e>>>0>65535){break b}d=!(k|m);e=d<<6;h=P(d?f:k)+32|0;d=P(d?g:m);d=e+((d|0)==32?h:d)|0;Ra(l+304|0,f,g,k,m,d-15|0);n=(d+n|0)-16|0;k=G[l+312>>2];m=G[l+316>>2];f=G[l+304>>2];g=G[l+308>>2]}e=m|65536;z=e;A=k;d=k;k=e<<15|d>>>17;d=d<<15|g>>>17;h=0-d|0;e=k;i=1963258675-(e+((d|0)!=0)|0)|0;Na(l+288|0,d,e,0,0,h,i,0,0);j=G[l+296>>2];Na(l+272|0,0-j|0,0-(G[l+300>>2]+((j|0)!=0)|0)|0,0,0,h,i,0,0);h=G[l+280>>2];i=h<<1|G[l+276>>2]>>>31;h=G[l+284>>2]<<1|h>>>31;Na(l+256|0,i,h,0,0,d,e,0,0);j=h;h=G[l+264>>2];Na(l+240|0,i,j,0,0,0-h|0,0-(G[l+268>>2]+((h|0)!=0)|0)|0,0,0);h=G[l+248>>2];i=h<<1|G[l+244>>2]>>>31;h=G[l+252>>2]<<1|h>>>31;Na(l+224|0,i,h,0,0,d,e,0,0);j=h;h=G[l+232>>2];Na(l+208|0,i,j,0,0,0-h|0,0-(G[l+236>>2]+((h|0)!=0)|0)|0,0,0);h=G[l+216>>2];i=h<<1|G[l+212>>2]>>>31;h=G[l+220>>2]<<1|h>>>31;Na(l+192|0,i,h,0,0,d,e,0,0);e=h;h=G[l+200>>2];Na(l+176|0,i,e,0,0,0-h|0,0-(G[l+204>>2]+((h|0)!=0)|0)|0,0,0);i=d;h=G[l+184>>2];d=h<<1|G[l+180>>2]>>>31;e=d-1|0;h=(G[l+188>>2]<<1|h>>>31)-!d|0;Na(l+160|0,i,k,0,0,e,h,0,0);d=f;j=g<<15|d>>>17;Na(l+144|0,d<<15,j,0,0,e,h,0,0);k=G[l+172>>2];m=G[l+160>>2];B=G[l+152>>2];d=m+B|0;i=G[l+164>>2];j=i+G[l+156>>2]|0;j=d>>>0<B>>>0?j+1|0:j;m=(i|0)==(j|0)&d>>>0<m>>>0|i>>>0>j>>>0;i=m+G[l+168>>2]|0;k=i>>>0<m>>>0?k+1|0:k;m=!j&d>>>0>1|(j|0)!=0;i=m+i|0;k=i>>>0<m>>>0?k+1|0:k;Na(l+112|0,e,h,0,0,0-i|0,0-(((i|0)!=0)+k|0)|0,0,0);Na(l+128|0,1-d|0,0-((d>>>0>1)+j|0)|0,0,0,e,h,0,0);H=(y-x|0)+n|0;e=G[l+116>>2];w=e;d=G[l+112>>2];j=e<<1|d>>>31;m=d<<1;n=j;d=j;h=G[l+140>>2];u=h;e=G[l+136>>2];j=h<<1|e>>>31;i=e<<1|G[l+132>>2]>>>31;h=i+m|0;j=d+j|0;j=h>>>0<i>>>0?j+1|0:j;i=h;e=j;j=j-(h>>>0<13927)|0;r=j;k=q|65536;L=k;B=p;j=p;k=k<<1|j>>>31;p=j<<1|c>>>31;d=0;j=d|k;q=j;v=ki(r,d,j,0);d=ja;t=d;j=b;d=c<<1|j>>>31;x=j<<1;y=d;h=h-13927|0;j=(e|0)==(r|0)&h>>>0<i>>>0|e>>>0>r>>>0;e=(e|0)==(n|0)&i>>>0<m>>>0|e>>>0<n>>>0;d=G[l+120>>2];k=G[l+124>>2]<<1|d>>>31;i=d<<1;m=j;n=e;e=u>>>31|0;d=e+(w>>>31|i)|0;j=k;j=d>>>0<e>>>0?j+1|0:j;e=d;d=n+d|0;j=d>>>0<e>>>0?j+1|0:j;e=d;d=m+d|0;k=d>>>0<e>>>0?j+1|0:j;e=d;d=d-1|0;C=k-!e|0;D=0;i=ki(y,o,C,D);e=i+v|0;k=ja+t|0;k=e>>>0<i>>>0?k+1|0:k;m=(k|0)==(t|0)&e>>>0<v>>>0|k>>>0<t>>>0;v=d;i=ki(d,0,p,0);d=i+e|0;j=ja+k|0;j=d>>>0<i>>>0?j+1|0:j;n=d;i=j;e=(j|0)==(k|0)&d>>>0<e>>>0|j>>>0<k>>>0;d=m+e|0;k=0;k=d>>>0<e>>>0?1:k;e=ki(q,o,C,D);d=e+d|0;j=ja+k|0;u=d;d=d>>>0<e>>>0?j+1|0:j;m=ki(q,o,v,o);k=ja;w=ki(C,D,p,o);e=w+m|0;j=ja+k|0;j=e>>>0<w>>>0?j+1|0:j;w=e;e=j;j=(k|0)==(j|0)&m>>>0>w>>>0|j>>>0<k>>>0;m=u+e|0;d=d+j|0;j=m;m=j>>>0<e>>>0?d+1|0:d;u=j;e=0;d=e+n|0;j=i+w|0;j=d>>>0<e>>>0?j+1|0:j;e=j;k=(j|0)==(i|0)&d>>>0<n>>>0|i>>>0>j>>>0;i=u+k|0;j=m;u=i;i=i>>>0<k>>>0?j+1|0:j;n=d;m=e;w=h;h=ki(h,0,p,o);e=ja;t=ki(r,o,y,o);d=t+h|0;j=ja+e|0;j=d>>>0<t>>>0?j+1|0:j;e=(e|0)==(j|0)&d>>>0<h>>>0|e>>>0>j>>>0;h=j;E=u;t=e;F=x&-2;k=ki(v,o,F,0);e=k+d|0;j=ja+j|0;j=e>>>0<k>>>0?j+1|0:j;u=e;k=e;e=j;h=(j|0)==(h|0)&d>>>0>k>>>0|h>>>0>j>>>0;d=t+h|0;k=0;k=d>>>0<h>>>0?1:k;j=d;h=n+d|0;d=k+m|0;d=h>>>0<j>>>0?d+1|0:d;t=h;j=h;h=d;k=(d|0)==(m|0)&j>>>0<n>>>0|d>>>0<m>>>0;d=E+k|0;j=i;M=d;n=d>>>0<k>>>0?j+1|0:j;I=ki(q,o,w,o);E=ja;i=ki(C,D,F,o);d=i+I|0;j=ja+E|0;j=d>>>0<i>>>0?j+1|0:j;C=d;k=ki(r,o,p,o);i=d+k|0;m=j;d=j+ja|0;d=i>>>0<k>>>0?d+1|0:d;K=i;j=ki(y,o,v,o);i=i+j|0;k=ja+d|0;D=i;k=i>>>0<j>>>0?k+1|0:k;i=k;v=0;N=(d|0)==(k|0)&D>>>0<K>>>0|d>>>0>k>>>0;j=(d|0)==(m|0)&C>>>0>K>>>0|d>>>0<m>>>0;d=j+((m|0)==(E|0)&C>>>0<I>>>0|m>>>0<E>>>0)|0;k=0;d=N+d|0;m=i|0;k=m+t|0;j=(d|v)+h|0;v=k;d=k;j=d>>>0<m>>>0?j+1|0:j;m=j;h=(h|0)==(j|0)&d>>>0<t>>>0|h>>>0>j>>>0;d=h+M|0;j=n;E=d;h=d>>>0<h>>>0?j+1|0:j;t=ki(r,o,F,o);r=ja;k=ki(y,o,w,o);d=k+t|0;j=ja+r|0;j=d>>>0<k>>>0?j+1|0:j;n=0;k=(j|0)==(r|0)&d>>>0<t>>>0|j>>>0<r>>>0;r=j;d=j+u|0;j=(k|n)+e|0;n=d;j=d>>>0<r>>>0?j+1|0:j;u=(e|0)==(j|0)&d>>>0<u>>>0|e>>>0>j>>>0;i=0;e=i+d|0;d=j;k=D+d|0;k=e>>>0<i>>>0?k+1|0:k;e=(d|0)==(k|0)&e>>>0<n>>>0|d>>>0>k>>>0;d=u+e|0;j=0;j=d>>>0<e>>>0?1:j;e=d;d=d+v|0;j=j+m|0;j=d>>>0<e>>>0?j+1|0:j;e=j;j=(m|0)==(j|0)&d>>>0<v>>>0|j>>>0<m>>>0;i=j+E|0;k=h;h=i;k=h>>>0<j>>>0?k+1|0:k;i=k;c:{if((k|0)==131071|k>>>0<131071){Na(l+80|0,d,e,h,i,f,g,A,z);j=b<<17;b=0;c=G[l+88>>2];n=b-c|0;k=G[l+80>>2];m=G[l+84>>2];B=(k|m)!=0;r=n-B|0;n=(j-(G[l+92>>2]+(b>>>0<c>>>0)|0)|0)-(n>>>0<B>>>0)|0;b=k;k=0-k|0;m=0-(((b|0)!=0)+m|0)|0;b=H+16382|0;break c}k=h<<31;d=(e&1)<<31|d>>>1;e=e>>>1|k;h=(i&1)<<31|h>>>1;i=i>>>1|0;Na(l+96|0,d,e,h,i,f,g,A,z);q=0;m=G[l+104>>2];n=q-m|0;k=G[l+96>>2];p=G[l+100>>2];x=(k|p)!=0;r=n-x|0;n=((b<<16)-(G[l+108>>2]+(m>>>0>q>>>0)|0)|0)-(n>>>0<x>>>0)|0;j=k;k=0-j|0;m=0-(((j|0)!=0)+p|0)|0;x=b;y=c;p=B;q=L;b=H+16383|0}if((b|0)>=32767){s=s|2147418112;b=0;c=0;break a}d:{if((b|0)>0){c=r;j=n<<1|c>>>31;r=c<<1|m>>>31;n=j;p=h;q=i&65535|b<<16;j=m<<1|k>>>31;b=k<<1;break d}if((b|0)<=-113){b=0;c=0;break a}Ib(l- -64|0,d,e,h,i,1-b|0);Ra(l+48|0,x,y,p,q,b+112|0);d=G[l+64>>2];e=G[l+68>>2];p=G[l+72>>2];q=G[l+76>>2];Na(l+32|0,f,g,A,z,d,e,p,q);c=G[l+40>>2];i=c<<1;c=G[l+44>>2]<<1|c>>>31;b=G[l+56>>2];h=G[l+36>>2];n=h>>>31|i;i=b-n|0;n=G[l+60>>2]-((b>>>0<n>>>0)+c|0)|0;c=G[l+32>>2];k=h<<1|c>>>31;c=c<<1;j=G[l+52>>2];b=G[l+48>>2];h=(k|0)==(j|0)&c>>>0>b>>>0|j>>>0<k>>>0;r=i-h|0;n=n-(h>>>0>i>>>0)|0;h=b;b=h-c|0;j=j-((c>>>0>h>>>0)+k|0)|0}Na(l+16|0,f,g,A,z,3,0,0,0);Na(l,f,g,A,z,5,0,0,0);h=d;m=p;p=d&1;c=b+p|0;d=0;k=j+d|0;k=b>>>0>c>>>0?k+1|0:k;i=c;c=k;g=(k|0)==(g|0)&i>>>0>f>>>0|g>>>0<k>>>0;d=(d|0)==(k|0)&i>>>0<p>>>0|d>>>0>k>>>0;b=d+r|0;j=n;j=b>>>0<d>>>0?j+1|0:j;f=b;d=b;b=j;g=(d|0)==(A|0)&(j|0)==(z|0)?g:(z|0)==(j|0)&d>>>0>A>>>0|j>>>0>z>>>0;d=h+g|0;k=e;k=d>>>0<g>>>0?k+1|0:k;g=(e|0)==(k|0)&d>>>0<h>>>0|e>>>0>k>>>0;e=m+g|0;j=q;j=e>>>0<g>>>0?j+1|0:j;g=e;e=d;m=g;d=G[l+20>>2];h=(d|0)==(c|0)&J[l+16>>2]<i>>>0|c>>>0>d>>>0;d=G[l+28>>2];g=G[l+24>>2];h=j>>>0<2147418112&((f|0)==(g|0)&(b|0)==(d|0)?h:(d|0)==(b|0)&g>>>0<f>>>0|b>>>0>d>>>0);g=e+h|0;d=k;d=g>>>0<h>>>0?d+1|0:d;h=(d|0)==(k|0)&e>>>0>g>>>0|d>>>0<k>>>0;e=m+h|0;k=e>>>0<h>>>0?j+1|0:j;h=e;e=G[l+4>>2];i=(e|0)==(c|0)&J[l>>2]<i>>>0|c>>>0>e>>>0;c=G[l+12>>2];e=G[l+8>>2];c=k>>>0<2147418112&((e|0)==(f|0)&(b|0)==(c|0)?i:(c|0)==(b|0)&e>>>0<f>>>0|b>>>0>c>>>0);b=c+g|0;j=b>>>0<c>>>0?d+1|0:d;c=j;f=(d|0)==(j|0)&b>>>0<g>>>0|d>>>0>j>>>0;e=h+f|0;d=k;o=e|o;s=s|(e>>>0<f>>>0?d+1|0:d)}G[a>>2]=b;G[a+4>>2]=c;G[a+8>>2]=o;G[a+12>>2]=s;ia=l+336|0}function ke(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0;v=ia-16|0;ia=v;o=G[a+356>>2];m=o+20|0;f=G[d>>2];i=G[o+28>>2];a:{b:{c:{if(!i){break c}j=G[a+496>>2];l=H[f|0];if(l){g=l;h=f;while(1){j=M(j,1000003)^g&255;g=H[h+1|0];h=h+1|0;if(g){continue}break}}q=G[m>>2];g=i-1|0;k=g&j;r=G[q+(k<<2)>>2];if(!r){break c}n=g>>>2|0;s=0-i&j;while(1){d:{h=f;g=l;j=G[r>>2];if((g|0)==H[j|0]){while(1){if(!(g&255)){break d}u=H[j+1|0];g=H[h+1|0];j=j+1|0;h=h+1|0;if((g|0)==(u|0)){continue}break}}p=p&255?p:n&s>>>H[o+24|0]-1|1;g=p&255;k=(g>>>0>k>>>0?i:0)+(k-g|0)|0;r=G[q+(k<<2)>>2];if(r){continue}break c}break}if(r){break b}}h=o+80|0;while(1){g=G[o+92>>2];if((g|0)==G[o+88>>2]){if(!qa(h)){i=1;break a}g=G[o+92>>2]}j=H[f|0];G[o+92>>2]=g+1;E[g|0]=j;g=H[f|0];f=f+1|0;if(g){continue}break}f=G[o+96>>2];G[o+96>>2]=G[o+92>>2];i=1;if(!f){break a}r=cb(a,m,f,24);if(!r){break a}if(!H[a+236|0]){break b}if(!le(a,r)){break a}}l=G[r+12>>2];n=ka[G[b+40>>2]](b,c,G[a+380>>2],G[a+392>>2])|0;f=l+n|0;g=G[a+380>>2];e:{if((f|0)<=(g|0)){break e}f=f+16|0;G[a+380>>2]=f;f=ka[G[a+16>>2]](G[a+392>>2],f<<4)|0;if(!f){i=1;break a}G[a+392>>2]=f;if((g|0)>=(n|0)){break e}ka[G[b+40>>2]](b,c,n,f)|0}i=1;q=G[a+392>>2];f:{if((n|0)<=0){p=0;m=0;break f}c=G[q>>2];k=Nc(a,b,c,(ka[G[b+32>>2]](b,c)|0)+c|0);if(!k){break a}g=a+428|0;j=a+416|0;p=0;h=0;m=0;while(1){c=G[k>>2]-1|0;if(H[c|0]){i=8;if(G[a+144>>2]!=(b|0)){break a}G[a+288>>2]=G[G[a+392>>2]+(h<<4)>>2];break a}E[c|0]=1;G[q+(m<<2)>>2]=G[k>>2];s=m+1|0;g:{c=G[a+392>>2]+(h<<4)|0;h:{if(!H[c+12|0]){i:{if(!H[k+8|0]|(l|0)<=0){break i}u=G[r+20>>2];f=0;while(1){i=u+M(f,12)|0;if(G[i>>2]==(k|0)){i=H[i+4|0];break i}i=1;f=f+1|0;if((l|0)!=(f|0)){continue}break}}u=i&255;i=Mc(a,b,u,G[c+4>>2],G[c+8>>2],j);if(i){break a}f=G[g>>2];j:{if((f|0)==G[a+432>>2]|u){break j}c=f-1|0;if(H[c|0]!=32){break j}G[g>>2]=c;f=c}if(G[a+424>>2]==(f|0)){if(!qa(j)){i=1;break a}f=G[g>>2]}G[a+428>>2]=f+1;E[f|0]=0;G[q+(s<<2)>>2]=G[a+432>>2];break h}f=G[c+8>>2];G[v+12>>2]=G[c+4>>2];if(!G[g>>2]){if(!qa(j)){break g}}while(1){k:{ka[G[b+60>>2]](b,v+12|0,f,g,G[a+424>>2]);if((f|0)==G[v+12>>2]){break k}if(qa(j)){continue}break g}break}if(!G[a+432>>2]){break g}f=G[a+428>>2];if((f|0)==G[a+424>>2]){if(!qa(j)){break g}f=G[g>>2]}G[a+428>>2]=f+1;E[f|0]=0;c=G[a+432>>2];G[q+(s<<2)>>2]=c;if(!c){break a}}G[a+432>>2]=G[a+428>>2];c=G[k+4>>2];l:{if(c){if(H[k+9|0]){i=Qc(a,c,k,G[q+(s<<2)>>2],e);if(!i){break l}break a}E[G[k>>2]-1|0]=2;p=p+1|0}m=m+2|0}h=h+1|0;if((n|0)==(h|0)){break f}i=1;c=G[G[a+392>>2]+(h<<4)>>2];k=Nc(a,b,c,(ka[G[b+32>>2]](b,c)|0)+c|0);if(k){continue}break a}break}G[q+(s<<2)>>2]=0;break a}G[a+384>>2]=m;m:{n:{b=G[r+8>>2];if(!b){f=-1;break n}f=-1;b=G[b>>2];if(!H[b-1|0]){break n}if((m|0)<=0){break m}f=0;while(1){if((b|0)==G[q+(f<<2)>>2]){break n}f=f+2|0;if((m|0)>(f|0)){continue}break}break m}G[a+388>>2]=f}if((l|0)>0){f=0;while(1){b=G[r+20>>2]+M(f,12)|0;c=G[b>>2];g=G[c>>2]-1|0;o:{if(H[g|0]){break o}h=G[b+8>>2];if(!h){break o}j=G[c+4>>2];p:{if(j){if(H[c+9|0]){i=Qc(a,j,c,h,e);if(!i){break o}break a}E[g|0]=2;p=p+1|0;break p}E[g|0]=1}c=q+(m<<2)|0;G[c>>2]=G[G[b>>2]>>2];G[c+4>>2]=G[b+8>>2];m=m+2|0}f=f+1|0;if((l|0)!=(f|0)){continue}break}}i=0;G[q+(m<<2)>>2]=0;q:{if(!p){break q}f=H[a+404|0];r:{s:{if(p<<1>>f){while(1){b=f&255;c=f+1|0;f=c;if(p>>b){continue}break}b=c&255;b=b>>>0>3?b:3;E[a+404|0]=b;c=ka[G[a+16>>2]](G[a+396>>2],12<<b)|0;if(!c){i=1;break a}G[a+396>>2]=c;c=1<<b;break s}c=1<<f;b=G[a+400>>2];if(b){break r}}b=-1;h=G[a+396>>2];g=c;j=g&7;if(j){f=0;while(1){g=g-1|0;G[h+M(g,12)>>2]=-1;f=f+1|0;if((j|0)!=(f|0)){continue}break}}if(c-1>>>0<7){break r}while(1){f=h+M(g,12)|0;G[f-24>>2]=-1;G[f-12>>2]=-1;G[f-36>>2]=-1;G[f-48>>2]=-1;G[f-60>>2]=-1;G[f-72>>2]=-1;G[f-84>>2]=-1;G[f-96>>2]=-1;g=g-8|0;if(g){continue}break}}s=b-1|0;G[a+400>>2]=s;if((m|0)<=0){break q}B=0-c|0;u=a+416|0;y=c-1|0;C=y>>>2|0;while(1){z=q+(i<<2)|0;j=G[z>>2];f=j-1|0;t:{if(H[f|0]==2){b=G[a+496>>2];E[f|0]=0;h=G[a+496>>2];t=G[o+48>>2];g=j;l=H[g|0];f=l;if(f){while(1){h=M(h,1000003)^f&255;f=H[g+1|0];g=g+1|0;if(f){continue}break}}f=t-1|0;w=f>>>2|0;n=0;x=0-t&h;k=f&h;D=G[o+40>>2];while(1){u:{g=j;f=l;A=G[(k<<2)+D>>2];h=G[A>>2];if((f|0)==H[h|0]){while(1){if(!(f&255)){break u}F=H[h+1|0];f=H[g+1|0];h=h+1|0;g=g+1|0;if((f|0)==(F|0)){continue}break}}n=n&255?n:w&x>>>H[o+44|0]-1|1;f=n&255;k=(k-f|0)+(f>>>0>k>>>0?t:0)|0;continue}break}l=G[G[A+4>>2]+4>>2];if(!l){i=27;break a}if(G[l+20>>2]>0){g=0;while(1){h=H[G[l+16>>2]+g|0];f=G[a+428>>2];if((f|0)==G[a+424>>2]){if(!qa(u)){i=1;break a}f=G[a+428>>2]}G[a+428>>2]=f+1;E[f|0]=h;b=h^M(b,1000003);g=g+1|0;if((g|0)<G[l+20>>2]){continue}break}}while(1){g=H[j|0];f=j+1|0;j=f;if((g|0)!=58){continue}break}while(1){j=H[f|0];h=j;g=G[a+428>>2];if((g|0)==G[a+424>>2]){if(!qa(u)){i=1;break a}h=H[f|0];g=G[a+428>>2]}G[a+428>>2]=g+1;E[g|0]=h;b=j^M(b,1000003);g=H[f|0];f=f+1|0;if(g){continue}break}j=G[a+396>>2];h=b&y;if((s|0)==G[j+M(h,12)>>2]){w=b&B;n=0;while(1){v:{g=j+M(h,12)|0;if(G[g+4>>2]!=(b|0)){break v}f=G[a+432>>2];t=H[f|0];k=!t;w:{if(!t){break w}g=G[g+8>>2];if((t|0)!=H[g|0]){break w}while(1){t=H[f+1|0];k=!t;if(!t){break w}f=f+1|0;x=H[g+1|0];g=g+1|0;if((t|0)==(x|0)){continue}break}}if(!k){break v}i=8;break a}n=n&255?n:w>>>H[a+404|0]-1&C|1;f=n&255;h=(h-f|0)+((f|0)>(h|0)?c:0)|0;if((s|0)==G[j+M(h,12)>>2]){continue}break}}if(H[a+237|0]){E[G[a+428>>2]-1|0]=H[a+472|0];f=G[G[l>>2]>>2];while(1){g=G[a+428>>2];if((g|0)==G[a+424>>2]){if(!qa(u)){i=1;break a}g=G[a+428>>2]}j=H[f|0];G[a+428>>2]=g+1;E[g|0]=j;g=H[f|0];f=f+1|0;if(g){continue}break}}f=G[a+432>>2];G[a+432>>2]=G[a+428>>2];G[z>>2]=f;g=G[a+396>>2]+M(h,12)|0;G[g+8>>2]=f;G[g+4>>2]=b;G[g>>2]=s;p=p-1|0;if(p){break t}i=i+2|0;break q}E[f|0]=0}i=i+2|0;if((m|0)>(i|0)){continue}break}}if((i|0)<(m|0)){while(1){E[G[q+(i<<2)>>2]-1|0]=0;i=i+2|0;if((m|0)>(i|0)){continue}break}}f=G[e>>2];if(f){while(1){E[G[G[f+12>>2]>>2]-1|0]=0;f=G[f+4>>2];if(f){continue}break}}i=0;if(!H[a+236|0]){break a}b=G[r+4>>2];x:{if(b){b=G[b+4>>2];if(!b){i=27;break a}f=G[d>>2];while(1){c=H[f|0];g=f+1|0;f=g;if((c|0)!=58){continue}break}break x}b=G[o+156>>2];if(!b){break a}g=G[d>>2]}e=G[G[b>>2]>>2];f=0;y:{if(!H[a+237|0]){c=e;j=0;break y}c=0;if(!e){j=0;break y}while(1){h=c+e|0;j=c+1|0;c=j;if(H[h|0]){continue}break}c=e}G[d+4>>2]=g;h=G[b+20>>2];G[d+20>>2]=j;G[d+8>>2]=c;G[d+16>>2]=h;while(1){c=f;f=f+1|0;if(H[c+g|0]){continue}break}e=(h+j|0)+f|0;z:{if((e|0)<=G[b+24>>2]){i=G[b+16>>2];break z}e=e+24|0;i=ka[G[a+12>>2]](e)|0;if(!i){i=1;break a}G[b+24>>2]=e;e=Pa(i,G[b+16>>2],G[b+20>>2]);l=G[b+16>>2];h=G[a+364>>2];if(h){while(1){if((l|0)==G[h+12>>2]){G[h+12>>2]=e}h=G[h>>2];if(h){continue}break}}ka[G[a+20>>2]](l);G[b+16>>2]=e;h=G[b+20>>2]}e=Pa(h+i|0,g,f);if(j){c=c+e|0;E[c|0]=H[a+472|0];Pa(c+1|0,G[G[b>>2]>>2],j)}G[d>>2]=G[b+16>>2];i=0}ia=v+16|0;return i}function hf(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0;l=ia-560|0;ia=l;G[l+44>>2]=0;A(+b);g=v(1)|0;v(0)|0;a:{if((g|0)<0){s=1;w=1410;b=-b;A(+b);g=v(1)|0;v(0)|0;break a}if(e&2048){s=1;w=1413;break a}s=e&1;w=s?1416:1411;z=!s}b:{if((g&2146435072)==2146435072){d=s+3|0;Oa(a,32,c,d,e&-65537);La(a,w,s);f=f&32;La(a,b!=b?f?3762:5546:f?4187:5571,3);Oa(a,32,c,d,e^8192);i=(c|0)<(d|0)?d:c;break b}u=l+16|0;c:{d:{e:{b=Id(b,l+44|0);b=b+b;if(b!=0){g=G[l+44>>2];G[l+44>>2]=g-1;r=f|32;if((r|0)!=97){break e}break c}r=f|32;if((r|0)==97){break c}k=G[l+44>>2];m=(d|0)<0?6:d;break d}k=g-29|0;G[l+44>>2]=k;b=b*268435456;m=(d|0)<0?6:d}p=(k|0)<0?l+48|0:l+336|0;h=p;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}G[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((k|0)<=0){d=k;g=h;j=p;break f}j=p;d=k;while(1){d=(d|0)<29?d:29;g=h-4|0;g:{if(j>>>0>g>>>0){break g}i=0;while(1){o=G[g>>2];n=d&31;x=i;if((d&63)>>>0>=32){i=o<<n;o=0}else{i=(1<<n)-1&o>>>32-n;o=o<<n}n=x+o|0;i=i+y|0;i=n>>>0<o>>>0?i+1|0:i;i=li(n,i,1e9);o=ki(i,ja,1e9,0);G[g>>2]=n-o;g=g-4|0;if(j>>>0<=g>>>0){continue}break}if(!i){break g}j=j-4|0;G[j>>2]=i}while(1){g=h;if(j>>>0<g>>>0){h=g-4|0;if(!G[h>>2]){continue}}break}d=G[l+44>>2]-d|0;G[l+44>>2]=d;h=g;if((d|0)>0){continue}break}}if((d|0)<0){t=((m+25>>>0)/9|0)+1|0;n=(r|0)==102;while(1){d=0-d|0;i=(d|0)<9?d:9;h:{if(g>>>0<=j>>>0){h=G[j>>2];break h}o=1e9>>>i|0;y=-1<<i^-1;d=0;h=j;while(1){x=d;d=G[h>>2];G[h>>2]=x+(d>>>i|0);d=M(o,d&y);h=h+4|0;if(h>>>0<g>>>0){continue}break}h=G[j>>2];if(!d){break h}G[g>>2]=d;g=g+4|0}d=i+G[l+44>>2]|0;G[l+44>>2]=d;j=(!h<<2)+j|0;h=n?p:j;g=g-h>>2>(t|0)?h+(t<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=j>>>0){break i}d=M(p-j>>2,9);h=10;i=G[j>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=M(h,10);if(i>>>0>=h>>>0){continue}break}}h=(m-((r|0)==102?0:d)|0)-((r|0)==103&(m|0)!=0)|0;if((h|0)<(M(g-p>>2,9)-9|0)){i=h+9216|0;n=(i|0)/9|0;k=((((k|0)<0?4:292)+l|0)+(n<<2)|0)-4048|0;h=10;i=i-M(n,9)|0;if((i|0)<=7){while(1){h=M(h,10);i=i+1|0;if((i|0)!=8){continue}break}}n=G[k>>2];t=(n>>>0)/(h>>>0)|0;i=n-M(h,t)|0;o=k+4|0;j:{if(!i&(o|0)==(g|0)){break j}k:{if(!(t&1)){b=9007199254740992;if(!(E[k-4|0]&1)|((h|0)!=1e9|j>>>0>=k>>>0)){break k}}b=9007199254740994}q=(g|0)==(o|0)?1:1.5;o=h>>>1|0;q=i>>>0<o>>>0?.5:(o|0)==(i|0)?q:1.5;if(!(H[w|0]!=45|z)){q=-q;b=-b}i=n-i|0;G[k>>2]=i;if(b+q==b){break j}d=h+i|0;G[k>>2]=d;if(d>>>0>=1e9){while(1){G[k>>2]=0;k=k-4|0;if(k>>>0<j>>>0){j=j-4|0;G[j>>2]=0}d=G[k>>2]+1|0;G[k>>2]=d;if(d>>>0>999999999){continue}break}}d=M(p-j>>2,9);h=10;i=G[j>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=M(h,10);if(i>>>0>=h>>>0){continue}break}}h=k+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=j>>>0;if(!i){g=h-4|0;if(!G[g>>2]){continue}}break}l:{if((r|0)!=103){k=e&8;break l}g=m?m:1;k=(g|0)>(d|0)&(d|0)>-5;m=(k?d^-1:-1)+g|0;f=(k?-1:-2)+f|0;k=e&8;if(k){break l}g=-9;m:{if(i){break m}n=G[h-4>>2];if(!n){break m}i=10;g=0;if((n>>>0)%10|0){break m}while(1){k=g;g=g+1|0;i=M(i,10);if(!((n>>>0)%(i>>>0)|0)){continue}break}g=k^-1}i=M(h-p>>2,9);if((f&-33)==70){k=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g;break l}k=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g}i=-1;r=k|m;if(((r?2147483645:2147483646)|0)<(m|0)){break b}n=(((r|0)!=0)+m|0)+1|0;o=f&-33;n:{if((o|0)==70){if((2147483647-n|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=Lb((g^d)-g|0,0,u);if((u-g|0)<=1){while(1){g=g-1|0;E[g|0]=48;if((u-g|0)<2){continue}break}}t=g-2|0;E[t|0]=f;E[g-1|0]=(d|0)<0?45:43;g=u-t|0;if((g|0)>(2147483647-n|0)){break b}}d=g+n|0;if((d|0)>(s^2147483647)){break b}f=d+s|0;Oa(a,32,c,f,e);La(a,w,s);Oa(a,48,c,f,e^65536);o:{p:{q:{if((o|0)==70){g=l+16|0;d=g|8;k=g|9;i=j>>>0>p>>>0?p:j;j=i;while(1){g=Lb(G[j>>2],0,k);r:{if((i|0)!=(j|0)){if(l+16>>>0>=g>>>0){break r}while(1){g=g-1|0;E[g|0]=48;if(l+16>>>0<g>>>0){continue}break}break r}if((g|0)!=(k|0)){break r}E[l+24|0]=48;g=d}La(a,g,k-g|0);j=j+4|0;if(p>>>0>=j>>>0){continue}break}if(r){La(a,6676,1)}if((m|0)<=0|h>>>0<=j>>>0){break q}while(1){g=Lb(G[j>>2],0,k);if(g>>>0>l+16>>>0){while(1){g=g-1|0;E[g|0]=48;if(l+16>>>0<g>>>0){continue}break}}La(a,g,(m|0)<9?m:9);g=m-9|0;j=j+4|0;if(h>>>0<=j>>>0){break p}d=(m|0)>9;m=g;if(d){continue}break}break p}s:{if((m|0)<0){break s}i=h>>>0>j>>>0?h:j+4|0;g=l+16|0;d=g|8;p=g|9;h=j;while(1){g=Lb(G[h>>2],0,p);if((p|0)==(g|0)){E[l+24|0]=48;g=d}t:{if((h|0)!=(j|0)){if(l+16>>>0>=g>>>0){break t}while(1){g=g-1|0;E[g|0]=48;if(l+16>>>0<g>>>0){continue}break}break t}La(a,g,1);g=g+1|0;if(!(k|m)){break t}La(a,6676,1)}x=g;g=p-g|0;La(a,x,(g|0)>(m|0)?m:g);m=m-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((m|0)>=0){continue}break}}Oa(a,48,m+18|0,18,0);La(a,t,u-t|0);break o}g=m}Oa(a,48,g+9|0,9,0)}Oa(a,32,c,f,e^8192);i=(c|0)<(f|0)?f:c;break b}m=(f<<26>>31&9)+w|0;u:{if(d>>>0>11){break u}g=12-d|0;q=16;while(1){q=q*16;g=g-1|0;if(g){continue}break}if(H[m|0]==45){b=-(q+(-b-q));break u}b=b+q-q}h=G[l+44>>2];g=h>>31;g=Lb((g^h)-g|0,0,u);if((u|0)==(g|0)){E[l+15|0]=48;g=l+15|0}k=s|2;j=f&32;h=G[l+44>>2];p=g-2|0;E[p|0]=f+15;E[g-1|0]=(h|0)<0?45:43;i=e&8;h=l+16|0;while(1){f=h;if(O(b)<2147483648){g=~~b}else{g=-2147483648}E[h|0]=j|H[g+54512|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!(i|(d|0)>0)&b==0|(h-(l+16|0)|0)!=1)){E[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;n=u-p|0;f=n+k|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}j=h-(l+16|0)|0;if((j-2|0)>=(d|0)){break w}g=d+2|0;break v}j=h-(l+16|0)|0;g=j}d=g+f|0;Oa(a,32,c,d,e);La(a,m,k);Oa(a,48,c,d,e^65536);La(a,l+16|0,j);Oa(a,48,g-j|0,0,0);La(a,p,n);Oa(a,32,c,d,e^8192);i=(c|0)<(d|0)?d:c}ia=l+560|0;return i|0}function Hd(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=ia-80|0;ia=f;G[f+76>>2]=b;v=f+55|0;r=f+56|0;b=0;a:{b:{c:{d:{e:while(1){if((2147483647-m|0)<(b|0)){break d}m=b+m|0;f:{g:{h:{l=G[f+76>>2];b=l;g=H[b|0];if(g){while(1){i:{g=g&255;j:{if(!g){g=b;break j}if((g|0)!=37){break i}g=b;while(1){if(H[b+1|0]!=37){break j}h=b+2|0;G[f+76>>2]=h;g=g+1|0;i=H[b+2|0];b=h;if((i|0)==37){continue}break}}b=g-l|0;u=2147483647-m|0;if((b|0)>(u|0)){break d}if(a){La(a,l,b)}if((g|0)!=(l|0)){continue e}p=-1;g=1;h=!Eb(E[G[f+76>>2]+1|0]);b=G[f+76>>2];if(!(h|H[b+2|0]!=36)){p=E[b+1|0]-48|0;t=1;g=3}b=g+b|0;G[f+76>>2]=b;n=0;j=E[b|0];h=j-32|0;k:{if(h>>>0>31){g=b;break k}g=b;i=1<<h;if(!(i&75913)){break k}while(1){g=b+1|0;G[f+76>>2]=g;n=i|n;j=E[b+1|0];h=j-32|0;if(h>>>0>=32){break k}b=g;i=1<<h;if(i&75913){continue}break}}l:{if((j|0)==42){m:{n:{if(!Eb(E[g+1|0])){break n}b=G[f+76>>2];if(H[b+2|0]!=36){break n}G[((E[b+1|0]<<2)+e|0)-192>>2]=10;o=G[((E[b+1|0]<<3)+d|0)-384>>2];t=1;b=b+3|0;break m}if(t){break h}t=0;o=0;if(a){b=G[c>>2];G[c>>2]=b+4;o=G[b>>2]}b=G[f+76>>2]+1|0}G[f+76>>2]=b;if((o|0)>=0){break l}o=0-o|0;n=n|8192;break l}o=Gd(f+76|0);if((o|0)<0){break d}b=G[f+76>>2]}g=0;i=-1;q=0;o:{if(H[b|0]!=46){break o}if(H[b+1|0]==42){p:{q:{if(!Eb(E[b+2|0])){break q}b=G[f+76>>2];if(H[b+3|0]!=36){break q}G[((E[b+2|0]<<2)+e|0)-192>>2]=10;i=G[((E[b+2|0]<<3)+d|0)-384>>2];b=b+4|0;break p}if(t){break h}if(a){b=G[c>>2];G[c>>2]=b+4;i=G[b>>2]}else{i=0}b=G[f+76>>2]+2|0}G[f+76>>2]=b;q=(i^-1)>>>31|0;break o}G[f+76>>2]=b+1;i=Gd(f+76|0);b=G[f+76>>2];q=1}while(1){s=g;k=28;if(E[b|0]-123>>>0<4294967238){break c}j=b+1|0;G[f+76>>2]=j;g=E[b|0];b=j;g=H[(g+M(s,58)|0)+53983|0];if(g-1>>>0<8){continue}break}r:{s:{if((g|0)!=27){if(!g){break c}if((p|0)>=0){G[(p<<2)+e>>2]=g;b=(p<<3)+d|0;g=G[b+4>>2];G[f+64>>2]=G[b>>2];G[f+68>>2]=g;break s}if(!a){break f}Fd(f- -64|0,g,c);j=G[f+76>>2];break r}if((p|0)>=0){break c}}b=0;if(!a){continue e}}h=n&-65537;g=n&8192?h:n;n=0;p=1400;k=r;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{b=E[j-1|0];b=s?(b&15)==3?b&-33:b:b;switch(b-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(b-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((b|0)==83){break y}break g}j=G[f+64>>2];h=G[f+68>>2];p=1400;break B}b=0;K:{switch(s&255){case 0:G[G[f+64>>2]>>2]=m;continue e;case 1:G[G[f+64>>2]>>2]=m;continue e;case 2:g=G[f+64>>2];G[g>>2]=m;G[g+4>>2]=m>>31;continue e;case 3:F[G[f+64>>2]>>1]=m;continue e;case 4:E[G[f+64>>2]]=m;continue e;case 6:G[G[f+64>>2]>>2]=m;continue e;case 7:break K;default:continue e}}g=G[f+64>>2];G[g>>2]=m;G[g+4>>2]=m>>31;continue e}i=i>>>0>8?i:8;g=g|8;b=120}l=r;w=b&32;j=G[f+64>>2];h=G[f+68>>2];if(j|h){while(1){l=l-1|0;E[l|0]=w|H[(j&15)+54512|0];x=!h&j>>>0>15|(h|0)!=0;s=h;h=h>>>4|0;j=(s&15)<<28|j>>>4;if(x){continue}break}}if(!(g&8)|!(G[f+64>>2]|G[f+68>>2])){break A}p=(b>>>4|0)+1400|0;n=2;break A}b=r;j=G[f+64>>2];h=G[f+68>>2];if(j|h){while(1){b=b-1|0;E[b|0]=j&7|48;s=!h&j>>>0>7|(h|0)!=0;l=h;h=h>>>3|0;j=(l&7)<<29|j>>>3;if(s){continue}break}}l=b;if(!(g&8)){break A}b=r-l|0;i=(b|0)<(i|0)?i:b+1|0;break A}b=G[f+68>>2];h=b;j=G[f+64>>2];if((b|0)<0){h=0-(h+((j|0)!=0)|0)|0;j=0-j|0;G[f+64>>2]=j;G[f+68>>2]=h;n=1;p=1400;break B}if(g&2048){n=1;p=1401;break B}n=g&1;p=n?1402:1400}l=Lb(j,h,r)}if((i|0)<0?q:0){break d}g=q?g&-65537:g;h=G[f+64>>2];b=G[f+68>>2];if(!((h|b)!=0|i)){l=r;i=0;break g}b=!(b|h)+(r-l|0)|0;i=(b|0)<(i|0)?i:b;break g}q=i>>>0<2147483647?i:2147483647;k=q;j=(k|0)!=0;b=G[f+64>>2];l=b?b:6866;g=l;b=g;L:{M:{N:{O:{if(!(b&3)|!k){break O}while(1){if(!H[b|0]){break N}k=k-1|0;j=(k|0)!=0;b=b+1|0;if(!(b&3)){break O}if(k){continue}break}}if(!j){break M}}P:{if(!H[b|0]|k>>>0<4){break P}while(1){j=G[b>>2];if((j^-1)&j-16843009&-2139062144){break P}b=b+4|0;k=k-4|0;if(k>>>0>3){continue}break}}if(!k){break M}while(1){if(!H[b|0]){break L}b=b+1|0;k=k-1|0;if(k){continue}break}}b=0}b=b?b-g|0:q;k=b+l|0;if((i|0)>=0){g=h;i=b;break g}g=h;i=b;if(H[k|0]){break d}break g}if(i){k=G[f+64>>2];break w}b=0;Oa(a,32,o,0,g);break v}G[f+12>>2]=0;G[f+8>>2]=G[f+64>>2];k=f+8|0;G[f+64>>2]=k;i=-1}b=0;Q:{while(1){h=G[k>>2];if(!h){break Q}h=Cd(f+4|0,h);l=(h|0)<0;if(!(l|h>>>0>i-b>>>0)){k=k+4|0;b=b+h|0;if(i>>>0>b>>>0){continue}break Q}break}if(l){break b}}k=61;if((b|0)<0){break c}Oa(a,32,o,b,g);if(!b){b=0;break v}i=0;k=G[f+64>>2];while(1){h=G[k>>2];if(!h){break v}h=Cd(f+4|0,h);i=h+i|0;if(i>>>0>b>>>0){break v}La(a,f+4|0,h);k=k+4|0;if(b>>>0>i>>>0){continue}break}}Oa(a,32,o,b,g^8192);b=(b|0)<(o|0)?o:b;continue e}if((i|0)<0?q:0){break d}k=61;b=ka[201](a,L[f+64>>3],o,i,g,b)|0;if((b|0)>=0){continue e}break c}E[f+55|0]=G[f+64>>2];i=1;l=v;g=h;break g}h=b+1|0;G[f+76>>2]=h;g=H[b+1|0];b=h;continue}}if(a){break a}if(!t){break f}b=1;while(1){a=G[(b<<2)+e>>2];if(a){Fd((b<<3)+d|0,a,c);m=1;b=b+1|0;if((b|0)!=10){continue}break a}break}m=1;if(b>>>0>=10){break a}while(1){if(G[(b<<2)+e>>2]){break h}b=b+1|0;if((b|0)!=10){continue}break}break a}k=28;break c}j=k-l|0;i=(i|0)>(j|0)?i:j;if((i|0)>(2147483647-n|0)){break d}k=61;h=i+n|0;b=(h|0)<(o|0)?o:h;if((u|0)<(b|0)){break c}Oa(a,32,b,h,g);La(a,p,n);Oa(a,48,b,h,g^65536);Oa(a,48,i,j,0);La(a,l,j);Oa(a,32,b,h,g^8192);continue}break}m=0;break a}k=61}G[18106]=k}m=-1}ia=f+80|0;return m}function _b(a,b){a:{b:{c:{switch(b|0){case 1:b=1;if(pa(a,55168,2)){break b}if(pa(a,55184,10)){break b}return(pa(a,55264,3)|0)!=0;case 2:return pa(a,55168,2);case 3:return pa(a,55184,10);case 4:return pa(a,55264,3);case 5:return pa(a,55288,1);case 6:return pa(a,55296,1);case 7:return pa(a,55304,1);case 8:return pa(a,55312,1);case 9:return pa(a,55320,1);case 10:return pa(a,55328,1);case 11:return pa(a,55336,1);case 12:return pa(a,55344,1);case 13:return pa(a,55352,1);case 14:return pa(a,55360,1);case 15:return pa(a,55368,1);case 16:return pa(a,55376,1);case 17:return pa(a,55384,1);case 18:return pa(a,55392,1);case 19:return pa(a,55400,1);case 20:return pa(a,55408,1);case 21:return pa(a,55416,1);case 22:return pa(a,55424,1);case 23:return pa(a,55432,1);case 24:return pa(a,55440,1);case 25:return pa(a,55448,1);case 26:return pa(a,55456,1);case 27:return pa(a,55464,1);case 28:return pa(a,55472,1);case 29:return pa(a,55480,1);case 30:return pa(a,55488,1);case 31:return pa(a,55496,1);case 32:return pa(a,55504,1);case 33:return pa(a,55512,1);case 34:return pa(a,55520,1);case 35:return pa(a,55528,1);case 36:return pa(a,55536,1);case 37:return pa(a,55544,1);case 38:return pa(a,55552,1);case 39:return pa(a,55560,1);case 40:return pa(a,55568,1);case 41:return pa(a,55576,1);case 42:return pa(a,55584,1);case 43:return pa(a,55592,1);case 44:return pa(a,55600,1);case 45:return pa(a,55608,1);case 46:return pa(a,55616,1);case 47:return pa(a,55624,1);case 48:return pa(a,55632,1);case 49:return pa(a,55640,1);case 50:return pa(a,55648,1);case 51:return pa(a,55656,1);case 52:return pa(a,55664,1);case 53:return pa(a,55672,1);case 54:return pa(a,55680,1);case 55:return pa(a,55688,1);case 56:return pa(a,55696,1);case 57:return pa(a,55704,1);case 58:return pa(a,55712,1);case 59:return pa(a,55720,1);case 60:return pa(a,55728,1);case 61:return pa(a,55736,1);case 62:return pa(a,55744,1);case 63:return pa(a,55752,1);case 64:return pa(a,55760,1);case 65:return pa(a,55768,1);case 66:return pa(a,55776,1);case 67:return pa(a,55784,1);case 68:return pa(a,55792,1);case 69:return pa(a,55800,1);case 70:return pa(a,55808,1);case 71:return pa(a,55816,1);case 72:return pa(a,55824,1);case 73:return pa(a,55832,1);case 74:return pa(a,55840,1);case 75:return pa(a,55848,1);case 76:return pa(a,55856,1);case 77:return pa(a,55864,1);case 78:return pa(a,55872,1);case 79:return pa(a,55880,1);case 80:return pa(a,55888,1);case 81:return pa(a,55904,3);case 82:return pa(a,55928,1);case 83:return pa(a,55936,1);case 84:return pa(a,55944,1);case 85:return pa(a,55952,1);case 86:return pa(a,55968,2);case 87:return pa(a,55984,1);case 88:return pa(a,55992,1);case 89:return pa(a,56e3,1);case 90:return pa(a,56008,1);case 91:return pa(a,56016,1);case 92:return pa(a,56024,1);case 93:return pa(a,56032,1);case 94:return pa(a,56040,1);case 95:return pa(a,56048,1);case 96:return pa(a,56056,1);case 97:return pa(a,56064,1);case 98:b=1;if(pa(a,56080,404)){break b}if(pa(a,59312,18)){break b}if(pa(a,59456,190)){break b}if(pa(a,60976,10)){break b}return(pa(a,61056,403)|0)!=0;case 99:return pa(a,56080,404);case 100:return pa(a,59312,18);case 101:return pa(a,59456,190);case 102:return pa(a,60976,10);case 103:return pa(a,61056,403);case 104:b=1;if(pa(a,64288,53)){break b}if(pa(a,64720,4)){break b}return(pa(a,64752,97)|0)!=0;case 105:return pa(a,64288,53);case 106:return pa(a,64720,4);case 107:return pa(a,64752,97);case 108:b=1;if(pa(a,65536,21)){break b}if(pa(a,65712,6)){break b}return(pa(a,65760,18)|0)!=0;case 109:return pa(a,65536,21);case 110:return pa(a,65712,6);case 111:return pa(a,65760,18);case 112:b=1;if(pa(a,65904,7)){break b}if(pa(a,65968,11)){break b}if(pa(a,66064,36)){break b}if(pa(a,66352,4)){break b}if(pa(a,66384,5)){break b}if(pa(a,66432,65)){break b}return(pa(a,66960,38)|0)!=0;case 113:return pa(a,65904,7);case 114:return pa(a,65968,11);case 115:return pa(a,66064,36);case 116:return pa(a,66352,4);case 117:return pa(a,66384,5);case 118:return pa(a,66432,65);case 119:return pa(a,66960,38);case 120:b=1;if(pa(a,67264,10)){break b}if(pa(a,67344,22)){break b}if(pa(a,67520,45)){break b}return(pa(a,67888,105)|0)!=0;case 121:return pa(a,67264,10);case 122:return pa(a,67344,22);case 123:return pa(a,67520,45);case 124:return pa(a,67888,105);case 125:b=1;if(pa(a,68728,1)){break b}if(pa(a,68736,1)){break b}return(pa(a,68752,6)|0)!=0;case 126:return pa(a,68728,1);case 127:return pa(a,68736,1);case 128:return pa(a,68752,6);case 130:return(a|0)==10|(a|0)==13;case 131:return ta(a);case 132:b=1;if(Tc(a)){break b}if(Sc(a)|(a|0)==95){break b}return(a|0)==58;case 133:b=1;if(_b(a,132)){break b}if(ze(a)){break b}if(Ae(a)){break b}if(ye(a)|(a|0)==46){break b}return(a|0)==45;case 0:break b;case 134:break c;default:break a}}b=0;if(_b(a,112)){break b}if(_b(a,125)){break b}b=!_b(a,1)}return b}Z(6674,5285,651,1984);W()}function th(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(c|0)){return-4}f=18;e=1;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{x:{g=a+76|0;switch(H[g+H[b|0]|0]-2|0){case 5:break i;case 21:case 23:case 24:case 25:break j;case 17:break k;case 9:break l;case 34:break m;case 30:break n;case 29:break o;case 2:break p;case 18:break q;case 33:break r;case 28:break s;case 8:case 19:break t;case 7:break u;case 0:break v;case 11:break w;case 10:break x;case 20:case 22:break e;case 3:break g;case 4:break h;default:break f}}return ee(12,a,b+1|0,c,d)|0}return ee(13,a,b+1|0,c,d)|0}e=b+1|0;if((e|0)==(c|0)){return-1}y:{f=H[g+H[b+1|0]|0];if(f>>>0>29){break y}if(!(1<<f&557842656)){if((f|0)!=15){if((f|0)!=16){break y}e=-1;b=b+2|0;z:{if((c|0)==(b|0)){break z}A:{B:{C:{D:{E:{f=a+76|0;switch(H[f+H[b|0]|0]-20|0){case 2:case 4:break C;case 0:break D;case 7:break E;default:break B}}e=be(a,b+1|0,c,d);break z}G[d>>2]=b+1;e=33;break z}a=b+1|0;if((c|0)==(a|0)){break z}while(1){F:{g=H[f+H[b+1|0]|0];if(g>>>0>30){break F}if(!(1<<g&20971520)){G:{if(1<<g&2098688){break G}if((g|0)!=30){break F}if((b+2|0)==(c|0)){break z}b=H[f+H[b+2|0]|0];if(b>>>0>30){break G}if(1<<b&1075840512){break F}}G[d>>2]=a;e=16;break z}b=a;a=b+1|0;if((c|0)!=(a|0)){continue}break z}break}G[d>>2]=a;break A}G[d>>2]=b}e=0}return e|0}return de(a,b+2|0,c,d)|0}G[d>>2]=b;return 29}G[d>>2]=e;return 0}if((b+1|0)!=(c|0)){break t}G[d>>2]=c;return-15}e=b+1|0;if((e|0)!=(c|0)){while(1){H:{I:{switch(H[g+H[b+1|0]|0]-9|0){case 0:if((b+2|0)!=(c|0)){break H}break;case 1:case 12:break H;default:break I}}G[d>>2]=e;return 15}b=e;e=b+1|0;if((e|0)!=(c|0)){continue}break}}G[d>>2]=c;return 15}return ce(a,b+1|0,c,d)|0}G[d>>2]=b+1;return 38}G[d>>2]=b+1;return 25}a=b+1|0;if((a|0)==(c|0)){return-26}J:{if(H[b+1|0]!=93){break J}if((b+2|0)==(c|0)){return-1}if(H[b+2|0]!=62){break J}G[d>>2]=b+3;return 34}G[d>>2]=a;return 26}G[d>>2]=b+1;return 23}a=b+1|0;if((a|0)==(c|0)){return-24}K:{switch(H[g+H[b+1|0]|0]-9|0){case 24:G[d>>2]=b+2;return 36;case 6:G[d>>2]=b+2;return 35;case 25:G[d>>2]=b+2;return 37;case 0:case 1:case 2:case 12:case 23:case 26:case 27:G[d>>2]=a;return 24;default:break K}}G[d>>2]=a;return 0}G[d>>2]=b+1;return 21}G[d>>2]=b+1;return 17}b=b+1|0;if((c|0)==(b|0)){return-1}f=0;L:{M:{switch(H[g+H[b|0]|0]-5|0){case 0:e=2;f=-2;if((c-b|0)<2){break d}if(ka[G[a+344>>2]](a,b)|0){break L}break c;case 1:e=3;f=-2;if((c-b|0)<3){break d}if(ka[G[a+348>>2]](a,b)|0){break L}break c;case 17:case 19:break L;case 2:break M;default:break b}}e=4;f=-2;if((c-b|0)<4){break d}if(!(ka[G[a+352>>2]](a,b)|0)){break c}}b=b+e|0;if((c|0)==(b|0)){return-20}while(1){e=1;f=20;N:{O:{P:{switch(H[g+H[b|0]|0]-5|0){case 0:if((c-b|0)>=2){break O}break a;case 1:if((c-b|0)<3){break a}e=3;if(ka[G[a+336>>2]](a,b)|0){break N}break c;case 4:case 5:case 6:case 16:case 25:case 27:case 31:break b;case 17:case 19:case 20:case 21:case 22:break N;case 2:break P;default:break c}}if((c-b|0)<4){break a}e=4;if(!(ka[G[a+340>>2]](a,b)|0)){break c}break N}e=2;if(!(ka[G[a+332>>2]](a,b)|0)){break c}}b=b+e|0;if((c|0)!=(b|0)){continue}break}return-20}f=19;break e}e=4;if((c-b|0)<4){break a}if(ka[G[a+352>>2]](a,b)|0){break e}f=19;if(!(ka[G[a+340>>2]](a,b)|0)){break f}break e}e=3;if((c-b|0)<3){break a}if(ka[G[a+348>>2]](a,b)|0){break e}f=19;if(!(ka[G[a+336>>2]](a,b)|0)){break f}break e}e=2;if((c-b|0)<2){break a}if(ka[G[a+344>>2]](a,b)|0){break e}f=19;if(ka[G[a+332>>2]](a,b)|0){break e}}G[d>>2]=b;return 0}b=b+e|0;if((c|0)!=(b|0)){while(1){Q:{R:{S:{T:{switch(H[g+H[b|0]|0]-5|0){case 0:if((c-b|0)<2){break a}if(!(ka[G[a+332>>2]](a,b)|0)){break S}e=b+2|0;break Q;case 1:if((c-b|0)<3){break a}if(!(ka[G[a+336>>2]](a,b)|0)){break S}e=b+3|0;break Q;case 2:if((c-b|0)<4){break a}if(!(ka[G[a+340>>2]](a,b)|0)){break S}e=b+4|0;break Q;case 4:case 5:case 6:case 15:case 16:case 25:case 27:case 30:case 31:G[d>>2]=b;return f|0;case 18:e=b+1|0;if((f|0)!=41){if((f|0)!=18){break Q}if((c|0)==(e|0)){return-1}f=19;U:{V:{W:{switch(H[g+H[e|0]|0]-5|0){case 17:case 19:case 20:case 21:case 22:e=b+2|0;f=41;break Q;case 0:if((c-e|0)<2){break a}if(!(ka[G[a+332>>2]](a,e)|0)){break V}e=b+3|0;f=41;break Q;case 1:if((c-e|0)<3){break a}if(!(ka[G[a+336>>2]](a,e)|0)){break V}e=b+4|0;f=41;break Q;case 24:break V;case 2:break W;default:break Q}}if((c-e|0)<4){break a}if(ka[G[a+340>>2]](a,e)|0){break U}}G[d>>2]=e;return 0}e=b+5|0;f=41;break Q}f=19;break Q;case 29:if((f|0)==19){break S}G[d>>2]=b+1;return 32;case 28:if((f|0)==19){break S}G[d>>2]=b+1;return 31;case 17:case 19:case 20:case 21:case 22:break R;case 10:break T;default:break S}}if((f|0)==19){break S}G[d>>2]=b+1;return 30}G[d>>2]=b;return 0}e=b+1|0}b=e;if((c|0)!=(b|0)){continue}break}}f=0-f|0}return f|0}f=0}G[d>>2]=b;return f|0}return-2}function Ea(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=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,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,Q=0,R=0;k=ia-96|0;ia=k;t=h;u=i&65535;m=(e^i)&-2147483648;l=e&65535;p=l;z=l;J=i>>>16&32767;K=e>>>16&32767;a:{b:{if(J-32767>>>0>4294934529&K-32767>>>0>=4294934530){break b}l=e&2147483647;j=d;if(!(!d&(l|0)==2147418112?!(b|c):l>>>0<2147418112)){o=d;m=e|32768;break a}e=i&2147483647;if(!(!h&(e|0)==2147418112?!(f|g):e>>>0<2147418112)){o=h;m=i|32768;b=f;c=g;break a}if(!(b|j|(l^2147418112|c))){if(!(f|h|(e|g))){m=2147450880;b=0;c=0;break a}m=m|2147418112;b=0;c=0;break a}if(!(f|h|(e^2147418112|g))){d=b|j;e=c|l;b=0;c=0;if(!(d|e)){m=2147450880;break a}m=m|2147418112;break a}if(!(b|j|(c|l))){b=0;c=0;break a}if(!(f|h|(e|g))){b=0;c=0;break a}if((l|0)==65535|l>>>0<65535){j=b;h=!(d|p);i=h<<6;l=P(h?b:d)+32|0;b=P(h?c:p);b=i+((b|0)==32?l:b)|0;Ra(k+80|0,j,c,d,p,b-15|0);s=16-b|0;d=G[k+88>>2];z=G[k+92>>2];c=G[k+84>>2];b=G[k+80>>2]}if(e>>>0>65535){break b}e=!(t|u);h=e<<6;i=P(e?f:t)+32|0;e=P(e?g:u);e=h+((e|0)==32?i:e)|0;Ra(k- -64|0,f,g,t,u,e-15|0);s=(s-e|0)+16|0;t=G[k+72>>2];u=G[k+76>>2];f=G[k+64>>2];g=G[k+68>>2]}e=f;j=g<<15|e>>>17;h=e<<15;e=j;p=h&-32768;q=c;A=ki(p,0,c,0);c=ja;w=c;B=e;i=0;j=ki(e,0,b,i);e=j+A|0;h=ja+c|0;h=e>>>0<j>>>0?h+1|0:h;c=e;j=e;n=ki(b,i,p,i);l=0+n|0;e=ja+e|0;e=l>>>0<n>>>0?e+1|0:e;x=l;n=l;l=e;C=(j|0)==(e|0)&r>>>0>n>>>0|e>>>0<j>>>0;r=d;L=ki(p,i,d,0);F=ja;e=ki(q,i,B,i);d=e+L|0;j=ja+F|0;n=d;d=d>>>0<e>>>0?j+1|0:j;e=t;j=u<<15|e>>>17;y=e<<15|g>>>17;g=j;j=ki(y,0,b,i);e=j+n|0;f=ja+d|0;H=e;f=e>>>0<j>>>0?f+1|0:f;u=f;e=f;f=(h|0)==(w|0)&c>>>0<A>>>0|h>>>0<w>>>0;c=h+H|0;f=e+f|0;A=c;f=c>>>0<h>>>0?f+1|0:f;t=f;c=f;D=z|65536;z=v;M=ki(p,i,D,v);I=ja;h=ki(r,o,B,i);f=h+M|0;e=ja+I|0;N=f;e=f>>>0<h>>>0?e+1|0:e;v=e;E=g|-2147483648;w=0;g=ki(E,w,b,i);b=g+f|0;f=ja+e|0;f=b>>>0<g>>>0?f+1|0:f;O=b;e=ki(y,o,q,i);b=b+e|0;p=f;j=f+ja|0;Q=b;g=b>>>0<e>>>0?j+1|0:j;f=0;b=f+A|0;e=c+Q|0;e=b>>>0<f>>>0?e+1|0:e;R=b;c=b;b=b+C|0;C=e;f=b>>>0<c>>>0?e+1|0:e;c=f;s=((K+J|0)+s|0)-16383|0;j=ki(E,w,q,i);h=ja;i=ki(D,z,B,i);e=i+j|0;f=ja+h|0;f=e>>>0<i>>>0?f+1|0:f;i=(f|0)==(h|0)&e>>>0<j>>>0|f>>>0<h>>>0;h=e;q=i;i=ki(y,o,r,o);e=i+e|0;j=ja+f|0;j=e>>>0<i>>>0?j+1|0:j;i=(f|0)==(j|0)&e>>>0<h>>>0|f>>>0>j>>>0;f=q+i|0;h=0;h=f>>>0<i>>>0?1:h;q=ki(E,w,D,z);i=q+f|0;f=ja+h|0;f=i>>>0<q>>>0?f+1|0:f;q=e;h=j;B=i;e=(d|0)==(u|0)&n>>>0>H>>>0|d>>>0>u>>>0;d=e+((d|0)==(F|0)&n>>>0<L>>>0|d>>>0<F>>>0)|0;j=0;j=d>>>0<e>>>0?1:j;i=d;d=q+d|0;e=h+j|0;e=d>>>0<i>>>0?e+1|0:e;n=d;i=e;e=(e|0)==(h|0)&d>>>0<q>>>0|e>>>0<h>>>0;d=B+e|0;h=d>>>0<e>>>0?f+1|0:f;q=d;j=ki(y,o,D,z);e=ja;r=ki(E,w,r,o);d=r+j|0;f=ja+e|0;f=d>>>0<r>>>0?f+1|0:f;r=d;d=f;f=(e|0)==(f|0)&j>>>0>r>>>0|e>>>0>f>>>0;y=d+q|0;e=f+h|0;e=d>>>0>y>>>0?e+1|0:e;h=0;d=h+n|0;f=i+r|0;f=d>>>0<h>>>0?f+1|0:f;h=f;j=(i|0)==(f|0)&d>>>0<n>>>0|f>>>0<i>>>0;i=j+y|0;n=i;i=i>>>0<j>>>0?e+1|0:e;r=d;e=d;d=h;j=(p|0)==(v|0)&N>>>0>O>>>0|p>>>0<v>>>0;f=j+((v|0)==(I|0)&N>>>0<M>>>0|v>>>0<I>>>0)|0;h=0;j=f+((g|0)==(p|0)&O>>>0>Q>>>0|g>>>0<p>>>0)|0;f=g+e|0;e=d+j|0;e=f>>>0<g>>>0?e+1|0:e;g=f;h=(d|0)==(e|0)&f>>>0<r>>>0|d>>>0>e>>>0;d=h+n|0;f=i;f=d>>>0<h>>>0?f+1|0:f;h=e;n=d;i=(t|0)==(C|0)&A>>>0>R>>>0|t>>>0>C>>>0;d=i+((t|0)==(u|0)&A>>>0<H>>>0|t>>>0<u>>>0)|0;j=0;j=d>>>0<i>>>0?1:j;i=d;d=d+g|0;e=e+j|0;e=d>>>0<i>>>0?e+1|0:e;h=(e|0)==(h|0)&d>>>0<g>>>0|e>>>0<h>>>0;g=n+h|0;f=g>>>0<h>>>0?f+1|0:f;h=g;i=f;c:{if(f&65536){s=s+1|0;break c}v=l>>>31|0;f=i<<1|h>>>31;h=g<<1|e>>>31;i=f;f=e<<1|d>>>31;d=d<<1|c>>>31;e=f;g=x;f=l<<1|g>>>31;x=g<<1;l=f;f=c<<1|b>>>31;b=b<<1|v;c=f}if((s|0)>=32767){m=m|2147418112;b=0;c=0;break a}d:{if((s|0)<=0){f=1-s|0;if(f>>>0>=128){b=0;c=0;break a}g=s+127|0;Ra(k+48|0,x,l,b,c,g);Ra(k+32|0,d,e,h,i,g);Ib(k+16|0,x,l,b,c,f);Ib(k,d,e,h,i,f);x=G[k+32>>2]|G[k+16>>2]|(G[k+48>>2]|G[k+56>>2]|(G[k+52>>2]|G[k+60>>2]))!=0;l=G[k+36>>2]|G[k+20>>2];b=G[k+40>>2]|G[k+24>>2];c=G[k+44>>2]|G[k+28>>2];d=G[k>>2];e=G[k+4>>2];f=G[k+8>>2];g=G[k+12>>2];break d}f=h;g=i&65535|s<<16}o=f|o;m=g|m;if(!(!b&(c|0)==-2147483648?!(l|x):(c|0)>0|(c|0)>=0)){b=d+1|0;j=b?e:e+1|0;c=j;f=(e|0)==(j|0)&b>>>0<d>>>0|e>>>0>j>>>0;d=f+o|0;e=m;o=d;m=d>>>0<f>>>0?e+1|0:e;break a}if(b|x|(c^-2147483648|l)){b=d;c=e;break a}j=m;c=d&1;b=c+d|0;f=b>>>0<c>>>0?e+1|0:e;c=f;e=(e|0)==(f|0)&b>>>0<d>>>0|e>>>0>f>>>0;d=e+o|0;o=d;m=d>>>0<e>>>0?j+1|0:j}G[a>>2]=b;G[a+4>>2]=c;G[a+8>>2]=o;G[a+12>>2]=m;ia=k+96|0}function fb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=ia-48|0;ia=e;d=!G[a+56>>2];G[a+56>>2]=d;while(1){c=!d;b=M(c,20)+a|0;G[b+68>>2]=G[a+28>>2];G[b+72>>2]=G[a+32>>2];a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{b=G[a+44>>2];switch(b+1|0){case 43:break i;case 44:break j;case 46:break k;case 127:break l;case 41:break m;case 42:break n;case 124:break o;case 126:break p;case 92:break q;case 94:break r;case 1:case 10:case 11:case 33:break a;case 63:break s;case 35:case 40:break t;case 62:break v;case 36:break w;case 0:break c;case 45:break e;case 125:break f;case 39:break g;case 64:break h;default:break u}}Da(a);c=0;d=G[a+44>>2];if((d|0)!=35){break b}x:while(1){Da(a);b=G[a+44>>2];if((b|0)==35){continue}d=(b|0)!=32&(b|0)!=9;while(1){if(!d){Da(a);d=1;continue}d=c+6|0;b=M(!G[a+56>>2],20)+a|0;f=b- -64|0;g=G[f>>2];if((d|0)>(g|0)){k=b;h=G[b+60>>2];b=d<<1;G[k+60>>2]=sa(h,b,g,1);G[f>>2]=b}y:{z:{b=G[a+44>>2];switch(b|0){case 0:case 10:break z;default:break y}}A:{while(1){B:{Da(a);switch(G[a+44>>2]-9|0){case 0:case 23:continue;case 26:break B;default:break A}}break}Da(a);d=G[a+44>>2];if((d|0)==35){E[G[(M(!G[a+56>>2],20)+a|0)+60>>2]+c|0]=10;c=c+1|0;continue x}while(1){C:{switch(d|0){default:Da(a);d=G[a+44>>2];continue;case 0:case 10:break C}}break}Da(a)}E[G[(M(!G[a+56>>2],20)+a|0)+60>>2]+c|0]=0;b=41;break d}c=qc(G[(M(!G[a+56>>2],20)+a|0)+60>>2]+c|0,b)+c|0;d=0;continue}}}Da(a);b=22;break d}D:{if((b|0)==92){Da(a);c=G[a+44>>2]}else{c=b}E:{if(Tc(c)){break E}if(Sc(G[a+44>>2])){break E}d=G[a+44>>2];if((d|0)!=95){break D}}c=G[a+44>>2];g=a+60|0;d=0;while(1){d=qc(G[g+M(!G[a+56>>2],20)>>2]+d|0,c)+d|0;c=d+6|0;h=M(!G[a+56>>2],20);i=h+g|0;j=G[i+4>>2];if((c|0)>(j|0)){h=a+h|0;c=c<<1;G[h+60>>2]=sa(G[h+60>>2],c,j,1);G[i+4>>2]=c}Da(a);F:{if(Tc(G[a+44>>2])){break F}if(Sc(G[a+44>>2])){break F}c=G[a+44>>2];if((c|0)==95){break F}if(ze(c)){break F}if(Ae(G[a+44>>2])){break F}if(ye(G[a+44>>2])){break F}c=G[a+44>>2]-45|0;if(1<<c&8195?c>>>0<=13:0){break F}E[G[(M(!G[a+56>>2],20)+a|0)+60>>2]+d|0]=0;if(!((b|0)==92|f)){b=rc(G[(M(!G[a+56>>2],20)+a|0)+60>>2],54544,19);if((b|0)!=19){break d}}c=!G[a+56>>2];b=19;if(!f){break c}b=20;d=d-1|0;if(H[d+G[(M(c,20)+a|0)+60>>2]|0]!=58|G[a+44>>2]!=42){break c}Da(a);E[d+G[(M(!G[a+56>>2],20)+a|0)+60>>2]|0]=0;b=21;break d}c=G[a+44>>2];f=(c|0)==58?1:f;continue}}b=G[a+4>>2];c=G[a+28>>2];g=G[a+32>>2];G[e+12>>2]=d;G[e+8>>2]=g;G[e+4>>2]=c;G[e>>2]=b;ya(0,a,32,e);break a}Da(a);G:{g=G[a+44>>2];h=(g|0)==(b|0);if(!h){break G}Da(a);if(G[a+44>>2]==(b|0)){Da(a);break G}E[G[(M(!G[a+56>>2],20)+a|0)+60>>2]]=0;b=42;break d}d=0;while(1){H:{I:{J:{c=G[a+44>>2];K:{L:{if((c|0)==(b|0)){if((b|0)!=(g|0)){break L}f=G[a+56>>2];M:{if((d|0)<2){break M}i=G[(M(!f,20)+a|0)+60>>2]+d|0;c=i-2|0;if(E[c|0]!=(b|0)){break M}if(E[i-1|0]==(b|0)){break K}}c=qc(G[(M(!f,20)+a|0)+60>>2]+d|0,b);break H}if((c|0)>0){break I}if(h&(c|0)!=-1){break J}b=G[a+4>>2];c=G[a+28>>2];G[e+40>>2]=G[a+32>>2];G[e+36>>2]=c;G[e+32>>2]=b;ya(0,a,31,e+32|0)}c=G[(M(!G[a+56>>2],20)+a|0)+60>>2]+d|0}E[c|0]=0;Da(a);b=42;break d}E[G[(M(!G[a+56>>2],20)+a|0)+60>>2]+d|0]=10;c=1;break H}c=qc(G[(M(!G[a+56>>2],20)+a|0)+60>>2]+d|0,c)}Da(a);d=c+d|0;f=d+6|0;c=M(!G[a+56>>2],20)+a|0;i=c- -64|0;j=G[i>>2];if((f|0)<=(j|0)){continue}k=c;l=G[c+60>>2];c=f<<1;G[k+60>>2]=sa(l,c,j,1);G[i>>2]=c;continue}}Da(a);if(G[a+44>>2]!=62){b=G[a+4>>2];d=G[a+28>>2];c=G[a+32>>2];G[e+28>>2]=62;G[e+24>>2]=c;G[e+20>>2]=d;G[e+16>>2]=b;ya(0,a,30,e+16|0)}Da(a);b=40;break d}Da(a);b=36;break d}Da(a);b=35;break d}Da(a);b=34;break d}Da(a);b=33;break d}Da(a);b=32;break d}Da(a);b=31;break d}Da(a);b=38;break d}Da(a);b=37;break d}Da(a);b=30;break d}Da(a);b=29;break d}Da(a);b=28;break d}Da(a);b=27;if(G[a+44>>2]!=61){break d}Da(a);b=23;break d}Da(a);b=26;if(G[a+44>>2]!=61){break d}Da(a);b=24;break d}Da(a);b=25}c=!G[a+56>>2]}G[(M(c,20)+a|0)+76>>2]=b;ia=e+48|0;return}while(1){N:{switch(d|0){case 0:case 10:break a;default:break N}}Da(a);d=G[a+44>>2];continue}}Da(a);d=G[a+56>>2];continue}}function ed(a){var b=0,c=0,d=0,e=0,f=0;f=ia-32|0;ia=f;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{b=G[a+56>>2];c=M(b,20)+a|0;d=G[c+76>>2];switch(d|0){case 16:case 18:case 20:break j;case 11:break k;case 10:break l;case 6:break m;case 14:break n;case 19:break o;case 0:break p;case 4:break q;case 31:break d;case 7:break e;case 13:break f;case 17:break g;case 5:break h;case 42:break i;default:break c}}ra(a);b=wc(a);Fa(a,33,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);d=wb(a);e=G[17988];c=G[17996]+(e<<2)|0;G[c>>2]=13;G[c+8>>2]=b;G[c+4>>2]=d;c=va(71960,e);r:{if((c|0)!=-1){break r}c=G[17988];wa(71960,c);d=G[17996];b=G[17988];b=G[(H[d+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;e=b+3|0;if((e|0)<=G[18008]){break r}e=e<<1;G[18008]=e;G[17996]=sa(d,e,b,4)}Fa(a,34,34);break b}ra(a);c=M(Sa(72112,0),12);b=c+G[18028]|0;d=G[b+4>>2];G[b+4>>2]=0;b=wc(a);G[(c+G[18028]|0)+4>>2]=d;Fa(a,33,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);d=wb(a);e=G[17988];c=G[17996]+(e<<2)|0;G[c>>2]=12;G[c+8>>2]=b;G[c+4>>2]=d;c=va(71960,e);s:{if((c|0)!=-1){break s}c=G[17988];wa(71960,c);d=G[17996];b=G[17988];b=G[(H[d+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;e=b+3|0;if((e|0)<=G[18008]){break s}e=e<<1;G[18008]=e;G[17996]=sa(d,e,b,4)}Fa(a,34,34);break b}c=xa(G[c+60>>2]);b=Sa(72160,c);if(b){c=G[(G[18040]+M(b,12)|0)+4>>2];break b}b=c;c=ud();Qa(72160,b,c,0);break b}ra(a);if(!Fa(a,19,G[(M(G[a+56>>2],20)+a|0)+76>>2])){c=0;break b}c=xa(G[(M(G[a+56>>2],20)+a|0)+60>>2]);b=Sa(72176,c);if(b){c=G[(G[18044]+M(b,12)|0)+4>>2];break b}b=c;c=ud();Qa(72176,b,c,0);break b}ra(a);if(!jd(a)){c=0;break a}b=id(a);Va(72112);Va(72144);Va(72160);Va(72176);c=-1;b=hd(a,b);if((b|0)==-1){b=Sa(72144,0);if(b){c=G[(G[18036]+M(b,12)|0)+4>>2]}dc(a);$a(72112);break a}gd(a);$a(72112);c=b;break a}ra(a);Fa(a,33,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);c=wb(a);b=G[17988];d=G[17996]+(b<<2)|0;G[d>>2]=520;G[d+4>>2]=c;c=va(71960,b);t:{if((c|0)!=-1){break t}c=G[17988];wa(71960,c);d=G[17996];b=G[17988];b=G[(H[d+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;e=b+3|0;if((e|0)<=G[18008]){break t}e=e<<1;G[18008]=e;G[17996]=sa(d,e,b,4)}Fa(a,34,34);break b}ra(a);Fa(a,33,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);c=pb(wb(a),G[18020]);Fa(a,34,34);break b}c=a+60|0;d=G[(c+M(!b,20)|0)+16>>2];e=cd(a);b=G[(c+M(G[a+56>>2],20)|0)+16>>2];if((d|0)==42){if(Fa(a,42,b)){c=xa(G[(M(G[a+56>>2],20)+a|0)+60>>2])}else{c=0}ra(a);c=vd(e,c);break a}c=0;if((b|0)==33){E[71988]=1;c=G[18004];ra(a);b=G[a+56>>2];if(J[(M(b,20)+a|0)+76>>2]<=19){d=a+60|0;while(1){rd(G[d+M(b,20)>>2]);ra(a);Fa(a,22,G[(d+M(G[a+56>>2],20)|0)+16>>2]);ra(a);if(Fa(a,42,G[(d+M(G[a+56>>2],20)|0)+16>>2])){rd(G[(M(G[a+56>>2],20)+a|0)+60>>2])}ra(a);b=G[a+56>>2];if(J[(M(b,20)+a|0)+76>>2]<20){continue}break}}Fa(a,34,34);ra(a);b=G[18011];a=G[18004];if((a|0)>=G[18010]){d=(a<<1)+2|0;G[18010]=d;b=sa(b,d,a,1);G[18011]=b;a=G[18004]}E[a+b|0]=0;G[18004]=a+1;E[71988]=0}b=G[17988];a=G[17996]+(b<<2)|0;G[a>>2]=521;G[a+8>>2]=c;G[a+4>>2]=e;a=va(71960,b);u:{if((a|0)!=-1){break u}a=G[17988];wa(71960,a);b=G[17996];c=G[17988];c=G[(H[b+(c<<2)|0]<<2)+11056>>2]+c|0;G[17988]=c;d=c+3|0;if((d|0)<=G[18008]){break u}d=d<<1;G[18008]=d;G[17996]=sa(b,d,c,4)}c=a;break a}b=cd(a);if(Fa(a,42,G[(M(G[a+56>>2],20)+a|0)+76>>2])){c=xa(G[(M(G[a+56>>2],20)+a|0)+60>>2])}else{c=0}ra(a);c=vd(b,c);break a}ra(a);c=G[18019];break a}ra(a);c=G[18020];break a}ra(a);c=G[18021];break a}ra(a);Va(72144);Va(72160);Va(72176);Fa(a,33,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);while(1){if(Gb(a)){continue}break}Fa(a,34,34);ra(a);c=0;b=Sa(72144,0);if(b){c=G[(G[18036]+M(b,12)|0)+4>>2];dc(a);break a}b=G[a+4>>2];d=M(G[a+56>>2],20)+a|0;e=G[d+72>>2];G[f+20>>2]=G[d+68>>2];G[f+24>>2]=e;G[f+16>>2]=b;ya(1,a,70,f+16|0);dc(a);break a}ra(a);c=wb(a);if(Fa(a,32,34)){break b}break a}b=G[c+72>>2];c=G[c+68>>2];e=G[a+4>>2];G[f+12>>2]=eb(d);G[f+4>>2]=c;G[f+8>>2]=b;G[f>>2]=e;c=0;ya(0,a,41,f)}ra(a)}ia=f+32|0;return c}function Rh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=ia-32|0;ia=i;a:{if(!ub(a,11051,b,ua(b))){G[i>>2]=b;Ua(3,i);e=0;break a}e=0;if(!ub(a,11051,c,d)){break a}b:{switch(rc(a,71440,44)|0){case 13:if(Ga(4255,b,ua(b))){a=Ga(6646,b,ua(b))}else{a=0}b=!a;if(Ga(4255,c,d)){a=Ga(6646,c,d)}else{a=0}e=(b|0)==(!a|0);break a;case 17:e=!Tb(b,ua(b),c,d);break a;case 18:case 20:d=d<<24>>24;if(Ga(b,c,d)){a=1;c:{if(!Ga(b,5525,3)){break c}if(!Ga(5525,c,d)){break c}h=-Y;a=ua(b);g=-Y;d:{if(!Ga(5570,b,a)){break d}g=Y;if(!Ga(5571,b,a)){break d}g=qb(b)}e:{if(!Ga(5570,c,d)){break e}if(!Ga(5571,c,d)){h=Y;break e}h=qb(c)}a=-1;if(h>g){break c}a=h<g}}else{a=0}e=!a;break a;case 19:a=ia+-64|0;ia=a;ve(a+32|0,b,ua(b));ve(a,c,d);ia=a- -64|0;b=G[a+32>>2];c=G[a>>2];f:{if((b|0)!=(c|0)){a=b-c|0;break f}b=G[a+36>>2];c=G[a+4>>2];if((b|0)!=(c|0)){a=b-c|0;break f}b=G[a+40>>2];c=G[a+8>>2];if((b|0)!=(c|0)){a=b-c|0;break f}b=G[a+44>>2];c=G[a+12>>2];if((b|0)!=(c|0)){a=b-c|0;break f}b=G[a+48>>2];c=G[a+16>>2];if((b|0)!=(c|0)){a=b-c|0;break f}g=L[a+56>>3];h=L[a+24>>3];a=0;if(g==h){break f}a=h>g?-1:1}e=!a;break a;case 16:e=!sb(b,c,d,1029);break a;case 15:e=!sb(b,c,d,1039);break a;case 38:e=!sb(b,c,d,1032);break a;case 25:e=!sb(b,c,d,1035);break a;case 24:e=!sb(b,c,d,1026);break a;case 23:e=!sb(b,c,d,1040);break a;case 21:e=!sb(b,c,d,1041);break a;case 22:e=!sb(b,c,d,1036);break a;case 26:d=c+d|0;while(1){g:{a=H[b|0];h:{if(!a){break h}while(1){if(!ta(a<<24>>24)){break h}a=H[b+1|0];b=b+1|0;if(a){continue}break}}i:{if((c|0)!=(d|0)){while(1){if(!ta(E[c|0])){break i}c=c+1|0;if((d|0)!=(c|0)){continue}break}}a=E[b|0];break g}e=H[b|0];if(!e){a=0-E[c|0]|0;break g}j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{f=e<<24>>24;switch(f-65|0){case 4:case 36:break m;case 2:case 34:break o;case 0:case 32:break q;case 5:case 37:break r;case 3:case 35:break s;case 1:case 33:break t;default:break u}}a=H[c|0];break k}a=H[c|0];break p}a=H[c|0];break n}a=H[c|0];break l}a=H[c|0];if((a|32)==97){break j}}if((a|32)==98){break j}}a=H[c|0];if((a|32)==99){break j}}if((a|32)==100){break j}}a=H[c|0];if((a|32)==101){break j}}if((a|32)==102){break j}}if((a|0)==(e|0)){break j}a=f-(a<<24>>24)|0;break g}c=c+1|0;b=b+1|0;continue}break};e=!a;break a;case 12:d=c+d|0;v:{while(1){a=H[b|0];w:{if(!a){break w}while(1){if(!ta(a<<24>>24)){break w}a=H[b+1|0];b=b+1|0;if(a){continue}break}}x:{if((c|0)!=(d|0)){while(1){if(!ta(E[c|0])){break x}c=c+1|0;if((d|0)!=(c|0)){continue}break}}a=E[b|0];break v}e=E[c|0];f=H[b|0];a=0-e|0;if(!f){break v}if((f|0)!=(e&255)){a=(f<<24>>24)-e|0}else{c=c+1|0;b=b+1|0;continue}break}}e=!a;break a;case 11:e=!Ga(b,c,d);break a;case 8:case 10:e=b;while(1){j=H[e|0];if(!(!j|(j|0)==58)){e=e+1|0;continue}break};y:{z:{A:{if(d){a=d;f=c;while(1){if(H[f|0]==58){break A}f=f+1|0;a=a-1|0;if(a){continue}break}}if(!j){break z}a=Ga(e+1|0,c,d);break y}if(j){a=Ga(e+1|0,f+1|0,a-1|0);break y}a=Ga(b,f+1|0,a-1|0);break y}a=Ga(b,c,d)}e=!a;break a;case 34:B:{if(d){e=c+d|0;while(1){f=E[c|0];d=H[b|0];a=0-f|0;if(!d){break B}C:{if((d|0)==(f&255)){break C}if(ta(d<<24>>24)){if(ta(E[c|0])){break C}}a=E[b|0]-E[c|0]|0;break B}b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}a=E[b|0]}e=!a;break a;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 9:case 29:case 39:e=!Ga(b,c,d);break a;case 14:case 27:case 28:case 30:case 31:case 32:case 33:case 35:case 36:case 40:case 41:case 42:case 43:e=!Tb(b,ua(b),c,d);break a;case 44:G[i+16>>2]=a;Ua(0,i+16|0);e=0;break a;default:Z(6674,5333,786,3863);W();case 37:break b}}e=!De(b,c,d)}ia=i+32|0;return e|0}function Ud(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=ia-16|0;ia=j;g=-1;a:{if((b|0)==(c|0)){break a}b:{c:{d:{e:{f:{g:{h:{i:{k=H[b|0];if(k){switch(k-216|0){case 4:case 5:case 6:case 7:break c;case 39:break e;case 0:case 1:case 2:case 3:break f;default:break i}}e=H[b+1|0];switch(H[(e+a|0)+76|0]-5|0){case 17:case 19:break b;case 24:break d;case 2:break f;case 1:break g;case 0:break h;default:break c}}e=H[b+1|0];break d}g=-2;if((c-b|0)>=2){break c}break a}g=-2;if((c-b|0)>=3){break c}break a}g=-2;if((c-b|0)>=4){break c}break a}e=H[b+1|0];if(e>>>0>253){break c}}if(G[(e>>>3&28|H[k+14240|0]<<5)+12224>>2]>>>e&1){break b}}G[d>>2]=b;g=0;break a}i=b+2|0;if((i|0)==(c|0)){break a}m=a+76|0;h=i;a=b;while(1){j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{l=H[a+2|0];switch(l-216|0){case 4:case 5:case 6:case 7:break j;case 0:case 1:case 2:case 3:break o;case 39:break q;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break r;default:break s}}if(!l){break p}}f=H[a+3|0];break l}f=H[a+3|0];if(f>>>0>253){break j}break l}t:{u:{f=H[a+3|0];switch(H[m+f|0]-5|0){case 17:case 19:case 20:case 21:case 22:break k;case 24:break l;case 0:break m;case 1:break n;case 2:break o;case 4:case 5:case 16:break t;case 10:break u;default:break j}}G[j+12>>2]=11;e=1;v:{if(H[b|0]|(h-b|0)!=6){break v}f=E[b+1|0];if((f|0)==120){f=0}else{if((f|0)!=88){break v}f=1}if(H[b+2|0]){break v}i=E[b+3|0];if((i|0)!=109){if((i|0)!=77){break v}f=1}if(H[b+4|0]){break v}b=E[b+5|0];if((b|0)!=108){if((b|0)!=76){break v}e=0;break v}e=0;if(f){break v}G[j+12>>2]=12;e=1}if(!e){break j}h=a+4|0;if((h|0)==(c|0)){break a}if(H[a+4|0]|H[a+5|0]!=62){break j}G[d>>2]=a+6;g=G[j+12>>2];break a}f=11;G[j+12>>2]=11;w:{if((h-b|0)!=6|k){break w}if((e|0)==120){e=0}else{if((e|0)!=88){break w}e=1}if(H[i|0]){break w}i=E[b+3|0];if((i|0)!=109){if((i|0)!=77){break w}e=1}if(H[b+4|0]){break w}b=E[b+5|0];if((b|0)==76){break j}if((b|0)!=108){break w}if(e){break j}f=12;G[j+12>>2]=12}b=a+4|0;if((c|0)==(b|0)){break a}while(1){a=b;x:{y:{z:{A:{B:{C:{D:{b=H[b|0];switch(b-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break y;case 4:case 5:case 6:case 7:break A;case 0:case 1:case 2:case 3:break B;case 39:break D;default:break C}}if(H[a+1|0]<=253){break y}break A}if(b){break y}E:{switch(H[H[a+1|0]+m|0]){case 5:if((c-a|0)>=2){break y}g=-2;break a;case 15:break z;case 0:case 1:case 8:break A;case 7:break B;case 6:break E;default:break y}}if((c-a|0)<3){g=-2;break a}b=a+3|0;break x}if((c-a|0)<4){g=-2;break a}b=a+4|0;break x}G[d>>2]=a;g=0;break a}b=a+2|0;if((c|0)==(b|0)){break a}if(H[b|0]|H[a+3|0]!=62){break x}G[d>>2]=a+4;g=f;break a}b=a+2|0}if((b|0)!=(c|0)){continue}break}break a}g=-2;if((c-h|0)>=4){break j}break a}g=-2;if((c-h|0)>=3){break j}break a}g=-2;if((c-h|0)<2){break a}break j}if(!(G[(f>>>3&28|H[l+14496|0]<<5)+12224>>2]>>>f&1)){break j}}a=h;h=a+2|0;if((h|0)!=(c|0)){continue}break a}break}G[d>>2]=h;g=0}ia=j+16|0;return g}function Zd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=ia-16|0;ia=i;f=-1;a:{if((b|0)==(c|0)){break a}b:{c:{d:{e:{f:{g:{h:{i:{k=H[b+1|0];if(k){switch(k-216|0){case 4:case 5:case 6:case 7:break c;case 39:break e;case 0:case 1:case 2:case 3:break f;default:break i}}e=H[b|0];switch(H[(e+a|0)+76|0]-5|0){case 17:case 19:break b;case 24:break d;case 2:break f;case 1:break g;case 0:break h;default:break c}}e=H[b|0];break d}f=-2;if((c-b|0)>=2){break c}break a}f=-2;if((c-b|0)>=3){break c}break a}f=-2;if((c-b|0)>=4){break c}break a}e=H[b|0];if(e>>>0>253){break c}}if(G[(e>>>3&28|H[k+14240|0]<<5)+12224>>2]>>>e&1){break b}}G[d>>2]=b;f=0;break a}h=b+2|0;if((h|0)==(c|0)){break a}m=a+76|0;a=h;j=b;while(1){j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{l=H[j+3|0];switch(l-216|0){case 4:case 5:case 6:case 7:break j;case 0:case 1:case 2:case 3:break o;case 39:break q;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break r;default:break s}}if(!l){break p}}g=H[a|0];break l}g=H[a|0];if(g>>>0>253){break j}break l}t:{u:{g=H[a|0];switch(H[m+g|0]-5|0){case 17:case 19:case 20:case 21:case 22:break k;case 24:break l;case 0:break m;case 1:break n;case 2:break o;case 4:case 5:case 16:break t;case 10:break u;default:break j}}G[i+12>>2]=11;g=1;v:{if(H[b+1|0]|(a-b|0)!=6){break v}e=E[b|0];if((e|0)==120){e=0}else{if((e|0)!=88){break v}e=1}if(H[b+3|0]){break v}h=E[b+2|0];if((h|0)!=109){if((h|0)!=77){break v}e=1}if(H[b+5|0]){break v}b=E[b+4|0];if((b|0)!=108){if((b|0)!=76){break v}g=0;break v}g=0;if(e){break v}G[i+12>>2]=12;g=1}if(!g){break j}a=j+4|0;if((c|0)==(a|0)){break a}if(H[j+5|0]|H[j+4|0]!=62){break j}G[d>>2]=j+6;f=G[i+12>>2];break a}g=11;G[i+12>>2]=11;w:{if((a-b|0)!=6|k){break w}if((e|0)==120){e=0}else{if((e&255)!=88){break w}e=1}if(H[b+3|0]){break w}h=E[h|0];if((h|0)!=109){if((h|0)!=77){break w}e=1}if(H[b+5|0]){break w}b=E[b+4|0];if((b|0)==76){break j}if((b|0)!=108){break w}if(e){break j}g=12;G[i+12>>2]=12}b=j+4|0;if((c|0)==(b|0)){break a}while(1){a=b;x:{y:{z:{A:{B:{C:{D:{b=H[b+1|0];switch(b-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break y;case 4:case 5:case 6:case 7:break A;case 0:case 1:case 2:case 3:break B;case 39:break D;default:break C}}if(H[a|0]<=253){break y}break A}if(b){break y}E:{switch(H[H[a|0]+m|0]){case 5:if((c-a|0)>=2){break y}f=-2;break a;case 15:break z;case 0:case 1:case 8:break A;case 7:break B;case 6:break E;default:break y}}if((c-a|0)<3){f=-2;break a}b=a+3|0;break x}if((c-a|0)<4){f=-2;break a}b=a+4|0;break x}G[d>>2]=a;f=0;break a}b=a+2|0;if((c|0)==(b|0)){break a}if(H[a+3|0]|H[b|0]!=62){break x}G[d>>2]=a+4;f=g;break a}b=a+2|0}if((b|0)!=(c|0)){continue}break}break a}f=-2;if((c-a|0)>=4){break j}break a}f=-2;if((c-a|0)>=3){break j}break a}f=-2;if((c-a|0)<2){break a}break j}if(!(G[(g>>>3&28|H[l+14496|0]<<5)+12224>>2]>>>g&1)){break j}}j=a;a=a+2|0;if((c|0)!=(a|0)){continue}break a}break}G[d>>2]=a;f=0}ia=i+16|0;return f}function Xc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=ia-48|0;ia=g;a:{if(a&16384){Qe(a&-16385,b);break a}c=G[17964];d=G[c+288>>2];b:{if(!d){break b}f=G[c+296>>2];if(f>>>0>d>>>0){break b}e=G[c+144>>2];ka[G[e+52>>2]](e,f,d,c+408|0);G[c+296>>2]=G[c+288>>2]}d=G[c+408>>2]+1|0;c=G[17964];f=G[c+288>>2];c:{if(!f){break c}e=G[c+296>>2];if(e>>>0>f>>>0){break c}h=G[c+144>>2];ka[G[h+52>>2]](h,e,f,c+408|0);G[c+296>>2]=G[c+288>>2]}c=G[c+412>>2];if((d|0)==G[17965]&(c|0)==G[17966]){break a}G[17966]=c;G[17965]=d;f=G[13633];e=G[17967];d:{if(e){G[g+32>>2]=e;G[g+36>>2]=G[17968];ka[f|0](8169,g+32|0)|0;break d}G[g+20>>2]=d;G[g+24>>2]=c;G[g+16>>2]=G[17960];ka[f|0](8184,g+16|0)|0}if(a&262144){Pe(a&-262145,b);b=0;if(!G[17956]){break a}a=2;while(1){if(!a){break a}c=G[17969];a=a-1|0;if(a){if(G[18057]>=65){Aa(G[18055]);G[18057]=64;G[18055]=za(64,4)}G[18058]=0}$b(c,1,a);c=G[18058];if((c|0)==(b|0)){continue}if((c|0)>G[17956]){break a}ka[G[13633]](a?9938:9928,0)|0;if(G[18058]==(b|0)){continue}while(1){h=G[13633];e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{u:{v:{w:{c=G[17996]+(G[G[18055]+(b<<2)>>2]<<2)|0;switch(H[c|0]){case 0:break g;case 15:break i;case 14:break j;case 13:break k;case 12:break l;case 11:break m;case 10:break n;case 9:break o;case 8:break p;case 7:break q;case 6:break r;case 5:break s;case 4:break t;case 3:break u;case 2:break v;case 1:break w;default:break h}}c=Ta(4924);break e}c=Ta(1044);break e}c=Ta(1464);break e}c=Ta(6807);break e}c=Ta(7768);break e}c=Ta(6974);break e}c=Ta(7007);break e}c=Ta(1480);break e}f=Ya(G[c+4>>2]);d=za(ua(f)+6|0,1);c=H[8122]|H[8123]<<8;E[d+4|0]=c;E[d+5|0]=c>>>8;c=H[8118]|H[8119]<<8|(H[8120]<<16|H[8121]<<24);E[d|0]=c;E[d+1|0]=c>>>8;E[d+2|0]=c>>>16;E[d+3|0]=c>>>24;break f}c=Ta(6959);break e}f=G[c+8>>2];e=Ya(G[c+4>>2]);c=za((ua(e)+ua(f+G[18011]|0)|0)+10|0,1);d=H[8103]|H[8104]<<8|(H[8105]<<16|H[8106]<<24);E[c+3|0]=d;E[c+4|0]=d>>>8;E[c+5|0]=d>>>16;E[c+6|0]=d>>>24;d=H[8100]|H[8101]<<8|(H[8102]<<16|H[8103]<<24);E[c|0]=d;E[c+1|0]=d>>>8;E[c+2|0]=d>>>16;E[c+3|0]=d>>>24;c=Mb(c,e);d=ua(c)+c|0;i=H[8088]|H[8089]<<8;E[d|0]=i;E[d+1|0]=i>>>8;E[d+2|0]=H[8090];c=Mb(c,f+G[18011]|0);d=ua(c)+c|0;E[d|0]=34;E[d+1|0]=0;Aa(e);break e}f=Ya(G[c+8>>2]);d=za(ua(f)+11|0,1);c=H[8114]|H[8115]<<8|(H[8116]<<16|H[8117]<<24);E[d+7|0]=c;E[d+8|0]=c>>>8;E[d+9|0]=c>>>16;E[d+10|0]=c>>>24;c=H[8111]|H[8112]<<8|(H[8113]<<16|H[8114]<<24);e=H[8107]|H[8108]<<8|(H[8109]<<16|H[8110]<<24);E[d|0]=e;E[d+1|0]=e>>>8;E[d+2|0]=e>>>16;E[d+3|0]=e>>>24;E[d+4|0]=c;E[d+5|0]=c>>>8;E[d+6|0]=c>>>16;E[d+7|0]=c>>>24;break f}f=Ya(G[c+8>>2]);d=za(ua(f)+9|0,1);E[d+8|0]=H[8099];c=H[8095]|H[8096]<<8|(H[8097]<<16|H[8098]<<24);e=H[8091]|H[8092]<<8|(H[8093]<<16|H[8094]<<24);E[d|0]=e;E[d+1|0]=e>>>8;E[d+2|0]=e>>>16;E[d+3|0]=e>>>24;E[d+4|0]=c;E[d+5|0]=c>>>8;E[d+6|0]=c>>>16;E[d+7|0]=c>>>24;break f}c=Ta(4193);break e}c=Ta(3011);break e}Z(6674,5290,114,2963);W()}c=Ta(2999);break e}c=Mb(d,f);Aa(f)}G[g>>2]=c;ka[h|0](8757,g)|0;Aa(c);b=b+1|0;if((b|0)!=G[18058]){continue}break}continue}}x:{switch(a|0){case 1:ka[G[13634]](8758,b)|0;break a;case 2:ka[G[13634]](8533,b)|0;break a;default:Z(6674,5327,82,3189);W();case 0:break x}}ka[G[13634]](8758,b)|0}ia=g+48|0}function Wa(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=ia-112|0;ia=j;k=i&2147483647;l=e&2147483647;m=l;a:{b:{p=!(b|c);if(!(d|l?l-2147418112>>>0<2147549184:p)){n=k-2147418112|0;if(!h&(n|0)==-2147418112?f|g:(n|0)==-2147418112&(h|0)!=0|n>>>0>2147549184){break b}}if(!(!d&(m|0)==2147418112?p:m>>>0<2147418112)){h=d;i=e|32768;f=b;g=c;break a}if(!(!h&(k|0)==2147418112?!(f|g):k>>>0<2147418112)){i=i|32768;break a}if(!(b|d|(m^2147418112|c))){m=d;d=!(b^f|d^h|(c^g|e^i^-2147483648));h=d?0:m;i=d?2147450880:e;f=d?0:b;g=d?0:c;break a}if(!(f|h|(k^2147418112|g))){break a}if(!(b|d|(c|m))){if(f|h|(g|k)){break a}f=b&f;g=c&g;h=d&h;i=e&i;break a}if(f|h|(g|k)){break b}f=b;g=c;h=d;i=e;break a}l=(k|0)==(m|0);k=l&(d|0)==(h|0)?(c|0)==(g|0)&b>>>0<f>>>0|c>>>0<g>>>0:l&d>>>0<h>>>0|k>>>0>m>>>0;o=k?f:b;l=k?g:c;m=k?i:e;r=m;q=k?h:d;n=m&65535;e=k?e:i;s=e;h=k?d:h;m=e>>>16&32767;p=r>>>16&32767;if(!p){d=!(n|q);e=d<<6;i=P(d?o:q)+32|0;d=P(d?l:n);d=e+((d|0)==32?i:d)|0;Ra(j+96|0,o,l,q,n,d-15|0);q=G[j+104>>2];n=G[j+108>>2];o=G[j+96>>2];p=16-d|0;l=G[j+100>>2]}f=k?b:f;g=k?c:g;i=s&65535;if(!m){b=!(h|i);c=b<<6;d=P(b?f:h)+32|0;b=P(b?g:i);b=c+((b|0)==32?d:b)|0;Ra(j+80|0,f,g,h,i,b-15|0);m=16-b|0;h=G[j+88>>2];i=G[j+92>>2];g=G[j+84>>2];f=G[j+80>>2]}b=h;k=i<<3|b>>>29;d=b<<3|g>>>29;e=k|524288;b=q;c=n<<3|b>>>29;h=b<<3|l>>>29;i=c;b=f;c=g<<3|b>>>29;b=b<<3;g=r^s;c:{if((m|0)==(p|0)){break c}f=p-m|0;if(f>>>0>127){d=0;e=0;b=1;c=0;break c}Ra(j- -64|0,b,c,d,e,128-f|0);Ib(j+48|0,b,c,d,e,f);b=G[j+48>>2]|(G[j+64>>2]|G[j+72>>2]|(G[j+68>>2]|G[j+76>>2]))!=0;c=G[j+52>>2];d=G[j+56>>2];e=G[j+60>>2]}m=h;q=i|524288;f=o;k=l<<3|f>>>29;n=f<<3;d:{if((g|0)<0){f=0;g=0;h=0;i=0;if(!(b^n|d^m|(c^k|e^q))){break a}o=n-b|0;l=k-((b>>>0>n>>>0)+c|0)|0;f=m-d|0;b=(c|0)==(k|0)&b>>>0>n>>>0|c>>>0>k>>>0;i=(q-((d>>>0>m>>>0)+e|0)|0)-(f>>>0<b>>>0)|0;h=f-b|0;if(i>>>0>524287){break d}b=!(h|i);c=b<<6;d=P(b?o:h)+32|0;b=P(b?l:i);b=c+((b|0)==32?d:b)|0;b=b-12|0;Ra(j+32|0,o,l,h,i,b);p=p-b|0;h=G[j+40>>2];i=G[j+44>>2];o=G[j+32>>2];l=G[j+36>>2];break d}k=c+k|0;f=b+n|0;k=f>>>0<n>>>0?k+1|0:k;o=f;l=k;f=(c|0)==(k|0)&b>>>0>f>>>0|c>>>0>k>>>0;c=e+q|0;b=d+m|0;c=b>>>0<m>>>0?c+1|0:c;d=b;b=f+b|0;h=b;i=b>>>0<d>>>0?c+1|0:c;if(!(i&1048576)){break d}o=o&1|((l&1)<<31|o>>>1);c=h;l=c<<31|l>>>1;p=p+1|0;h=(i&1)<<31|c>>>1;i=i>>>1|0}d=0;e=r&-2147483648;if((p|0)>=32767){h=d;i=e|2147418112;f=0;g=0;break a}m=0;e:{if((p|0)>0){m=p;break e}Ra(j+16|0,o,l,h,i,p+127|0);Ib(j,o,l,h,i,1-p|0);o=G[j>>2]|(G[j+16>>2]|G[j+24>>2]|(G[j+20>>2]|G[j+28>>2]))!=0;l=G[j+4>>2];h=G[j+8>>2];i=G[j+12>>2]}c=h<<29;b=l>>>3|0;n=(l&7)<<29|o>>>3;l=o&7;g=l>>>0>4;f=n+g|0;b=b|c;k=f>>>0<g>>>0?b+1|0:b;c=f;g=k;b=(b|0)==(k|0)&c>>>0<n>>>0|b>>>0>k>>>0;c=d|((i&7)<<29|h>>>3);b=b+c|0;i=e|(i>>>3&65535|m<<16);i=b>>>0<c>>>0?i+1|0:i;h=b;f:{if((l|0)==4){c=g+0|0;e=f&1;b=f+e|0;c=b>>>0<f>>>0?c+1|0:c;f=b;g=c;c=(d|0)==(c|0)&b>>>0<e>>>0|c>>>0<d>>>0;b=c+h|0;i=b>>>0<c>>>0?i+1|0:i;h=b;break f}if(!l){break a}}}G[a>>2]=f;G[a+4>>2]=g;G[a+8>>2]=h;G[a+12>>2]=i;ia=j+112|0}function Mc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;j=ia-16|0;ia=j;q=a+452|0;t=a+440|0;l=f+12|0;n=G[a+356>>2];w=(n+80|0)!=(f|0);while(1){g=0;a:{b:{c:{d:{e:{switch((ka[G[b+16>>2]](b,d,e,j+8|0)|0)+4|0){case 4:g=4;if(G[a+144>>2]!=(b|0)){break b}G[a+288>>2]=G[j+8>>2];break b;case 3:g=4;if(G[a+144>>2]!=(b|0)){break b}G[a+288>>2]=d;break b;case 14:i=ka[G[b+44>>2]](b,d)|0;f:{if((i|0)<0){g=14;if(G[a+144>>2]==(b|0)){break f}break b}if(!((i|0)!=32|c)){h=G[f+12>>2];if((h|0)==G[f+16>>2]|H[h-1|0]==32){break a}}i=Ic(i,j+12|0);if(i){d=0;if((i|0)<=0){break a}while(1){g=G[f+12>>2];if((g|0)==G[f+8>>2]){if(!qa(f)){g=1;break b}g=G[l>>2]}h=H[(j+12|0)+d|0];G[l>>2]=g+1;E[g|0]=h;d=d+1|0;if((i|0)!=(d|0)){continue}break}break a}g=14;if(G[a+144>>2]!=(b|0)){break b}}G[a+288>>2]=d;break b;case 10:h=G[j+8>>2];G[j+12>>2]=d;g:{h:{if(!G[l>>2]){if(!qa(f)){break h}}while(1){ka[G[b+60>>2]](b,j+12|0,h,l,G[f+8>>2]);if((h|0)==G[j+12>>2]){break g}if(qa(f)){continue}break}}g=1;break b}if(G[f+16>>2]){break a}g=1;break b;case 1:G[j+8>>2]=G[b+68>>2]+d;case 11:case 43:g=G[l>>2];if(!c&(G[f+16>>2]==(g|0)|H[g-1|0]==32)){break a}if(G[f+8>>2]==(g|0)){if(!qa(f)){g=1;break b}g=G[l>>2]}G[l>>2]=g+1;E[g|0]=32;d=G[j+8>>2];continue;case 13:h=G[b+68>>2];h=ka[G[b+48>>2]](b,h+d|0,G[j+8>>2]-h|0)|0;if(h&255){g=G[f+12>>2];if((g|0)==G[f+8>>2]){if(!qa(f)){g=1;break b}g=G[l>>2]}G[l>>2]=g+1;E[g|0]=h;break a}i=G[j+8>>2];h=G[b+68>>2];G[j+12>>2]=h+d;i:{j:{if(!G[q>>2]){if(!qa(t)){break j}}h=i-h|0;while(1){ka[G[b+60>>2]](b,j+12|0,h,q,G[a+448>>2]);if((h|0)==G[j+12>>2]){break i}if(qa(t)){continue}break}}g=1;break b}g=1;if(!G[a+456>>2]){break b}i=G[a+452>>2];if((i|0)==G[a+448>>2]){if(!qa(t)){break b}i=G[q>>2]}G[a+452>>2]=i+1;E[i|0]=0;h=G[a+456>>2];if(!h){break b}k=0;r=G[n+8>>2];k:{if(!r){break k}m=G[a+496>>2];i=h;u=H[h|0];g=u;if(g){while(1){m=M(m,1000003)^g&255;g=H[i+1|0];i=i+1|0;if(g){continue}break}}v=G[n>>2];i=r-1|0;o=i&m;p=G[v+(o<<2)>>2];if(!p){break k}x=i>>>2|0;s=0;y=0-r&m;while(1){i=h;g=u;m=G[p>>2];if((g|0)==H[m|0]){while(1){if(!(g&255)){k=p;break k}k=H[m+1|0];g=H[i+1|0];m=m+1|0;i=i+1|0;if((g|0)==(k|0)){continue}break}}k=0;s=s&255?s:y>>>H[n+4|0]-1&x|1;i=s&255;o=(i>>>0>o>>>0?r:0)+(o-i|0)|0;p=G[(o<<2)+v>>2];if(p){continue}break}}G[q>>2]=h;l:{m:{if(!w){if(!G[a+272>>2]){break l}if(!H[n+130|0]){break m}if(!G[a+300>>2]){break d}break l}if(!H[n+129|0]){break d}if(!H[n+130|0]){break l}break d}if(!H[n+129|0]){break d}}if(!k){break a}break c;case 0:break b;default:break e}}g=23;if(G[a+144>>2]!=(b|0)){break b}G[a+288>>2]=d;break b}if(!k){g=11;break b}if(H[k+34|0]){break c}g=24;break b}if(H[k+32|0]){g=12;if(G[a+144>>2]!=(b|0)){break b}G[a+288>>2]=d;break b}if(G[k+28>>2]){g=15;if(G[a+144>>2]!=(b|0)){break b}G[a+288>>2]=d;break b}h=G[k+4>>2];if(!h){g=16;if(G[a+144>>2]!=(b|0)){break b}G[a+288>>2]=d;break b}E[k+32|0]=1;g=Mc(a,G[a+228>>2],c,h,h+G[k+8>>2]|0,f);E[k+32|0]=0;if(!g){break a}}ia=j+16|0;return g}d=G[j+8>>2];continue}}function Aa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!a){break a}d=a-8|0;b=G[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=G[d>>2];d=d-b|0;if(d>>>0<J[18158]){break a}a=a+b|0;if(G[18159]!=(d|0)){if(b>>>0<=255){e=G[d+8>>2];b=b>>>3|0;c=G[d+12>>2];if((c|0)==(e|0)){G[18154]=G[18154]&mi(-2,b);break b}G[e+12>>2]=c;G[c+8>>2]=e;break b}h=G[d+24>>2];b=G[d+12>>2];c:{if((d|0)!=(b|0)){c=G[d+8>>2];G[c+12>>2]=b;G[b+8>>2]=c;break c}d:{e=d+20|0;c=G[e>>2];if(c){break d}e=d+16|0;c=G[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=G[e>>2];if(c){continue}e=b+16|0;c=G[b+16>>2];if(c){continue}break}G[g>>2]=0}if(!h){break b}e=G[d+28>>2];c=(e<<2)+72920|0;e:{if(G[c>>2]==(d|0)){G[c>>2]=b;if(b){break e}G[18155]=G[18155]&mi(-2,e);break b}G[h+(G[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}G[b+24>>2]=h;c=G[d+16>>2];if(c){G[b+16>>2]=c;G[c+24>>2]=b}c=G[d+20>>2];if(!c){break b}G[b+20>>2]=c;G[c+24>>2]=b;break b}b=G[f+4>>2];if((b&3)!=3){break b}G[18156]=a;G[f+4>>2]=b&-2;G[d+4>>2]=a|1;G[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=G[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(G[18160]==(f|0)){G[18160]=d;a=G[18157]+a|0;G[18157]=a;G[d+4>>2]=a|1;if(G[18159]!=(d|0)){break a}G[18156]=0;G[18159]=0;return}if(G[18159]==(f|0)){G[18159]=d;a=G[18156]+a|0;G[18156]=a;G[d+4>>2]=a|1;G[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=G[f+8>>2];b=b>>>3|0;c=G[f+12>>2];if((c|0)==(e|0)){G[18154]=G[18154]&mi(-2,b);break g}G[e+12>>2]=c;G[c+8>>2]=e;break g}h=G[f+24>>2];b=G[f+12>>2];h:{if((f|0)!=(b|0)){c=G[f+8>>2];G[c+12>>2]=b;G[b+8>>2]=c;break h}i:{e=f+20|0;c=G[e>>2];if(c){break i}e=f+16|0;c=G[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=G[e>>2];if(c){continue}e=b+16|0;c=G[b+16>>2];if(c){continue}break}G[g>>2]=0}if(!h){break g}e=G[f+28>>2];c=(e<<2)+72920|0;j:{if(G[c>>2]==(f|0)){G[c>>2]=b;if(b){break j}G[18155]=G[18155]&mi(-2,e);break g}G[h+(G[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}G[b+24>>2]=h;c=G[f+16>>2];if(c){G[b+16>>2]=c;G[c+24>>2]=b}c=G[f+20>>2];if(!c){break g}G[b+20>>2]=c;G[c+24>>2]=b}G[d+4>>2]=a|1;G[a+d>>2]=a;if(G[18159]!=(d|0)){break f}G[18156]=a;return}G[f+4>>2]=b&-2;G[d+4>>2]=a|1;G[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+72656|0;c=G[18154];a=1<<a;k:{if(!(c&a)){G[18154]=a|c;a=b;break k}a=G[b+8>>2]}G[b+8>>2]=d;G[a+12>>2]=d;G[d+12>>2]=b;G[d+8>>2]=a;return}e=31;G[d+16>>2]=0;G[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<<g;e=b+520192>>>16&4;b=b<<e;c=b+245760>>>16&2;b=(b<<c>>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}G[d+28>>2]=e;g=(e<<2)+72920|0;l:{m:{c=G[18155];b=1<<e;n:{if(!(c&b)){G[18155]=b|c;G[g>>2]=d;G[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=G[g>>2];while(1){c=b;if((G[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=G[g+16>>2];if(b){continue}break}G[g+16>>2]=d;G[d+24>>2]=c}G[d+12>>2]=d;G[d+8>>2]=d;break l}a=G[c+8>>2];G[a+12>>2]=d;G[c+8>>2]=d;G[d+24>>2]=0;G[d+12>>2]=c;G[d+8>>2]=a}a=G[18162]-1|0;G[18162]=a?a:-1}}function qe(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=ia-16|0;ia=h;u=G[a+276>>2];G[a+276>>2]=1;g=G[a+356>>2];m=g+104|0;a:{b:{if(G[g+104>>2]){break b}if(qa(m)){break b}e=1;break a}n=a+428|0;r=a+416|0;l=g+116|0;while(1){e=0;c:{d:{e:{f:{g:{switch((ka[G[b+20>>2]](b,c,d,h+8|0)|0)+4|0){case 32:if(!(!H[a+488|0]&G[a+144>>2]==(b|0))){f=G[h+8>>2];j=G[b+68>>2];G[h+12>>2]=j+c;h:{i:{if(!G[n>>2]){if(!qa(r)){break i}}f=f-j|0;while(1){ka[G[b+60>>2]](b,h+12|0,f,n,G[a+424>>2]);if((f|0)==G[h+12>>2]){break h}if(qa(r)){continue}break}}e=1;break d}e=1;if(!G[a+432>>2]){break d}f=G[a+428>>2];if((f|0)==G[a+424>>2]){if(!qa(r)){break d}f=G[n>>2]}G[a+428>>2]=f+1;E[f|0]=0;j=G[a+432>>2];if(!j){break d}j:{k:{l:{p=G[g+140>>2];m:{if(!p){break m}k=G[a+496>>2];f=j;s=H[f|0];e=s;if(e){while(1){k=M(k,1000003)^e&255;e=H[f+1|0];f=f+1|0;if(e){continue}break}}t=G[g+132>>2];f=p-1|0;o=f&k;i=G[t+(o<<2)>>2];if(!i){break m}v=f>>>2|0;q=0;w=0-p&k;while(1){f=j;e=s;k=G[i>>2];if((e|0)==H[k|0]){while(1){if(!(e&255)){break l}x=H[k+1|0];e=H[f+1|0];k=k+1|0;f=f+1|0;if((e|0)==(x|0)){continue}break}}q=q&255?q:w>>>H[g+136|0]-1&v|1;f=q&255;o=(f>>>0>o>>>0?p:0)+(o-f|0)|0;i=G[(o<<2)+t>>2];if(i){continue}break}}G[n>>2]=j;break k}G[n>>2]=j;if(i){break j}}E[g+128|0]=H[g+130|0];e=0;break d}if(H[i+32|0]){e=12;if(G[a+144>>2]!=(b|0)){break d}G[a+288>>2]=c;break d}c=G[i+16>>2];if(!c){break e}f=G[a+112>>2];if(!f){break f}E[g+131|0]=0;E[i+32|0]=1;if(!(ka[f|0](G[a+116>>2],0,G[i+20>>2],c,G[i+24>>2])|0)){E[i+32|0]=0;e=21;break d}E[i+32|0]=0;if(H[g+131|0]){break c}E[g+128|0]=H[g+130|0];c=G[h+8>>2];continue}G[a+288>>2]=c;e=10;break d;case 10:case 13:f=G[h+8>>2];G[h+12>>2]=c;n:{o:{if(!G[l>>2]){if(!qa(m)){break o}}while(1){ka[G[b+60>>2]](b,h+12|0,f,l,G[g+112>>2]);if((f|0)==G[h+12>>2]){break n}if(qa(m)){continue}break}}e=1;break d}if(G[g+120>>2]){break c}e=1;break d;case 1:G[h+8>>2]=G[b+68>>2]+c;case 11:e=G[g+116>>2];if((e|0)==G[g+112>>2]){if(!qa(m)){e=1;break d}e=G[l>>2]}G[l>>2]=e+1;E[e|0]=10;c=G[h+8>>2];continue;case 14:f=ka[G[b+44>>2]](b,c)|0;p:{if((f|0)<0){e=14;if(G[a+144>>2]==(b|0)){break p}break d}j=Ic(f,h+12|0);if(j){f=0;if((j|0)<=0){break c}while(1){e=G[g+116>>2];if((e|0)==G[g+112>>2]){if(!qa(m)){e=1;break d}e=G[l>>2]}c=H[(h+12|0)+f|0];G[l>>2]=e+1;E[e|0]=c;f=f+1|0;if((j|0)!=(f|0)){continue}break}break c}e=14;if(G[a+144>>2]!=(b|0)){break d}}G[a+288>>2]=c;break d;case 3:e=4;if(G[a+144>>2]!=(b|0)){break d}G[a+288>>2]=c;break d;case 4:e=4;if(G[a+144>>2]!=(b|0)){break d}G[a+288>>2]=G[h+8>>2];break d;case 0:break d;default:break g}}e=23;if(G[a+144>>2]!=(b|0)){break d}G[a+288>>2]=c;break d}E[g+128|0]=H[g+130|0];break c}E[i+32|0]=1;c=G[i+4>>2];e=qe(a,G[a+228>>2],c,c+G[i+8>>2]|0);E[i+32|0]=0;if(!e){break c}}G[a+276>>2]=u;break a}c=G[h+8>>2];continue}}ia=h+16|0;return e}function Ad(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=a+b|0;c=G[a+4>>2];a:{b:{if(c&1){break b}if(!(c&3)){break a}c=G[a>>2];b=c+b|0;c:{a=a-c|0;if((a|0)!=G[18159]){if(c>>>0<=255){e=G[a+8>>2];c=c>>>3|0;d=G[a+12>>2];if((d|0)!=(e|0)){break c}G[18154]=G[18154]&mi(-2,c);break b}h=G[a+24>>2];c=G[a+12>>2];d:{if((c|0)!=(a|0)){d=G[a+8>>2];G[d+12>>2]=c;G[c+8>>2]=d;break d}e:{e=a+20|0;d=G[e>>2];if(d){break e}e=a+16|0;d=G[e>>2];if(d){break e}c=0;break d}while(1){g=e;c=d;e=c+20|0;d=G[e>>2];if(d){continue}e=c+16|0;d=G[c+16>>2];if(d){continue}break}G[g>>2]=0}if(!h){break b}e=G[a+28>>2];d=(e<<2)+72920|0;f:{if(G[d>>2]==(a|0)){G[d>>2]=c;if(c){break f}G[18155]=G[18155]&mi(-2,e);break b}G[h+(G[h+16>>2]==(a|0)?16:20)>>2]=c;if(!c){break b}}G[c+24>>2]=h;d=G[a+16>>2];if(d){G[c+16>>2]=d;G[d+24>>2]=c}d=G[a+20>>2];if(!d){break b}G[c+20>>2]=d;G[d+24>>2]=c;break b}c=G[f+4>>2];if((c&3)!=3){break b}G[18156]=b;G[f+4>>2]=c&-2;G[a+4>>2]=b|1;G[f>>2]=b;return}G[e+12>>2]=d;G[d+8>>2]=e}c=G[f+4>>2];g:{if(!(c&2)){if(G[18160]==(f|0)){G[18160]=a;b=G[18157]+b|0;G[18157]=b;G[a+4>>2]=b|1;if(G[18159]!=(a|0)){break a}G[18156]=0;G[18159]=0;return}if(G[18159]==(f|0)){G[18159]=a;b=G[18156]+b|0;G[18156]=b;G[a+4>>2]=b|1;G[a+b>>2]=b;return}b=(c&-8)+b|0;h:{if(c>>>0<=255){e=G[f+8>>2];c=c>>>3|0;d=G[f+12>>2];if((d|0)==(e|0)){G[18154]=G[18154]&mi(-2,c);break h}G[e+12>>2]=d;G[d+8>>2]=e;break h}h=G[f+24>>2];c=G[f+12>>2];i:{if((f|0)!=(c|0)){d=G[f+8>>2];G[d+12>>2]=c;G[c+8>>2]=d;break i}j:{d=f+20|0;e=G[d>>2];if(e){break j}d=f+16|0;e=G[d>>2];if(e){break j}c=0;break i}while(1){g=d;c=e;d=c+20|0;e=G[d>>2];if(e){continue}d=c+16|0;e=G[c+16>>2];if(e){continue}break}G[g>>2]=0}if(!h){break h}e=G[f+28>>2];d=(e<<2)+72920|0;k:{if(G[d>>2]==(f|0)){G[d>>2]=c;if(c){break k}G[18155]=G[18155]&mi(-2,e);break h}G[h+(G[h+16>>2]==(f|0)?16:20)>>2]=c;if(!c){break h}}G[c+24>>2]=h;d=G[f+16>>2];if(d){G[c+16>>2]=d;G[d+24>>2]=c}d=G[f+20>>2];if(!d){break h}G[c+20>>2]=d;G[d+24>>2]=c}G[a+4>>2]=b|1;G[a+b>>2]=b;if(G[18159]!=(a|0)){break g}G[18156]=b;return}G[f+4>>2]=c&-2;G[a+4>>2]=b|1;G[a+b>>2]=b}if(b>>>0<=255){b=b>>>3|0;c=(b<<3)+72656|0;d=G[18154];b=1<<b;l:{if(!(d&b)){G[18154]=b|d;b=c;break l}b=G[c+8>>2]}G[c+8>>2]=a;G[b+12>>2]=a;G[a+12>>2]=c;G[a+8>>2]=b;return}e=31;G[a+16>>2]=0;G[a+20>>2]=0;if(b>>>0<=16777215){c=b>>>8|0;g=c+1048320>>>16&8;c=c<<g;e=c+520192>>>16&4;c=c<<e;d=c+245760>>>16&2;c=(c<<d>>>15|0)-(d|(e|g))|0;e=(c<<1|b>>>c+21&1)+28|0}G[a+28>>2]=e;g=(e<<2)+72920|0;m:{d=G[18155];c=1<<e;n:{if(!(d&c)){G[18155]=c|d;G[g>>2]=a;G[a+24>>2]=g;break n}e=b<<((e|0)==31?0:25-(e>>>1|0)|0);c=G[g>>2];while(1){d=c;if((G[c+4>>2]&-8)==(b|0)){break m}c=e>>>29|0;e=e<<1;g=d+(c&4)|0;c=G[g+16>>2];if(c){continue}break}G[g+16>>2]=a;G[a+24>>2]=d}G[a+12>>2]=a;G[a+8>>2]=a;return}b=G[d+8>>2];G[b+12>>2]=a;G[d+8>>2]=a;G[a+24>>2]=0;G[a+12>>2]=d;G[a+8>>2]=b}}function se(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=ia-32|0;ia=e;G[e+20>>2]=0;G[e+16>>2]=0;G[e+12>>2]=0;G[e+4>>2]=-1;a:{if(!(ka[(H[a+236|0]?68:69)|0](b,G[a+144>>2],c,d,a+288|0,e+12|0,e+8|0,e+20|0,e+16|0,e+4|0)|0)){d=b?31:30;break a}b:{if(G[e+4>>2]!=1|b){break b}E[G[a+356>>2]+130|0]=1;if(G[a+492>>2]!=1){break b}G[a+492>>2]=0}c:{if(G[a+140>>2]){c=0;b=G[e+20>>2];if(b){d=G[a+144>>2];h=ka[G[d+32>>2]](d,b)|0;G[e+28>>2]=b;f=a+440|0;d:{g=a+452|0;e:{if(!G[g>>2]){if(!qa(f)){break e}}b=b+h|0;while(1){ka[G[d+60>>2]](d,e+28|0,b,g,G[a+448>>2]);if((b|0)==G[e+28>>2]){break d}if(qa(f)){continue}break}}d=1;break a}d=1;if(!G[a+456>>2]){break a}b=G[a+452>>2];if((b|0)==G[a+448>>2]){if(!qa(f)){break a}b=G[g>>2]}G[a+452>>2]=b+1;E[b|0]=0;f=G[a+456>>2];if(!f){break a}G[a+456>>2]=G[a+452>>2]}d=G[e+12>>2];if(d){b=G[a+144>>2];h=G[b+68>>2];i=G[e+8>>2];G[e+28>>2]=d;c=a+440|0;f:{g=a+452|0;g:{if(!G[g>>2]){if(!qa(c)){break g}}d=i-h|0;while(1){ka[G[b+60>>2]](b,e+28|0,d,g,G[a+448>>2]);if((d|0)==G[e+28>>2]){break f}if(qa(c)){continue}break}}d=1;break a}d=1;if(!G[a+456>>2]){break a}b=G[a+452>>2];if((b|0)==G[a+448>>2]){if(!qa(c)){break a}b=G[g>>2]}G[a+452>>2]=b+1;E[b|0]=0;c=G[a+456>>2];if(!c){break a}}ka[G[a+140>>2]](G[a+4>>2],c,f,G[e+4>>2]);break c}g=G[a+80>>2];h:{if(!g){break h}b=G[a+144>>2];G[e+28>>2]=c;if(!H[b+72|0]){while(1){G[e+24>>2]=G[a+44>>2];ka[G[b+60>>2]](b,e+28|0,d,e+24|0,G[a+48>>2]);G[a+292>>2]=G[e+28>>2];c=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],c,G[e+24>>2]-c|0);c=G[e+28>>2];G[a+288>>2]=c;if((c|0)!=(d|0)){continue}break h}}ka[g|0](G[a+4>>2],c,d-c|0)}c=0}i:{if(G[a+232>>2]){break i}j:{b=G[e+16>>2];if(b){if(G[b+68>>2]==G[G[a+144>>2]+68>>2]){break j}G[a+288>>2]=G[e+20>>2];d=19;break a}b=G[e+20>>2];if(!b){break i}k:{if(f){break k}c=G[a+144>>2];d=c;f=(ka[G[c+32>>2]](c,b)|0)+b|0;c=ia-16|0;ia=c;G[c+12>>2]=b;l:{m:{b=a+440|0;n:{if(!G[b+12>>2]){if(!qa(b)){break n}}g=b+12|0;while(1){ka[G[d+60>>2]](d,c+12|0,f,g,G[b+8>>2]);if((f|0)==G[c+12>>2]){break m}if(qa(b)){continue}break}}d=0;break l}d=0;if(!G[b+16>>2]){break l}f=G[b+12>>2];if((f|0)==G[b+8>>2]){if(!qa(b)){break l}f=G[g>>2]}G[b+12>>2]=f+1;E[f|0]=0;d=G[b+16>>2]}ia=c+16|0;f=d;if(d){break k}d=1;break a}d=te(a,f);b=G[a+440>>2];f=G[a+444>>2];o:{p:{if(!f){c=b;break p}if(!b){break o}while(1){c=b;b=G[b>>2];G[c>>2]=f;f=c;if(b){continue}break}}G[a+444>>2]=c}G[a+440>>2]=0;G[a+456>>2]=0;G[a+448>>2]=0;G[a+452>>2]=0;if((d|0)!=18){break a}G[a+288>>2]=G[e+20>>2];d=18;break a}G[a+144>>2]=b}d=0;if(!(c|f)){break a}d=G[a+440>>2];c=G[a+444>>2];q:{r:{if(!c){b=d;break r}if(!d){break q}while(1){b=d;d=G[b>>2];G[b>>2]=c;c=b;if(d){continue}break}}G[a+444>>2]=b}d=0;G[a+440>>2]=0;G[a+456>>2]=0;G[a+448>>2]=0;G[a+452>>2]=0}ia=e+32|0;return d}function Je(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0;c=ia-112|0;ia=c;a:{b:{switch(G[18101]-1|0){case 2:c:{d:{e:{f:{a=G[18104];switch(a-40|0){case 1:case 2:case 3:case 23:case 53:case 83:case 84:case 85:break d;case 0:break e;case 51:break f;default:break c}}Ia();b=Fe();if(G[18101]==3&G[18104]==93){break a}a=G[18093];if(!a){d=G[18066]+G[18103]|0;e=Ba(d);a=Ba(G[18066]+G[18102]|0);G[c+64>>2]=d;G[c+68>>2]=e-a;Ma(3,c- -64|0);a=G[18093]}G[18093]=a+1;break a}Ia();b=Ke();if(G[18101]==3&G[18104]==41){break a}a=G[18093];if(!a){d=G[18066]+G[18103]|0;e=Ba(d);a=Ba(G[18066]+G[18102]|0);G[c+80>>2]=d;G[c+84>>2]=e-a;Ma(7,c+80|0);a=G[18093]}G[18093]=a+1;break a}a=G[18093];if(!a){d=G[18066]+G[18103]|0;e=Ba(d);a=Ba(G[18066]+G[18102]|0);G[c+96>>2]=d;G[c+100>>2]=e-a;Ma(0,c+96|0);a=G[18093]}G[18093]=a+1;break a}b=uc(a);break a;case 1:b=uc(G[18104]);break a;case 0:a=G[18104];if((a|0)<0){b=sc(G[18100],tc(0-a|0));break a}if(!a){b=G[18094];break a}b=tc(a);break a;default:break b}}d=G[18093];if(!d){d=G[18066]+G[18103]|0;e=Ba(d);a=Ba(G[18066]+G[18102]|0);G[c+48>>2]=d;G[c+52>>2]=e-a;Ma(0,c+48|0);d=G[18093]}G[18093]=d+1}Ia();g:{if(G[18101]!=3){break g}h:{i:{j:{k:{a=G[18104];switch(a-42|0){case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:break g;case 1:break h;case 0:break i;case 21:break j;default:break k}}if((a|0)!=123){break g}Ia();e=0;d=G[18099];l:{m:{if(G[18101]!=3){break m}while(1){n:{a=G[18104]-48|0;if(a>>>0>9){a=3;break n}e=a+M(e,10)|0;Ia();a=G[18101];if((a|0)==3){continue}}break}if(e){a=e;while(1){d=Fb(d,b);a=a-1|0;if(a){continue}break}a=G[18101]}if((a|0)!=3){break m}if(G[18104]!=44){break l}Ia();g=G[18101];a=G[18104];if(!((g|0)!=3|(a|0)!=125)){d=Fb(d,db(G[18099],Vc(b)));break l}o:{if((g|0)!=3){break o}while(1){a=a-48|0;if(a>>>0>9){break o}f=a+M(f,10)|0;Ia();if(G[18101]!=3){break o}a=G[18104];continue}}a=f-e|0;if((a|0)<0){a=G[18093];if(!a){b=G[18066]+G[18103]|0;e=Ba(b);a=Ba(G[18066]+G[18102]|0);G[c+16>>2]=b;G[c+20>>2]=e-a;Ma(10,c+16|0);a=G[18093]}G[18093]=a+1;break l}if((e|0)==(f|0)){break l}while(1){d=Fb(d,db(G[18099],b));a=a-1|0;if(a){continue}break}break l}a=G[18093];if(!a){b=G[18066]+G[18103]|0;e=Ba(b);a=Ba(G[18066]+G[18102]|0);G[c+32>>2]=b;G[c+36>>2]=e-a;Ma(9,c+32|0);a=G[18093]}G[18093]=a+1}if(!(G[18101]==3&G[18104]==125)){a=G[18093];if(!a){b=G[18066]+G[18103]|0;e=Ba(b);a=Ba(G[18066]+G[18102]|0);G[c>>2]=b;G[c+4>>2]=e-a;Ma(4,c);a=G[18093]}G[18093]=a+1}Ia();b=d;break g}Ia();b=db(G[18099],b);break g}Ia();b=db(G[18099],Vc(b));break g}Ia();b=Vc(b)}ia=c+112|0;return b}function qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+76|0;g=1;while(1){f=g;h=b;a=b+2|0;b=a;a:{b:{c:{d:{e:{f:{i=H[h+2|0];switch(i-216|0){case 4:case 5:case 6:case 7:continue;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break a;case 0:case 1:case 2:case 3:break d;case 39:break f;default:break e}}b=a;if(H[h+3|0]>253){continue}break a}if(i){break a}b=a;g:{h:{i:{j:{k:{l:{m:{n:{l=H[h+3|0];switch(H[l+k|0]-3|0){case 8:case 14:break i;case 6:case 7:break j;case 18:break k;case 0:break l;case 10:break m;case 9:break n;case 19:case 21:case 26:break a;case 2:break b;case 3:break c;case 4:break d;default:continue}}if((f|0)!=2){j=12;g=2;if((c|0)<=(e|0)){continue}G[((e<<4)+d|0)+4>>2]=h+4;continue}g=2;if((j|0)!=12){continue}if((c|0)>(e|0)){G[((e<<4)+d|0)+8>>2]=a}e=e+1|0;j=12;break g}if((f|0)!=2){j=13;g=2;if((c|0)<=(e|0)){continue}G[((e<<4)+d|0)+4>>2]=h+4;continue}g=2;if((j|0)!=13){continue}if((c|0)>(e|0)){G[((e<<4)+d|0)+8>>2]=a}e=e+1|0;j=13;break g}if((c|0)<=(e|0)){continue}E[((e<<4)+d|0)+12|0]=0;break h}g=0;o:{switch(f-1|0){case 0:continue;case 1:break o;default:break h}}g=2;if((c|0)<=(e|0)){continue}i=(e<<4)+d|0;if(!H[i+12|0]){continue}p:{if((a|0)==G[i+4>>2]|(l|0)!=32){break p}f=7;q:{r:{s:{t:{u:{b=H[h+4|0];switch(b-216|0){case 0:case 1:case 2:case 3:break q;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break r;case 39:break s;case 4:case 5:case 6:case 7:break t;default:break u}}if(b){break r}b=H[h+5|0];if((b|0)==32){break p}f=H[b+k|0];break q}f=8;break q}f=0;if(H[h+5|0]>253){break q}}f=29}b=a;if((f|0)!=(j|0)){continue}}E[i+12|0]=0;b=a;continue}g=0;v:{switch(f-1|0){case 0:continue;case 1:break v;default:break h}}g=2;if((c|0)<=(e|0)){continue}E[((e<<4)+d|0)+12|0]=0;continue}g=2;if((f|0)==2){continue}return e|0}g=f;continue}g=0;continue}w:{if(f){break w}f=1;if((c|0)<=(e|0)){break w}b=(e<<4)+d|0;E[b+12|0]=1;G[b>>2]=a}b=h+4|0;g=f;continue}b=h+3|0;if(f){continue}g=1;if((c|0)<=(e|0)){continue}f=(e<<4)+d|0;E[f+12|0]=1;G[f>>2]=a;continue}if(f){continue}g=1;if((c|0)<=(e|0)){continue}b=(e<<4)+d|0;E[b+12|0]=1;G[b>>2]=a;b=a;continue}b=a;if(f){continue}g=1;if((c|0)<=(e|0)){continue}b=(e<<4)+d|0;E[b+12|0]=1;G[b>>2]=a;b=a;continue}}function Jg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+76|0;f=1;while(1){a=f;h=b;g=h+2|0;b=g;a:{b:{c:{d:{e:{f:{i=H[h+3|0];switch(i-216|0){case 4:case 5:case 6:case 7:continue;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break a;case 0:case 1:case 2:case 3:break d;case 39:break f;default:break e}}b=g;if(H[g|0]>253){continue}break a}if(i){break a}b=g;g:{h:{i:{j:{k:{l:{m:{n:{l=H[g|0];switch(H[l+k|0]-3|0){case 8:case 14:break i;case 6:case 7:break j;case 18:break k;case 0:break l;case 10:break m;case 9:break n;case 19:case 21:case 26:break a;case 2:break b;case 3:break c;case 4:break d;default:continue}}if((a|0)!=2){j=12;f=2;if((c|0)<=(e|0)){continue}G[((e<<4)+d|0)+4>>2]=h+4;continue}f=2;if((j|0)!=12){continue}if((c|0)>(e|0)){G[((e<<4)+d|0)+8>>2]=g}e=e+1|0;j=12;break g}if((a|0)!=2){j=13;f=2;if((c|0)<=(e|0)){continue}G[((e<<4)+d|0)+4>>2]=h+4;continue}f=2;if((j|0)!=13){continue}if((c|0)>(e|0)){G[((e<<4)+d|0)+8>>2]=g}e=e+1|0;j=13;break g}if((c|0)<=(e|0)){continue}E[((e<<4)+d|0)+12|0]=0;break h}f=0;o:{switch(a-1|0){case 0:continue;case 1:break o;default:break h}}f=2;if((c|0)<=(e|0)){continue}i=(e<<4)+d|0;if(!H[i+12|0]){continue}p:{if(G[i+4>>2]==(g|0)|(l|0)!=32){break p}a=7;q:{r:{s:{t:{u:{b=H[h+5|0];switch(b-216|0){case 0:case 1:case 2:case 3:break q;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break r;case 39:break s;case 4:case 5:case 6:case 7:break t;default:break u}}if(b){break r}a=H[h+4|0];if((a|0)==32){break p}a=H[a+k|0];break q}a=8;break q}a=0;if(H[h+4|0]>253){break q}}a=29}b=g;if((a|0)!=(j|0)){continue}}E[i+12|0]=0;b=g;continue}f=0;v:{switch(a-1|0){case 0:continue;case 1:break v;default:break h}}f=2;if((c|0)<=(e|0)){continue}E[((e<<4)+d|0)+12|0]=0;continue}f=2;if((a|0)==2){continue}return e|0}f=a;continue}f=0;continue}w:{if(a){break w}a=1;if((c|0)<=(e|0)){break w}b=(e<<4)+d|0;E[b+12|0]=1;G[b>>2]=g}b=h+4|0;f=a;continue}b=h+3|0;if(a){continue}f=1;if((c|0)<=(e|0)){continue}a=(e<<4)+d|0;E[a+12|0]=1;G[a>>2]=g;continue}if(a){continue}f=1;if((c|0)<=(e|0)){continue}a=(e<<4)+d|0;E[a+12|0]=1;G[a>>2]=g;continue}b=g;if(a){continue}f=1;if((c|0)<=(e|0)){continue}a=(e<<4)+d|0;E[a+12|0]=1;G[a>>2]=g;continue}}function jc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=-1;a:{if((b|0)==(c|0)){break a}b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{e=H[b|0];switch(e-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break j;case 4:case 5:case 6:case 7:break b;case 0:case 1:case 2:case 3:break g;case 39:break i;default:break k}}if(!e){break h}}f=H[b+1|0];break d}f=H[b+1|0];if(f>>>0>253){break b}break d}l:{f=H[b+1|0];h=a+76|0;switch(H[f+h|0]-5|0){case 14:break l;case 17:case 19:break c;case 24:break d;case 0:break e;case 1:break f;case 2:break g;default:break b}}a=b+2|0;if((a|0)==(c|0)){break a}if(H[a|0]){b=a;break b}e=H[b+3|0];if((e|0)==120){a=b+4|0;if((c|0)==(a|0)){break a}if(H[a|0]){b=a;break b}if((H[h+H[b+5|0]|0]&254)!=24){b=a;break b}b=b+6|0;if((c|0)==(b|0)){break a}while(1){if(H[b|0]){break b}e=H[h+H[a+3|0]|0];if(e-24>>>0>=2){if((e|0)!=18){break b}b=a+4|0;i=10;break b}a=b;b=b+2|0;if((c|0)!=(b|0)){continue}break}break a}if(H[e+h|0]!=25){b=a;break b}b=a;while(1){a=b;b=b+2|0;if((c|0)==(b|0)){break a}if(H[b|0]){break b}e=H[h+H[a+3|0]|0];if((e|0)==25){continue}break}if((e|0)!=18){break b}b=a+4|0;i=10;break b}g=-2;if((c-b|0)>=4){break b}break a}g=-2;if((c-b|0)>=3){break b}break a}g=-2;if((c-b|0)>=2){break b}break a}if(!(G[(f>>>3&28|H[e+14240|0]<<5)+12224>>2]>>>f&1)){break b}}e=b+2|0;if((e|0)==(c|0)){break a}h=a+76|0;a=b;while(1){b=e;m:{n:{o:{p:{q:{r:{s:{t:{u:{f=H[a+2|0];switch(f-216|0){case 4:case 5:case 6:case 7:break b;case 0:case 1:case 2:case 3:break q;case 39:break s;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break t;default:break u}}if(!f){break r}}e=H[a+3|0];break n}e=H[a+3|0];if(e>>>0>253){break b}break n}v:{e=H[a+3|0];switch(H[h+e|0]-5|0){case 17:case 19:case 20:case 21:case 22:break m;case 24:break n;case 0:break o;case 1:break p;case 2:break q;case 13:break v;default:break b}}b=a+4|0;i=9;break b}g=-2;if((c-b|0)>=4){break b}break a}g=-2;if((c-b|0)>=3){break b}break a}g=-2;if((c-b|0)>=2){break b}break a}if(!(G[(e>>>3&28|H[f+14496|0]<<5)+12224>>2]>>>e&1)){break b}}a=b;e=b+2|0;if((e|0)!=(c|0)){continue}break}break a}G[d>>2]=b;g=i}return g}function kc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=-1;a:{if((b|0)==(c|0)){break a}b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{h=H[b+1|0];switch(h-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break j;case 4:case 5:case 6:case 7:break b;case 0:case 1:case 2:case 3:break g;case 39:break i;default:break k}}if(!h){break h}}e=H[b|0];break d}e=H[b|0];if(e>>>0>253){break b}break d}l:{e=H[b|0];f=a+76|0;switch(H[e+f|0]-5|0){case 14:break l;case 17:case 19:break c;case 24:break d;case 0:break e;case 1:break f;case 2:break g;default:break b}}a=b+2|0;if((a|0)==(c|0)){break a}if(H[b+3|0]){b=a;break b}e=H[a|0];if((e|0)==120){a=b+4|0;if((c|0)==(a|0)){break a}if(H[b+5|0]){b=a;break b}if((H[f+H[a|0]|0]&254)!=24){b=a;break b}b=b+6|0;if((c|0)==(b|0)){break a}while(1){if(H[a+3|0]){break b}e=H[f+H[b|0]|0];if(e-24>>>0>=2){if((e|0)!=18){break b}b=a+4|0;i=10;break b}a=b;b=b+2|0;if((c|0)!=(b|0)){continue}break}break a}if(H[e+f|0]!=25){b=a;break b}b=a;while(1){a=b;b=b+2|0;if((c|0)==(b|0)){break a}if(H[a+3|0]){break b}e=H[f+H[b|0]|0];if((e|0)==25){continue}break}if((e|0)!=18){break b}b=a+4|0;i=10;break b}g=-2;if((c-b|0)>=4){break b}break a}g=-2;if((c-b|0)>=3){break b}break a}g=-2;if((c-b|0)>=2){break b}break a}if(!(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1)){break b}}f=b+2|0;if((f|0)==(c|0)){break a}h=a+76|0;e=b;while(1){b=f;m:{n:{o:{p:{q:{r:{s:{t:{u:{f=H[e+3|0];switch(f-216|0){case 4:case 5:case 6:case 7:break b;case 0:case 1:case 2:case 3:break q;case 39:break s;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break t;default:break u}}if(!f){break r}}a=H[b|0];break n}a=H[b|0];if(a>>>0>253){break b}break n}v:{a=H[b|0];switch(H[h+a|0]-5|0){case 17:case 19:case 20:case 21:case 22:break m;case 24:break n;case 0:break o;case 1:break p;case 2:break q;case 13:break v;default:break b}}b=e+4|0;i=9;break b}g=-2;if((c-b|0)>=4){break b}break a}g=-2;if((c-b|0)>=3){break b}break a}g=-2;if((c-b|0)>=2){break b}break a}if(!(G[(a>>>3&28|H[f+14496|0]<<5)+12224>>2]>>>a&1)){break b}}e=b;f=b+2|0;if((f|0)!=(c|0)){continue}break}break a}G[d>>2]=b;g=i}return g}function je(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=ia-16|0;ia=g;j=G[c>>2];G[g+4>>2]=j;a:{if(G[a+144>>2]==(b|0)){G[a+288>>2]=j;k=a+288|0;o=a+292|0;break a}k=G[a+300>>2];o=k+4|0}G[k>>2]=j;G[c>>2]=0;n=a+292|0;l=a+288|0;b:{c:{while(1){h=ka[G[b+8>>2]](b,G[g+4>>2],d,g)|0;i=G[g>>2];G[o>>2]=i;d:{e:{f:{switch(h+4|0){case 44:d=G[a+76>>2];g:{if(d){ka[d|0](G[a+4>>2]);break g}f=G[a+80>>2];if(!f){break g}d=G[g+4>>2];G[g+12>>2]=d;if(!H[b+72|0]){if(G[a+144>>2]!=(b|0)){l=G[a+300>>2];n=l+4|0}while(1){G[g+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,g+12|0,i,g+8|0,G[a+48>>2]);G[n>>2]=G[g+12>>2];d=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],d,G[g+8>>2]-d|0);G[l>>2]=G[g+12>>2];if(G[g+12>>2]!=(i|0)){continue}break}break g}ka[f|0](G[a+4>>2],d,i-d|0)}b=G[g>>2];G[c>>2]=b;G[e>>2]=b;i=G[a+480>>2]==2?35:0;break b;case 11:h=G[a+60>>2];if(h){E[g+12|0]=10;ka[h|0](G[a+4>>2],g+12|0,1);break d}j=G[a+80>>2];if(!j){break d}h=G[g+4>>2];G[g+12>>2]=h;if(!H[b+72|0]){h=l;j=n;if(G[a+144>>2]!=(b|0)){h=G[a+300>>2];j=h+4|0}while(1){G[g+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,g+12|0,i,g+8|0,G[a+48>>2]);G[j>>2]=G[g+12>>2];m=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],m,G[g+8>>2]-m|0);G[h>>2]=G[g+12>>2];if(G[g+12>>2]!=(i|0)){continue}break}break d}ka[j|0](G[a+4>>2],h,i-h|0);break d;case 10:h=G[a+60>>2];if(h){if(H[b+72|0]){break e}while(1){G[g+12>>2]=G[a+44>>2];ka[G[b+60>>2]](b,g+4|0,i,g+12|0,G[a+48>>2]);G[o>>2]=G[g>>2];j=G[a+44>>2];ka[h|0](G[a+4>>2],j,G[g+12>>2]-j|0);j=G[g+4>>2];if((j|0)==G[g>>2]){break d}G[k>>2]=j;i=G[g>>2];continue}}j=G[a+80>>2];if(!j){break d}h=G[g+4>>2];G[g+12>>2]=h;if(!H[b+72|0]){h=l;j=n;if(G[a+144>>2]!=(b|0)){h=G[a+300>>2];j=h+4|0}while(1){G[g+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,g+12|0,i,g+8|0,G[a+48>>2]);G[j>>2]=G[g+12>>2];m=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],m,G[g+8>>2]-m|0);G[h>>2]=G[g+12>>2];if(G[g+12>>2]!=(i|0)){continue}break}break d}ka[j|0](G[a+4>>2],h,i-h|0);break d;case 2:if(!f){i=6;break b}G[e>>2]=G[g+4>>2];i=0;break b;case 0:case 3:if(!f){i=20;break b}G[e>>2]=G[g+4>>2];i=0;break b;case 4:break c;default:break f}}G[k>>2]=i;i=23;break b}j=G[g+4>>2];ka[h|0](G[a+4>>2],j,i-j|0)}h=G[g>>2];G[g+4>>2]=h;G[k>>2]=h;i=35;h:{switch(G[a+480>>2]-2|0){case 0:break b;case 1:break h;default:continue}}break}G[e>>2]=G[g>>2];i=0;break b}G[k>>2]=i;i=4}ia=g+16|0;return i}function de(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;h=ia-16|0;ia=h;a:{b:{if((b|0)==(c|0)){break b}e=1;c:{d:{e:{f:{g:{h:{i=a+76|0;switch(H[i+H[b|0]|0]-5|0){case 17:case 19:break d;case 2:break f;case 1:break g;case 0:break h;default:break e}}e=2;f=-2;if((c-b|0)<2){break a}if(ka[G[a+344>>2]](a,b)|0){break d}break e}e=3;f=-2;if((c-b|0)<3){break a}if(!(ka[G[a+348>>2]](a,b)|0)){break e}break d}e=4;f=-2;if((c-b|0)<4){break a}if(ka[G[a+352>>2]](a,b)|0){break d}}G[d>>2]=b;break c}e=b+e|0;if((e|0)==(c|0)){break b}i:{j:{k:{l:{m:{while(1){n:{f=1;g=e;o:{p:{switch(H[H[e|0]+i|0]-5|0){case 0:if((c-e|0)<2){f=-2;break a}f=2;if(ka[G[a+332>>2]](a,e)|0){break o}break l;case 1:if((c-e|0)<3){f=-2;break a}f=3;if(ka[G[a+336>>2]](a,e)|0){break o}break l;case 24:break l;case 10:break m;case 4:case 5:case 16:break n;case 17:case 19:case 20:case 21:case 22:break o;case 2:break p;default:break j}}if((c-e|0)<4){f=-2;break a}f=4;if(!(ka[G[a+340>>2]](a,e)|0)){break l}}e=e+f|0;if((e|0)!=(c|0)){continue}break b}break}f=11;G[h+12>>2]=11;q:{if((e-b|0)!=3){break q}g=E[b|0];if((g|0)==120){g=0}else{if((g|0)!=88){break q}g=1}j=E[b+1|0];if((j|0)!=109){if((j|0)!=77){break q}g=1}b=E[b+2|0];if((b|0)==76){break l}if((b|0)!=108){break q}if(g){break l}f=12;G[h+12>>2]=12}e=e+1|0;if((e|0)==(c|0)){break b}while(1){r:{s:{switch(H[H[e|0]+i|0]){case 5:if((c-e|0)<2){f=-2;break a}if(ka[G[a+356>>2]](a,e)|0){break i}b=e+2|0;break r;case 6:if((c-e|0)<3){f=-2;break a}if(ka[G[a+360>>2]](a,e)|0){break i}b=e+3|0;break r;case 7:if((c-e|0)<4){f=-2;break a}if(ka[G[a+364>>2]](a,e)|0){break i}b=e+4|0;break r;case 15:b=e+1|0;if((c|0)==(b|0)){break b}if(H[b|0]!=62){break r}G[d>>2]=e+2;break a;case 0:case 1:case 8:break i;default:break s}}b=e+1|0}e=b;if((e|0)!=(c|0)){continue}break}break b}G[h+12>>2]=11;a=1;t:{if((e-b|0)!=3){break t}g=E[b|0];if((g|0)==120){g=0}else{if((g|0)!=88){break t}g=1}f=E[b+1|0];if((f|0)!=109){if((f|0)!=77){break t}g=1}b=E[b+2|0];if((b|0)!=108){if((b|0)!=76){break t}a=0;break t}a=0;if(g){break t}G[h+12>>2]=12;a=1}if(a){break k}}G[d>>2]=e;break c}f=-1;g=e+1|0;if((g|0)==(c|0)){break a}if(H[e+1|0]!=62){break j}G[d>>2]=e+2;f=G[h+12>>2];break a}G[d>>2]=g;break c}G[d>>2]=e}f=0;break a}f=-1}ia=h+16|0;return f}function Hc(a,b,c,d,e,f,g){var h=0,i=0,j=0;h=ia-16|0;ia=h;a:{b:{if((b|0)==(c|0)){G[d>>2]=0;break b}G[h+12>>2]=b;i=h+11|0;G[h+4>>2]=i;j=h+12|0;ka[G[a+60>>2]](a,j,c,h+4|0,j);c:{i=((i|0)==G[h+4>>2]?-1:E[h+11|0])-9|0;d:{if(i>>>0>23|!(1<<i&8388627)){break d}i=h+12|0;while(1){e:{b=G[a+68>>2]+b|0;G[h+12>>2]=b;j=h+11|0;G[h+4>>2]=j;ka[G[a+60>>2]](a,h+12|0,c,h+4|0,i);j=((j|0)==G[h+4>>2]?-1:E[h+11|0])-9|0;if(j>>>0>23){break e}if(1<<j&8388627){continue}}break}if((b|0)==(c|0)){G[d>>2]=0;break b}G[d>>2]=b;i=h+12|0;f:{g:{while(1){h:{G[h+12>>2]=b;j=h+11|0;G[h+4>>2]=j;ka[G[a+60>>2]](a,h+12|0,c,h+4|0,i);i:{j:{k:{j=(j|0)==G[h+4>>2]?-1:E[h+11|0];switch(j+1|0){case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 12:case 13:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:break i;case 10:case 11:case 14:case 33:break k;case 0:break d;default:break j}}G[e>>2]=b;e=h+12|0;while(1){b=G[a+68>>2]+b|0;G[h+12>>2]=b;i=h+11|0;G[h+4>>2]=i;ka[G[a+60>>2]](a,h+12|0,c,h+4|0,e);i=(i|0)==G[h+4>>2]?-1:E[h+11|0];j=i-9|0;if(j>>>0>23){break g}if(1<<j&8388627){continue}break}break g}if((j|0)==61){break h}}b=G[a+68>>2]+b|0;continue}break}G[e>>2]=b;break f}if((i|0)!=61){break d}}if(G[d>>2]!=(b|0)){break c}}G[g>>2]=b;a=0;break a}d=G[a+68>>2]+b|0;G[h+12>>2]=d;b=h+11|0;G[h+4>>2]=b;e=h+12|0;ka[G[a+60>>2]](a,e,c,h+4|0,e);b=(b|0)==G[h+4>>2]?-1:E[h+11|0];while(1){l:{m:{i=b-9|0;if(i>>>0<=30){if(1<<i&8388627){break l}if(1<<i&1107296256){break m}}G[g>>2]=d;a=0;break a}d=G[a+68>>2]+d|0;G[f>>2]=d;G[h+12>>2]=d;e=h+11|0;G[h+4>>2]=e;f=h+12|0;ka[G[a+60>>2]](a,f,c,h+4|0,f);e=(e|0)==G[h+4>>2]?-1:E[h+11|0];if((e|0)!=(b|0)){while(1){if(!((e&-33)-65>>>0<26|e-58>>>0>4294967285|((e|0)==95|e-45>>>0<2))){G[g>>2]=d;a=0;break a}d=G[a+68>>2]+d|0;G[h+12>>2]=d;e=h+11|0;G[h+4>>2]=e;ka[G[a+60>>2]](a,h+12|0,c,h+4|0,f);e=(e|0)==G[h+4>>2]?-1:E[h+11|0];if((e|0)!=(b|0)){continue}break}}G[g>>2]=G[a+68>>2]+d;break b}d=G[a+68>>2]+d|0;G[h+12>>2]=d;b=h+11|0;G[h+4>>2]=b;ka[G[a+60>>2]](a,h+12|0,c,h+4|0,e);b=(b|0)==G[h+4>>2]?-1:E[h+11|0];continue}}a=1}ia=h+16|0;return a}function Nd(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=ia-128|0;ia=j;a:{b:{c:{if(!Ab(f,g,h,i,0,0,0,0)){break c}m=i&65535;n=i>>>16&32767;d:{e:{if((n|0)!=32767){l=4;if(n){break e}l=f|h|(g|m)?3:2;break d}l=!(f|h|(g|m))}}r=e>>>16|0;o=r&32767;if((o|0)==32767){break c}if(l){break b}}Ea(j+16|0,b,c,d,e,f,g,h,i);e=G[j+16>>2];d=G[j+20>>2];c=G[j+24>>2];b=G[j+28>>2];zd(j,e,d,c,b,e,d,c,b);d=G[j+8>>2];e=G[j+12>>2];h=G[j>>2];i=G[j+4>>2];break a}m=e&65535|o<<16;p=m;l=d;m=h;q=i>>>16&32767;k=i&65535|q<<16;if((Ab(b,c,l,p,f,g,h,k)|0)<=0){if(Ab(b,c,l,p,f,g,m,k)){h=b;i=c;break a}Ea(j+112|0,b,c,d,e,0,0,0,0);d=G[j+120>>2];e=G[j+124>>2];h=G[j+112>>2];i=G[j+116>>2];break a}if(o){i=c;h=b}else{Ea(j+96|0,b,c,l,p,0,0,0,1081540608);h=G[j+108>>2];p=h;l=G[j+104>>2];o=(h>>>16|0)-120|0;i=G[j+100>>2];h=G[j+96>>2]}if(!q){Ea(j+80|0,f,g,m,k,0,0,0,1081540608);f=G[j+92>>2];k=f;m=G[j+88>>2];q=(k>>>16|0)-120|0;g=G[j+84>>2];f=G[j+80>>2]}s=k&65535|65536;p=p&65535|65536;if((o|0)>(q|0)){while(1){t=l-m|0;k=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;n=(p-((l>>>0<m>>>0)+s|0)|0)-(t>>>0<k>>>0)|0;k=t-k|0;f:{if((n|0)>0|(n|0)>=0){l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(!(h|k|(i|n))){Ea(j+32|0,b,c,d,e,0,0,0,0);d=G[j+40>>2];e=G[j+44>>2];h=G[j+32>>2];i=G[j+36>>2];break a}n=n<<1|k>>>31;l=k<<1|i>>>31;p=n;break f}n=p<<1|l>>>31;l=l<<1|i>>>31;p=n}n=i<<1|h>>>31;h=h<<1;i=n;o=o-1|0;if((q|0)<(o|0)){continue}break}o=q}q=l-m|0;n=(g|0)==(i|0)&f>>>0>h>>>0|g>>>0>i>>>0;k=(p-((l>>>0<m>>>0)+s|0)|0)-(q>>>0<n>>>0)|0;m=q-n|0;g:{if((k|0)<0){m=l;k=p;break g}l=h;h=h-f|0;i=i-((f>>>0>l>>>0)+g|0)|0;if(h|m|(i|k)){break g}Ea(j+48|0,b,c,d,e,0,0,0,0);d=G[j+56>>2];e=G[j+60>>2];h=G[j+48>>2];i=G[j+52>>2];break a}if((k|0)==65535|k>>>0<65535){while(1){b=i>>>31|0;o=o-1|0;p=i<<1|h>>>31;h=h<<1;i=p;c=b;b=m;k=k<<1|b>>>31;m=c|b<<1;if(k>>>0<65536){continue}break}}b=r&32768;if((o|0)<=0){Ea(j- -64|0,h,i,m,k&65535|(b|o+120)<<16,0,0,0,1065811968);d=G[j+72>>2];e=G[j+76>>2];h=G[j+64>>2];i=G[j+68>>2];break a}d=m;e=k&65535|(b|o)<<16}G[a>>2]=h;G[a+4>>2]=i;G[a+8>>2]=d;G[a+12>>2]=e;ia=j+128|0}function zg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(c|0)){return-4}a:{b:{c:{d:{e:{f:{g:{e=c-b|0;if(e&1){c=e&-2;if(!c){break g}c=b+c|0}h:{i:{e=H[b|0];switch(e-216|0){case 39:break i;case 4:case 5:case 6:case 7:break b;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break d;case 0:case 1:case 2:case 3:break e;default:break h}}if(H[b+1|0]<=253){break d}break b}if(!e){break f}break d}return-1}j:{k:{l:{m:{n:{e=a+76|0;switch(H[e+H[b+1|0]|0]){case 6:break j;case 5:break k;case 10:break l;case 9:break m;case 4:break n;case 0:case 1:case 8:break b;case 7:break e;default:break d}}f=-1;e=b+2|0;if((e|0)==(c|0)){break a}if(H[e|0]|H[b+3|0]!=93){break c}if((b+4|0)==(c|0)){break a}if(H[b+4|0]|H[b+5|0]!=62){break c}b=b+6|0;f=40;break b}a=b+2|0;if((a|0)==(c|0)){return-1}c=H[b+3|0];f=b+4|0;b=H[b+2|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+e|0]}b=(b|0)==10?f:a;f=7;break b}b=b+2|0;f=7;break b}f=-2;if((c-b|0)<2){break a}e=b+2|0;break c}f=-2;if((c-b|0)<3){break a}e=b+3|0;break c}f=-2;if((c-b|0)<4){break a}e=b+4|0;break c}e=b+2|0}f=6;if((c|0)!=(e|0)){g=a+76|0;b=e;while(1){a=2;o:{p:{q:{r:{s:{t:{e=H[b|0];switch(e-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break o;case 0:case 1:case 2:case 3:break p;case 39:break s;case 4:case 5:case 6:case 7:break b;default:break t}}if(e){break o}switch(H[H[b+1|0]+g|0]){case 7:break p;case 6:break q;case 5:break r;case 0:case 1:case 4:case 8:case 9:case 10:break b;default:break o}}if(H[b+1|0]<=253){break o}break b}if((c-b|0)>=2){break o}break b}a=3;if((c-b|0)>=3){break o}break b}a=4;if((c-b|0)<4){break b}}b=a+b|0;if((c|0)!=(b|0)){continue}break}}b=c}G[d>>2]=b}return f|0}function Rg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(c|0)){return-4}a:{b:{c:{d:{e:{f:{g:{e=c-b|0;if(e&1){c=e&-2;if(!c){break g}c=b+c|0}h:{i:{e=H[b+1|0];switch(e-216|0){case 39:break i;case 4:case 5:case 6:case 7:break b;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break d;case 0:case 1:case 2:case 3:break e;default:break h}}if(H[b|0]<=253){break d}break b}if(!e){break f}break d}return-1}j:{k:{l:{m:{n:{e=a+76|0;switch(H[e+H[b|0]|0]){case 6:break j;case 5:break k;case 10:break l;case 9:break m;case 4:break n;case 0:case 1:case 8:break b;case 7:break e;default:break d}}f=-1;e=b+2|0;if((e|0)==(c|0)){break a}if(H[b+3|0]|H[e|0]!=93){break c}if((b+4|0)==(c|0)){break a}if(H[b+5|0]|H[b+4|0]!=62){break c}b=b+6|0;f=40;break b}a=b+2|0;if((a|0)==(c|0)){return-1}c=H[b+2|0];f=b+4|0;b=H[b+3|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+e|0]}b=(b|0)==10?f:a;f=7;break b}b=b+2|0;f=7;break b}f=-2;if((c-b|0)<2){break a}e=b+2|0;break c}f=-2;if((c-b|0)<3){break a}e=b+3|0;break c}f=-2;if((c-b|0)<4){break a}e=b+4|0;break c}e=b+2|0}f=6;if((c|0)!=(e|0)){g=a+76|0;b=e;while(1){a=2;o:{p:{q:{r:{s:{t:{e=H[b+1|0];switch(e-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break o;case 0:case 1:case 2:case 3:break p;case 39:break s;case 4:case 5:case 6:case 7:break b;default:break t}}if(e){break o}switch(H[H[b|0]+g|0]){case 7:break p;case 6:break q;case 5:break r;case 0:case 1:case 4:case 8:case 9:case 10:break b;default:break o}}if(H[b|0]<=253){break o}break b}if((c-b|0)>=2){break o}break b}a=3;if((c-b|0)>=3){break o}break b}a=4;if((c-b|0)<4){break b}}b=a+b|0;if((c|0)!=(b|0)){continue}break}}b=c}G[d>>2]=b}return f|0}function vc(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=ia-80|0;ia=e;a:{b:{c:{d:{e:{f:{c=G[a+56>>2];b=M(c,20)+a|0;d=G[b+76>>2];switch(d-20|0){case 11:break c;case 9:break d;case 1:break e;case 0:break f;default:break b}}c=G[b+60>>2];while(1){b=c;c=b+1|0;if(H[b|0]!=58){continue}break}d=0;E[b|0]=0;b=xa(G[(M(G[a+56>>2],20)+a|0)+60>>2]);c=xa(c);f=Sa(72112,b);g:{if(!f){f=M(G[a+56>>2],20)+a|0;g=G[f+72>>2];f=G[f+68>>2];G[e+48>>2]=G[a+4>>2];G[e+52>>2]=f;G[e+56>>2]=g;G[e+60>>2]=b+G[18011];ya(1,a,55,e+48|0);break g}d=G[(G[18028]+M(f,12)|0)+4>>2]}c=sd(d,c);ra(a);break a}c=xa(G[b+60>>2]);b=Sa(72112,c);h:{if(!b){b=M(G[a+56>>2],20)+a|0;d=G[b+72>>2];b=G[b+68>>2];G[e+64>>2]=G[a+4>>2];G[e+68>>2]=b;G[e+72>>2]=d;G[e+76>>2]=c+G[18011];ya(1,a,55,e- -64|0);c=0;break h}c=G[(G[18028]+M(b,12)|0)+4>>2]}b=G[18006];d=G[18005]+(b<<2)|0;G[d>>2]=2;G[d+4>>2]=c;c=va(72048,b);i:{if((c|0)!=-1){break i}c=G[18006];wa(72048,c);d=G[18005];b=G[18006];b=G[(H[d+(b<<2)|0]<<2)+11120>>2]+b|0;G[18006]=b;f=b+3|0;if((f|0)<=G[18009]){break i}f=f<<1;G[18009]=f;G[18005]=sa(d,f,b,4)}ra(a);break a}c=G[18006];G[G[18005]+(c<<2)>>2]=3;c=va(72048,c);j:{if((c|0)!=-1){break j}c=G[18006];wa(72048,c);d=G[18005];b=G[18006];b=G[(H[d+(b<<2)|0]<<2)+11120>>2]+b|0;G[18006]=b;f=b+3|0;if((f|0)<=G[18009]){break j}f=f<<1;G[18009]=f;G[18005]=sa(d,f,b,4)}ra(a);break a}ra(a);c=wc(a);if(!Fa(a,32,33)){break a}ra(a);break a}if(d>>>0<=19){b=xa(G[(M(c,20)+a|0)+60>>2]);c=0;d=Sa(72112,0);k:{if(!d){d=M(G[a+56>>2],20)+a|0;f=G[d+72>>2];d=G[d+68>>2];G[e>>2]=G[a+4>>2];G[e+4>>2]=d;G[e+8>>2]=f;G[e+12>>2]=G[18011];ya(1,a,55,e);break k}c=G[(G[18028]+M(d,12)|0)+4>>2]}c=sd(c,b);ra(a);break a}b=a+60|0;c=b+M(c,20)|0;f=G[c+12>>2];c=G[c+8>>2];g=G[a+4>>2];G[e+32>>2]=eb(d);G[e+28>>2]=4794;G[e+20>>2]=c;G[e+24>>2]=f;G[e+16>>2]=g;c=0;ya(0,a,40,e+16|0);b=G[(b+M(G[a+56>>2],20)|0)+16>>2];if((b|0)==-1|(b|0)==33){break a}while(1){ra(a);b=G[(M(G[a+56>>2],20)+a|0)+76>>2];if((b|0)==33){break a}if((b|0)!=-1){continue}break}}ia=e+80|0;return c}function Td(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=-1;a:{if((b|0)==(c|0)){break a}b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{h=H[b|0];switch(h-216|0){case 39:break j;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break k;case 0:case 1:case 2:case 3:break g;case 4:case 5:case 6:case 7:break h;default:break l}}if(!h){break i}}e=H[b+1|0];break d}e=H[b+1|0];if(e>>>0<=253){break d}break h}f=22;e=H[b+1|0];switch(H[(e+a|0)+76|0]-5|0){case 4:case 5:case 16:case 25:break b;case 17:case 19:break c;case 24:break d;case 0:break e;case 1:break f;case 2:break g;default:break h}}f=0;break b}f=0;g=-2;if((c-b|0)>=4){break b}break a}f=0;g=-2;if((c-b|0)>=3){break b}break a}f=0;g=-2;if((c-b|0)>=2){break b}break a}if(G[(e>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>e&1){break c}f=0;break b}f=b+2|0;if((f|0)==(c|0)){break a}i=a+76|0;a=b;while(1){b=f;f=0;m:{n:{o:{p:{q:{r:{s:{t:{u:{h=H[a+2|0];switch(h-216|0){case 0:case 1:case 2:case 3:break q;case 4:case 5:case 6:case 7:break b;case 39:break s;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break t;default:break u}}if(!h){break r}}e=H[a+3|0];break n}e=H[a+3|0];if(e>>>0>253){break b}break n}v:{e=H[a+3|0];switch(H[i+e|0]-5|0){case 17:case 19:case 20:case 21:case 22:break m;case 24:break n;case 0:break o;case 1:break p;case 2:break q;case 13:break v;default:break b}}b=a+4|0;f=28;break b}g=-2;if((c-b|0)>=4){break b}break a}g=-2;if((c-b|0)>=3){break b}break a}g=-2;if((c-b|0)>=2){break b}break a}if(!(G[(e>>>3&28|H[h+14496|0]<<5)+12224>>2]>>>e&1)){break b}}a=b;f=b+2|0;if((f|0)!=(c|0)){continue}break}break a}G[d>>2]=b;g=f}return g}function ab(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=ia-32|0;ia=g;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{f=G[17996];d=f+(a<<2)|0;switch(H[d|0]-1|0){case 2:break a;case 5:break j;case 4:break k;case 3:break l;case 14:break m;case 0:case 1:case 11:case 12:break n;case 10:break e;case 9:break f;case 8:break g;case 7:break h;case 6:break i;default:break d}}a=G[18021];break a}a=G[d+8>>2];a=xb(ab(G[d+4>>2],b,c),a);break a}a=G[d+8>>2];a=Ha(ab(G[d+4>>2],b,c),ab(a,b,c));break a}a=G[d+8>>2];d=G[d+4>>2];a=Ha(pb(ab(d,b,c),a),pb(d,ab(a,b,c)));break a}e=G[d+8>>2];d=G[d+4>>2];a=yb(ab(d,b,c),e);if(!(E[(G[17996]+(d<<2)|0)+1|0]&1)){break a}a=Ha(a,ab(e,b,c));break a}a=yb(ab(G[d+4>>2],b,c),Ha(a,G[18019]));break a}e=G[d+4>>2];o:{if(!c){break o}a=b+c|0;while(1){if(ta(E[b|0])){b=b+1|0;if((a|0)!=(b|0)){continue}break o}c=a;p:{d=b;if((d|0)!=(a|0)){while(1){if(ta(E[d|0])){break p}d=d+1|0;if((a|0)!=(d|0)){continue}break}a=b}e=ab(e,b,c-a|0);break o}e=ab(e,b,d-b|0);b=d;if((a|0)!=(d|0)){continue}break}}a=G[(E[(f+(e<<2)|0)+1|0]&1?72076:72084)>>2];break a}e=G[18005];d=G[d+4>>2];if(H[e+(d<<2)|0]!=6){break c}e=e+(d<<2)|0;h=G[e+8>>2];f=G[(f+(a<<2)|0)+8>>2];d=G[17979];e=G[e+4>>2];G[d>>2]=e;a=G[17986];while(1){a=a-1|0;if((e|0)!=G[M(a,12)+d>>2]){continue}break}if(!a){G[g>>2]=e+G[18011];Qd(g);d=G[17979]}e=G[18011];a=G[(ka[G[(M(a,12)+d|0)+8>>2]](e+h|0,e+f|0,b,c)|0?72076:72084)>>2];break a}e=G[d+8>>2];q:{if((ab(G[d+4>>2],b,c)|0)==G[18019]){a=72076;if(!(E[(G[17996]+(ab(e,b,c)<<2)|0)+1|0]&1)){break q}}a=72084}a=G[a>>2];break a}e=G[18005];d=G[d+4>>2];if(H[e+(d<<2)|0]!=6){break b}e=e+(d<<2)|0;h=G[e+8>>2];f=G[(f+(a<<2)|0)+8>>2];d=G[17979];e=G[e+4>>2];G[d>>2]=e;a=G[17986];while(1){a=a-1|0;if((e|0)!=G[M(a,12)+d>>2]){continue}break}if(!a){G[g+16>>2]=e+G[18011];Qd(g+16|0);d=G[17979]}e=G[18011];a=G[(ka[G[(M(a,12)+d|0)+4>>2]](e+h|0,e+f|0,b,c)|0?72076:72084)>>2];break a}Z(6674,5296,389,1464);W()}Z(6917,5296,380,1464);W()}Z(6917,5296,386,1464);W()}ia=g+32|0;return a}function Yd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=-1;a:{if((b|0)==(c|0)){break a}b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{h=H[b+1|0];switch(h-216|0){case 39:break j;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break k;case 0:case 1:case 2:case 3:break g;case 4:case 5:case 6:case 7:break h;default:break l}}if(!h){break i}}f=H[b|0];break d}f=H[b|0];if(f>>>0<=253){break d}break h}e=22;f=H[b|0];switch(H[(f+a|0)+76|0]-5|0){case 4:case 5:case 16:case 25:break b;case 17:case 19:break c;case 24:break d;case 0:break e;case 1:break f;case 2:break g;default:break h}}e=0;break b}e=0;g=-2;if((c-b|0)>=4){break b}break a}e=0;g=-2;if((c-b|0)>=3){break b}break a}e=0;g=-2;if((c-b|0)>=2){break b}break a}if(G[(f>>>3&28|H[h+14240|0]<<5)+12224>>2]>>>f&1){break c}e=0;break b}e=b+2|0;if((e|0)==(c|0)){break a}h=a+76|0;f=b;while(1){b=e;e=0;m:{n:{o:{p:{q:{r:{s:{t:{u:{i=H[f+3|0];switch(i-216|0){case 0:case 1:case 2:case 3:break q;case 4:case 5:case 6:case 7:break b;case 39:break s;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break t;default:break u}}if(!i){break r}}a=H[b|0];break n}a=H[b|0];if(a>>>0>253){break b}break n}v:{a=H[b|0];switch(H[h+a|0]-5|0){case 17:case 19:case 20:case 21:case 22:break m;case 24:break n;case 0:break o;case 1:break p;case 2:break q;case 13:break v;default:break b}}b=f+4|0;e=28;break b}g=-2;if((c-b|0)>=4){break b}break a}g=-2;if((c-b|0)>=3){break b}break a}g=-2;if((c-b|0)>=2){break b}break a}if(!(G[(a>>>3&28|H[i+14496|0]<<5)+12224>>2]>>>a&1)){break b}}f=b;e=b+2|0;if((e|0)!=(c|0)){continue}break}break a}G[d>>2]=b;g=e}return g}function Rc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=ia-16|0;ia=f;G[f+12>>2]=c;i=15;e=1;h=2e3;a:{if(!d){d=1;break a}n=c+d|0;d=1;while(1){g=H[b|0];if(!g){break a}m=g<<24>>24;b:{c:{d:{e:{k=E[c|0];if(k-48>>>0>=10){f:{g:{switch(k-43|0){default:if((k|0)==90){break f}break c;case 2:h:{switch(m-121|0){case 0:b=b+1|0;h=Xa(c,f+12|0);break b;case 1:break h;default:break c}}c=c+1|0;G[f+12>>2]=c;i=Xa(c,f+12|0);c=G[f+12>>2]+1|0;G[f+12>>2]=c;b=b+1|0;l=Xa(c,f+12|0);break b;case 0:break g;case 1:break c}}if((g|0)!=122){break e}g=c;c=f+12|0;i=Xa(g,c);g=G[f+12>>2]+1|0;G[f+12>>2]=g;b=b+1|0;i=0-i|0;l=0-Xa(g,c)|0;break b}if((g|0)!=122){break d}G[f+12>>2]=c+1;b=b+1|0;i=0;l=0;break b}b=b+1|0;i:{switch(m-100|0){case 21:h=Xa(c,f+12|0);break b;case 9:d=Xa(c,f+12|0);break b;case 0:e=Xa(c,f+12|0);break b;case 16:break i;default:break c}}g=c;c=f+12|0;o=Xa(g,c);g=G[f+12>>2]+1|0;G[f+12>>2]=g;p=Xa(g,c);g=G[f+12>>2]+1|0;G[f+12>>2]=g;j=Ld(g,c);break b}Z(7793,5318,61,3678);W()}Z(7793,5318,63,3678);W()}G[f+12>>2]=c+1}c=G[f+12>>2];if((n|0)!=(c|0)){continue}break}}if(O(j)<2147483648){b=~~j}else{b=-2147483648}c=b+M(M(o,60)+p|0,60)|0;G[a+4>>2]=c;j=(j-+(b|0))*1e6+.5;j:{if(O(j)<2147483648){b=~~j;break j}b=-2147483648}G[a+8>>2]=b;k:{if((h|0)>=0){b=h-1|0;b=((M(b,365)+((b|0)/4|0)|0)+((b|0)/-100|0)|0)+((b|0)/400|0)|0;break k}b=0-h|0;b=(M(h,365)+((b>>>0)/100|0)-(((b>>>0)/400|0)+(b>>>2|0))|0)-366|0}l:{switch(d-2|0){case 10:e=e+30|0;case 9:e=e+31|0;case 8:e=e+30|0;case 7:e=e+31|0;case 6:e=e+31|0;case 5:e=e+30|0;case 4:e=e+31|0;case 3:e=e+30|0;case 2:e=e+31|0;case 1:e=e+28|0;case 0:e=e+31|0;break;default:break l}}m:{if(h&3|(d|0)<3){break m}if((h|0)%100|0){e=e+1|0;break m}if((h|0)%400|0){break m}e=e+1|0}G[a+12>>2]=(i|0)!=15;e=b+e|0;G[a>>2]=e;n:{if((i|0)==15){break n}b=c+M(M(i,60)+l|0,60)|0;G[a+4>>2]=b;o:{if((b|0)<0){d=-1;c=86400;break o}if(b>>>0<86400){break n}d=1;c=-86400}G[a+4>>2]=c+b;G[a>>2]=d+e}ia=f+16|0}function ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!a){return Cb(b)|0}if(b>>>0>=4294967232){G[18106]=48;return 0}g=b>>>0<11?16:b+11&-8;f=a-8|0;j=G[f+4>>2];e=j&-8;a:{if(!(j&3)){if(g>>>0<256){break a}if(e>>>0>=g+4>>>0){c=f;if(e-g>>>0<=G[18274]<<1>>>0){break a}}c=0;break a}h=e+f|0;b:{if(e>>>0>=g>>>0){d=e-g|0;if(d>>>0<16){break b}G[f+4>>2]=j&1|g|2;c=f+g|0;G[c+4>>2]=d|3;G[h+4>>2]=G[h+4>>2]|1;Ad(c,d);break b}if(G[18160]==(h|0)){e=e+G[18157]|0;if(e>>>0<=g>>>0){break a}G[f+4>>2]=j&1|g|2;d=f+g|0;c=e-g|0;G[d+4>>2]=c|1;G[18157]=c;G[18160]=d;break b}if(G[18159]==(h|0)){d=e+G[18156]|0;if(d>>>0<g>>>0){break a}c=d-g|0;c:{if(c>>>0>=16){G[f+4>>2]=j&1|g|2;e=f+g|0;G[e+4>>2]=c|1;d=d+f|0;G[d>>2]=c;G[d+4>>2]=G[d+4>>2]&-2;break c}G[f+4>>2]=d|j&1|2;c=d+f|0;G[c+4>>2]=G[c+4>>2]|1;c=0;e=0}G[18159]=e;G[18156]=c;break b}d=G[h+4>>2];if(d&2){break a}k=e+(d&-8)|0;if(k>>>0<g>>>0){break a}m=k-g|0;d:{if(d>>>0<=255){e=G[h+8>>2];c=d>>>3|0;d=G[h+12>>2];if((d|0)==(e|0)){G[18154]=G[18154]&mi(-2,c);break d}G[e+12>>2]=d;G[d+8>>2]=e;break d}l=G[h+24>>2];i=G[h+12>>2];e:{if((i|0)!=(h|0)){c=G[h+8>>2];G[c+12>>2]=i;G[i+8>>2]=c;break e}f:{e=h+20|0;c=G[e>>2];if(c){break f}e=h+16|0;c=G[e>>2];if(c){break f}i=0;break e}while(1){d=e;i=c;e=c+20|0;c=G[e>>2];if(c){continue}e=i+16|0;c=G[i+16>>2];if(c){continue}break}G[d>>2]=0}if(!l){break d}d=G[h+28>>2];c=(d<<2)+72920|0;g:{if(G[c>>2]==(h|0)){G[c>>2]=i;if(i){break g}G[18155]=G[18155]&mi(-2,d);break d}G[(G[l+16>>2]==(h|0)?16:20)+l>>2]=i;if(!i){break d}}G[i+24>>2]=l;c=G[h+16>>2];if(c){G[i+16>>2]=c;G[c+24>>2]=i}c=G[h+20>>2];if(!c){break d}G[i+20>>2]=c;G[c+24>>2]=i}if(m>>>0<=15){G[f+4>>2]=j&1|k|2;c=f+k|0;G[c+4>>2]=G[c+4>>2]|1;break b}G[f+4>>2]=j&1|g|2;d=f+g|0;G[d+4>>2]=m|3;c=f+k|0;G[c+4>>2]=G[c+4>>2]|1;Ad(d,m)}c=f}if(c){return c+8|0}f=Cb(b);if(!f){return 0}c=G[a-4>>2];c=(c&3?-4:-8)+(c&-8)|0;Pa(f,a,b>>>0>c>>>0?c:b);Aa(a);return f|0}function nd(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=ia-96|0;ia=c;Va(72128);Qa(72128,xa(4790),G[18024],2);ra(a);ra(a);while(1){a:{b:{c:{d:{d=G[(M(G[a+56>>2],20)+a|0)+76>>2];switch(d-1|0){case 0:break b;case 1:break c;case 11:break d;default:break a}}ra(a);b=M(G[a+56>>2],20)+a|0;d=G[b+76>>2];e:{if(d>>>0>=20){f=G[b+72>>2];b=G[b+68>>2];e=G[a+4>>2];G[c+16>>2]=eb(d);G[c+12>>2]=4794;G[c+4>>2]=b;G[c+8>>2]=f;G[c>>2]=e;ya(0,a,40,c);b=-1;break e}b=xa(G[b+60>>2])}ra(a);Fa(a,22,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);d=md(a);if((d|0)==-1|(b|0)==-1){continue}yc(a,b,d);continue}ra(a);f=a+60|0;Fa(a,12,G[(f+M(G[a+56>>2],20)|0)+16>>2]);ra(a);d=-1;e=f+M(G[a+56>>2],20)|0;b=G[e+16>>2];if(b>>>0<=19){d=xa(G[e>>2]);ra(a);b=G[(f+M(G[a+56>>2],20)|0)+16>>2]}Fa(a,22,b);ra(a);b=md(a);if((b|0)==-1){continue}if((d|0)!=-1){yc(a,d,b)}yc(a,0,b);continue}ra(a);b=M(G[a+56>>2],20)+a|0;d=G[b+76>>2];f:{if(d>>>0>=20){f=G[b+72>>2];b=G[b+68>>2];e=G[a+4>>2];G[c+80>>2]=eb(d);G[c+76>>2]=4794;G[c+68>>2]=b;G[c+72>>2]=f;G[c+64>>2]=e;ya(0,a,40,c- -64|0);b=-1;break f}b=xa(G[b+60>>2])}ra(a);d=a+60|0;Fa(a,22,G[(d+M(G[a+56>>2],20)|0)+16>>2]);ra(a);if(Fa(a,42,G[(d+M(G[a+56>>2],20)|0)+16>>2])){d=xa(G[(M(G[a+56>>2],20)+a|0)+60>>2])}else{d=-1}ra(a);if((b|0)==-1|(d|0)==-1){continue}g=Sa(72128,b);if(g){b=b+G[18011]|0;e=M(G[a+56>>2],20)+a|0;f=G[e+72>>2];e=G[e+68>>2];h=G[a+4>>2];g=M(g,12);if(H[(g+G[18032]|0)+8|0]&2){G[c+60>>2]=b;G[c+56>>2]=f;G[c+52>>2]=e;G[c+48>>2]=h;xc(54,c+48|0);b=g+G[18032]|0;G[b+4>>2]=d;G[b+8>>2]=G[b+8>>2]&-3;continue}G[c+44>>2]=b;G[c+40>>2]=f;G[c+36>>2]=e;G[c+32>>2]=h;ya(1,a,52,c+32|0)}else{Qa(72128,b,d,0)}continue}break}g:{h:{i:{j:{if((d|0)==7){Fa(a,33,7);ra(a);if(Gb(a)){break j}break i}if(!Gb(a)){break h}}while(1){if(Gb(a)){continue}break}b=-1;if((d|0)!=7){break g}}b=-1;if(!Fa(a,34,-1)){break g}ra(a);break g}b=wb(a)}if(Fa(a,-1,-1)){ra(a)}$a(72128);ia=c+96|0;return b}function Ee(){var a=0,b=0,c=0,d=0,e=0,f=0;c=ia+-64|0;ia=c;a=G[18101];f=G[18094];while(1){a:{b:{c:{d:{e:{f:{g:{h:{switch(a|0){case 0:break e;case 1:break f;case 2:break g;case 3:break h;default:break d}}i:{j:{a=G[18104];switch(a-91|0){case 0:case 2:break i;case 1:break g;default:break j}}if((a|0)!=45){break g}}a=G[18093];if(!a){a=G[18066]+G[18103]|0;b=Ba(a);d=Ba(G[18066]+G[18102]|0);G[c+32>>2]=a;G[c+36>>2]=b-d;Ma(11,c+32|0);a=G[18093]}G[18093]=a+1}b=G[18104];Ia();if(G[18101]!=3|G[18104]!=45){break c}if(H[G[18066]+G[18102]|0]==91){f=db(f,uc(b));break a}Ia();k:{l:{m:{switch(G[18101]-2|0){case 0:break l;case 1:break m;default:break k}}n:{o:{a=G[18104];switch(a-91|0){case 1:break l;case 0:case 2:break n;default:break o}}if((a|0)!=45){break l}}a=G[18093];if(!a){a=G[18066]+G[18103]|0;d=Ba(a);e=Ba(G[18066]+G[18102]|0);G[c+16>>2]=a;G[c+20>>2]=d-e;Ma(11,c+16|0);a=G[18093]}G[18093]=a+1}d=G[18104];e=G[18098];a=G[18062]+(e<<2)|0;G[a>>2]=7;G[a+8>>2]=d;G[a+4>>2]=b;a=va(72276,e);p:{if((a|0)!=-1){break p}a=G[18098];wa(72276,a);d=G[18062];b=G[18098];b=G[((G[d+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;e=b+3|0;if((e|0)<=G[18061]){break p}e=e<<1;G[18061]=e;G[18062]=sa(d,e,b,4)}f=db(f,a);Ia();break b}a=G[18093];if(!a){a=G[18066]+G[18103]|0;b=Ba(a);d=Ba(G[18066]+G[18102]|0);G[c>>2]=a;G[c+4>>2]=b-d;Ma(0,c);a=G[18093]}G[18093]=a+1;Ia();break b}a=G[18104];q:{if((a|0)<0){b=sc(G[18100],tc(0-a|0));break q}b=G[18094];if(!a){break q}b=tc(a)}f=db(f,b);Ia();break b}a=G[18093];if(!a){a=G[18066]+G[18103]|0;b=Ba(a);d=Ba(G[18066]+G[18102]|0);G[c+48>>2]=a;G[c+52>>2]=b-d;Ma(3,c+48|0);a=G[18093]}G[18093]=a+1;break a}Z(6674,5285,375,3355);W()}f=db(f,uc(b))}a=G[18101];if((a|0)!=3){continue}b=G[18104];if((b|0)==93){break a}if((b|0)!=45){continue}}break}ia=c- -64|0;return f}function cb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=G[b+8>>2];a:{b:{if(!k){if(!d){return 0}G[b+8>>2]=64;E[b+4|0]=6;e=ka[G[G[b+16>>2]>>2]](256)|0;G[b>>2]=e;if(!e){G[b+8>>2]=0;return 0}Ob(e,0,256);h=G[a+496>>2];f=H[c|0];if(f){e=c;while(1){h=M(h,1000003)^f&255;f=H[e+1|0];e=e+1|0;if(f){continue}break}}g=G[b+8>>2]-1&h;break b}m=G[a+496>>2];j=H[c|0];if(j){f=j;e=c;while(1){m=M(m,1000003)^f&255;f=H[e+1|0];e=e+1|0;if(f){continue}break}}n=G[b>>2];e=k-1|0;g=e&m;i=G[n+(g<<2)>>2];if(i){o=e>>>2|0;p=0-k&m;while(1){e=c;f=j;h=G[i>>2];if((f|0)==H[h|0]){while(1){if(!(f&255)){break a}q=H[h+1|0];f=H[e+1|0];h=h+1|0;e=e+1|0;if((f|0)==(q|0)){continue}break}}l=l&255?l:o&p>>>H[b+4|0]-1|1;e=l&255;g=(g-e|0)+(e>>>0>g>>>0?k:0)|0;i=G[n+(g<<2)>>2];if(i){continue}break}}i=0;if(!d){break a}e=H[b+4|0];if(!(G[b+12>>2]>>>e-1|0)){break b}p=e+1|0;n=p&255;j=1<<n;e=j<<2;f=ka[G[G[b+16>>2]>>2]](e)|0;if(!f){break a}k=j-1|0;i=Ob(f,0,e);q=G[b+8>>2];if(q){r=k>>>2|0;s=n-1|0;t=0-j|0;l=0;while(1){o=G[G[b>>2]+(l<<2)>>2];if(o){h=G[a+496>>2];f=G[o>>2];e=H[f|0];if(e){while(1){h=M(h,1000003)^e&255;e=H[f+1|0];f=f+1|0;if(e){continue}break}}f=h&k;g=i+(f<<2)|0;if(G[g>>2]){h=(h&t)>>>s&r|1;e=0;while(1){e=e&255?e:h;g=e&255;f=(f-g|0)+(f>>>0<g>>>0?j:0)|0;g=i+(f<<2)|0;if(G[g>>2]){continue}break}}G[g>>2]=o}l=l+1|0;if((q|0)!=(l|0)){continue}break}}ka[G[G[b+16>>2]+8>>2]](G[b>>2]);G[b+8>>2]=j;E[b+4|0]=p;G[b>>2]=i;g=k&m;if(!G[i+(g<<2)>>2]){break b}a=(0-j&m)>>>n-1&k>>>2|1;f=0;while(1){f=f&255?f:a;e=f&255;g=(g-e|0)+(e>>>0>g>>>0?j:0)|0;if(G[i+(g<<2)>>2]){continue}break}}e=ka[G[G[b+16>>2]>>2]](d)|0;a=g<<2;G[a+G[b>>2]>>2]=e;e=G[a+G[b>>2]>>2];if(!e){return 0}Ob(e,0,d);a=a+G[b>>2]|0;G[G[a>>2]>>2]=c;G[b+12>>2]=G[b+12>>2]+1;i=G[a>>2]}return i}function Lc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=ia-16|0;ia=e;a:{if(!G[a+64>>2]){h=1;f=G[a+80>>2];if(!f){break a}G[e+12>>2]=c;if(!H[b+72|0]){b:{if(G[a+144>>2]==(b|0)){c=a+288|0;f=a+292|0;break b}c=G[a+300>>2];f=c+4|0}while(1){G[e+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,e+12|0,d,e+8|0,G[a+48>>2]);G[f>>2]=G[e+12>>2];g=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],g,G[e+8>>2]-g|0);G[c>>2]=G[e+12>>2];if(G[e+12>>2]!=(d|0)){continue}break}break a}ka[f|0](G[a+4>>2],c,d-c|0);break a}h=(G[b+68>>2]<<1)+c|0;g=ka[G[b+32>>2]](b,h)|0;G[e+12>>2]=h;c=a+416|0;c:{f=a+428|0;d:{if(!G[f>>2]){if(!qa(c)){break d}}g=g+h|0;while(1){ka[G[b+60>>2]](b,e+12|0,g,f,G[a+424>>2]);if((g|0)==G[e+12>>2]){break c}if(qa(c)){continue}break}}h=0;break a}h=0;if(!G[a+432>>2]){break a}i=G[a+428>>2];if((i|0)==G[a+424>>2]){if(!qa(c)){break a}i=G[f>>2]}G[a+428>>2]=i+1;E[i|0]=0;i=G[a+432>>2];if(!i){break a}G[a+432>>2]=G[a+428>>2];g=ka[G[b+36>>2]](b,g)|0;j=G[b+68>>2];G[e+12>>2]=g;if(!G[a+428>>2]){if(!qa(c)){break a}}d=d-(j<<1)|0;while(1){e:{ka[G[b+60>>2]](b,e+12|0,d,f,G[a+424>>2]);if((d|0)==G[e+12>>2]){break e}if(qa(c)){continue}break a}break}if(!G[a+432>>2]){break a}b=G[a+428>>2];if((b|0)==G[a+424>>2]){if(!qa(c)){break a}b=G[f>>2]}G[a+428>>2]=b+1;E[b|0]=0;f=G[a+432>>2];if(!f){break a}b=f;f:{while(1){c=b;d=H[b|0];if(!d){break f}if((d|0)!=13){b=b+1|0;continue}break}while(1){g:{if((d&255)==13){E[c|0]=10;b=H[b+1|0]==10?b+2|0:b+1|0;break g}E[c|0]=d;b=b+1|0}c=c+1|0;d=H[b|0];if(d){continue}break}E[c|0]=0}ka[G[a+64>>2]](G[a+4>>2],i,f);b=G[a+416>>2];d=G[a+420>>2];h:{i:{if(!d){c=b;break i}if(!b){break h}while(1){c=b;b=G[b>>2];G[c>>2]=d;d=c;if(b){continue}break}}G[a+420>>2]=c}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;h=1}ia=e+16|0;return h}function ih(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=a+76|0;a=1;while(1){f=a;g=b;b=g+1|0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{j=H[g+1|0];switch(H[j+i|0]-3|0){case 4:break i;case 3:break j;case 2:break k;case 8:case 14:break b;case 6:case 7:break c;case 18:break d;case 0:break e;case 10:break f;case 9:break g;case 19:case 21:case 26:break h;default:continue}}a=f;l:{if(f){break l}a=1;if((c|0)<=(e|0)){break l}a=(e<<4)+d|0;E[a+12|0]=1;G[a>>2]=b;a=1}b=g+2|0;continue}a=f;m:{if(f){break m}a=1;if((c|0)<=(e|0)){break m}a=(e<<4)+d|0;E[a+12|0]=1;G[a>>2]=b;a=1}b=g+3|0;continue}a=f;n:{if(f){break n}a=1;if((c|0)<=(e|0)){break n}a=(e<<4)+d|0;E[a+12|0]=1;G[a>>2]=b;a=1}b=g+4|0;continue}if(f){continue}a=1;if((c|0)<=(e|0)){continue}f=(e<<4)+d|0;E[f+12|0]=1;G[f>>2]=b;continue}if((f|0)!=2){h=12;a=2;if((c|0)<=(e|0)){continue}G[((e<<4)+d|0)+4>>2]=g+2;continue}a=2;if((h|0)!=12){continue}if((c|0)>(e|0)){G[((e<<4)+d|0)+8>>2]=b}e=e+1|0;h=12;a=0;continue}if((f|0)!=2){h=13;a=2;if((c|0)<=(e|0)){continue}G[((e<<4)+d|0)+4>>2]=g+2;continue}a=2;if((h|0)!=13){continue}if((c|0)>(e|0)){G[((e<<4)+d|0)+8>>2]=b}e=e+1|0;h=13;a=0;continue}if((c|0)<=(e|0)){continue}E[((e<<4)+d|0)+12|0]=0;continue}a=0;o:{switch(f-1|0){case 0:continue;case 1:break o;default:break a}}a=2;if((c|0)<=(e|0)){continue}f=(e<<4)+d|0;if(!H[f+12|0]){continue}p:{if(G[f+4>>2]==(b|0)|(j|0)!=32){break p}g=H[g+2|0];if((g|0)==32){break p}if(H[g+i|0]!=(h|0)){continue}}E[f+12|0]=0;continue}a=0;q:{switch(f-1|0){case 0:continue;case 1:break q;default:break a}}a=2;if((c|0)<=(e|0)){continue}E[((e<<4)+d|0)+12|0]=0;continue}a=2;if((f|0)==2){continue}return e|0}a=f;continue}}function ec(){var a=0,b=0,c=0,d=0;if(!H[72028]){G[18008]=2048;E[72028]=1;a=za(2048,4);G[18009]=512;G[17996]=a;a=za(512,4);G[18010]=4096;G[18005]=a;G[18011]=za(4096,1);rb(71960,1024,28,29);rb(72048,256,30,31);rb(71992,256,32,33);G[18006]=0;G[18004]=0;G[17988]=0;E[71988]=0;G[G[17996]>>2]=0;a:{if((va(71960,0)|0)!=-1){break a}wa(71960,G[17988]);c=G[17996];a=G[17988];a=G[(H[c+(a<<2)|0]<<2)+11056>>2]+a|0;G[17988]=a;b=a+3|0;if((b|0)<=G[18008]){break a}b=b<<1;G[18008]=b;G[17996]=sa(c,b,a,4)}G[G[18005]>>2]=0;b:{if((va(72048,G[18006])|0)!=-1){break b}wa(72048,G[18006]);c=G[18005];a=G[18006];a=G[(H[c+(a<<2)|0]<<2)+11120>>2]+a|0;G[18006]=a;b=a+3|0;if((b|0)<=G[18009]){break b}b=b<<1;G[18009]=b;G[18005]=sa(c,b,a,4)}xa(11051);a=G[17988];G[G[17996]+(a<<2)>>2]=1;c=va(71960,a);c:{if((c|0)!=-1){a=G[17996];break c}c=G[17988];wa(71960,c);a=G[17996];b=G[17988];b=G[(H[a+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;d=b+3|0;if((d|0)<=G[18008]){break c}d=d<<1;G[18008]=d;a=sa(a,d,b,4);G[17996]=a}G[18021]=c;b=a;a=G[17988];G[b+(a<<2)>>2]=258;c=va(71960,a);d:{if((c|0)!=-1){a=G[17996];break d}c=G[17988];wa(71960,c);a=G[17996];b=G[17988];b=G[(H[a+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;d=b+3|0;if((d|0)<=G[18008]){break d}d=d<<1;G[18008]=d;a=sa(a,d,b,4);G[17996]=a}G[18019]=c;b=a;a=G[17988];G[b+(a<<2)>>2]=771;c=va(71960,a);e:{if((c|0)!=-1){break e}c=G[17988];wa(71960,c);b=G[17996];a=G[17988];a=G[(H[b+(a<<2)|0]<<2)+11056>>2]+a|0;G[17988]=a;d=a+3|0;if((d|0)<=G[18008]){break e}d=d<<1;G[18008]=d;G[17996]=sa(b,d,a,4)}G[18020]=c;G[18018]=G[17988];G[18022]=fc(0,xa(4105));G[18023]=fc(0,xa(3746));G[18024]=xa(2729)}}function he(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;while(1){E[a+g|0]=H[g+11852|0];f=g|1;E[f+a|0]=H[f+11852|0];f=g|2;E[f+a|0]=H[f+11852|0];f=g|3;E[f+a|0]=H[f+11852|0];g=g+4|0;if((g|0)!=368){continue}break}while(1){f=H[e+11928|0];if(!(!f|(f|0)==28|G[(e<<2)+b>>2]==(e|0))){return 0}f=e|1;g=H[f+11928|0];if(!(!g|(g|0)==28|(f|0)==G[(f<<2)+b>>2])){return 0}e=e+2|0;if((e|0)!=128){continue}break}j=a+888|0;k=a+376|0;i=a+76|0;g=0;while(1){f=g<<2;e=G[f+b>>2];a:{if((e|0)==-1){E[g+i|0]=1;F[(g<<1)+k>>1]=65535;F[f+j>>1]=1;break a}if((e|0)<0){if(e>>>0<4294967292){return 0}E[g+i|0]=3-e;E[f+j|0]=0;F[(g<<1)+k>>1]=0;break a}if(e>>>0<=127){h=H[e+11928|0];if(!(!h|(h|0)==28|(e|0)==(g|0))){return 0}E[g+i|0]=h;f=f+j|0;E[f+1|0]=e;E[f|0]=1;F[(g<<1)+k>>1]=e?e:-1;break a}b:{h=e>>>8|0;c:{if(h-216>>>0<8){break c}if((h|0)!=255){if(h){break b}if(!H[e+11928|0]){break c}break b}if((e&-2)!=65534){break b}}E[g+i|0]=0;F[(g<<1)+k>>1]=65535;F[f+j>>1]=1;break a}if(e>>>0>65535){return 0}n=1<<e;l=(e>>>5&7)<<2;d:{if(n&G[(l|H[h+14240|0]<<5)+12224>>2]){E[g+i|0]=22;break d}m=g+i|0;if(G[(H[h+14496|0]<<5|l)+12224>>2]&n){E[m|0]=26;break d}E[m|0]=28}h=f+j|0;f=h;e:{if(e>>>0<=2047){E[f+1|0]=e>>>6|192;m=2;l=e;break e}E[f+1|0]=e>>>12|224;E[h+3|0]=e&63|128;m=3;l=e>>>6|0}E[f+2|0]=l&63|128;E[h|0]=m;F[(g<<1)+k>>1]=e}g=g+1|0;if((g|0)!=256){continue}break}G[a+368>>2]=c;G[a+372>>2]=d;if(c){G[a+364>>2]=74;G[a+360>>2]=74;G[a+356>>2]=74;G[a+352>>2]=75;G[a+348>>2]=75;G[a+344>>2]=75;G[a+340>>2]=76;G[a+336>>2]=76;G[a+332>>2]=76}G[a+64>>2]=77;G[a+60>>2]=78;return a|0}function af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(G[17972]!=G[18021]){E[71892]=1;G[17959]=(Oe(G[17963],G[17970],1)|0)!=0&G[17959]!=0;G[17970]=0;E[G[17963]]=0;h=ia-16|0;ia=h;f=gc(b);a:{if(!f){e=b;while(1){a=e;e=a+1|0;if(H[a|0]){continue}break}e=b;break a}E[f|0]=0;a=b;e=f+1|0}d=G[17972];G[17969]=d;g=lb(d,xa(a),xa(e),0);G[17972]=g;d=1;if((g|0)==G[18021]){d=lb(G[17969],xa(a),xa(e),1);G[17972]=d;G[h>>2]=a;G[h+4>>2]=e;vb((d|0)==G[18021]?0:3,h);d=0}if(f){E[f|0]=58}ia=h+16|0;a=d;b:{if(G[17972]==G[18021]){break b}while(1){e=G[c>>2];if(e){h=a;i=G[c+4>>2];j=0;f=ia-32|0;ia=f;a=e;g=gc(a);c:{if(!g){d=a;while(1){e=d;d=d+1|0;if(H[e|0]){continue}break}break c}E[g|0]=0;a=g+1|0}d=G[17972];G[17969]=d;d=nb(d,xa(e),xa(a));G[17972]=d;d:{if((d|0)==G[18021]){G[17972]=G[17969];G[f+4>>2]=a;G[f>>2]=e;vb(1,f);break d}G[17969]=d;d=Wd(d,i,ua(i));G[17972]=d;if((d|0)!=G[18021]){G[17969]=d;d=ae(d);G[17972]=d;j=1;if((d|0)!=G[18021]){break d}}G[17972]=_d(G[17969]);G[f+24>>2]=i;G[f+20>>2]=a;G[f+16>>2]=e;vb(2,f+16|0);j=0}if(g){E[g|0]=58}ia=f+32|0;a=h&j;c=c+8|0;if(G[17972]!=G[18021]){continue}break b}break}e=a;d=ia-32|0;ia=d;a=G[17972];G[17969]=a;c=kb(a,0);G[17972]=c;a=1;e:{if((c|0)!=G[18021]){break e}G[17972]=kb(G[17969],1);a=gc(b);if(!a){a=b;while(1){c=a;a=a+1|0;if(H[c|0]){continue}break}G[d+4>>2]=b;G[d>>2]=c;vb(4,d);a=0;break e}E[a|0]=0;G[d+20>>2]=a+1;G[d+16>>2]=b;vb(4,d+16|0);E[a|0]=58;a=0}ia=d+32|0;a=(a|0)!=0&e}G[17959]=(a|0)!=0&G[17959]!=0;E[71892]=0;return}G[17971]=G[17971]+1}function ug(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=a+76|0;while(1){a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{d=H[b|0];switch(d-216|0){case 39:break i;case 4:case 5:case 6:case 7:break c;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break d;case 0:case 1:case 2:case 3:break g;default:break j}}if(!d){break h}break d}if(H[b+1|0]<=253){break d}break c}a=0;switch(H[H[b+1|0]+e|0]-5|0){case 17:case 18:case 19:case 20:case 21:case 22:case 24:break d;case 0:break e;case 1:break f;case 2:break g;default:break c}}if(H[c|0]!=(d|0)){return 0}c=c+1|0;b=b+1|0;a=H[b|0]}if(H[c|0]!=(a&255)){return 0}c=c+1|0;b=b+1|0;a=H[b|0]}if(H[c|0]!=(a&255)|H[b+1|0]!=H[c+1|0]){break b}break a}if(H[c|0]!=(d|0)){break b}if(H[c+1|0]==H[b+1|0]){break a}break b}k:{l:{m:{n:{a=H[c|0];switch(a-220|0){case 0:case 1:case 2:case 3:break l;case 35:break n;case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:break b;default:break m}}if(H[c+1|0]>253){break l}break b}if(a){break b}a=H[H[c+1|0]+e|0]-5|0;if((a&255)>>>0<25){break k}}return 1}f=G[(a<<24>>24<<2)+18256>>2]}return f|0}b=b+2|0;c=c+2|0;continue}}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=a+76|0;while(1){a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{d=H[b+1|0];switch(d-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break j;case 4:case 5:case 6:case 7:break d;case 39:break e;case 0:case 1:case 2:case 3:break h;default:break k}}if(!d){break i}}a=H[b|0];break c}a=H[b|0];switch(H[e+a|0]-5|0){case 17:case 18:case 19:case 20:case 21:case 22:case 24:break c;case 0:break f;case 1:break g;case 2:break h;default:break d}}if(H[b|0]!=H[c|0]){return 0}b=b+1|0;c=c+1|0;a=d}if(H[c|0]!=(a|0)){return 0}c=c+1|0;b=b+1|0;a=H[b|0]}if(H[c|0]!=(a&255)|H[b+1|0]!=H[c+1|0]){break a}break b}a=H[b|0];if(a>>>0<=253){break c}}l:{m:{n:{o:{a=H[c+1|0];switch(a-220|0){case 0:case 1:case 2:case 3:break m;case 35:break o;case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:break a;default:break n}}if(H[c|0]>253){break m}break a}if(a){break a}a=H[H[c|0]+e|0]-5|0;if((a&255)>>>0<25){break l}}return 1}f=G[(a<<24>>24<<2)+18256>>2];break a}if(H[c|0]!=(a&255)|H[c+1|0]!=(d|0)){break a}}b=b+2|0;c=c+2|0;continue}break}return f|0}function mc(a,b,c,d){var e=0,f=0,g=0,h=0;f=-1;if((b|0)==(c|0)){return-1}e=1;a:{b:{c:{d:{e:{f:{g:{h:{g=a+76|0;switch(H[g+H[b|0]|0]-5|0){case 14:break d;case 17:case 19:break e;case 2:break f;case 1:break g;case 0:break h;default:break b}}e=2;f=-2;if((c-b|0)<2){break a}if(ka[G[a+344>>2]](a,b)|0){break e}break b}e=3;f=-2;if((c-b|0)<3){break a}if(ka[G[a+348>>2]](a,b)|0){break e}break b}e=4;f=-2;if((c-b|0)<4){break a}if(!(ka[G[a+352>>2]](a,b)|0)){break b}}b=b+e|0;if((c|0)!=(b|0)){break c}return-1}a=b+1|0;if((a|0)==(c|0)){break a}e=H[a|0];if((e|0)==120){a=b+2|0;if((c|0)==(a|0)){break a}if((H[H[a|0]+g|0]&254)!=24){b=a;break b}b=b+3|0;if((c|0)==(b|0)){break a}while(1){e=H[H[b|0]+g|0];if(e-24>>>0>=2){if((e|0)!=18){break b}b=a+2|0;h=10;break b}a=b;b=b+1|0;if((c|0)!=(b|0)){continue}break}break a}if(H[e+g|0]!=25){b=a;break b}b=a;while(1){a=b;b=b+1|0;if((c|0)==(b|0)){break a}e=H[H[b|0]+g|0];if((e|0)==25){continue}break}if((e|0)!=18){break b}b=a+2|0;h=10;break b}i:{while(1){f=1;j:{k:{switch(H[H[b|0]+g|0]-5|0){case 0:if((c-b|0)<2){return-2}f=2;if(ka[G[a+332>>2]](a,b)|0){break j}break b;case 1:if((c-b|0)<3){return-2}f=3;if(ka[G[a+336>>2]](a,b)|0){break j}break b;case 13:break i;case 17:case 19:case 20:case 21:case 22:break j;case 2:break k;default:break b}}if((c-b|0)<4){return-2}f=4;if(!(ka[G[a+340>>2]](a,b)|0)){break b}}b=b+f|0;if((c|0)!=(b|0)){continue}break}return-1}b=b+1|0;h=9}G[d>>2]=b;f=h}return f}function Ub(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=ia-48|0;ia=c;g=a+40|0;e=G[a+40>>2];a:{b:{while(1){c:{if(G[a+24>>2]){break c}d=G[a+16>>2];f=G[a+20>>2];if((d|0)<=(f-6|0)){break c}b=f-d|0;G[a+20>>2]=b;d:{if((d|0)==(f|0)){break d}b=G[a+12>>2];E[b|0]=H[b+d|0];b=1;if(G[a+20>>2]==1){break d}while(1){d=G[a+12>>2];E[d+b|0]=H[d+(G[a+16>>2]+b|0)|0];b=b+1|0;if((b|0)!=G[a+20>>2]){continue}break}}G[a+16>>2]=0;while(1){b=Nb(G[a+8>>2],G[a+12>>2]+b|0,1030-b|0);if((b|0)>0){b=b+G[a+20>>2]|0;G[a+20>>2]=b;if((b|0)<=5){continue}break c}break}Vb(G[a+8>>2]);G[a+24>>2]=1;G[a+8>>2]=-1;if((b|0)!=-1){break c}b=G[a+4>>2];d=G[a+28>>2];f=G[a+32>>2];G[c+44>>2]=Db(G[18106]);G[c+40>>2]=f;G[c+36>>2]=d;G[c+32>>2]=b;ya(1,a,0,c+32|0)}b=G[a+16>>2];if((b|0)==G[a+20>>2]){a=-1;e:{switch(e-10|0){default:a=(e|0)==-1?-1:10;break;case 0:case 3:break e}}G[g>>2]=a;break a}b=Ca(g,b+G[a+12>>2]|0);if(!b){b=G[a+4>>2];d=G[a+28>>2];G[c+8>>2]=G[a+32>>2];G[c+4>>2]=d;G[c>>2]=b;ya(0,a,10,c);G[a+16>>2]=G[a+16>>2]+1;continue}b=b+G[a+16>>2]|0;if((b|0)>G[a+20>>2]){b=G[a+4>>2];d=G[a+28>>2];G[c+24>>2]=G[a+32>>2];G[c+20>>2]=d;G[c+16>>2]=b;ya(0,a,10,c+16|0);G[a+16>>2]=G[a+20>>2];continue}G[a+16>>2]=b;f:{if((e|0)!=13){switch(e+1|0){case 0:break a;case 11:break f;default:break b}}e=10;if(G[g>>2]==10){continue}}break}G[a+32>>2]=0;G[a+28>>2]=G[a+28>>2]+1}g:{switch(G[g>>2]-10|0){case 0:case 3:break a;default:break g}}G[a+32>>2]=G[a+32>>2]+1}ia=c+48|0}function fe(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=0,n=0;l=ia-32|0;ia=l;G[l+12>>2]=0;G[l+8>>2]=0;G[l+4>>2]=0;m=d;d=G[c+68>>2];m=m+M(d,5)|0;G[l+16>>2]=m;a:{b:{c:{n=m;m=e-(d<<1)|0;if(!Hc(c,n,m,l+8|0,l+4|0,l+12|0,l+16|0)){break c}d=G[l+8>>2];if(!d){break c}d:{e:{f:{e=G[l+4>>2];g:{if(!(ka[G[c+28>>2]](c,d,e,16252)|0)){if(b){break g}break b}if(g){G[g>>2]=G[l+12>>2]}d=G[l+16>>2];if(h){G[h>>2]=d}if(!Hc(c,d,m,l+8|0,l+4|0,l+12|0,l+16|0)){break c}d=G[l+8>>2];if(!d){break f}e=G[l+4>>2]}if(!(ka[G[c+28>>2]](c,d,e,16260)|0)){break d}d=G[l+12>>2];G[l+28>>2]=d;e=l+27|0;G[l+20>>2]=e;g=l+28|0;ka[G[c+60>>2]](c,g,m,l+20|0,g);if((e|0)==G[l+20>>2]|(E[l+27|0]&-33)-65>>>0>25){break b}if(i){G[i>>2]=d}e=G[l+16>>2];if(j){G[j>>2]=ka[a|0](c,d,e-G[c+68>>2]|0)}if(!Hc(c,e,m,l+8|0,l+4|0,l+12|0,l+16|0)){break c}d=G[l+8>>2];if(d){break e}a=1;break a}if(b){break c}a=1;break a}e=G[l+4>>2]}if(!(ka[G[c+28>>2]](c,d,e,16269)|0)|b){break b}d=G[l+12>>2];e=G[l+16>>2];h:{i:{if(ka[G[c+28>>2]](c,d,e-G[c+68>>2]|0,16280)|0){d=1;if(k){break i}break h}if(!(ka[G[c+28>>2]](c,d,e-G[c+68>>2]|0,16284)|0)){break b}d=0;if(!k){break h}}G[k>>2]=d}a=l+28|0;while(1){G[l+28>>2]=e;b=l+27|0;G[l+20>>2]=b;ka[G[c+60>>2]](c,l+28|0,m,l+20|0,a);b=((b|0)==G[l+20>>2]?-1:E[l+27|0])-9|0;if(!(b>>>0>23|!(1<<b&8388627))){e=G[c+68>>2]+e|0;continue}break}G[l+16>>2]=e;d=e;if((m|0)!=(d|0)){break b}a=1;break a}d=G[l+16>>2]}G[f>>2]=d;a=0}ia=l+32|0;return a}function hb(a,b){var c=0,d=0,e=0;if(H[G[18062]+(a<<2)|0]&15){c=G[18068];d=G[18095];Ka(72348,d);c=c+M(d,12)|0;G[c+4>>2]=b;G[c>>2]=a;c=va(72348,G[18095]);if((c|0)!=-1){return G[(G[18068]+M(c,12)|0)+8>>2]}a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{d=G[18062];c=d+(a<<2)|0;switch((G[c>>2]&15)-1|0){case 5:break h;case 4:break i;case 3:break j;case 2:break k;case 0:case 1:break b;case 9:break d;case 8:break e;case 7:break f;case 6:break g;default:break c}}d=G[c+8>>2];c=db(hb(G[c+4>>2],b),hb(d,b));break a}d=G[c+8>>2];e=G[c+4>>2];c=Fb(hb(e,b),d);if(!(E[(G[18062]+(e<<2)|0)+1|0]&1)){break a}c=db(c,hb(d,b));break a}c=Fb(hb(G[c+4>>2],b),db(G[18099],a));break a}e=G[c+8>>2];l:{if(E[(d+(hb(G[c+4>>2],b)<<2)|0)+1|0]&1){c=72396;if(!(E[(G[18062]+(hb(e,b)<<2)|0)+1|0]&1)){break l}}c=72376}c=G[c>>2];break a}m:{if(G[c+4>>2]<=(b|0)){c=72396;if(G[(d+(a<<2)|0)+8>>2]>=(b|0)){break m}}c=72376}c=G[c>>2];break a}c=G[(_b(b,G[c+4>>2])?72396:72376)>>2];break a}c=G[18099];break a}c=G[(G[c+4>>2]==(b|0)?72396:72376)>>2];break a}Z(6674,5285,672,1438);W()}c=G[18094]}d=G[18068];e=G[18095];Ka(72348,e);d=d+M(e,12)|0;G[d+4>>2]=b;G[d>>2]=a;va(72348,G[18095]);a=G[18095];G[(G[18068]+M(a,12)|0)+8>>2]=c;if((va(72348,a)|0)!=-1){Kd(72348,G[18095])}a=G[18095];G[18095]=a+1;wa(72348,a);a=G[18095];if((a|0)>=8192){G[18095]=0;a=0}if(G[18067]==(a|0)){b=a<<1;G[18067]=b;G[18068]=sa(G[18068],b,a,12)}return c}Z(6900,5285,659,1438);W()}function Ia(){var a=0,b=0,c=0;b=ia-16|0;ia=b;a=G[18066]+G[18102]|0;a:{if(!H[a|0]){G[18101]=0;break a}c=Ca(b+12|0,a)+G[18102]|0;G[18102]=c;b:{a=G[b+12>>2];if((a|0)!=46){if((a|0)!=92){break b}a=Ca(b+12|0,c+G[18066]|0)+G[18102]|0;G[18102]=a;c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{r:{s:{t:{c=G[b+12>>2];switch(c|0){case 87:break h;case 119:break i;case 68:break j;case 100:break k;case 67:break l;case 99:break m;case 73:break n;case 105:break o;case 83:break p;case 115:break q;case 80:break r;case 112:break s;case 0:break t;case 40:case 41:case 42:case 43:case 45:case 46:case 63:case 91:case 92:case 93:case 94:case 123:case 124:case 125:break d;case 116:break e;case 114:break f;case 110:break g;default:break c}}G[18102]=a-1;Ie(1);G[18101]=0;break a}G[18101]=1;G[18104]=He();break a}G[18101]=1;G[18104]=0-He();break a}G[18104]=131;G[18101]=1;break a}G[18104]=-131;G[18101]=1;break a}G[18104]=132;G[18101]=1;break a}G[18104]=-132;G[18101]=1;break a}G[18104]=133;G[18101]=1;break a}G[18104]=-133;G[18101]=1;break a}G[18104]=109;G[18101]=1;break a}G[18104]=-109;G[18101]=1;break a}G[18104]=134;G[18101]=1;break a}G[18104]=-134;G[18101]=1;break a}G[18104]=10;G[18101]=2;break a}G[18104]=13;G[18101]=2;break a}G[18104]=9;G[18101]=2;break a}G[18104]=c;G[18101]=2;break a}Ie(0);G[18101]=2;G[18104]=G[b+12>>2];break a}G[18104]=-130;G[18101]=1;break a}G[18104]=a;G[18101]=3}ia=b+16|0}function Jc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;e=ia-16|0;ia=e;G[a+288>>2]=b;G[a+280>>2]=72;a:{while(1){b:{G[e+4>>2]=0;g=G[a+144>>2];h=ka[G[g>>2]](g,b,c,e+4|0)|0;g=G[e+4>>2];G[a+292>>2]=g;f=9;c:{d:{switch(h+15|0){case 0:f=G[a+80>>2];if(f){c=G[a+144>>2];G[e+12>>2]=b;e:{if(!H[c+72|0]){while(1){G[e+8>>2]=G[a+44>>2];ka[G[c+60>>2]](c,e+12|0,g,e+8|0,G[a+48>>2]);G[a+292>>2]=G[e+12>>2];b=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],b,G[e+8>>2]-b|0);b=G[e+12>>2];G[a+288>>2]=b;if((b|0)!=(g|0)){continue}break e}}ka[f|0](G[a+4>>2],b,g-b|0)}f=35;if(G[a+480>>2]==2){break a}g=G[e+4>>2]}G[d>>2]=g;f=0;break a;case 30:h=G[a+80>>2];if(!h){break c}f=G[a+144>>2];G[e+12>>2]=b;if(!H[f+72|0]){while(1){G[e+8>>2]=G[a+44>>2];ka[G[f+60>>2]](f,e+12|0,g,e+8|0,G[a+48>>2]);G[a+292>>2]=G[e+12>>2];b=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],b,G[e+8>>2]-b|0);b=G[e+12>>2];G[a+288>>2]=b;if((b|0)!=(g|0)){continue}break c}}ka[h|0](G[a+4>>2],b,g-b|0);break c;case 26:if(Lc(a,G[a+144>>2],b,g)){break c}f=1;break a;case 28:if(Kc(a,G[a+144>>2],b,g)){break c}f=1;break a;case 14:f=5;if(!H[a+484|0]){break b}break a;case 13:f=6;if(H[a+484|0]){break a}break b;case 11:break b;case 15:break d;default:break a}}G[a+288>>2]=g;f=4;break a}b=G[e+4>>2];G[a+288>>2]=b;f=35;switch(G[a+480>>2]-2|0){case 0:break a;case 1:break b;default:continue}}break}G[d>>2]=b;f=0}ia=e+16|0;return f|0}function Nc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=ia-16|0;ia=j;e=G[a+356>>2];i=e+80|0;g=e+92|0;f=G[g>>2];a:{if((f|0)==G[e+88>>2]){if(!qa(i)){b=0;break a}f=G[g>>2]}G[g>>2]=f+1;E[f|0]=0;G[j+12>>2]=c;b:{c:{if(!G[g>>2]){if(!qa(i)){break c}}while(1){ka[G[b+60>>2]](b,j+12|0,d,g,G[e+88>>2]);if(G[j+12>>2]==(d|0)){break b}if(qa(i)){continue}break}}b=0;break a}b=0;if(!G[e+96>>2]){break a}d=G[e+92>>2];if((d|0)==G[e+88>>2]){if(!qa(i)){break a}d=G[g>>2]}G[e+92>>2]=d+1;E[d|0]=0;h=G[e+96>>2];if(!h){break a}k=h+1|0;d=cb(a,e+40|0,k,12);if(!d){break a}d:{if(G[d>>2]!=(k|0)){G[e+92>>2]=G[e+96>>2];break d}f=G[e+92>>2];G[e+96>>2]=f;if(!H[a+236|0]){break d}e:{c=H[k|0];if((c|0)!=120|H[h+2|0]!=109|(H[h+3|0]!=108|H[h+4|0]!=110)){break e}if(H[h+5|0]!=115){break e}b=H[h+6|0];f:{if((b|0)!=58){if(b){break e}G[d+4>>2]=e+152;break f}G[d+4>>2]=cb(a,e+60|0,h+7|0,8)}E[d+9|0]=1;break d}b=0;while(1){c=c&255;if(!c){break d}g:{if((c|0)==58){if(b){c=0;while(1){if(G[e+88>>2]==(f|0)){if(!qa(i)){b=0;break a}f=G[g>>2]}h=H[c+k|0];G[g>>2]=f+1;E[f|0]=h;f=G[g>>2];c=c+1|0;if((c|0)!=(b|0)){continue}break}}if(G[e+88>>2]==(f|0)){if(!qa(i)){b=0;break a}f=G[g>>2]}G[e+92>>2]=f+1;E[f|0]=0;a=cb(a,e+60|0,G[e+96>>2],8);G[d+4>>2]=a;b=G[a>>2];a=G[e+96>>2];if((b|0)!=(a|0)){break g}G[e+96>>2]=G[e+92>>2];break d}b=b+1|0;c=H[k+b|0];continue}break}G[g>>2]=a}b=d}ia=j+16|0;return b}function yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=c-b|0;c=e&1?(e&-2)+b|0:c;if((c|0)!=(b|0)){a:{f=a+76|0;e=0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{a=H[b|0];switch(a-216|0){case 0:case 1:case 2:case 3:break h;case 39:break j;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break c;case 4:case 5:case 6:case 7:break e;default:break i}}if(H[b+1|0]>253){break e}break c}if(a){break c}k:{switch(H[H[b+1|0]+f|0]){case 5:if((c-b|0)>=2){break c}return-2;case 7:break h;case 6:break k;case 0:case 1:case 8:break e;case 4:break f;case 2:break g;default:break c}}if((c-b|0)<3){return-2}b=b+3|0;break b}if((c-b|0)<4){return-2}b=b+4|0;break b}a=b+2|0;if((a|0)==(c|0)){break a}if(H[a|0]){b=a;break b}if(H[b+3|0]!=33){b=a;break b}a=b+4|0;if((a|0)==(c|0)){break a}if(H[a|0]){b=a;break b}if(H[b+5|0]!=91){b=a;break b}b=b+6|0;e=e+1|0;break b}a=b+2|0;if((a|0)==(c|0)){break a}if(H[a|0]){b=a;break b}if(H[b+3|0]!=93){b=a;break b}a=b+4|0;if((a|0)==(c|0)){break a}if(H[a|0]){b=a;break b}if(H[b+5|0]!=62){b=a;break b}b=b+6|0;if(e){break d}g=42}G[d>>2]=b;return g|0}e=e-1|0;break b}b=b+2|0}if((b|0)!=(c|0)){continue}break}}}return-1}
function Qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=c-b|0;c=e&1?(e&-2)+b|0:c;if((c|0)!=(b|0)){a:{f=a+76|0;e=0;while(1){b:{c:{d:{e:{f:{g:{h:{i:{j:{a=H[b+1|0];switch(a-216|0){case 0:case 1:case 2:case 3:break h;case 39:break j;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break c;case 4:case 5:case 6:case 7:break e;default:break i}}if(H[b|0]>253){break e}break c}if(a){break c}k:{switch(H[H[b|0]+f|0]){case 5:if((c-b|0)>=2){break c}return-2;case 7:break h;case 6:break k;case 0:case 1:case 8:break e;case 4:break f;case 2:break g;default:break c}}if((c-b|0)<3){return-2}b=b+3|0;break b}if((c-b|0)<4){return-2}b=b+4|0;break b}a=b+2|0;if((a|0)==(c|0)){break a}if(H[b+3|0]){b=a;break b}if(H[a|0]!=33){b=a;break b}a=b+4|0;if((a|0)==(c|0)){break a}if(H[b+5|0]){b=a;break b}if(H[a|0]!=91){b=a;break b}b=b+6|0;e=e+1|0;break b}a=b+2|0;if((a|0)==(c|0)){break a}if(H[b+3|0]){b=a;break b}if(H[a|0]!=93){b=a;break b}a=b+4|0;if((a|0)==(c|0)){break a}if(H[b+5|0]){b=a;break b}if(H[a|0]!=62){b=a;break b}b=b+6|0;if(e){break d}g=42}G[d>>2]=b;return g|0}e=e-1|0;break b}b=b+2|0}if((b|0)!=(c|0)){continue}break}}}return-1}function He(){var 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;d=ia+-64|0;ia=d;a=Ca(d+60|0,G[18066]+G[18102]|0)+G[18102]|0;G[18102]=a;a:{b:{c:{b=G[d+60>>2];if(b){if((b|0)!=123){break c}e=G[18066];b=a;break b}G[18102]=a-1;h=72372;b=G[18093];if(b){break a}a=G[18066]+G[18103]|0;b=Ba(a);e=Ba(G[18066]+G[18102]|0);G[d+16>>2]=a;G[d+20>>2]=b-e;Ma(4,d+16|0);b=G[18093];break a}h=72372;b=G[18093];if(b){break a}a=G[18066]+G[18103]|0;b=Ba(a);e=Ba(G[18066]+G[18102]|0);G[d>>2]=a;G[d+4>>2]=b-e;Ma(4,d);b=G[18093];break a}d:{while(1){c=H[b+e|0];if((c|0)==125){break d}if(c){b=b+1|0;continue}break}c=0;G[18102]=b;h=72372;b=G[18093];if(b){break a}a=e+G[18103]|0;b=Ba(a);e=Ba(G[18066]+G[18102]|0);G[d+32>>2]=a;G[d+36>>2]=b-e;Ma(5,d+32|0);b=G[18093];break a}h=72408;j=b-a|0;n=a+e|0;o=j+n|0;i=128;e:{while(1){a=(i+k|0)/2|0;c=G[(a<<2)+54640>>2];f:{if(j){f=c+j|0;e=n;while(1){l=E[e|0];m=H[c|0];g=0-l|0;if(!m){break f}g=(m<<24>>24)-l|0;if((l&255)!=(m|0)){break f}c=c+1|0;e=e+1|0;if((o|0)!=(e|0)){continue}break}c=f}g=E[c|0]}f=g;if(!f){break e}c=(f|0)>0;k=c?k:a+1|0;i=c?a-1|0:i;if((k|0)<=(i|0)){continue}break}a=129}c=a;if((c|0)!=129){break a}c=0;a=G[18093];if(!a){a=G[18066]+G[18103]|0;e=Ba(a);f=Ba(G[18066]+G[18102]|0);G[d+48>>2]=a;G[d+52>>2]=e-f;Ma(8,d+48|0);a=G[18093]}G[18093]=a+1}G[h>>2]=b+1;ia=d- -64|0;return c}function Kc(a,b,c,d){var e=0,f=0,g=0,h=0;f=ia-16|0;ia=f;a:{if(!G[a+68>>2]){g=1;e=G[a+80>>2];if(!e){break a}G[f+8>>2]=c;if(!H[b+72|0]){b:{if(G[a+144>>2]==(b|0)){e=a+288|0;c=a+292|0;break b}e=G[a+300>>2];c=e+4|0}while(1){G[f+4>>2]=G[a+44>>2];ka[G[b+60>>2]](b,f+8|0,d,f+4|0,G[a+48>>2]);G[c>>2]=G[f+8>>2];h=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],h,G[f+4>>2]-h|0);G[e>>2]=G[f+8>>2];if(G[f+8>>2]!=(d|0)){continue}break}break a}ka[e|0](G[a+4>>2],c,d-c|0);break a}g=G[b+68>>2];G[f+12>>2]=(g<<2)+c;c=a+416|0;c:{e=a+428|0;d:{if(!G[e>>2]){if(!qa(c)){break d}}d=M(g,-3)+d|0;while(1){ka[G[b+60>>2]](b,f+12|0,d,e,G[a+424>>2]);if((d|0)==G[f+12>>2]){break c}if(qa(c)){continue}break}}g=0;break a}g=0;if(!G[a+432>>2]){break a}b=G[a+428>>2];if((b|0)==G[a+424>>2]){if(!qa(c)){break a}b=G[e>>2]}G[a+428>>2]=b+1;E[b|0]=0;e=G[a+432>>2];if(!e){break a}b=e;e:{while(1){d=b;c=H[b|0];if(!c){break e}if((c|0)!=13){b=b+1|0;continue}break}while(1){f:{if((c&255)==13){E[d|0]=10;b=H[b+1|0]==10?b+2|0:b+1|0;break f}E[d|0]=c;b=b+1|0}d=d+1|0;c=H[b|0];if(c){continue}break}E[d|0]=0}ka[G[a+68>>2]](G[a+4>>2],e);b=G[a+416>>2];c=G[a+420>>2];g:{h:{if(!c){d=b;break h}if(!b){break g}while(1){d=b;b=G[b>>2];G[d>>2]=c;c=d;if(b){continue}break}}G[a+420>>2]=d}G[a+432>>2]=0;G[a+416>>2]=0;G[a+424>>2]=0;G[a+428>>2]=0;g=1}ia=f+16|0;return g}function Da(a){var b=0,c=0,d=0,e=0;d=ia-16|0;ia=d;b=G[a+52>>2];a:{if((b|0)>0){G[a+44>>2]=120;G[a+52>>2]=b-1;break a}if(!b){G[a+52>>2]=-1;G[a+44>>2]=G[a+48>>2];break a}Ub(a);b:{c:{d:{e:{b=G[a+40>>2];switch(b-10|0){case 1:case 2:break c;case 0:case 3:break e;default:break d}}G[a+44>>2]=0;break a}if((b|0)==92){break b}}G[a+44>>2]=b;break a}Ub(a);b=G[a+40>>2];if((b|0)==120){b=0;while(1){G[a+52>>2]=b+1;Ub(a);b=G[a+40>>2];if((b|0)!=120){if((b|0)==123){G[a+44>>2]=0;G[a+52>>2]=-1;Ub(a);c=G[a+40>>2];if((c|0)==125){break a}while(1){e=G[a+44>>2]<<4;G[a+44>>2]=e;b=1;f:{g:{h:{switch(c-48|0){case 3:b=3;break g;case 4:b=4;break g;case 5:b=5;break g;case 6:b=6;break g;case 7:b=7;break g;case 8:b=8;break g;case 9:b=9;break g;case 17:case 49:b=10;break g;case 18:case 50:b=11;break g;case 19:case 51:b=12;break g;case 20:case 52:b=13;break g;case 21:case 53:b=14;break g;case 22:case 54:b=15;break g;default:b=G[a+4>>2];c=M(G[a+56>>2],20)+a|0;e=G[c+72>>2];G[d+4>>2]=G[c+68>>2];G[d+8>>2]=e;G[d>>2]=b;ya(0,a,20,d);break a;case 0:break f;case 1:break g;case 2:break h}}b=2}G[a+44>>2]=b|e}Ub(a);c=G[a+40>>2];if((c|0)!=125){continue}break}break a}G[a+48>>2]=b;G[a+44>>2]=92;break a}else{b=G[a+52>>2];continue}}}G[a+48>>2]=b;G[a+44>>2]=92;G[a+52>>2]=0}ia=d+16|0}function ra(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=ia-96|0;ia=c;fb(a);g=a+60|0;while(1){a:{b:{c:{d:{e:{f:{b=G[a+56>>2];switch(G[(M(b,20)+a|0)+76>>2]-35|0){case 7:break c;case 0:break d;case 5:break e;case 6:break f;default:break b}}fb(a);continue}fb(a);b=M(G[a+56>>2],20)+a|0;d=G[b+76>>2];if(d>>>0>=21){f=G[b+72>>2];b=G[b+68>>2];e=G[a+4>>2];G[c+16>>2]=eb(d);G[c+12>>2]=4816;G[c+4>>2]=b;G[c+8>>2]=f;G[c>>2]=e;ya(0,a,40,c);while(1){b=G[(M(G[a+56>>2],20)+a|0)+76>>2];if((b|0)==-1|(b|0)==35){break d}fb(a);continue}}fb(a);b=M(G[a+56>>2],20)+a|0;d=G[b+76>>2];if((d|0)==35){break d}f=G[b+72>>2];b=G[b+68>>2];e=G[a+4>>2];G[c+48>>2]=eb(d);G[c+44>>2]=8028;G[c+36>>2]=b;G[c+40>>2]=f;G[c+32>>2]=e;ya(0,a,40,c+32|0)}ld(a);continue}b=!b;if(G[(M(b,20)+a|0)+76>>2]!=38){break b}G[a+56>>2]=b;fb(a);d=G[a+56>>2];b=!d;e=M(b,20);f=G[(e+a|0)+76>>2];if((f|0)==42){break a}b=M(b,20)+a|0;d=G[b+72>>2];b=G[b+68>>2];e=G[a+4>>2];G[c+80>>2]=eb(f);G[c+76>>2]=3873;G[c+68>>2]=b;G[c+72>>2]=d;G[c+64>>2]=e;ya(0,a,40,c- -64|0)}ia=c+96|0;return}f=M(d,20)+g|0;b=G[f>>2];e=(ua(b)+ua(G[e+g>>2])|0)+1|0;h=G[f+4>>2];if((e|0)>(h|0)){G[f>>2]=sa(b,e,h,1);G[f+4>>2]=e;d=G[a+56>>2];b=G[(M(d,20)+a|0)+60>>2]}Mb(b,G[(M(!d,20)+a|0)+60>>2]);G[a+56>>2]=!G[a+56>>2];fb(a);continue}}function Md(a){var b=0,c=0,d=0,e=0,f=0;a:{b:{c:{d:{e:{b=G[a+4>>2];f:{if((b|0)!=G[a+104>>2]){G[a+4>>2]=b+1;b=H[b|0];break f}b=Ja(a)}switch(b-43|0){case 0:case 2:break e;default:break d}}f=(b|0)==45;b=G[a+4>>2];g:{if((b|0)!=G[a+104>>2]){G[a+4>>2]=b+1;b=H[b|0];break g}b=Ja(a)}e=b-58|0;if(e>>>0>4294967285){break c}if(G[a+116>>2]<0){break b}G[a+4>>2]=G[a+4>>2]-1;break b}e=b-58|0}if(e>>>0<4294967286){break b}e=b-48|0;if(e>>>0<10){while(1){d=(M(d,10)+b|0)-48|0;c=(d|0)<214748364;b=G[a+4>>2];h:{if((b|0)!=G[a+104>>2]){G[a+4>>2]=b+1;b=H[b|0];break h}b=Ja(a)}e=b-48|0;if(c&e>>>0<=9){continue}break}c=d>>31}i:{if(e>>>0>=10){break i}while(1){c=ki(d,c,10,0);d=c+b|0;b=ja;b=c>>>0>d>>>0?b+1|0:b;c=d;d=c-48|0;c=b-(c>>>0<48)|0;b=G[a+4>>2];j:{if((b|0)!=G[a+104>>2]){G[a+4>>2]=b+1;b=H[b|0];break j}b=Ja(a)}e=b-48|0;if(e>>>0>9){break i}if(d>>>0<2061584302&(c|0)<=21474836|(c|0)<21474836){continue}break}}if(e>>>0<10){while(1){b=G[a+4>>2];k:{if((b|0)!=G[a+104>>2]){G[a+4>>2]=b+1;b=H[b|0];break k}b=Ja(a)}if(b-48>>>0<10){continue}break}}b=G[a+116>>2];if((b|0)>0|(b|0)>=0){G[a+4>>2]=G[a+4>>2]-1}a=d;d=f?0-a|0:a;c=f?0-(((a|0)!=0)+c|0)|0:c;break a}c=-2147483648;if(G[a+116>>2]<0){break a}G[a+4>>2]=G[a+4>>2]-1;ja=-2147483648;return 0}ja=c;return d}function lb(a,b,c,d){var e=0,f=0,g=0,h=0;a:{if(d){break a}g=G[17987];e=g;h=G[17977];f=h;if(G[17974]){Ka(71920,g);f=G[17977];e=G[17987]}G[M(e,20)+f>>2]=0;f=h+M(g,20)|0;G[f+12>>2]=c;G[f+8>>2]=b;G[f+4>>2]=a;e=va(71920,e);if((e|0)==-1){break a}return G[(G[17977]+M(e,20)|0)+16>>2]}b:{c:{d:{e:{f:{g:{h:{i:{j:{e=G[17996]+(a<<2)|0;switch(H[e|0]-1|0){case 12:break i;case 3:break j;case 0:case 1:case 2:case 7:case 8:case 9:case 10:case 11:break c;case 14:break e;case 6:break f;case 5:break g;case 4:break h;default:break d}}f=G[e+8>>2];e=Ha(lb(G[e+4>>2],b,c,d),lb(f,b,c,d));break b}f=G[e+4>>2];if(Pb(G[e+8>>2],b,c)){e=xb(f,G[18019]);break b}e=G[18021];break b}f=G[e+8>>2];e=G[e+4>>2];e=Ha(bb(21,lb(e,b,c,d),f),bb(21,lb(f,b,c,d),e));break b}f=G[e+8>>2];g=G[e+4>>2];e=bb(22,lb(g,b,c,d),f);if(!(G[G[17996]+(g<<2)>>2]&256|d)){break b}e=Ha(e,lb(f,b,c,d));break b}e=bb(22,lb(G[e+4>>2],b,c,d),Ha(a,G[18019]));break b}f=G[e+8>>2];e=bb(23,lb(G[e+4>>2],b,c,d),f);break b}Z(6674,5296,237,3707);W()}e=G[18021]}if(!d){g=G[17987];d=g;h=G[17977];f=h;if(G[17974]){Ka(71920,g);f=G[17977];d=G[17987]}G[M(d,20)+f>>2]=0;f=h+M(g,20)|0;G[f+12>>2]=c;G[f+8>>2]=b;G[f+4>>2]=a;va(71920,d);G[(G[17977]+M(G[17987],20)|0)+16>>2]=e;Xb()}return e}function qh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(c|0)){return-4}a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{g=a+76|0;switch(H[g+H[b|0]|0]){case 9:break i;case 4:break j;case 0:case 1:case 8:break b;case 7:break e;case 6:break f;case 5:break g;case 10:break h;default:break d}}f=-1;e=b+1|0;if((e|0)==(c|0)){break a}if(H[e|0]!=93){break c}if((b+2|0)==(c|0)){break a}if(H[b+2|0]!=62){break c}b=b+3|0;f=40;break b}a=b+1|0;if((a|0)==(c|0)){return-1}b=H[H[b+1|0]+g|0]==10?b+2|0:a;f=7;break b}b=b+1|0;f=7;break b}f=-2;if((c-b|0)<2){break a}if(ka[G[a+356>>2]](a,b)|0){f=0;break b}e=b+2|0;break c}f=-2;if((c-b|0)<3){break a}if(ka[G[a+360>>2]](a,b)|0){f=0;break b}e=b+3|0;break c}f=-2;if((c-b|0)<4){break a}if(ka[G[a+364>>2]](a,b)|0){f=0;break b}e=b+4|0;break c}e=b+1|0}f=6;if((c|0)!=(e|0)){b=e;while(1){e=1;k:{l:{switch(H[H[b|0]+g|0]){case 5:if((c-b|0)<2){break b}e=2;if(!(ka[G[a+356>>2]](a,b)|0)){break k}break b;case 6:if((c-b|0)<3){break b}e=3;if(!(ka[G[a+360>>2]](a,b)|0)){break k}break b;case 7:break l;case 0:case 1:case 4:case 8:case 9:case 10:break b;default:break k}}if((c-b|0)<4){break b}e=4;if(ka[G[a+364>>2]](a,b)|0){break b}}b=b+e|0;if((c|0)!=(b|0)){continue}break}}b=c}G[d>>2]=b}return f|0}function nb(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=G[17987];f=g;d=G[17977];e=d;if(G[17974]){Ka(71920,g);f=G[17987];e=G[17977]}G[e+M(f,20)>>2]=2;d=d+M(g,20)|0;G[d+12>>2]=c;G[d+8>>2]=b;G[d+4>>2]=a;d=va(71920,f);if((d|0)!=-1){return G[(G[17977]+M(d,20)|0)+16>>2]}a:{b:{c:{d:{e:{f:{g:{h:{i:{d=G[17996];switch(H[d+(a<<2)|0]-1|0){case 11:break h;case 3:break i;case 0:case 1:case 2:case 7:case 8:case 9:case 10:case 12:break b;case 14:break d;case 6:break e;case 5:break f;case 4:break g;default:break c}}e=d+(a<<2)|0;d=G[e+8>>2];d=Ha(nb(G[e+4>>2],b,c),nb(d,b,c));break a}e=d+(a<<2)|0;d=G[e+4>>2];if(Pb(G[e+8>>2],b,c)){d=xb(d,G[18019]);break a}d=G[18021];break a}d=d+(a<<2)|0;e=G[d+8>>2];d=G[d+4>>2];d=Ha(bb(21,nb(d,b,c),e),bb(21,nb(e,b,c),d));break a}d=d+(a<<2)|0;e=G[d+8>>2];d=G[d+4>>2];d=Ha(bb(22,nb(d,b,c),e),bb(24,nb(e,b,c),d));break a}d=bb(22,nb(G[(d+(a<<2)|0)+4>>2],b,c),Ha(a,G[18019]));break a}e=d+(a<<2)|0;d=G[e+8>>2];d=bb(23,nb(G[e+4>>2],b,c),d);break a}Z(6674,5296,283,3722);W()}d=G[18021]}h=G[17987];f=h;e=G[17977];g=e;if(G[17974]){Ka(71920,h);f=G[17987];g=G[17977]}G[g+M(f,20)>>2]=2;e=M(h,20)+e|0;G[e+12>>2]=c;G[e+8>>2]=b;G[e+4>>2]=a;va(71920,f);G[(G[17977]+M(G[17987],20)|0)+16>>2]=d;Xb();return d}function oc(a){var b=0,c=0,d=0,e=0,f=0,g=0;if(!a){return 6}e=6637;b=5561;d=a;while(1){f=H[e|0];g=H[d|0];e=e+1|0;d=d+1|0;g=((g-97&255)>>>0<26?g-32|0:g)&255;f=(g|0)==(((f-97&255)>>>0<26?f-32|0:f)&255)?!g<<1:1;if(!f){continue}break}e=a;a:{if((f|0)==2){break a}while(1){d=H[b|0];f=H[e|0];c=1;b=b+1|0;e=e+1|0;f=((f-97&255)>>>0<26?f-32|0:f)&255;f=(f|0)==(((d-97&255)>>>0<26?d-32|0:d)&255)?!f<<1:1;if(!f){continue}break}e=6541;d=a;if((f|0)==2){break a}while(1){c=H[e|0];b=H[d|0];e=e+1|0;d=d+1|0;b=((b-97&255)>>>0<26?b-32|0:b)&255;c=(b|0)==(((c-97&255)>>>0<26?c-32|0:c)&255)?!b<<1:1;if(!c){continue}break}e=6588;d=a;if((c|0)==2){break a}while(1){c=H[e|0];b=H[d|0];e=e+1|0;d=d+1|0;b=((b-97&255)>>>0<26?b-32|0:b)&255;b=(b|0)==(((c-97&255)>>>0<26?c-32|0:c)&255)?!b<<1:1;if(!b){continue}break}c=3;e=5590;d=a;if((b|0)==2){break a}while(1){c=H[e|0];b=H[d|0];e=e+1|0;d=d+1|0;b=((b-97&255)>>>0<26?b-32|0:b)&255;b=(b|0)==(((c-97&255)>>>0<26?c-32|0:c)&255)?!b<<1:1;if(!b){continue}break}c=4;e=5581;if((b|0)==2){break a}while(1){d=H[e|0];c=H[a|0];e=e+1|0;a=a+1|0;c=((c-97&255)>>>0<26?c-32|0:c)&255;d=(c|0)==(((d-97&255)>>>0<26?d-32|0:d)&255)?!c<<1:1;if(!d){continue}break}c=5;if((d|0)==2){break a}c=-1}return c}function jd(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=Fa(a,42,G[(M(G[a+56>>2],20)+a|0)+76>>2]);if(i){c=G[18027];d=ua(G[a+4>>2]);b=G[(M(G[a+56>>2],20)+a|0)+60>>2];d=(d+ua(b)|0)+1|0;if((d|0)>G[18026]){Aa(c);G[18026]=d;c=za(d,1);G[18027]=c;b=G[(M(G[a+56>>2],20)+a|0)+60>>2]}e=gb(c,b);d=G[a+4>>2];h=H[e|0];a:{if((h|0)==47){break a}b=H[d|0];if(!b){break a}c=d;while(1){f=c+1|0;g=(b&255)==47?f:g;b=H[c+1|0];c=f;if(b){continue}break}if(!g){break a}c=e+1|0;b:{if(!h){b=c;break b}while(1){f=H[c|0];b=c+1|0;c=b;if(f){continue}break}}h=(e^-1)+b|0;j=g-d|0;c=j+b|0;k=b-e&3;if(k){f=0;while(1){c=c-1|0;b=b-1|0;E[c|0]=H[b|0];f=f+1|0;if((k|0)!=(f|0)){continue}break}}if(h>>>0>=3){while(1){E[c-1|0]=H[b-1|0];E[c-2|0]=H[b-2|0];E[c-3|0]=H[b-3|0];c=c-4|0;b=b-4|0;E[c|0]=H[b|0];if((b|0)!=(e|0)){continue}break}}if((d|0)==(g|0)){break a}c=(d^-1)+g|0;f=j&7;if(f){b=0;while(1){E[e|0]=H[d|0];e=e+1|0;d=d+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}if(c>>>0<7){break a}while(1){E[e|0]=H[d|0];E[e+1|0]=H[d+1|0];E[e+2|0]=H[d+2|0];E[e+3|0]=H[d+3|0];E[e+4|0]=H[d+4|0];E[e+5|0]=H[d+5|0];E[e+6|0]=H[d+6|0];E[e+7|0]=H[d+7|0];e=e+8|0;d=d+8|0;if((g|0)!=(d|0)){continue}break}}}ra(a);return i}function Qc(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=G[b>>2];h=H[d|0];a:{b:{if(!h){i=28;if(f){break a}k=1;i=40;l=1;f=0;break b}i=40;c:{d:{if(!f|H[f|0]!=120|(H[f+1|0]!=109|H[f+2|0]!=108)){break d}g=H[f+3|0];if(g){if((g|0)!=110|H[f+4|0]!=115){break d}g=1;if(H[f+5|0]){break c}return 39}j=1;i=38;g=0;break c}g=1}f=0;l=1;k=1;while(1){k=!(!k|f>>>0>36)&H[f+11728|0]==(h|0)?k:0;l=!(g&l)|H[f+11776|0]==(h|0)&f>>>0<=29?l:0;f=f+1|0;h=H[f+d|0];if(h){continue}break}}if(((f|0)==36&(k|0)!=0)!=(j|0)){break a}if(l){i=40;if((f|0)==29){break a}}h=(H[a+472|0]!=0)+f|0;f=G[a+376>>2];e:{if(f){if((h|0)>G[f+24>>2]){j=h+24|0;g=ka[G[a+16>>2]](G[f+16>>2],j)|0;if(!g){return 1}G[f+24>>2]=j;G[f+16>>2]=g}G[a+376>>2]=G[f+4>>2];break e}i=1;f=ka[G[a+12>>2]](28)|0;if(!f){break a}j=h+24|0;g=ka[G[a+12>>2]](j)|0;G[f+16>>2]=g;if(!g){ka[G[a+20>>2]](f);return 1}G[f+24>>2]=j}G[f+20>>2]=h;Pa(G[f+16>>2],d,h);g=H[a+472|0];if(g){E[(h+G[f+16>>2]|0)-1|0]=g}G[f+12>>2]=c;G[f>>2]=b;G[f+8>>2]=G[b+4>>2];if(H[d|0]|(G[a+356>>2]+152|0)!=(b|0)){g=f}else{g=0}G[b+4>>2]=g;G[f+4>>2]=G[e>>2];G[e>>2]=f;i=0;if(!c){break a}c=G[a+100>>2];if(!c){break a}ka[c|0](G[a+4>>2],G[b>>2],G[b+4>>2]?d:0)}return i}function Fh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=ia-16|0;ia=i;g=G[b>>2];a:{if((g|0)==(c|0)){break a}m=a+76|0;n=a+888|0;while(1){f=(H[g|0]<<2)+n|0;h=E[f|0];b:{if(!h){h=0;f=ka[G[a+368>>2]](G[a+372>>2],g)|0;c:{if((f|0)<0){break c}if(f>>>0<=127){E[i+12|0]=f;h=1;break c}if(f>>>0<=2047){E[i+13|0]=f&63|128;E[i+12|0]=f>>>6|192;h=2;break c}if(f>>>0<=65535){E[i+14|0]=f&63|128;E[i+12|0]=f>>>12|224;E[i+13|0]=f>>>6&63|128;h=3;break c}if(f>>>0>1114111){break c}E[i+15|0]=f&63|128;E[i+12|0]=f>>>18|240;E[i+14|0]=f>>>6&63|128;E[i+13|0]=f>>>12&63|128;h=4}if((e-G[d>>2]|0)<(h|0)){break a}g=G[b>>2];g=(H[H[g|0]+m|0]+g|0)-3|0;f=i+12|0;break b}if((e-G[d>>2]|0)<(h|0)){break a}g=g+1|0;f=f+1|0}G[b>>2]=g;j=h-1|0;g=0;k=h&3;if(k){while(1){o=H[f|0];l=G[d>>2];G[d>>2]=l+1;E[l|0]=o;h=h-1|0;f=f+1|0;g=g+1|0;if((k|0)!=(g|0)){continue}break}}if(j>>>0>=3){while(1){g=H[f|0];j=G[d>>2];G[d>>2]=j+1;E[j|0]=g;g=H[f+1|0];j=G[d>>2];G[d>>2]=j+1;E[j|0]=g;g=H[f+2|0];j=G[d>>2];G[d>>2]=j+1;E[j|0]=g;g=H[f+3|0];j=G[d>>2];G[d>>2]=j+1;E[j|0]=g;f=f+4|0;h=h-4|0;if(h){continue}break}}g=G[b>>2];if((g|0)!=(c|0)){continue}break}}ia=i+16|0}function nc(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;if((d|0)==(e|0)){return-4}h=G[b+76>>2];a:{b:{c:{d:{if((d+1|0)==(e|0)){g=-1;j=E[b+73|0];if(j-3>>>0<3){break b}i=H[d|0];k=i-239|0;if(k>>>0>16|!(1<<k&98305)){break d}if((c|0)!=1){break b}if(!j){break c}break b}e:{f:{g:{h:{j=H[d+1|0];i=H[d|0];g=j|i<<8;if(g>>>0<=65278){if((g|0)==15360){break h}if((g|0)!=61371){break e}i:{if((c|0)!=1){break i}g=H[b+73|0];if(g>>>0>5){break i}if(1<<g&57){break c}}if((d+2|0)!=(e|0)){break f}return-1}if((g|0)==65534){break g}if((g|0)!=65279){break e}if(H[b+73|0]?0:(c|0)==1){break c}G[f>>2]=d+2;G[h>>2]=G[a+16>>2];return 14}g=H[b+73|0];j:{if((g|0)!=4){if((c|0)!=1|(g|0)!=3){break j}break c}if((c|0)==1){break c}}a=G[a+20>>2];G[h>>2]=a;break a}if(H[b+73|0]?0:(c|0)==1){break c}G[f>>2]=d+2;G[h>>2]=G[a+20>>2];return 14}if(H[d+2|0]!=191){break c}G[f>>2]=d+3;G[h>>2]=G[a+8>>2];return 14}if(!i){if((c|0)==1&H[b+73|0]==5){break c}a=G[a+16>>2];G[h>>2]=a;break a}if(j|(c|0)==1){break c}a=G[a+20>>2];G[h>>2]=a;g=ka[G[a>>2]](a,d,e,f)|0;break b}if(!i|(i|0)==60){break b}}a=G[(E[b+73|0]<<2)+a>>2];G[h>>2]=a;break a}return g}return ka[G[(c<<2)+a>>2]](a,d,e,f)|0}function $b(a,b,c){var d=0,e=0;a:{e=G[17996];d=G[e+(a<<2)>>2];if(d&256?c:0){break a}b:while(1){while(1){c:{d:{e:{switch(d&255){case 4:d=(a<<2)+e|0;a=G[d+8>>2];$b(G[d+4>>2],b,c);break c;case 5:d=(a<<2)+e|0;a=G[d+8>>2];$b(G[d+4>>2],b,c);break c;case 6:d=(a<<2)+e|0;a=G[d+8>>2];e=G[d+4>>2];$b(e,b,c);d=0;b=b?G[G[17996]+(e<<2)>>2]>>>8&1:d;e=G[17996];d=G[e+(a<<2)>>2];if(!c|!(d&256)){continue b}break a;case 7:a=G[((a<<2)+e|0)+4>>2];break c;case 8:a=G[((a<<2)+e|0)+4>>2];break c;case 10:a=G[((a<<2)+e|0)+4>>2];break c;case 15:d=G[((a<<2)+e|0)+4>>2];$b(d,b,c);if(!a){break a}e=G[17996];if(G[e+(d<<2)>>2]&256){break d}break a;default:Z(6674,5290,51,4951);W();case 0:case 1:case 2:case 14:break a;case 3:case 9:case 11:case 12:case 13:break e}}if(!a){break a}}if(!b&H[(a<<2)+e|0]!=12){break a}d=0;e=G[18058];if(e){b=G[18055];while(1){if(G[b+(d<<2)>>2]==(a|0)){break a}d=d+1|0;if((d|0)!=(e|0)){continue}break}if(!a){break a}}f:{if(G[18057]!=(e|0)){d=G[18055];break f}b=e<<1;G[18057]=b;d=sa(G[18055],b,e,4);G[18055]=d;e=G[18058]}G[18058]=e+1;G[(e<<2)+d>>2]=a;break a}e=G[17996];d=G[e+(a<<2)>>2];if(!c|!(d&256)){continue}break}break}}}function Le(){var a=0,b=0,c=0,d=0;G[18096]=0;G[18095]=0;G[18097]=0;G[18098]=0;G[G[18062]>>2]=0;a:{if((va(72276,0)|0)!=-1){a=G[18062];break a}wa(72276,G[18098]);a=G[18062];b=G[18098];b=G[((G[a+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;c=b+3|0;if((c|0)<=G[18061]){break a}c=c<<1;G[18061]=c;a=sa(a,c,b,4);G[18062]=a}d=a;a=G[18098];G[d+(a<<2)>>2]=258;a=va(72276,a);b:{if((a|0)!=-1){b=G[18062];break b}a=G[18098];wa(72276,a);b=G[18062];c=G[18098];c=G[((G[b+(c<<2)>>2]&15)<<2)+11392>>2]+c|0;G[18098]=c;d=c+3|0;if((d|0)<=G[18061]){break b}d=d<<1;G[18061]=d;b=sa(b,d,c,4);G[18062]=b}G[18099]=a;a=G[18098];G[(a<<2)+b>>2]=1;a=va(72276,a);c:{if((a|0)!=-1){b=G[18062];break c}a=G[18098];wa(72276,a);b=G[18062];c=G[18098];c=G[((G[b+(c<<2)>>2]&15)<<2)+11392>>2]+c|0;G[18098]=c;d=c+3|0;if((d|0)<=G[18061]){break c}d=d<<1;G[18061]=d;b=sa(b,d,c,4);G[18062]=b}G[18094]=a;a=G[18098];G[(a<<2)+b>>2]=9;a=va(72276,a);d:{if((a|0)!=-1){break d}a=G[18098];wa(72276,a);c=G[18062];b=G[18098];b=G[((G[c+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;d=b+3|0;if((d|0)<=G[18061]){break d}d=d<<1;G[18061]=d;G[18062]=sa(c,d,b,4)}G[18100]=a}function Pa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){fa(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){E[c|0]=H[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0<e>>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0<c>>>0){break c}while(1){G[c>>2]=G[b>>2];G[c+4>>2]=G[b+4>>2];G[c+8>>2]=G[b+8>>2];G[c+12>>2]=G[b+12>>2];G[c+16>>2]=G[b+16>>2];G[c+20>>2]=G[b+20>>2];G[c+24>>2]=G[b+24>>2];G[c+28>>2]=G[b+28>>2];G[c+32>>2]=G[b+32>>2];G[c+36>>2]=G[b+36>>2];G[c+40>>2]=G[b+40>>2];G[c+44>>2]=G[b+44>>2];G[c+48>>2]=G[b+48>>2];G[c+52>>2]=G[b+52>>2];G[c+56>>2]=G[b+56>>2];G[c+60>>2]=G[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){G[c>>2]=G[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0<a>>>0){c=a;break a}c=a;while(1){E[c|0]=H[b|0];E[c+1|0]=H[b+1|0];E[c+2|0]=H[b+2|0];E[c+3|0]=H[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0<e>>>0){while(1){E[c|0]=H[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Ja(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=G[a+112>>2];d=G[a+116>>2];e=!!(b|d);c=b;a:{i=e;e=G[a+4>>2];f=G[a+44>>2];b=e-f|0;h=b;g=b+G[a+120>>2]|0;b=G[a+124>>2]+(b>>31)|0;b=g>>>0<h>>>0?b+1|0:b;if(!(i&(c>>>0<=g>>>0&(b|0)>=(d|0)|(b|0)>(d|0)))){d=ia-16|0;ia=d;e=-1;c=G[a+72>>2];G[a+72>>2]=c-1|c;if(G[a+20>>2]!=G[a+28>>2]){ka[G[a+36>>2]](a,0,0)|0}G[a+28>>2]=0;G[a+16>>2]=0;G[a+20>>2]=0;c=G[a>>2];b:{if(c&4){G[a>>2]=c|32;c=-1;break b}f=G[a+44>>2]+G[a+48>>2]|0;G[a+8>>2]=f;G[a+4>>2]=f;c=c<<27>>31}c:{if(c){break c}if((ka[G[a+32>>2]](a,d+15|0,1)|0)!=1){break c}e=H[d+15|0]}ia=d+16|0;if((e|0)>=0){break a}f=G[a+44>>2];e=G[a+4>>2]}G[a+112>>2]=-1;G[a+116>>2]=-1;G[a+104>>2]=e;d=f-e|0;e=d+g|0;b=(d>>31)+b|0;G[a+120>>2]=e;G[a+124>>2]=d>>>0>e>>>0?b+1|0:b;return-1}d=g+1|0;b=d?b:b+1|0;g=G[a+4>>2];f=G[a+8>>2];c=G[a+112>>2];h=G[a+116>>2];d:{if(!(c|h)){break d}i=c-d|0;c=h-(b+(d>>>0>c>>>0)|0)|0;j=f-g|0;h=j>>31;if((c|0)>=(h|0)&i>>>0>=j>>>0|(c|0)>(h|0)){break d}f=g+i|0}G[a+104>>2]=f;c=G[a+44>>2];f=c-g|0;d=f+d|0;b=(f>>31)+b|0;G[a+120>>2]=d;G[a+124>>2]=d>>>0<f>>>0?b+1|0:b;if(c>>>0>=g>>>0){E[g-1|0]=e}return e}function Xd(a,b,c,d){var e=0,f=0,g=0;f=-1;a:{if((b|0)==(c|0)){break a}b:{if(H[b+1|0]|H[b|0]!=45){break b}e=b+2|0;if((e|0)==(c|0)){break a}a=a+76|0;while(1){c:{d:{e:{f:{g:{h:{i:{b=e;e=H[b+1|0];switch(e-216|0){case 39:break i;case 4:case 5:case 6:case 7:break b;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break e;case 0:case 1:case 2:case 3:break g;default:break h}}if(H[b|0]<=253){break e}break b}if(e){break e}j:{switch(H[a+H[b|0]|0]){case 5:if((c-b|0)>=2){break e}return-2;case 6:break j;case 0:case 1:case 8:break b;case 27:break f;case 7:break g;default:break e}}if((c-b|0)<3){return-2}e=b+3|0;break d}if((c-b|0)<4){return-2}e=b+4|0;break d}e=b+2|0;if((e|0)==(c|0)){break a}if(H[b+3|0]|H[e|0]!=45){break d}a=b+4|0;if((a|0)==(c|0)){break a}if(!H[b+5|0]){break c}b=a;break b}e=b+2|0}if((c|0)!=(e|0)){continue}break a}break}c=a;a=H[b+4|0]==62;b=a?b+6|0:c;g=a?13:0}G[d>>2]=b;f=g}return f}function Sd(a,b,c,d){var e=0,f=0,g=0;f=-1;a:{if((b|0)==(c|0)){break a}b:{if(H[b|0]|H[b+1|0]!=45){break b}e=b+2|0;if((e|0)==(c|0)){break a}a=a+76|0;while(1){c:{d:{e:{f:{g:{h:{i:{b=e;e=H[b|0];switch(e-216|0){case 39:break i;case 4:case 5:case 6:case 7:break b;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break e;case 0:case 1:case 2:case 3:break g;default:break h}}if(H[b+1|0]<=253){break e}break b}if(e){break e}j:{switch(H[a+H[b+1|0]|0]){case 5:if((c-b|0)>=2){break e}return-2;case 6:break j;case 0:case 1:case 8:break b;case 27:break f;case 7:break g;default:break e}}if((c-b|0)<3){return-2}e=b+3|0;break d}if((c-b|0)<4){return-2}e=b+4|0;break d}e=b+2|0;if((e|0)==(c|0)){break a}if(H[e|0]|H[b+3|0]!=45){break d}a=b+4|0;if((a|0)==(c|0)){break a}if(!H[a|0]){break c}b=a;break b}e=b+2|0}if((c|0)!=(e|0)){continue}break a}break}c=a;a=H[b+5|0]==62;b=a?b+6|0:c;g=a?13:0}G[d>>2]=b;f=g}return f}function wc(a){var b=0,c=0,d=0,e=0,f=0;f=ia-16|0;ia=f;d=vc(a);a:{b:{c:{b=G[a+56>>2];switch(G[(M(b,20)+a|0)+76>>2]-26|0){case 11:break b;case 0:break c;default:break a}}while(1){ra(a);b=vc(a);d:{if((b|0)==(d|0)){break d}c=G[18005];if(H[c+(d<<2)|0]==3){break d}if(H[c+(b<<2)|0]==3){d=b;break d}e=G[18006];c=G[18005]+(e<<2)|0;G[c>>2]=5;G[c+8>>2]=b;G[c+4>>2]=d;d=va(72048,e);e:{if((d|0)!=-1){break e}d=G[18006];wa(72048,d);c=G[18005];b=G[18006];b=G[(H[c+(b<<2)|0]<<2)+11120>>2]+b|0;G[18006]=b;e=b+3|0;if((e|0)<=G[18009]){break e}e=e<<1;G[18009]=e;G[18005]=sa(c,e,b,4)}}if(G[(M(G[a+56>>2],20)+a|0)+76>>2]==26){continue}break}break a}if((G[G[18005]+(d<<2)>>2]&254)!=2){c=G[a+4>>2];b=M(b,20)+a|0;e=G[b+72>>2];G[f+4>>2]=G[b+68>>2];G[f+8>>2]=e;G[f>>2]=c;ya(1,a,57,f)}ra(a);b=vc(a);c=G[18006];a=G[18005]+(c<<2)|0;G[a>>2]=4;G[a+8>>2]=b;G[a+4>>2]=d;d=va(72048,c);f:{if((d|0)!=-1){break f}d=G[18006];wa(72048,d);b=G[18005];a=G[18006];a=G[(H[b+(a<<2)|0]<<2)+11120>>2]+a|0;G[18006]=a;c=a+3|0;if((c|0)<=G[18009]){break f}c=c<<1;G[18009]=c;G[18005]=sa(b,c,a,4)}}ia=f+16|0;return d}function Gb(a){var b=0,c=0,d=0,e=0,f=0;c=ia-32|0;ia=c;a:{b:{c:{d:{e:{f:{g:{b=G[a+56>>2];switch(G[(M(b,20)+a|0)+76>>2]-3|0){case 5:break b;case 0:break d;case 12:break e;case 17:break f;case 16:break g;default:break a}}h:{switch(G[(M(!b,20)+a|0)+76>>2]-22|0){case 13:break c;case 0:case 1:case 2:break h;default:break a}}d=xa(G[(M(b,20)+a|0)+60>>2]);ra(a);kd(a,d);d=1;break a}if(G[(M(!b,20)+a|0)+76>>2]==35){break c}break a}ra(a);kd(a,0);d=1;break a}ra(a);Fa(a,33,G[(M(G[a+56>>2],20)+a|0)+76>>2]);ra(a);while(1){if(Gb(a)){continue}break}Fa(a,34,34)}ra(a);d=1;break a}ra(a);if(Be()){d=G[a+4>>2];b=M(G[a+56>>2],20)+a|0;e=G[b+72>>2];G[c+20>>2]=G[b+68>>2];G[c+24>>2]=e;G[c+16>>2]=d;xc(62,c+16|0)}d=1;if(!jd(a)){break a}b=id(a);Va(72112);Va(72144);Va(72160);Va(72176);if((hd(a,b)|0)!=-1){b=G[a+4>>2];e=M(G[a+56>>2],20)+a|0;f=G[e+72>>2];G[c+4>>2]=G[e+68>>2];G[c+8>>2]=f;G[c>>2]=b;ya(1,a,42,c)}G[(G[18036]+M(G[18038],12)|0)+4>>2]=-2;if(G[(M(G[a+56>>2],20)+a|0)+76>>2]==33){ra(a);while(1){if(Gb(a)){continue}break}Fa(a,34,34);ra(a)}gd(a);$a(72112)}ia=c+32|0;return d}function Vd(a,b,c,d,e){var f=0,g=0,h=0;f=-1;a:{if((c|0)==(d|0)){break a}g=b+76|0;while(1){b:{c:{d:{e:{f:{g:{h:{b=H[c|0];switch(b-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break c;case 4:case 5:case 6:case 7:break e;case 0:case 1:case 2:case 3:break f;case 39:break h;default:break g}}if(H[c+1|0]<=253){break c}break e}if(b){break c}i:{j:{h=H[H[c+1|0]+g|0];switch(h|0){case 6:break i;case 5:break j;case 12:case 13:break d;case 0:case 1:case 8:break e;case 7:break f;default:break c}}if((d-c|0)>=2){break c}return-2}if((d-c|0)<3){return-2}b=c+3|0;break b}if((d-c|0)<4){return-2}b=c+4|0;break b}G[e>>2]=c;return 0}b=c+2|0;if((a|0)!=(h|0)){break b}if((b|0)==(d|0)){return-27}G[e>>2]=b;k:{if(H[b|0]){break k}a=H[H[c+3|0]+g|0];if(a>>>0>30){break k}f=27;if(1<<a&1076891136){break a}}return 0}b=c+2|0}c=b;if((d|0)!=(c|0)){continue}break}}return f}function $d(a,b,c,d,e){var f=0,g=0,h=0;f=-1;a:{if((c|0)==(d|0)){break a}g=b+76|0;while(1){b:{c:{d:{e:{f:{g:{h:{b=H[c+1|0];switch(b-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break c;case 4:case 5:case 6:case 7:break e;case 0:case 1:case 2:case 3:break f;case 39:break h;default:break g}}if(H[c|0]<=253){break c}break e}if(b){break c}i:{j:{h=H[H[c|0]+g|0];switch(h|0){case 6:break i;case 5:break j;case 12:case 13:break d;case 0:case 1:case 8:break e;case 7:break f;default:break c}}if((d-c|0)>=2){break c}return-2}if((d-c|0)<3){return-2}b=c+3|0;break b}if((d-c|0)<4){return-2}b=c+4|0;break b}G[e>>2]=c;return 0}b=c+2|0;if((a|0)!=(h|0)){break b}if((b|0)==(d|0)){return-27}G[e>>2]=b;k:{if(H[c+3|0]){break k}a=H[H[b|0]+g|0];if(a>>>0>30){break k}f=27;if(1<<a&1076891136){break a}}return 0}b=c+2|0}c=b;if((d|0)!=(c|0)){continue}break}}return f}function mb(a){var b=0,c=0,d=0,e=0,f=0;b=G[17987];c=b;e=G[17977];d=e;if(G[17974]){Ka(71920,b);d=G[17977];c=G[17987]}G[M(c,20)+d>>2]=3;b=e+M(b,20)|0;G[b+4>>2]=a;G[b+8>>2]=0;G[b+12>>2]=0;c=va(71920,c);if((c|0)!=-1){return G[(G[17977]+M(c,20)|0)+16>>2]}a:{b:{c:{d:{e:{f:{g:{h:{c=a;b=G[17996]+(c<<2)|0;switch(H[b|0]-1|0){case 14:break h;case 2:break a;case 0:case 1:case 7:case 8:case 9:case 10:case 11:case 12:break b;case 6:break d;case 5:break e;case 4:break f;case 3:break g;default:break c}}c=G[b+8>>2];c=xb(mb(G[b+4>>2]),c);break a}c=G[b+8>>2];c=Ha(mb(G[b+4>>2]),mb(c));break a}c=G[b+8>>2];b=G[b+4>>2];c=Ha(pb(mb(b),c),pb(b,mb(c)));break a}d=G[b+8>>2];b=G[b+4>>2];c=yb(mb(b),d);if(!(E[(G[17996]+(b<<2)|0)+1|0]&1)){break a}c=Ha(c,mb(d));break a}c=yb(mb(G[b+4>>2]),Ha(a,G[18019]));break a}Z(6674,5296,432,1458);W()}c=G[18021]}d=G[17987];b=d;f=G[17977];e=f;if(G[17974]){Ka(71920,d);e=G[17977];b=G[17987]}G[M(b,20)+e>>2]=3;d=M(d,20)+f|0;G[d+4>>2]=a;G[d+8>>2]=0;G[d+12>>2]=0;va(71920,b);G[(G[17977]+M(G[17987],20)|0)+16>>2]=c;Xb();return c}function kb(a,b){var c=0,d=0,e=0,f=0;a:{if(b){break a}e=G[17987];c=e;f=G[17977];d=f;if(G[17974]){Ka(71920,e);d=G[17977];c=G[17987]}G[M(c,20)+d>>2]=1;d=f+M(e,20)|0;G[d+4>>2]=a;G[d+8>>2]=0;G[d+12>>2]=0;c=va(71920,c);if((c|0)==-1){break a}return G[(G[17977]+M(c,20)|0)+16>>2]}b:{c:{d:{e:{f:{g:{h:{i:{c=a;d=G[17996]+(c<<2)|0;switch(H[d|0]-1|0){case 4:break i;case 0:case 1:case 2:case 7:case 8:case 9:case 10:case 12:break b;case 3:break c;case 14:break e;case 11:break f;case 6:break g;case 5:break h;default:break d}}c=G[d+8>>2];c=pb(kb(G[d+4>>2],b),kb(c,b));break b}c=G[d+8>>2];c=yb(kb(G[d+4>>2],b),kb(c,b));break b}c=zc(kb(G[d+4>>2],b));break b}c=G[(b?72076:72084)>>2];break b}c=G[d+8>>2];c=xb(kb(G[d+4>>2],b),c);break b}Z(6674,5296,326,4359);W()}c=G[d+8>>2];c=Ha(kb(G[d+4>>2],b),kb(c,b))}if(!b){e=G[17987];b=e;f=G[17977];d=f;if(G[17974]){Ka(71920,e);d=G[17977];b=G[17987]}G[M(b,20)+d>>2]=1;d=f+M(e,20)|0;G[d+4>>2]=a;G[d+8>>2]=0;G[d+12>>2]=0;va(71920,b);G[(G[17977]+M(G[17987],20)|0)+16>>2]=c;Xb()}return c}function yd(a,b,c,d){var e=0,f=0,g=0,h=0;g=ia-32|0;ia=g;e=d&2147483647;h=e;f=e-1006698496|0;e=e-1140785152|0;a:{if((f|0)==(e|0)&0|e>>>0>f>>>0){e=d<<4|c>>>28;f=c<<4|b>>>28;c=e;b=b&268435455;if((b|0)==134217728&(a|0)!=0|b>>>0>134217728){e=c+1073741824|0;a=f+1|0;e=a?e:e+1|0;f=a;break a}e=c+1073741824|0;if(b^134217728|a){break a}b=f&1;a=b+f|0;e=a>>>0<b>>>0?e+1|0:e;f=a;break a}if(!(!c&(h|0)==2147418112?!(a|b):h>>>0<2147418112)){e=c;c=d<<4|e>>>28;f=e<<4|b>>>28;e=c&524287|2146959360;break a}f=0;e=2146435072;if(h>>>0>1140785151){break a}e=0;h=h>>>16|0;if(h>>>0<15249){break a}e=d&65535|65536;Ra(g+16|0,a,b,c,e,h-15233|0);Ib(g,a,b,c,e,15361-h|0);e=G[g+4>>2];h=e;a=G[g+8>>2];c=G[g+12>>2]<<4|a>>>28;f=a<<4|e>>>28;e=c;a=h&268435455;b=G[g>>2]|(G[g+16>>2]|G[g+24>>2]|(G[g+20>>2]|G[g+28>>2]))!=0;if((a|0)==134217728&(b|0)!=0|a>>>0>134217728){a=f+1|0;e=a?e:e+1|0;f=a;break a}if(a^134217728|b){break a}a=f+(f&1)|0;e=a>>>0<f>>>0?e+1|0:e;f=a}ia=g+32|0;x(0,f|0);x(1,d&-2147483648|e);return+z()}function ce(a,b,c,d){var e=0,f=0,g=0,h=0;if((b|0)==(c|0)){return-1}e=1;a:{b:{c:{d:{e:{f:{g:{h:{g=a+76|0;switch(H[g+H[b|0]|0]-5|0){case 4:case 5:case 16:case 25:break d;case 17:case 19:break e;case 2:break f;case 1:break g;case 0:break h;default:break b}}e=2;f=-2;if((c-b|0)<2){break a}if(ka[G[a+344>>2]](a,b)|0){break e}break b}e=3;f=-2;if((c-b|0)<3){break a}if(ka[G[a+348>>2]](a,b)|0){break e}break b}e=4;f=-2;if((c-b|0)<4){break a}if(!(ka[G[a+352>>2]](a,b)|0)){break b}}b=b+e|0;if((c|0)==(b|0)){return-1}while(1){e=1;i:{j:{switch(H[H[b|0]+g|0]-5|0){case 0:if((c-b|0)<2){return-2}e=2;if(ka[G[a+332>>2]](a,b)|0){break i}break b;case 1:if((c-b|0)<3){return-2}e=3;if(ka[G[a+336>>2]](a,b)|0){break i}break b;case 17:case 19:case 20:case 21:case 22:break i;case 2:break j;case 13:break c;default:break b}}if((c-b|0)<4){return-2}e=4;if(!(ka[G[a+340>>2]](a,b)|0)){break b}}b=b+e|0;if((c|0)!=(b|0)){continue}break}return-1}h=22;break b}b=b+1|0;h=28}G[d>>2]=b;f=h}return f}function lg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a:{a=G[b>>2];if((c|0)!=(a|0)){while(1){g=H[a+1|0];h=g<<24>>24;b:{c:{d:{e:{f=H[a|0];switch(f|0){case 1:case 2:case 3:case 4:case 5:case 6:case 7:break d;case 0:break e;default:break c}}if((h|0)<0){break d}f=G[d>>2];if((f|0)==(e|0)){break a}G[d>>2]=f+1;E[f|0]=h;break b}g=G[d>>2];if((e-g|0)<2){break a}G[d>>2]=g+1;E[g|0]=f<<2|h<<24>>>30|192;f=G[d>>2];G[d>>2]=f+1;E[f|0]=h&63|128;break b}if(f-216>>>0>=4){g=G[d>>2];if((e-g|0)<3){break a}G[d>>2]=g+1;E[g|0]=f>>>4|224;g=G[d>>2];G[d>>2]=g+1;E[g|0]=f<<2&60|(h&192)>>>6|128;f=G[d>>2];G[d>>2]=f+1;E[f|0]=h&63|128;break b}i=G[d>>2];if((e-i|0)<4){break a}G[d>>2]=i+1;f=(f<<2&12|g>>>6)+1|0;E[i|0]=f>>>2|240;i=G[d>>2];G[d>>2]=i+1;E[i|0]=f<<4&48|g>>>2&15|128;g=H[a+2|0];f=H[a+3|0];i=G[d>>2];G[d>>2]=i+1;E[i|0]=g<<2&12|(h<<4&48|f>>>6)|128;h=G[d>>2];G[d>>2]=h+1;E[h|0]=f&63|128;a=a+2|0}a=a+2|0;if((c|0)!=(a|0)){continue}break}}G[b>>2]=c;return}G[b>>2]=a}function Eg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a:{a=G[b>>2];if((c|0)!=(a|0)){while(1){g=H[a|0];h=g<<24>>24;b:{c:{d:{e:{f=H[a+1|0];switch(f|0){case 1:case 2:case 3:case 4:case 5:case 6:case 7:break d;case 0:break e;default:break c}}if((h|0)<0){break d}f=G[d>>2];if((f|0)==(e|0)){break a}G[d>>2]=f+1;E[f|0]=h;break b}g=G[d>>2];if((e-g|0)<2){break a}G[d>>2]=g+1;E[g|0]=f<<2|h<<24>>>30|192;f=G[d>>2];G[d>>2]=f+1;E[f|0]=h&63|128;break b}if(f-216>>>0>=4){g=G[d>>2];if((e-g|0)<3){break a}G[d>>2]=g+1;E[g|0]=f>>>4|224;g=G[d>>2];G[d>>2]=g+1;E[g|0]=f<<2&60|(h&192)>>>6|128;f=G[d>>2];G[d>>2]=f+1;E[f|0]=h&63|128;break b}i=G[d>>2];if((e-i|0)<4){break a}G[d>>2]=i+1;f=(f<<2&12|g>>>6)+1|0;E[i|0]=f>>>2|240;i=G[d>>2];G[d>>2]=i+1;E[i|0]=f<<4&48|g>>>2&15|128;g=H[a+3|0];f=H[a+2|0];i=G[d>>2];G[d>>2]=i+1;E[i|0]=g<<2&12|(h<<4&48|f>>>6)|128;h=G[d>>2];G[d>>2]=h+1;E[h|0]=f&63|128;a=a+2|0}a=a+2|0;if((c|0)!=(a|0)){continue}break}}G[b>>2]=c;return}G[b>>2]=a}function Xa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=b;h=-2147483648;g=ia-16|0;ia=g;b=H[a|0];a:{if(!b){c=a;break a}c=a;b:{while(1){if(!Gc(b<<24>>24)){break b}b=H[c+1|0];c=c+1|0;if(b){continue}break}break a}c:{b=H[c|0];switch(b-43|0){case 0:case 2:break c;default:break a}}k=(b|0)==45?-1:0;c=c+1|0}while(1){d:{b=-48;d=E[c|0];e:{if((d-48&255)>>>0<10){break e}b=-87;if((d-97&255)>>>0<26){break e}b=-55;if((d-65&255)>>>0>25){break d}}d=b+d|0;if((d|0)>=10){break d}Na(g,10,0,0,0,f,e,0,0);b=1;f:{if(G[g+8>>2]|G[g+12>>2]){break f}l=ki(f,e,10,0);i=ja;m=d>>31;n=m^-1;if((i|0)==(n|0)&(d^-1)>>>0<l>>>0|i>>>0>n>>>0){break f}e=i+m|0;b=d+l|0;e=b>>>0<d>>>0?e+1|0:e;f=b;p=1;b=o}c=c+1|0;o=b;continue}break}if(j){G[j>>2]=p?c:a}g:{h:{i:{if(o){G[18106]=68;f=-2147483648;e=0;break i}if(!e&f>>>0<2147483648){break h}}if(!k){G[18106]=68;h=2147483647;break g}if(!e&f>>>0<=2147483648){break h}G[18106]=68;break g}a=k;h=(a^f)-a|0}ia=g+16|0;return h}function Wc(a){var b=0,c=0,d=0,e=0,f=0;f=ia-16|0;ia=f;b=G[18066];c=G[18097];e=ua(a)+1|0;d=c+e|0;if((d|0)>G[18065]){d=d<<1;G[18065]=d;b=sa(b,d,c,1);G[18066]=b;c=G[18097]}gb(b+c|0,a);b=va(72324,c);a:{if((b|0)==-1){b:{if(!(G[18098]>2047?G[18059]:0)){b=G[18097];break b}ic(72276);ic(72300);ic(72324);ic(72348);Le();c=G[18066];b=G[18097];e=ua(a)+1|0;d=b+e|0;if((d|0)>G[18065]){d=d<<1;G[18065]=d;c=sa(c,d,b,1);G[18066]=c;b=G[18097]}gb(b+c|0,a)}wa(72324,b);G[18102]=b;G[18103]=b;G[18101]=-1;G[18097]=G[18097]+e;G[18093]=0;Ia();c=Ke();if(G[18101]){a=G[18093];if(!a){a=G[18066]+G[18103]|0;e=Ba(a);d=Ba(G[18066]+G[18102]|0);G[f>>2]=a;G[f+4>>2]=e-d;Ma(0,f);a=G[18093]}G[18093]=a+1}a=G[18096];e=G[18064]+(a<<3)|0;G[e+4>>2]=c;G[e>>2]=b;G[18096]=a+1;wa(72300,a);a=G[18096];if((a|0)!=G[18063]){break a}b=a<<1;G[18063]=b;G[18064]=sa(G[18064],b,a,8);break a}c=G[18064];a=G[18096];G[c+(a<<3)>>2]=b;c=G[(c+(va(72300,a)<<3)|0)+4>>2]}ia=f+16|0;return c}function qa(a){var b=0,c=0,d=0,e=0;a:{b=G[a+4>>2];if(!b){break a}c=G[a+16>>2];if(!c){G[a>>2]=b;G[a+4>>2]=G[b>>2];G[b>>2]=0;c=b+8|0;G[a+16>>2]=c;b=G[b+4>>2];G[a+12>>2]=c;G[a+8>>2]=b+c;return 1}d=G[a+8>>2]-c|0;if((d|0)>=G[b+4>>2]){break a}e=G[b>>2];G[b>>2]=G[a>>2];G[a+4>>2]=e;G[a>>2]=b;Pa(b+8|0,c,d);c=G[a+16>>2];d=G[a>>2];b=d+8|0;G[a+16>>2]=b;G[a+12>>2]=b+(G[a+12>>2]-c|0);G[a+8>>2]=b+G[d+4>>2];return 1}b=G[a+8>>2];c=G[a>>2];d=G[a+16>>2];if(!(!c|(d|0)!=(c+8|0))){e=c;c=b-d<<1;b=ka[G[G[a+20>>2]+4>>2]](e,c+8|0)|0;if(!b){return 0}G[a>>2]=b;G[b+4>>2]=c;b=b+8|0;G[a+8>>2]=b+c;c=G[a+16>>2];G[a+16>>2]=b;G[a+12>>2]=b+(G[a+12>>2]-c|0);return 1}b=b-d|0;e=(b|0)<1024?1024:b<<1;d=ka[G[G[a+20>>2]>>2]](e+8|0)|0;if(!d){return 0}G[d+4>>2]=e;G[d>>2]=G[a>>2];G[a>>2]=d;b=G[a+12>>2];c=G[a+16>>2];b:{if((b|0)==(c|0)){c=b;break b}Pa(d+8|0,c,b-c|0);b=G[a+16>>2];c=G[a+12>>2]}d=d+8|0;G[a+16>>2]=d;G[a+12>>2]=d+(c-b|0);G[a+8>>2]=d+e;return 1}function Sb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{c=G[a+12>>2];b:{if((c|0)==G[b+12>>2]){c=G[a>>2];d=G[b>>2];if((c|0)<(d|0)){return-1}e=1;if((c|0)!=(d|0)){break b}c=G[a+4>>2];d=G[b+4>>2];if((c|0)<(d|0)){return-1}if((c|0)!=(d|0)){break b}e=-1;a=G[a+8>>2];b=G[b+8>>2];if((a|0)<(b|0)){break b}return(a|0)!=(b|0)}if(!c){break a}f=G[b+4>>2];d=f+50400|0;c=G[b>>2];h=G[b+8>>2];i=G[a+8>>2];g=G[a+4>>2];c:{d:{if((f|0)<-50400){e=86400;b=-1;break d}b=c;if(d>>>0<86400){break c}e=-86400;b=1}d=d+e|0;b=b+c|0}a=G[a>>2];e:{if((b|0)>(a|0)){break e}e=1;if((a|0)!=(b|0)){break b}if((d|0)>(g|0)){break e}if((d|0)!=(g|0)|(h|0)<(i|0)){break b}}b=f-50400|0;f:{g:{if((f|0)<50400){d=-1;e=86400;break g}if(b>>>0<86400){break f}d=1;e=-86400}b=b+e|0;c=c+d|0}e=-1;if((a|0)<(c|0)){break b}if((a|0)!=(c|0)){return 2}if((b|0)>(g|0)){break b}e=2;if((b|0)!=(g|0)){break b}e=(h|0)>(i|0)?-1:2}return e}return 0-Sb(b,a)|0}function pe(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=ia-16|0;ia=g;h=G[c>>2];a:{if(G[a+144>>2]==(b|0)){G[a+288>>2]=h;i=a+288|0;j=a+292|0;break a}i=G[a+300>>2];j=i+4|0}G[i>>2]=h;G[c>>2]=0;k=ka[G[b+12>>2]](b,h,d,g+4|0)|0;d=G[g+4>>2];G[j>>2]=d;j=4;b:{c:{d:{e:{switch(k+4|0){case 46:f=G[a+80>>2];if(f){G[g+12>>2]=h;f:{if(!H[b+72|0]){g:{if(G[a+144>>2]==(b|0)){i=a+288|0;f=a+292|0;break g}i=G[a+300>>2];f=i+4|0}while(1){G[g+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,g+12|0,d,g+8|0,G[a+48>>2]);G[f>>2]=G[g+12>>2];h=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],h,G[g+8>>2]-h|0);G[i>>2]=G[g+12>>2];if(G[g+12>>2]!=(d|0)){continue}break}break f}ka[f|0](G[a+4>>2],h,d-h|0)}d=G[g+4>>2]}G[c>>2]=d;G[e>>2]=d;j=G[a+480>>2]==2?35:0;break b;case 4:G[i>>2]=d;break b;case 2:if(f){break d}j=6;break b;case 0:case 3:break e;default:break c}}if(f){break d}j=2;break b}G[e>>2]=h;j=0;break b}G[i>>2]=d;j=23}ia=g+16|0;return j}function li(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{if(b){if(!c){break j}break i}a=(d>>>0)/(c>>>0)|0;ja=0;break a}if(!d){break h}break g}if(!(c-1&c)){break f}g=(P(c)+33|0)-P(b)|0;e=0-g|0;break d}a=(b>>>0)/0|0;ja=0;break a}a=32-P(b)|0;if(a>>>0<31){break e}break c}if((c|0)==1){break b}a=c?31-P(c-1^c)|0:32;c=a&31;if((a&63)>>>0>=32){a=0;b=b>>>c|0}else{a=b>>>c|0;b=((1<<c)-1&b)<<32-c|d>>>c}ja=a;a=b;break a}g=a+1|0;e=63-a|0}a=g&63;f=a&31;if(a>>>0>=32){a=0;h=b>>>f|0}else{a=b>>>f|0;h=((1<<f)-1&b)<<32-f|d>>>f}f=a;a=e&63;e=a&31;if(a>>>0>=32){a=d<<e;d=0}else{a=(1<<e)-1&d>>>32-e|b<<e;d=d<<e}b=a;if(g){e=c-1|0;l=(e|0)!=-1?0:-1;while(1){a=h<<1|b>>>31;f=f<<1|h>>>31;i=l-(f+(a>>>0>e>>>0)|0)>>31;j=c&i;h=a-j|0;f=f-(a>>>0<j>>>0)|0;b=b<<1|d>>>31;d=k|d<<1;k=i&1;g=g-1|0;if(g){continue}break}}ja=b<<1|d>>>31;a=k|d<<1;break a}d=0;b=0}ja=b;a=d}return a}function Tb(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=ia-48|0;ia=e;G[e+40>>2]=c;G[e+44>>2]=a;we(e+36|0,e+28|0,e+44|0,e+20|0,e+16|0,a,b);we(e+32|0,e+24|0,e+40|0,e+12|0,e+8|0,c,d);ia=e+48|0;a:{if(G[e+28>>2]){a=0;if(G[e+24>>2]){break a}}g=G[e+36>>2];a=G[e+32>>2];if((g|0)!=(a|0)){a=g-a|0;break a}b:{d=G[e+20>>2];c=G[e+44>>2];f=d-c|0;a=G[e+40>>2];b=G[e+12>>2]-a|0;if((f|0)==(b|0)){if((c|0)!=(d|0)){b=a+f|0;f=c+f|0;while(1){h=H[c|0];i=H[a|0];if((h|0)!=(i|0)){break b}a=a+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}d=f;a=b}f=G[e+8>>2];a=((f|0)!=(a|0))+a|0;b=d;d=G[e+16>>2];c=b+((b|0)!=(d|0))|0;c:{if((c|0)!=(d|0)){b=1;while(1){if((a|0)==(f|0)){break c}h=H[c|0];i=H[a|0];if((h|0)!=(i|0)){b=(h<<24>>24)-(i<<24>>24)|0;break c}a=a+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}b=(a|0)!=(f|0)?-1:0}a=g?b:0-b|0;break a}a=f-b|0;a=g?a:0-a|0;break a}a=(h<<24>>24)-(i<<24>>24)|0;a=g?a:0-a|0}return a}function wa(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=ka[G[a>>2]](b)|0;c=G[a+12>>2];if((c|0)==G[a+16>>2]){G[a+16>>2]=c<<1;g=G[a+8>>2];G[a+8>>2]=g<<1;j=G[a+20>>2];h=za(g<<2,4);G[a+20>>2]=h;if(G[a+8>>2]){c=0;while(1){G[h+(c<<2)>>2]=-1;c=c+1|0;if((c|0)!=G[a+8>>2]){continue}break}}if(g){while(1){l=G[(i<<2)+j>>2];if((l|0)!=-1){f=G[((g|i)<<2)+j>>2];d=G[a+8>>2];c=f&d-1;e=h+(c<<2)|0;if(G[e>>2]!=-1){while(1){c=(c?c:d)-1|0;e=h+(c<<2)|0;if(G[e>>2]!=-1){continue}break}}G[e>>2]=l;G[h+((G[a+8>>2]|c)<<2)>>2]=f}i=i+1|0;if((g|0)!=(i|0)){continue}break}}Aa(j)}a:{e=G[a+20>>2];c=G[a+8>>2]-1&k;f=e+(c<<2)|0;d=G[f>>2];if((d|0)!=-1){while(1){if(ka[G[a+4>>2]](b,d)|0){break a}e=G[a+20>>2];d=e;if(!c){c=G[a+8>>2]}c=c-1|0;f=(c<<2)+d|0;d=G[f>>2];if((d|0)!=-1){continue}break}}G[f>>2]=b;G[((G[a+8>>2]|c)<<2)+e>>2]=k;G[a+12>>2]=G[a+12>>2]+1;return}Z(6873,5308,58,1469);W()}function hh(a,b){a=a|0;b=b|0;var c=0,d=0;a=0;a:{b:{c:{c=H[b+2|0];d:{if((c|0)==59){break d}e:{if((c|0)!=120){b=b+2|0;while(1){a=(M(a,10)+(c<<24>>24)|0)-48|0;if((a|0)>1114111){return-1}c=H[b+1|0];b=b+1|0;if((c|0)!=59){continue}break}break e}c=H[b+3|0];if((c|0)==59){break d}b=b+3|0;while(1){f:{g:{h:{i:{j:{c=c<<24>>24;d=c-48|0;switch(d|0){case 49:case 50:case 51:case 52:case 53:case 54:break h;case 17:case 18:case 19:case 20:case 21:case 22:break i;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:break j;default:break f}}a=a<<4|d;break g}a=(c+(a<<4)|0)-55|0;break g}a=(c+(a<<4)|0)-87|0}if((a|0)<=1114111){break f}return-1}c=H[b+1|0];b=b+1|0;if((c|0)!=59){continue}break}}c=-1;b=a>>8;if(b-216>>>0<8){break a}if((b|0)==255){break c}if(b){break b}}if(H[a+11928|0]){break b}return-1}if((a&-2)==65534){break a}}c=a}return c|0}function Ha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=G[17996];c=G[d+(a<<2)>>2];e=c&255;a:{if((e|0)==1){break a}while(1){b:{d=(b<<2)+d|0;f=G[d>>2];g=f&255;if((g|0)!=4){if((g|0)!=1){break b}return a|0}b=G[d+8>>2];a=Ha(a,G[d+4>>2]);d=G[17996];c=G[d+(a<<2)>>2];e=c&255;if((e|0)!=1){continue}break a}break}if(td(a,b)){return a|0}if(!(!(c&256)|(f&255)!=2)){return a|0}if((e|0)==2?f&256:0){break a}e=G[17996];f=G[17988];c=e+(f<<2)|0;G[c>>2]=4;G[c+8>>2]=b;G[c+4>>2]=a;g=e+(a<<2)|0;a=G[g>>2];c:{if(!(a&256)){d=516;if(!(E[(e+(b<<2)|0)+1|0]&1)){break c}}G[c>>2]=260;a=G[g>>2];d=772}if(H[(e+(b<<2)|0)+1|0]&2?1:a&512){G[c>>2]=d}a=va(71960,f);d:{if((a|0)!=-1){break d}a=G[17988];wa(71960,a);d=G[17996];b=G[17988];b=G[(H[d+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;c=b+3|0;if((c|0)<=G[18008]){break d}c=c<<1;G[18008]=c;G[17996]=sa(d,c,b,4)}b=a}return b|0}function ph(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if((b|0)!=(c|0)){a:{g=a+76|0;while(1){b:{c:{d:{e:{f:{switch(H[H[b|0]+g|0]){case 5:if((c-b|0)<2){return-2}if(ka[G[a+356>>2]](a,b)|0){break e}b=b+2|0;break b;case 6:if((c-b|0)<3){return-2}if(ka[G[a+360>>2]](a,b)|0){break e}b=b+3|0;break b;case 7:if((c-b|0)<4){return-2}if(ka[G[a+364>>2]](a,b)|0){break e}b=b+4|0;break b;case 2:e=b+1|0;if((e|0)==(c|0)){break a}if(H[e|0]!=33){b=e;break b}e=b+2|0;if((e|0)==(c|0)){break a}if(H[e|0]!=91){b=e;break b}b=b+3|0;f=f+1|0;break b;case 0:case 1:case 8:break e;case 4:break f;default:break c}}e=b+1|0;if((e|0)==(c|0)){break a}if(H[e|0]!=93){b=e;break b}e=b+2|0;if((e|0)==(c|0)){break a}if(H[e|0]!=62){b=e;break b}b=b+3|0;if(f){break d}h=42}G[d>>2]=b;return h|0}f=f-1|0;break b}b=b+1|0}if((b|0)!=(c|0)){continue}break}}}return-1}function ac(a,b){var c=0,d=0,e=0;d=ia+-64|0;ia=d;a:{while(1){b:{c:{d:{e:{f:{g:{h:{i:{c=G[17996]+(a<<2)|0;switch(H[c|0]-1|0){case 0:case 1:case 2:case 8:case 10:case 12:break a;case 3:break i;case 11:break c;case 7:break d;case 6:break e;case 9:break f;case 5:break g;case 4:break h;default:break b}}a=G[c+8>>2];ac(G[c+4>>2],b);continue}a=G[c+8>>2];ac(G[c+4>>2],b);continue}a=G[c+8>>2];ac(G[c+4>>2],b);continue}e=G[c+4>>2];a=G[c+8>>2];if($c(a)){c=Ya(b);G[d>>2]=c;ob(5,d);Aa(c)}ac(e,b);continue}a=G[c+4>>2];if(!_c(a,0)){continue}c=Ya(b);G[d+16>>2]=c;ob(4,d+16|0);Aa(c);continue}a=G[c+4>>2];if(!Zc(a)){continue}c=Ya(b);G[d+32>>2]=c;ob(6,d+32|0);Aa(c);continue}e=G[c+8>>2];a=G[c+4>>2];if(!Yc(a)){continue}c=Ya(b);e=Ya(e);G[d+52>>2]=c;G[d+48>>2]=e;ob(7,d+48|0);Aa(e);Aa(c);continue}break}Z(6674,5339,348,4069);W()}ia=d- -64|0}function Ya(a){var b=0,c=0,d=0,e=0;a:{b:{c:{d:{e:{f:{g:{h:{a=G[18005]+(a<<2)|0;switch(H[a|0]){case 1:case 6:break b;case 5:break d;case 4:break e;case 3:break f;case 2:break g;case 0:break h;default:break c}}return Ta(6494)}a=G[a+4>>2];a=gb(za(ua(a+G[18011]|0)+3|0,1),a+G[18011]|0);b=ua(a)+a|0;c=H[6754]|H[6755]<<8;E[b|0]=c;E[b+1|0]=c>>>8;E[b+2|0]=H[6756];return a}return Ta(6805)}b=G[a+8>>2];a=Ya(G[a+4>>2]);b=Ya(b);c=gb(za((ua(a)+ua(b)|0)+2|0,1),a);d=c+ua(c)|0;E[d|0]=45;E[d+1|0]=0;break a}b=G[a+8>>2];a=Ya(G[a+4>>2]);b=Ya(b);c=gb(za((ua(a)+ua(b)|0)+2|0,1),a);d=c+ua(c)|0;E[d|0]=124;E[d+1|0]=0;break a}Z(6674,5290,154,2981);W()}b=G[18011];c=G[a+4>>2];e=ua(b+c|0);d=b;b=G[a+8>>2];a=gb(za((e+ua(d+b|0)|0)+2|0,1),c+G[18011]|0);c=ua(a)+a|0;E[c|0]=94;E[c+1|0]=0;return Mb(a,b+G[18011]|0)}c=Mb(c,b);Aa(a);Aa(b);return c}function dd(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=ia-48|0;ia=e;g=Sa(72144,b);f=Be();a:{if(g){b=G[18036];if(f){a=b+M(g,12)|0;G[a+8>>2]=d;G[a+4>>2]=c;break a}b=G[(b+M(g,12)|0)+8>>2];if(b&d&4){f=G[a+4>>2];h=M(G[a+56>>2],20)+a|0;i=G[h+72>>2];G[e+36>>2]=G[h+68>>2];G[e+40>>2]=i;G[e+32>>2]=f;ya(1,a,58,e+32|0)}b=b|d;if((b&24)==24){d=G[a+4>>2];f=M(G[a+56>>2],20)+a|0;h=G[f+72>>2];G[e+20>>2]=G[f+68>>2];G[e+24>>2]=h;G[e+16>>2]=d;ya(1,a,59,e+16|0)}a=G[18036];d=M(g,12);f=a+d|0;G[f+8>>2]=b;if(b&8){a=Ha(G[f+4>>2],c);G[(d+G[18036]|0)+4>>2]=a;break a}if(!(b&16)){break a}b=a;a=M(g,12);b=pb(G[(b+a|0)+4>>2],c);G[(a+G[18036]|0)+4>>2]=b;break a}if(f){c=M(G[a+56>>2],20)+a|0;d=G[c+72>>2];c=G[c+68>>2];G[e>>2]=G[a+4>>2];G[e+4>>2]=c;G[e+8>>2]=d;G[e+12>>2]=b?G[18011]+b|0:1560;ya(1,a,60,e);break a}Qa(72144,b,c,d)}ia=e+48|0}function we(a,b,c,d,e,f,g){var h=0;G[c>>2]=f;G[b>>2]=1;G[a>>2]=1;h=f+g|0;a:{if(!g){break a}while(1){f=h-1|0;if(!ta(E[f|0])){break a}h=f;if((f|0)!=G[c>>2]){continue}break}}G[e>>2]=h;g=h;b:{if((g|0)==G[c>>2]){break b}f=h;while(1){g=f-1|0;G[e>>2]=g;c:{switch(H[g|0]-43|0){default:G[b>>2]=0;case 3:G[e>>2]=f;g=f;break b;case 0:case 2:case 5:break c}}f=g;if((f|0)!=G[c>>2]){continue}break}}G[d>>2]=g;g=G[c>>2];d:{if((g|0)==G[e>>2]){break d}while(1){e:{f:{g:{f=H[g|0];switch(f-43|0){case 0:case 5:break e;case 2:break f;default:break g}}f=ta(f<<24>>24);g=G[c>>2];if(f){break e}if(H[g|0]!=46){G[b>>2]=0}f=G[d>>2];if((g|0)!=(f|0)){while(1){f=f-1|0;G[d>>2]=f;if(H[f|0]==46){break d}if(G[c>>2]!=(f|0)){continue}break}}G[e>>2]=h;G[d>>2]=h;return}G[a>>2]=0}g=g+1|0;G[c>>2]=g;if(G[e>>2]!=(g|0)){continue}break}}}function dc(a){var b=0,c=0,d=0,e=0,f=0;c=ia-32|0;ia=c;d=G[18042]+1|0;if((d|0)!=G[18043]){b=G[18040];while(1){e=M(d,12);b=G[e+b>>2];f=Sa(72144,b);a:{if(f){b=G[18040];G[(G[17996]+(G[(e+b|0)+4>>2]<<2)|0)+4>>2]=G[(G[18036]+M(f,12)|0)+4>>2];break a}e=M(G[a+56>>2],20)+a|0;f=G[e+72>>2];e=G[e+68>>2];G[c+16>>2]=G[a+4>>2];G[c+20>>2]=e;G[c+24>>2]=f;G[c+28>>2]=b+G[18011];ya(1,a,71,c+16|0);b=G[18040]}d=d+1|0;if((d|0)!=G[18043]){continue}break}}$a(72144);$a(72160);d=G[18046]+1|0;if((d|0)!=G[18047]){while(1){b:{if(!G[18042]){b=G[G[18044]+M(d,12)>>2];e=M(G[a+56>>2],20)+a|0;f=G[e+72>>2];e=G[e+68>>2];G[c>>2]=G[a+4>>2];G[c+4>>2]=e;G[c+8>>2]=f;G[c+12>>2]=b+G[18011];ya(1,a,71,c);break b}b=G[18044]+M(d,12)|0;Qa(72160,G[b>>2],G[b+4>>2],G[b+8>>2])}d=d+1|0;if((d|0)!=G[18047]){continue}break}}$a(72176);ia=c+32|0}function pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{b:{e=H[b+4|0];if(!(e|H[b+5|0]!=120)){c=b+6|0;b=0;while(1){c:{if(H[c|0]){break c}a=E[c+1|0];if((a|0)==59){break b}d:{e:{f:{g:{d=a-48|0;switch(d|0){case 49:case 50:case 51:case 52:case 53:case 54:break e;case 17:case 18:case 19:case 20:case 21:case 22:break f;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:break g;default:break c}}b=d|b<<4;break d}b=(a+(b<<4)|0)-55|0;break d}b=(a+(b<<4)|0)-87|0}if((b|0)<=1114111){break c}return-1}c=c+2|0;continue}}d=b+4|0;b=0;while(1){a=-1;c=-1;if(!e){c=E[d+1|0];if((c|0)==59){break b}}b=(M(b,10)+c|0)-48|0;if((b|0)>1114111){break a}d=d+2|0;e=H[d|0];continue}}a=-1;c=b>>8;if(c-216>>>0<8){break a}h:{if((c|0)!=255){if(H[b+11928|0]|c){break h}break a}if((b&-2)==65534){break a}}a=b}return a|0}function tb(a,b,c,d,e){var f=0,g=0;f=ia-32|0;ia=f;a:{if(!ub(a,11051,d,e)){break a}Rc(f,b,d,e);b:{c:{d:{e:{f:{g:{d=G[c>>2];h:{i:{j:{if(d&64){k:{d=G[c+104>>2];if(ub(a,11051,d,ua(d))){e=f+16|0;Yb(e,b,d);e=Sb(f,e);d=G[c>>2];if(d&128){break k}e=(e|0)==1;break h}Ua(2,0);e=0;break i}if((e|0)==1){break j}break a}if(!(d&128)){break g}}d=G[c+108>>2];if(!ub(a,11051,d,ua(d))){Ua(2,0);e=0;break i}e=f+16|0;Yb(e,b,d);e=Sb(f,e)>>>0<2}d=G[c>>2]}if(!(d&16)){break e}if(e){break f}break a}if(!(d&16)){break d}}d=G[c+100>>2];l:{if(!ub(a,11051,d,ua(d))){Ua(2,0);e=0;break l}e=f+16|0;Yb(e,b,d);e=Sb(f,e)+1>>>0<2}d=G[c>>2]}if(d&8){break c}g=e;break a}g=1;if(d&8){break b}break a}if(!e){break a}}d=a;a=G[c+96>>2];if(!ub(d,11051,a,ua(a))){g=0;Ua(2,0);break a}c=f+16|0;Yb(c,b,a);g=(Sb(f,c)|0)==-1}ia=f+32|0;return g}function lc(a,b){var c=0,d=0,e=0,f=0;a:{if(b){break a}e=G[17987];d=e;f=G[17977];c=f;if(G[17974]){Ka(71920,e);c=G[17977];d=G[17987]}G[M(d,20)+c>>2]=4;c=f+M(e,20)|0;G[c+4>>2]=a;G[c+8>>2]=0;G[c+12>>2]=0;d=va(71920,d);if((d|0)==-1){break a}return G[(G[17977]+M(d,20)|0)+16>>2]}b:{c:{d:{e:{d=G[17996];c=H[d+(a<<2)|0];if(c>>>0>15){break e}if(1<<c&16366){break d}if((c|0)==4){break c}if((c|0)!=15){break e}c=d+(a<<2)|0;d=G[(G[d+(G[c+4>>2]<<2)>>2]&256|b?c+8|0:72084)>>2];break b}Z(6674,5296,460,4159);W()}d=G[18021];break b}d=d+(a<<2)|0;c=G[d+8>>2];d=Ha(lc(G[d+4>>2],b),lc(c,b))}if(!b){e=G[17987];b=e;f=G[17977];c=f;if(G[17974]){Ka(71920,e);c=G[17977];b=G[17987]}G[M(b,20)+c>>2]=4;c=f+M(e,20)|0;G[c+4>>2]=a;G[c+8>>2]=0;G[c+12>>2]=0;va(71920,b);G[(G[17977]+M(G[17987],20)|0)+16>>2]=d;Xb()}return d}function hd(a,b){var c=0,d=0,e=0;c=ia-144|0;ia=c;Qa(72112,xa(3837),xa(4736),0);Qa(72112,xa(2167),xa(2144),0);Qa(72112,0,b,1);Qa(72112,-1,b,1);b=G[18027];a:{if((pd(c+40|0,b,Fc(b))|0)!=-1){G[c+40>>2]=G[c+40>>2]|2;d=nd(c+40|0);G[a>>2]=G[a>>2]|G[c+40>>2]&4;break a}b=G[c+44>>2];G[c+28>>2]=Db(G[18106]);G[c+20>>2]=-1;G[c+24>>2]=-1;G[c+16>>2]=b;ya(1,c+40|0,0,c+16|0);G[c+40>>2]=G[c+40>>2]|2;b=M(G[a+56>>2],20)+a|0;e=G[b+72>>2];b=G[b+68>>2];G[c>>2]=G[a+4>>2];G[c+4>>2]=b;G[c+8>>2]=e;G[c+12>>2]=G[18027];ya(1,a,50,c)}Aa(G[c+100>>2]);G[c+100>>2]=0;Aa(G[c+120>>2]);G[c+120>>2]=0;a=G[c+40>>2];if(a&1){G[c+40>>2]=a&-2;Aa(G[c+52>>2]);a=G[c+40>>2]}G[c+64>>2]=-1;G[c+52>>2]=0;b:{if(!(a&2)){break b}G[c+40>>2]=a&-3;a=G[c+48>>2];if((a|0)==-1){break b}Vb(a);G[c+48>>2]=-1}Aa(G[c+44>>2]);ia=c+144|0;return d}function Ig(a,b){a=a|0;b=b|0;var c=0,d=0;a:{b:{c=b+4|0;if(!(H[b+5|0]|H[c|0]!=120)){c=b+6|0;b=0;while(1){c:{if(H[c+1|0]){break c}a=E[c|0];if((a|0)==59){break b}d:{e:{f:{g:{d=a-48|0;switch(d|0){case 49:case 50:case 51:case 52:case 53:case 54:break e;case 17:case 18:case 19:case 20:case 21:case 22:break f;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:break g;default:break c}}b=d|b<<4;break d}b=(a+(b<<4)|0)-55|0;break d}b=(a+(b<<4)|0)-87|0}if((b|0)<=1114111){break c}return-1}c=c+2|0;continue}}b=0;while(1){a=-1;d=-1;if(!H[c+1|0]){d=E[c|0];if((d|0)==59){break b}}c=c+2|0;b=(M(b,10)+d|0)-48|0;if((b|0)<=1114111){continue}break}break a}a=-1;c=b>>8;if(c-216>>>0<8){break a}h:{if((c|0)!=255){if(H[b+11928|0]|c){break h}break a}if((b&-2)==65534){break a}}a=b}return a|0}function ib(a){var b=0,c=0;a:{b:{c:{d:{if(zb(a)){break d}e:{f:{g:{h:{i:{j:{k:{l:{m:{b=G[17996]+(a<<2)|0;switch(H[b|0]-1|0){case 7:case 8:case 10:break a;case 6:break i;case 5:break j;case 4:break k;case 3:break l;case 2:break m;case 0:case 1:break c;case 12:break f;case 11:break g;case 9:break h;default:break e}}Hb(a,2048,0);break d}c=G[b+8>>2];b=G[b+4>>2];ib(b);ib(c);break b}c=G[b+8>>2];b=G[b+4>>2];ib(b);ib(c);if(!Ac(b,c)){break d}break b}c=G[b+8>>2];b=G[b+4>>2];ib(b);ib(c);if(!Ac(b,c)){break d}break b}b=G[b+4>>2];ib(b);if(!Ac(b,b)){break d}Hb(a,zb(b),0);return}c=G[b+8>>2];ib(G[b+4>>2]);ib(c);if(!zb(c)){break d}break a}b=G[b+4>>2];ib(b);if(!zb(b)){break d}break c}Hb(a,2048,0);return}Z(6674,5339,186,4404);W()}return}Hb(a,1024,0);return}Hb(a,zb(b),zb(c));return}Hb(a,4096,0)}function wg(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;if((b|0)==(c|0)){return-4}g=a+76|0;e=b;while(1){a:{b:{c:{d:{e:{f:{g:{h:{i:{h=H[e|0];if(h-216>>>0<4){break i}f=2;if(h){break a}switch(H[H[e+1|0]+g|0]-2|0){case 1:break h;case 5:break i;case 4:break b;case 19:break d;case 7:break e;case 8:break f;case 0:break g;default:break a}}f=4;break a}if((b|0)!=(e|0)){break c}return jc(a,b+2|0,c,d)|0}G[d>>2]=e;return 0}if((b|0)!=(e|0)){break c}G[d>>2]=b+2;return 7}if((b|0)!=(e|0)){break c}a=b+2|0;if((a|0)==(c|0)){return-3}c=H[b+3|0];e=b+4|0;b=H[b+2|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+g|0]}G[d>>2]=(b|0)==10?e:a;return 7}if((b|0)!=(e|0)){break c}G[d>>2]=b+2;return 39}G[d>>2]=e;return 6}f=3}e=e+f|0;if((e|0)!=(c|0)){continue}break}G[d>>2]=c;return 6}function Pg(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;if((b|0)==(c|0)){return-4}g=a+76|0;e=b;while(1){a:{b:{c:{d:{e:{f:{g:{h:{i:{h=H[e+1|0];if(h-216>>>0<4){break i}f=2;if(h){break a}switch(H[H[e|0]+g|0]-2|0){case 1:break h;case 5:break i;case 4:break b;case 19:break d;case 7:break e;case 8:break f;case 0:break g;default:break a}}f=4;break a}if((b|0)!=(e|0)){break c}return kc(a,b+2|0,c,d)|0}G[d>>2]=e;return 0}if((b|0)!=(e|0)){break c}G[d>>2]=b+2;return 7}if((b|0)!=(e|0)){break c}a=b+2|0;if((a|0)==(c|0)){return-3}c=H[b+2|0];e=b+4|0;b=H[b+3|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+g|0]}G[d>>2]=(b|0)==10?e:a;return 7}if((b|0)!=(e|0)){break c}G[d>>2]=b+2;return 39}G[d>>2]=e;return 6}f=3}e=e+f|0;if((e|0)!=(c|0)){continue}break}G[d>>2]=c;return 6}function Dd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!G[a+12>>2]){return-1}d=ka[G[a>>2]](b)|0;e=G[a+20>>2];d=d&G[a+8>>2]-1;f=G[e+(d<<2)>>2];if((f|0)!=-1){while(1){a:{b:{if(c){if((b|0)!=(f|0)){break a}f=b;break b}if(!(ka[G[a+4>>2]](b,f)|0)){break a}e=G[a+20>>2]}while(1){b=d;g=(d<<2)+e|0;G[g>>2]=-1;while(1){c:{if(!d){d=G[a+8>>2]}d=d-1|0;h=(d<<2)+e|0;i=G[h>>2];if((i|0)==-1){break c}c=G[a+8>>2];c=G[((c|d)<<2)+e>>2]&c-1;j=(c|0)>=(d|0);if(j&(b|0)>(c|0)|(b|0)<(d|0)&j){continue}if((b|0)>=(d|0)){break c}if((b|0)>(c|0)){continue}}break}G[g>>2]=i;c=b;b=G[a+8>>2];G[((c|b)<<2)+e>>2]=G[((b|d)<<2)+e>>2];if(G[h>>2]!=-1){continue}break}G[a+12>>2]=G[a+12>>2]-1;return f}e=G[a+20>>2];if(!d){d=G[a+8>>2]}d=d-1|0;f=G[(d<<2)+e>>2];if((f|0)!=-1){continue}break}}return-1}function Ga(a,b,c){var d=0,e=0;while(1){d=a;a=a+1|0;if(ta(E[d|0])){continue}break}a=b+c|0;a:{b:{if(!c){break b}while(1){if(!ta(E[b|0])){break b}b=b+1|0;if((a|0)!=(b|0)){continue}break}break a}if((a|0)==(b|0)){break a}c:{while(1){d:{c=E[d|0];if(!c){d=0;if((a|0)==(b|0)){break c}while(1){if(!ta(E[b|0])){break d}b=b+1|0;if((a|0)!=(b|0)){continue}break}break c}e:{f:{if(!ta(c)){break f}if(!ta(E[b|0])){break f}while(1){c=E[d+1|0];d=d+1|0;if(ta(c)){continue}break}while(1){b=b+1|0;if((a|0)==(b|0)){break a}if(ta(E[b|0])){continue}break}break e}c=H[b|0];e=H[d|0];if((c|0)!=(e|0)){return(e<<24>>24)-(c<<24>>24)|0}b=b+1|0;d=d+1|0}if((a|0)!=(b|0)){continue}break a}break}d=0-E[b|0]|0}return d}while(1){a=d;d=a+1|0;if(ta(E[a|0])){continue}break}return E[a|0]}function vg(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;if((b|0)==(c|0)){return-4}g=a+76|0;e=b;while(1){a:{b:{c:{d:{e:{f:{g:{h:{h=H[e|0];if(h-216>>>0<4){break h}f=2;if(h){break a}switch(H[H[e+1|0]+g|0]-3|0){case 4:break h;case 3:break b;case 6:break d;case 7:break e;case 27:break f;case 0:break g;default:break a}}f=4;break a}if((b|0)!=(e|0)){break c}return jc(a,b+2|0,c,d)|0}if((b|0)!=(e|0)){break c}a=Td(a,b+2|0,c,d);return((a|0)==22?0:a)|0}if((b|0)!=(e|0)){break c}G[d>>2]=b+2;return 7}if((b|0)!=(e|0)){break c}a=b+2|0;if((a|0)==(c|0)){return-3}c=H[b+3|0];e=b+4|0;b=H[b+2|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+g|0]}G[d>>2]=(b|0)==10?e:a;return 7}G[d>>2]=e;return 6}f=3}e=e+f|0;if((e|0)!=(c|0)){continue}break}G[d>>2]=c;return 6}function Og(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;if((b|0)==(c|0)){return-4}g=a+76|0;e=b;while(1){a:{b:{c:{d:{e:{f:{g:{h:{h=H[e+1|0];if(h-216>>>0<4){break h}f=2;if(h){break a}switch(H[H[e|0]+g|0]-3|0){case 4:break h;case 3:break b;case 6:break d;case 7:break e;case 27:break f;case 0:break g;default:break a}}f=4;break a}if((b|0)!=(e|0)){break c}return kc(a,b+2|0,c,d)|0}if((b|0)!=(e|0)){break c}a=Yd(a,b+2|0,c,d);return((a|0)==22?0:a)|0}if((b|0)!=(e|0)){break c}G[d>>2]=b+2;return 7}if((b|0)!=(e|0)){break c}a=b+2|0;if((a|0)==(c|0)){return-3}c=H[b+2|0];e=b+4|0;b=H[b+3|0];if(b){b=_a(b<<24>>24,c<<24>>24)}else{b=H[c+g|0]}G[d>>2]=(b|0)==10?e:a;return 7}G[d>>2]=e;return 6}f=3}e=e+f|0;if((e|0)!=(c|0)){continue}break}G[d>>2]=c;return 6}function wb(a){var b=0,c=0,d=0,e=0,f=0;e=ia-16|0;ia=e;c=fd(a);a:{b:{c:{b=G[a+56>>2];d=G[(M(b,20)+a|0)+76>>2];switch(d-25|0){case 12:break b;case 0:case 1:case 2:break c;default:break a}}b=G[(d<<2)+11048>>2];while(1){ra(a);c=ka[b|0](c,fd(a))|0;if((d|0)==G[(M(G[a+56>>2],20)+a|0)+76>>2]){continue}break}break a}if(H[G[17996]+(c<<2)|0]!=9){d=G[a+4>>2];b=M(b,20)+a|0;f=G[b+72>>2];G[e+4>>2]=G[b+68>>2];G[e+8>>2]=f;G[e>>2]=d;ya(1,a,61,e)}ra(a);d=ed(a);b=G[17988];a=G[17996]+(b<<2)|0;G[a>>2]=522;G[a+8>>2]=d;G[a+4>>2]=c;a=va(71960,b);d:{if((a|0)!=-1){break d}a=G[17988];wa(71960,a);d=G[17996];c=G[17988];c=G[(H[d+(c<<2)|0]<<2)+11056>>2]+c|0;G[17988]=c;b=c+3|0;if((b|0)<=G[18008]){break d}b=b<<1;G[18008]=b;G[17996]=sa(d,b,c,4)}c=a}ia=e+16|0;return c}function Lh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=ia-16|0;ia=f;h=G[a+300>>2];a:{if(!h){e=23;break a}g=G[h+12>>2];e=G[g+4>>2];i=e+G[g+8>>2]|0;e=e+G[g+12>>2]|0;b:{if(H[g+33|0]){j=G[a+228>>2];k=f+12|0;j=ka[G[j>>2]](j,e,i,k)|0;e=Rb(a,G[a+228>>2],e,i,j,G[f+12>>2],k,0);break b}e=Qb(a,G[h+16>>2],G[a+228>>2],e,i,f+12|0,0)}if(e){break a}e=G[f+12>>2];if(!((e|0)==(i|0)|G[a+480>>2]!=3)){G[g+12>>2]=e-G[g+4>>2];e=0;break a}E[g+32|0]=0;G[a+300>>2]=G[h+8>>2];G[h+8>>2]=G[a+304>>2];G[a+304>>2]=h;if(H[g+33|0]){G[a+280>>2]=62;e=G[a+144>>2];e=ka[G[e>>2]](e,b,c,f+12|0)|0;e=Rb(a,G[a+144>>2],b,c,e,G[f+12>>2],d,!H[a+484|0]);break a}G[a+280>>2]=66;e=Qb(a,G[a+476>>2]!=0,G[a+144>>2],b,c,d,!H[a+484|0])}ia=f+16|0;return e|0}function Fd(a,b,c){a:{switch(b-9|0){case 0:b=G[c>>2];G[c>>2]=b+4;G[a>>2]=G[b>>2];return;case 6:b=G[c>>2];G[c>>2]=b+4;b=F[b>>1];G[a>>2]=b;G[a+4>>2]=b>>31;return;case 7:b=G[c>>2];G[c>>2]=b+4;G[a>>2]=I[b>>1];G[a+4>>2]=0;return;case 8:b=G[c>>2];G[c>>2]=b+4;b=E[b|0];G[a>>2]=b;G[a+4>>2]=b>>31;return;case 9:b=G[c>>2];G[c>>2]=b+4;G[a>>2]=H[b|0];G[a+4>>2]=0;return;case 16:b=G[c>>2]+7&-8;G[c>>2]=b+8;L[a>>3]=L[b>>3];return;case 17:ka[202](a,c);default:return;case 1:case 4:case 14:b=G[c>>2];G[c>>2]=b+4;b=G[b>>2];G[a>>2]=b;G[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=G[c>>2];G[c>>2]=b+4;G[a>>2]=G[b>>2];G[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=G[c>>2]+7&-8;G[c>>2]=b+8;c=G[b+4>>2];G[a>>2]=G[b>>2];G[a+4>>2]=c}function Od(a,b,c,d,e,f){var g=0;g=ia-80|0;ia=g;a:{if((f|0)>=16384){Ea(g+32|0,b,c,d,e,0,0,0,2147352576);d=G[g+40>>2];e=G[g+44>>2];b=G[g+32>>2];c=G[g+36>>2];if(f>>>0<32767){f=f-16383|0;break a}Ea(g+16|0,b,c,d,e,0,0,0,2147352576);f=((f|0)<49149?f:49149)-32766|0;d=G[g+24>>2];e=G[g+28>>2];b=G[g+16>>2];c=G[g+20>>2];break a}if((f|0)>-16383){break a}Ea(g- -64|0,b,c,d,e,0,0,0,7471104);d=G[g+72>>2];e=G[g+76>>2];b=G[g+64>>2];c=G[g+68>>2];if(f>>>0>4294934644){f=f+16269|0;break a}Ea(g+48|0,b,c,d,e,0,0,0,7471104);f=((f|0)>-48920?f:-48920)+32538|0;d=G[g+56>>2];e=G[g+60>>2];b=G[g+48>>2];c=G[g+52>>2]}Ea(g,b,c,d,e,0,0,0,f+16383<<16);b=G[g+12>>2];G[a+8>>2]=G[g+8>>2];G[a+12>>2]=b;b=G[g+4>>2];G[a>>2]=G[g>>2];G[a+4>>2]=b;ia=g+80|0}function gd(a){var b=0,c=0,d=0,e=0;c=G[18039]+(G[18038]^-1)|0;a:{if(c){d=Pa(za(c,12),(G[18036]+M(G[18038],12)|0)+12|0,M(c,12));$a(72144);while(1){e=d+M(b,12)|0;dd(a,G[e>>2],G[e+4>>2],G[e+8>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}Aa(d);break a}$a(72144)}b=0;a=G[18043]+(G[18042]^-1)|0;b:{if(a){c=Pa(za(a,12),(G[18040]+M(G[18042],12)|0)+12|0,M(a,12));$a(72160);while(1){d=c+M(b,12)|0;Qa(72160,G[d>>2],G[d+4>>2],G[d+8>>2]);b=b+1|0;if((a|0)!=(b|0)){continue}break}Aa(c);break b}$a(72160)}b=0;a=G[18047]+(G[18046]^-1)|0;if(a){c=Pa(za(a,12),(G[18044]+M(G[18046],12)|0)+12|0,M(a,12));$a(72176);while(1){d=c+M(b,12)|0;Qa(72176,G[d>>2],G[d+4>>2],G[d+8>>2]);b=b+1|0;if((a|0)!=(b|0)){continue}break}Aa(c);return}$a(72176)}function pd(a,b,c){var d=0;b=Ta(b);G[a>>2]=0;G[a+4>>2]=b;G[a- -64>>2]=1030;G[a+52>>2]=-1;G[a+56>>2]=0;G[a+40>>2]=-1;G[a+44>>2]=0;G[a+32>>2]=1;G[a+36>>2]=-1;G[a+24>>2]=-1;G[a+28>>2]=1;G[a+8>>2]=-1;G[a+12>>2]=0;b=za(1030,1);G[a+84>>2]=1030;G[a+60>>2]=b;b=za(1030,1);G[a+8>>2]=c;G[a+80>>2]=b;if((c|0)!=-1){b=za(1030,1);G[a+16>>2]=0;G[a+20>>2]=0;G[a>>2]=1;G[a+12>>2]=b;G[a+24>>2]=0;c=Nb(G[a+8>>2],b,1030);a:{if((c|0)>0){while(1){c=G[a+20>>2]+c|0;G[a+20>>2]=c;if((c|0)>5){break a}c=Nb(G[a+8>>2],G[a+12>>2]+c|0,1030-c|0);if((c|0)>0){continue}break}}Vb(G[a+8>>2]);G[a+24>>2]=1;G[a+8>>2]=-1;c=G[a+20>>2]}b=G[a+12>>2];if(!(H[b+2|0]!=191|(c|0)<3|H[b+1|0]!=187)){d=H[b|0]==239?3:0}G[a+16>>2]=d;a=G[a+8>>2]}else{a=-1}return a}function kf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=ia-32|0;ia=d;e=G[a+28>>2];G[d+16>>2]=e;f=G[a+20>>2];G[d+28>>2]=c;G[d+24>>2]=b;b=f-e|0;G[d+20>>2]=b;e=b+c|0;j=2;a:{b:{b=d+16|0;c:{if(!Kb(_(G[a+60>>2],b|0,2,d+12|0)|0)){while(1){f=G[d+12>>2];if((f|0)==(e|0)){break c}if((f|0)<0){break b}g=G[b+4>>2];h=g>>>0<f>>>0;i=(h<<3)+b|0;g=f-(h?g:0)|0;G[i>>2]=g+G[i>>2];i=(h?12:4)+b|0;G[i>>2]=G[i>>2]-g;e=e-f|0;b=h?b+8|0:b;j=j-h|0;if(!Kb(_(G[a+60>>2],b|0,j|0,d+12|0)|0)){continue}break}}if((e|0)!=-1){break b}}b=G[a+44>>2];G[a+28>>2]=b;G[a+20>>2]=b;G[a+16>>2]=b+G[a+48>>2];a=c;break a}G[a+28>>2]=0;G[a+16>>2]=0;G[a+20>>2]=0;G[a>>2]=G[a>>2]|32;a=0;if((j|0)==2){break a}a=c-G[b+4>>2]|0}ia=d+32|0;return a|0}function Ob(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}E[a|0]=b;e=a+c|0;E[e-1|0]=b;if(c>>>0<3){break a}E[a+2|0]=b;E[a+1|0]=b;E[e-3|0]=b;E[e-2|0]=b;if(c>>>0<7){break a}E[a+3|0]=b;E[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=M(b&255,16843009);G[f>>2]=d;b=c-e&-4;c=b+f|0;G[c-4>>2]=d;if(b>>>0<9){break a}G[f+8>>2]=d;G[f+4>>2]=d;G[c-8>>2]=d;G[c-12>>2]=d;if(b>>>0<25){break a}G[f+24>>2]=d;G[f+20>>2]=d;G[f+16>>2]=d;G[f+12>>2]=d;G[c-16>>2]=d;G[c-20>>2]=d;G[c-24>>2]=d;G[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=ki(d,0,1,1);e=ja;b=b+f|0;while(1){G[b+24>>2]=d;G[b+28>>2]=e;G[b+16>>2]=d;G[b+20>>2]=e;G[b+8>>2]=d;G[b+12>>2]=e;G[b>>2]=d;G[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function db(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=G[18062];f=c+(a<<2)|0;e=G[f>>2];g=e&15;a:{if((g|0)==1){break a}while(1){b:{d=(b<<2)+c|0;i=G[d>>2];h=i&15;if((h|0)!=3){if((h|0)!=1){break b}return a}b=G[d+8>>2];a=db(a,G[d+4>>2]);c=G[18062];f=c+(a<<2)|0;e=G[f>>2];g=e&15;if((g|0)!=1){continue}break a}break}if(Ge(a,b)){return a}if(!(!(e&256)|(h|0)!=2)){return a}if((g|0)==2?i&256:0){break a}e=G[18098];c=(e<<2)+c|0;G[c>>2]=3;G[c+8>>2]=b;G[c+4>>2]=a;if(E[d+1|0]&1?1:E[f+1|0]&1){G[c>>2]=259}b=va(72276,e);if((b|0)!=-1){break a}b=G[18098];wa(72276,b);c=G[18062];a=G[18098];a=G[((G[c+(a<<2)>>2]&15)<<2)+11392>>2]+a|0;G[18098]=a;d=a+3|0;if((d|0)<=G[18061]){break a}d=d<<1;G[18061]=d;G[18062]=sa(c,d,a,4)}return b}function Ca(a,b){var c=0,d=0,e=0;c=E[b|0];d=c&255;if((c|0)>=0){G[a>>2]=d;return 1}a:{if(c>>>0<4294967232){break a}if(c>>>0<=4294967263){G[a>>2]=d<<6&1984|H[b+1|0]&63;return((d&30)!=0)<<1}if(c>>>0<=4294967279){c=a;a=d<<6&960|H[b+1|0]&63;G[c>>2]=H[b+2|0]&63|a<<6;return a&992?3:0}if(c>>>0<=4294967287){c=a;a=d<<6&448|H[b+1|0]&63;G[c>>2]=H[b+3|0]&63|(a<<12|(H[b+2|0]&63)<<6);return((a&496)!=0)<<2}if(c>>>0<=4294967291){c=a;a=H[b+3|0]&63|((d<<6&192|H[b+1|0]&63)<<12|(H[b+2|0]&63)<<6);G[c>>2]=H[b+4|0]&63|a<<6;return a>>>0<32768?0:5}if(c>>>0>4294967293){break a}c=a;a=H[b+3|0]&63|((d<<6&64|H[b+1|0]&63)<<12|(H[b+2|0]&63)<<6);G[c>>2]=H[b+5|0]&63|(a<<12|(H[b+4|0]&63)<<6);e=a>>>0<16384?0:6}return e}function ee(a,b,c,d,e){var f=0,g=0,h=0;f=-1;a:{b:{if((c|0)==(d|0)){break b}g=b+76|0;while(1){c:{d:{e:{f:{g:{h:{h=H[H[c|0]+g|0];switch(h|0){case 0:case 1:case 8:break a;case 12:case 13:break e;case 7:break f;case 6:break g;case 5:break h;default:break d}}if((d-c|0)<2){return-2}if(ka[G[b+356>>2]](b,c)|0){break a}c=c+2|0;break c}if((d-c|0)<3){return-2}if(ka[G[b+360>>2]](b,c)|0){break a}c=c+3|0;break c}if((d-c|0)<4){return-2}if(ka[G[b+364>>2]](b,c)|0){break a}c=c+4|0;break c}c=c+1|0;if((a|0)!=(h|0)){break c}if((c|0)==(d|0)){return-27}G[e>>2]=c;a=H[H[c|0]+g|0];if(a>>>0<=30){f=27;if(1<<a&1076891136){break b}}return 0}c=c+1|0}if((d|0)!=(c|0)){continue}break}}return f}G[e>>2]=c;return 0}function Df(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=185;f=33;a:{b:{c:{d:{switch(b-15|0){case 3:f=23;g=186;if(ka[G[e+28>>2]](e,c,d,18531)|0){break b}f=24;if(ka[G[e+28>>2]](e,c,d,18537)|0){break b}f=25;if(ka[G[e+28>>2]](e,c,d,18540)|0){break b}f=26;if(ka[G[e+28>>2]](e,c,d,18546)|0){break b}f=27;if(ka[G[e+28>>2]](e,c,d,18478)|0){break b}f=28;if(ka[G[e+28>>2]](e,c,d,18553)|0){break b}f=29;if(ka[G[e+28>>2]](e,c,d,18562)|0){break b}f=30;if(ka[G[e+28>>2]](e,c,d,18570)|0){break b}g=187;f=33;if(!(ka[G[e+28>>2]](e,c,d,18501)|0)){break c}break b;case 0:break a;case 8:break b;default:break d}}if((b|0)!=28){break c}f=59;if(!G[a+16>>2]){break a}}f=-1;g=151}G[a>>2]=g}return f|0}function be(a,b,c,d){var e=0,f=0,g=0;a:{b:{if((b|0)==(c|0)){break b}if(H[b|0]!=45){break a}b=b+1|0;if((c|0)==(b|0)){break b}f=a+76|0;while(1){c:{d:{switch(H[H[b|0]+f|0]){case 5:if((c-b|0)<2){return-2}if(ka[G[a+356>>2]](a,b)|0){break a}e=b+2|0;break c;case 6:if((c-b|0)<3){return-2}if(ka[G[a+360>>2]](a,b)|0){break a}e=b+3|0;break c;case 7:if((c-b|0)<4){return-2}if(ka[G[a+364>>2]](a,b)|0){break a}e=b+4|0;break c;case 27:e=b+1|0;if((e|0)==(c|0)){break b}if(H[e|0]!=45){break c}a=b+2|0;if((a|0)==(c|0)){break b}c=a;a=H[b+2|0]==62;b=a?b+3|0:c;g=a?13:0;break a;case 0:case 1:case 8:break a;default:break d}}e=b+1|0}b=e;if((c|0)!=(b|0)){continue}break}}return-1}G[d>>2]=b;return g}function qd(a,b){a=a|0;b=b|0;var c=0;c=11019;a:{b:{switch(a|0){case 20:c=9480;break a;case 30:c=9828;break a;case 31:c=8877;break a;case 32:c=8202;break a;case 40:c=9600;break a;case 41:c=10972;break a;case 42:c=8762;break a;case 50:c=10502;break a;case 51:c=10169;break a;case 52:c=10009;break a;case 53:c=10108;break a;case 54:c=9949;break a;case 55:c=10219;break a;case 56:c=10058;break a;case 57:c=10832;break a;case 58:c=8438;break a;case 59:c=8373;break a;case 60:c=9378;break a;case 61:c=9875;break a;case 62:c=9518;break a;case 70:c=8481;break a;case 71:c=10554;break a;default:Z(6674,5350,103,3177);W();case 0:break a;case 10:break b}}c=9559}ka[G[13634]](c,b)|0}function id(a){var b=0,c=0,d=0,e=0,f=0;c=ia-48|0;ia=c;a:{if(G[(M(G[a+56>>2],20)+a|0)+76>>2]==9){ra(a);d=a+60|0;Fa(a,22,G[(d+M(G[a+56>>2],20)|0)+16>>2]);ra(a);b=G[a+56>>2];d=G[(d+M(b,20)|0)+16>>2];if(d>>>0>=20){b=M(b,20)+a|0;e=G[b+72>>2];b=G[b+68>>2];f=G[a+4>>2];G[c+32>>2]=eb(d);G[c+28>>2]=4794;G[c+20>>2]=b;G[c+24>>2]=e;G[c+16>>2]=f;b=0;ya(0,a,40,c+16|0);ra(a);break a}d=xa(G[(M(b,20)+a|0)+60>>2]);b=Sa(72112,d);if(!b){b=M(G[a+56>>2],20)+a|0;e=G[b+72>>2];b=G[b+68>>2];G[c>>2]=G[a+4>>2];G[c+4>>2]=b;G[c+8>>2]=e;b=0;G[c+12>>2]=d+G[18011];ya(1,a,55,c);ra(a);break a}b=G[(G[18028]+M(b,12)|0)+4>>2];ra(a);break a}b=G[(G[18028]+M(Sa(72112,0),12)|0)+4>>2]}ia=c+48|0;return b}function sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+76|0;a=b;while(1){c=2;a:{b:{c:{d:{e:{d=H[a|0];switch(d-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break a;case 4:case 5:case 6:case 7:break b;case 39:break c;case 0:case 1:case 2:case 3:break d;default:break e}}if(d){break a}c=H[H[a+1|0]+e|0]-5|0;d=c&255;if(d>>>0>=25|!(25034759>>>d&1)){break b}a=G[(c<<24>>24<<2)+18356>>2]+a|0;continue}c=4;break a}if(H[a+1|0]<=253){break a}}return a-b|0}a=a+c|0;continue}}function Lg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+76|0;a=b;while(1){c=2;a:{b:{c:{d:{e:{d=H[a+1|0];switch(d-216|0){case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:break a;case 4:case 5:case 6:case 7:break b;case 39:break c;case 0:case 1:case 2:case 3:break d;default:break e}}if(d){break a}c=H[H[a|0]+e|0]-5|0;d=c&255;if(d>>>0>=25|!(25034759>>>d&1)){break b}a=G[(c<<24>>24<<2)+18356>>2]+a|0;continue}c=4;break a}if(H[a|0]<=253){break a}}return a-b|0}a=a+c|0;continue}}function me(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=ia-16|0;ia=e;a:{b:{d=G[a+304>>2];if(d){G[a+304>>2]=G[d+8>>2];break b}d=ka[G[a+12>>2]](24)|0;if(d){break b}c=1;break a}G[b+12>>2]=0;E[b+32|0]=1;G[d+8>>2]=G[a+300>>2];G[a+300>>2]=d;G[d+12>>2]=b;f=G[a+312>>2];E[d+20|0]=c;G[d+16>>2]=f;G[d>>2]=0;G[d+4>>2]=0;g=G[b+4>>2];h=g+G[b+8>>2]|0;c=G[a+228>>2];c:{if(H[b+33|0]){f=e+12|0;c=ka[G[c>>2]](c,g,h,f)|0;c=Rb(a,G[a+228>>2],g,h,c,G[e+12>>2],f,0);break c}c=Qb(a,f,c,g,h,e+12|0,0)}if(c){break a}c=G[e+12>>2];if(!((c|0)==(h|0)|G[a+480>>2]!=3)){G[b+12>>2]=c-g;G[a+280>>2]=71;c=0;break a}c=0;E[b+32|0]=0;G[a+300>>2]=G[d+8>>2];G[d+8>>2]=G[a+304>>2];G[a+304>>2]=d}ia=e+16|0;return c}function ah(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=G[b>>2];g=G[d>>2];a:{if((f|0)==(c|0)|(g|0)==(e|0)){break a}h=a+76|0;while(1){b:{c:{d:{e:{f:{a=H[f|0];switch(H[a+h|0]-5|0){case 2:break d;case 1:break e;case 0:break f;default:break c}}F[g>>1]=H[f+1|0]&63|(a&31)<<6;g=g+2|0;f=f+2|0;break b}F[g>>1]=H[f+2|0]&63|((H[f+1|0]&63)<<6|a<<12);g=g+2|0;f=f+3|0;break b}if((g+2|0)==(e|0)){break a}a=H[f+3|0]&63|((H[f+1|0]&63)<<12|(a&7)<<18|(H[f+2|0]&63)<<6);F[g+2>>1]=a&1023|56320;F[g>>1]=a+16711680>>>10|55296;g=g+4|0;f=f+4|0;break b}F[g>>1]=a<<24>>24;g=g+2|0;f=f+1|0}if((f|0)==(c|0)){break a}if((e|0)!=(g|0)){continue}break}}G[b>>2]=f;G[d>>2]=g}function oe(a){var b=0,c=0,d=0,e=0;b=G[a+356>>2];if(!G[b+184>>2]){c=ka[G[a+12>>2]](G[a+468>>2]<<2)|0;G[b+184>>2]=c;if(!c){return-1}G[c>>2]=0}c=G[b+164>>2];d=G[b+176>>2];e=G[b+172>>2];if(d>>>0>=e>>>0){a:{b:{if(c){c=ka[G[a+16>>2]](c,M(e,56))|0;if(c){break b}return-1}c=ka[G[a+12>>2]](896)|0;d=32;if(c){break a}return-1}d=G[b+172>>2]<<1}G[b+164>>2]=c;G[b+172>>2]=d;d=G[b+176>>2]}G[b+176>>2]=d+1;a=G[b+180>>2];if(a){b=G[(G[b+184>>2]+(a<<2)|0)-4>>2];a=M(b,28)+c|0;e=G[a+16>>2];if(e){G[(M(e,28)+c|0)+24>>2]=d}e=G[a+20>>2];if(!e){G[(M(b,28)+c|0)+12>>2]=d}G[a+16>>2]=d;G[a+20>>2]=e+1}a=M(d,28)+c|0;G[a+12>>2]=0;G[a+16>>2]=0;G[a+20>>2]=0;G[a+24>>2]=0;return d}function og(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{c:{switch(((c-b|0)/2|0)-2|0){case 0:if(H[b+2|0]|H[b+3|0]!=116){break b}c=0;if(H[b|0]){break a}a=H[b+1|0];return((a|0)==103?62:(a|0)==108?60:0)|0;case 1:if(H[b|0]|H[b+1|0]!=97|(H[b+2|0]|H[b+3|0]!=109)){break b}if(H[b+4|0]){break b}c=38;if(H[b+5|0]!=112){break b}break a;case 2:break c;default:break b}}if(H[b|0]){break b}a=E[b+1|0]-97|0;if(a){if(H[b+2|0]|(a|0)!=16|(H[b+4|0]|H[b+3|0]!=117)){break b}if(H[b+6|0]|H[b+5|0]!=111){break b}c=34;if(H[b+7|0]!=116){break b}break a}if(H[b+2|0]|H[b+3|0]!=112|(H[b+4|0]|H[b+5|0]!=111)){break b}if(H[b+6|0]){break b}c=39;if(H[b+7|0]==115){break a}}c=0}return c|0}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{c:{switch(((c-b|0)/2|0)-2|0){case 0:if(H[b+3|0]|H[b+2|0]!=116){break b}c=0;if(H[b+1|0]){break a}a=H[b|0];return((a|0)==103?62:(a|0)==108?60:0)|0;case 1:if(H[b+1|0]|H[b|0]!=97|(H[b+3|0]|H[b+2|0]!=109)){break b}if(H[b+5|0]){break b}c=38;if(H[b+4|0]!=112){break b}break a;case 2:break c;default:break b}}if(H[b+1|0]){break b}a=E[b|0]-97|0;if(a){if(H[b+3|0]|(a|0)!=16|(H[b+5|0]|H[b+2|0]!=117)){break b}if(H[b+7|0]|H[b+4|0]!=111){break b}c=34;if(H[b+6|0]!=116){break b}break a}if(H[b+3|0]|H[b+2|0]!=112|(H[b+5|0]|H[b+4|0]!=111)){break b}if(H[b+7|0]){break b}c=39;if(H[b+6|0]==115){break a}}c=0}return c|0}function Kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=G[12959];d=ia-208|0;ia=d;G[d+204>>2]=b;b=d+160|0;Ob(b,0,40);G[d+200>>2]=G[d+204>>2];a:{if((Hd(0,a,d+200|0,d+80|0,b)|0)<0){a=-1;break a}g=G[c+76>>2]>=0;e=G[c>>2];if(G[c+72>>2]<=0){G[c>>2]=e&-33}b:{c:{d:{if(!G[c+48>>2]){G[c+48>>2]=80;G[c+28>>2]=0;G[c+16>>2]=0;G[c+20>>2]=0;f=G[c+44>>2];G[c+44>>2]=d;break d}if(G[c+16>>2]){break c}}b=-1;if(Jd(c)){break b}}b=Hd(c,a,d+200|0,d+80|0,d+160|0)}a=b;if(f){ka[G[c+36>>2]](c,0,0)|0;G[c+48>>2]=0;G[c+44>>2]=f;G[c+28>>2]=0;b=G[c+20>>2];G[c+16>>2]=0;G[c+20>>2]=0;a=b?a:-1}b=G[c>>2];G[c>>2]=b|e&32;a=b&32?-1:a;if(!g){break a}}ia=d+208|0;return a|0}function yb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=G[17996];d=H[c+(a<<2)|0];a:{if((d|0)==1){break a}c=H[c+(b<<2)|0];if((c|0)==1){return b|0}if((d|0)==2){return b|0}if((c|0)==2){break a}d=G[17996];e=G[17988];c=d+(e<<2)|0;G[c>>2]=6;G[c+8>>2]=b;G[c+4>>2]=a;f=518;g=d+(a<<2)|0;a=G[g>>2];if(!(!(a&256)|!(E[(d+(b<<2)|0)+1|0]&1))){G[c>>2]=262;f=774;a=G[g>>2]}if(H[(d+(b<<2)|0)+1|0]&2?1:a&512){G[c>>2]=f}a=va(71960,e);b:{if((a|0)!=-1){break b}a=G[17988];wa(71960,a);c=G[17996];b=G[17988];b=G[(H[c+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;d=b+3|0;if((d|0)<=G[18008]){break b}d=d<<1;G[18008]=d;G[17996]=sa(c,d,b,4)}}return a|0}function pb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=G[17996];d=H[c+(a<<2)|0];a:{if((d|0)==1){break a}c=H[c+(b<<2)|0];if((c|0)==1){return b|0}if((d|0)==2){return b|0}if((c|0)==2){break a}d=G[17996];e=G[17988];c=d+(e<<2)|0;G[c>>2]=5;G[c+8>>2]=b;G[c+4>>2]=a;f=517;g=d+(a<<2)|0;a=G[g>>2];if(!(!(a&256)|!(E[(d+(b<<2)|0)+1|0]&1))){G[c>>2]=261;f=773;a=G[g>>2]}if(H[(d+(b<<2)|0)+1|0]&2?1:a&512){G[c>>2]=f}a=va(71960,e);b:{if((a|0)!=-1){break b}a=G[17988];wa(71960,a);c=G[17996];b=G[17988];b=G[(H[c+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;d=b+3|0;if((d|0)<=G[18008]){break b}d=d<<1;G[18008]=d;G[17996]=sa(c,d,b,4)}}return a|0}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+76|0;while(1){a:{b:{c:{d:{e:{f:{g:{a=H[b|0];switch(H[d+a|0]-5|0){case 17:case 18:case 19:case 20:case 21:case 22:case 24:break d;case 0:break e;case 1:break f;case 2:break g;default:break c}}if(H[c|0]!=(a|0)){return 0}c=c+1|0;b=b+1|0;a=H[b|0]}if(H[c|0]!=(a&255)){return 0}c=c+1|0;b=b+1|0;a=H[b|0]}if(H[c|0]!=(a&255)){break b}b=b+1|0;c=c+1|0;if(H[b|0]!=H[c|0]){break b}break a}if(H[c|0]==(a|0)){break a}return 0}e=1;b=a;a=H[c|0];if((b|0)==(a|0)){break b}a=H[a+d|0]-5|0;if((a&255)>>>0>=25){break b}e=G[(a<<24>>24<<2)+18256>>2]}return e|0}b=b+1|0;c=c+1|0;continue}}function oh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(c|0)){return-4}g=a+76|0;e=b;while(1){f=2;a:{b:{c:{d:{switch(H[H[e|0]+g|0]-2|0){case 4:f=3;break a;case 5:f=4;break a;case 1:if((b|0)!=(e|0)){break c}return mc(a,b+1|0,c,d)|0;case 0:G[d>>2]=e;return 0;case 8:if((b|0)!=(e|0)){break c}G[d>>2]=b+1;return 7;case 7:if((b|0)!=(e|0)){break c}a=b+1|0;if((a|0)==(c|0)){return-3}G[d>>2]=H[H[b+1|0]+g|0]==10?b+2|0:a;return 7;case 3:break a;case 19:break d;default:break b}}if((b|0)!=(e|0)){break c}G[d>>2]=b+1;return 39}G[d>>2]=e;return 6}f=1}e=e+f|0;if((e|0)!=(c|0)){continue}break}G[d>>2]=c;return 6}function nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(c|0)){return-4}g=a+76|0;e=b;while(1){f=2;a:{b:{c:{d:{switch(H[H[e|0]+g|0]-3|0){case 3:f=3;break a;case 4:f=4;break a;case 0:if((b|0)!=(e|0)){break c}return mc(a,b+1|0,c,d)|0;case 27:if((b|0)!=(e|0)){break c}a=ce(a,b+1|0,c,d);return((a|0)==22?0:a)|0;case 7:if((b|0)!=(e|0)){break c}G[d>>2]=b+1;return 7;case 2:break a;case 6:break d;default:break b}}if((b|0)!=(e|0)){break c}a=b+1|0;if((a|0)==(c|0)){return-3}G[d>>2]=H[H[b+1|0]+g|0]==10?b+2|0:a;return 7}G[d>>2]=e;return 6}f=1}e=e+f|0;if((e|0)!=(c|0)){continue}break}G[d>>2]=c;return 6}function ve(a,b,c){var d=0,e=0,f=0,g=0;G[a>>2]=0;G[a+4>>2]=0;G[a+24>>2]=0;G[a+28>>2]=0;G[a+8>>2]=0;G[a+12>>2]=0;G[a+16>>2]=0;if(c){g=b+c|0;c=6674;d=1;while(1){a:{b:{switch(E[b|0]-45|0){case 0:d=-1;break a;case 1:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:c=b;break a;case 39:e=1;break a;case 44:G[a>>2]=M(Wb(c),d);break a;case 32:f=M(Wb(c),d);if(e){G[a+16>>2]=f;e=1;break a}G[a+4>>2]=f;e=0;break a;case 23:G[a+8>>2]=M(Wb(c),d);break a;case 27:G[a+12>>2]=M(Wb(c),d);break a;case 38:break b;default:break a}}L[a+24>>3]=qb(c)*+(d|0)}b=b+1|0;if((g|0)!=(b|0)){continue}break}}}function Rd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a:{b:{c:{switch(b+4|0){case 20:if(ka[G[e+28>>2]](e,(G[e+68>>2]<<1)+c|0,d,18478)|0){G[a>>2]=158;return 11}if(ka[G[e+28>>2]](e,(G[e+68>>2]<<1)+c|0,d,18485)|0){G[a>>2]=159;return 33}if(ka[G[e+28>>2]](e,(G[e+68>>2]<<1)+c|0,d,18493)|0){G[a>>2]=160;return 39}if(!(ka[G[e+28>>2]](e,(G[e+68>>2]<<1)+c|0,d,18501)|0)){break b}G[a>>2]=161;return 17;case 15:return 55;case 17:return 56;case 32:return 60;case 30:G[a>>2]=162;return 3;case 0:case 19:break a;default:break c}}if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;f=-1}return f|0}function uf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=39;a:{b:{switch(b-15|0){case 9:b=G[a+4>>2]-1|0;G[a+4>>2]=b;c=45;if(b){break a}G[a+8>>2]=39;G[a>>2]=172;return 45;case 21:b=G[a+4>>2]-1|0;G[a+4>>2]=b;c=46;if(b){break a}G[a+8>>2]=39;G[a>>2]=172;return 46;case 20:b=G[a+4>>2]-1|0;G[a+4>>2]=b;c=47;if(b){break a}G[a+8>>2]=39;G[a>>2]=172;return 47;case 22:b=G[a+4>>2]-1|0;G[a+4>>2]=b;c=48;if(b){break a}G[a+8>>2]=39;G[a>>2]=172;return 48;case 23:G[a>>2]=194;return 50;case 6:G[a>>2]=194;return 49;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function qc(a,b){if(b>>>0<=127){E[a|0]=b;return 1}if(b>>>0<=2047){E[a+1|0]=b&63|128;E[a|0]=b>>>6|192;return 2}if(b>>>0<=65535){E[a+2|0]=b&63|128;E[a|0]=b>>>12|224;E[a+1|0]=b>>>6&63|128;return 3}if(b>>>0<=2097151){E[a+3|0]=b&63|128;E[a|0]=b>>>18|240;E[a+2|0]=b>>>6&63|128;E[a+1|0]=b>>>12&63|128;return 4}if(b>>>0<=67108863){E[a+4|0]=b&63|128;E[a|0]=b>>>24|248;E[a+3|0]=b>>>6&63|128;E[a+2|0]=b>>>12&63|128;E[a+1|0]=b>>>18&63|128;return 5}if((b|0)>=0){E[a+5|0]=b&63|128;E[a|0]=b>>>30|252;E[a+4|0]=b>>>6&63|128;E[a+3|0]=b>>>12&63|128;E[a+2|0]=b>>>18&63|128;E[a+1|0]=b>>>24&63|128;a=6}else{a=0}return a}function cd(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=ia-16|0;ia=d;a:{b:{c:{d:{e:{f:{b=M(G[a+56>>2],20)+a|0;switch(G[b+76>>2]-16|0){case 2:break c;case 26:break d;case 4:break e;case 0:break f;default:break b}}c=G[18022];break b}c=G[b+60>>2];while(1){b=c;c=b+1|0;if(H[b|0]!=58){continue}break}E[b|0]=0;e=xa(G[(M(G[a+56>>2],20)+a|0)+60>>2]);b=Sa(72128,e);g:{if(!b){b=M(G[a+56>>2],20)+a|0;f=G[b+72>>2];b=G[b+68>>2];G[d>>2]=G[a+4>>2];G[d+4>>2]=b;G[d+8>>2]=f;G[d+12>>2]=G[18011]+e;ya(1,a,56,d);break g}g=G[(G[18032]+M(b,12)|0)+4>>2]}c=fc(g,xa(c));break b}c=G[18023];break a}c=G[18023]}ra(a)}ia=d+16|0;return c}function Ab(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=1;j=d&2147483647;l=j;k=(j|0)==2147418112;a:{if(k&!c?a|b:k&(c|0)!=0|j>>>0>2147418112){break a}j=h&2147483647;k=(j|0)==2147418112;if(k&!g?e|f:k&(g|0)!=0|j>>>0>2147418112){break a}if(!(a|e|(c|g)|(b|f|(j|l)))){return 0}i=d&h;if((i|0)>0|(i|0)>=0){i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0<e>>>0|b>>>0<f>>>0:c>>>0<g>>>0&(d|0)<=(h|0)|(d|0)<(h|0)){break a}return(a^e|c^g|(b^f|d^h))!=0}i=-1;if((c|0)==(g|0)&(d|0)==(h|0)?(b|0)==(f|0)&a>>>0>e>>>0|b>>>0>f>>>0:c>>>0>g>>>0&(d|0)>=(h|0)|(d|0)>(h|0)){break a}i=(a^e|c^g|(b^f|d^h))!=0}return i}function bh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=G[d>>2];e=e-f|0;a=G[b>>2];a:{if((e|0)>=(c-a|0)){break a}e=a+e|0;while(1){c=e;if(c>>>0<=a>>>0){break a}e=c-1|0;if((H[e|0]&192)==128){continue}break}}if((a|0)!=(c|0)){h=(a^-1)+c|0;g=c-a&7;if(g){e=0;while(1){E[f|0]=H[a|0];f=f+1|0;a=a+1|0;e=e+1|0;if((g|0)!=(e|0)){continue}break}}if(h>>>0>=7){while(1){E[f|0]=H[a|0];E[f+1|0]=H[a+1|0];E[f+2|0]=H[a+2|0];E[f+3|0]=H[a+3|0];E[f+4|0]=H[a+4|0];E[f+5|0]=H[a+5|0];E[f+6|0]=H[a+6|0];E[f+7|0]=H[a+7|0];f=f+8|0;a=a+8|0;if((c|0)!=(a|0)){continue}break}}a=c}G[b>>2]=a;G[d>>2]=f}function le(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=G[a+356>>2];h=d+60|0;g=d+80|0;f=G[b>>2];while(1){a:{c=H[f|0];b:{if((c|0)!=58){if(c){break b}return 1}e=G[b>>2];if((e|0)!=(f|0)){while(1){c=G[d+92>>2];if((c|0)==G[d+88>>2]){if(!qa(g)){break a}c=G[d+92>>2]}i=H[e|0];G[d+92>>2]=c+1;E[c|0]=i;e=e+1|0;if((e|0)!=(f|0)){continue}break}}c=G[d+92>>2];if((c|0)==G[d+88>>2]){if(!qa(g)){break a}c=G[d+92>>2]}G[d+92>>2]=c+1;E[c|0]=0;c=cb(a,h,G[d+96>>2],8);if(!c){break a}e=G[d+96>>2];c:{if((e|0)==G[c>>2]){G[d+96>>2]=G[d+92>>2];break c}G[d+92>>2]=e}G[b+4>>2]=c}f=f+1|0;continue}break}return 0}function Wh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ia-16|0;ia=d;e=Wc(a);a:{if(G[18093]){break a}a=b+c|0;b:while(1){if((a|0)==(b|0)){f=G[G[18062]+(e<<2)>>2]&256;break a}b=Ca(d+12|0,b)+b|0;if(ta(G[d+12>>2])){continue}if(G[18094]==(e|0)){break a}while(1){if(ta(G[d+12>>2])){G[d+12>>2]=32;e=hb(e,32);if((e|0)!=G[18094]){continue b}while(1){if((a|0)==(b|0)){f=1;break a}b=Ca(d+12|0,b)+b|0;if(ta(G[d+12>>2])){continue}break}break a}e=hb(e,G[d+12>>2]);if((a|0)==(b|0)){b=a;continue b}b=Ca(d+12|0,b)+b|0;if(G[18094]!=(e|0)){continue}break}break}}ia=d+16|0;return f|0}function Oc(a,b,c,d){var e=0,f=0,g=0;f=ia-16|0;ia=f;e=G[a+356>>2];G[f+12>>2]=c;c=e+80|0;a:{b:{g=e+92|0;c:{if(!G[g>>2]){if(!qa(c)){break c}}while(1){ka[G[b+60>>2]](b,f+12|0,d,g,G[e+88>>2]);if(G[f+12>>2]==(d|0)){break b}if(qa(c)){continue}break}}b=0;break a}b=0;if(!G[e+96>>2]){break a}d=G[e+92>>2];if((d|0)==G[e+88>>2]){if(!qa(c)){break a}d=G[g>>2]}G[e+92>>2]=d+1;E[d|0]=0;d=G[e+96>>2];if(!d){break a}c=cb(a,e+20|0,d,24);if(!c){break a}d:{if((d|0)!=G[c>>2]){G[e+92>>2]=G[e+96>>2];break d}G[e+96>>2]=G[e+92>>2];if(!le(a,c)){break a}}b=c}ia=f+16|0;return b}function ie(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;d=Qb(a,1,G[a+144>>2],b,c,d,!H[a+484|0]);a:{if(d){break a}d=0;b=G[a+364>>2];if(!b){break a}while(1){c=G[b+4>>2];g=G[b+24>>2]+1|0;e=G[b+36>>2];f=g+e|0;if((c|0)==(f|0)){break a}h=G[b+8>>2];i=h+g|0;if((i|0)>(G[b+40>>2]-e|0)){c=ka[G[a+16>>2]](e,i)|0;if(!c){return 1}e=G[b+36>>2];if((e|0)==G[b+12>>2]){G[b+12>>2]=c}f=G[b+16>>2];if(f){G[b+16>>2]=c+(f-e|0)}G[b+36>>2]=c;G[b+40>>2]=c+i;f=c+g|0;h=G[b+8>>2];c=G[b+4>>2]}G[b+4>>2]=Pa(f,c,h);b=G[b>>2];if(b){continue}break}}return d|0}function Fe(){var a=0,b=0,c=0,d=0,e=0;b=ia-32|0;ia=b;a:{if(!(G[18101]!=3|G[18104]!=94)){Ia();c=sc(G[18100],Ee());break a}c=Ee()}if(!(G[18101]!=3|G[18104]!=45)){Ia();if(!(G[18101]==3&G[18104]==91)){a=G[18093];if(!a){a=G[18066]+G[18103]|0;d=Ba(a);e=Ba(G[18066]+G[18102]|0);G[b+16>>2]=a;G[b+20>>2]=d-e;Ma(2,b+16|0);a=G[18093]}G[18093]=a+1}Ia();c=sc(c,Fe());if(!(G[18101]==3&G[18104]==93)){a=G[18093];if(!a){a=G[18066]+G[18103]|0;d=Ba(a);e=Ba(G[18066]+G[18102]|0);G[b>>2]=a;G[b+4>>2]=d-e;Ma(3,b);a=G[18093]}G[18093]=a+1}Ia()}ia=b+32|0;return c}function te(a,b){var c=0,d=0,e=0,f=0;d=ia-1040|0;ia=d;e=18;f=G[a+124>>2];a:{if(!f){break a}c=Ob(d,255,1024);G[c+1032>>2]=0;G[c+1024>>2]=0;G[c+1028>>2]=0;b:{if(!(ka[f|0](G[a+248>>2],b,c)|0)){break b}b=ka[G[a+12>>2]](1912)|0;G[a+240>>2]=b;if(!b){e=1;a=G[c+1032>>2];if(!a){break a}ka[a|0](G[c+1024>>2]);break a}b=ka[(H[a+236|0]?63:64)|0](b,c,G[c+1028>>2],G[c+1024>>2])|0;if(!b){break b}G[a+244>>2]=G[c+1024>>2];c=G[c+1032>>2];G[a+144>>2]=b;G[a+252>>2]=c;e=0;break a}a=G[c+1032>>2];if(!a){break a}ka[a|0](G[c+1024>>2])}ia=d+1040|0;return e}function $e(a,b){a=a|0;b=b|0;var c=0,d=0;if(G[17972]!=G[18021]){G[17959]=(Oe(G[17963],G[17970],H[71892])|0)!=0&G[17959]!=0;G[17970]=0;E[G[17963]]=0;c=ia-32|0;ia=c;a=G[17972];G[17969]=a;d=ae(a);G[17972]=d;a=1;if((d|0)==G[18021]){a=gc(b);a:{if(!a){a=b;while(1){d=a;a=a+1|0;if(H[d|0]){continue}break}G[c+4>>2]=b;G[c>>2]=d;vb(5,c);break a}E[a|0]=0;G[c+20>>2]=a+1;G[c+16>>2]=b;vb(5,c+16|0);E[a|0]=58}G[17972]=_d(G[17969]);a=0}ia=c+32|0;E[71892]=1;G[17959]=(a|0)!=0&G[17959]!=0;return}a=G[17971];if(!a){G[17972]=G[17969];return}G[17971]=a-1}function Se(a,b,c){a=a|0;b=b|0;c=c|0;if(!hc(4558,b)){a=G[17967];if(a){Aa(a)}G[17967]=Ta(c);return}if(!hc(2088,b)){a=G[17968];if(a){Aa(a)}a=Ta(c);G[17968]=a;a:{if(a&3){while(1){b=H[a|0];if(!b|(b|0)==32){break a}a=a+1|0;if(a&3){continue}break}}b=G[a>>2];b:{if((b^-1)&b-16843009&-2139062144){break b}while(1){b=b^538976288;if((b^-1)&b-16843009&-2139062144){break b}b=G[a+4>>2];a=a+4|0;if(!(b-16843009&(b^-1)&-2139062144)){continue}break}}while(1){b=a;c=H[a|0];if(c){a=b+1|0;if((c|0)!=32){continue}}break}a=b}E[(H[a|0]==32?a:0)|0]=58}}function re(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;b=Qb(a,0,G[a+144>>2],b,c,d,!H[a+484|0]);if(!b){b=G[a+364>>2];a:{if(!b){break a}while(1){c=G[b+4>>2];f=G[b+24>>2]+1|0;g=G[b+36>>2];e=f+g|0;if((c|0)==(e|0)){break a}d=G[b+8>>2];h=d+f|0;if((h|0)>(G[b+40>>2]-g|0)){e=ka[G[a+16>>2]](g,h)|0;if(!e){return 1}d=G[b+36>>2];if((d|0)==G[b+12>>2]){G[b+12>>2]=e}c=G[b+16>>2];if(c){G[b+16>>2]=e+(c-d|0)}G[b+36>>2]=e;G[b+40>>2]=e+h;e=e+f|0;d=G[b+8>>2];c=G[b+4>>2]}G[b+4>>2]=Pa(e,c,d);b=G[b>>2];if(b){continue}break}}b=0}return b|0}function ne(a,b,c,d,e){var f=0,g=0,h=0;g=G[a+356>>2];f=G[g+164>>2]+M(b,28)|0;h=G[f>>2];G[c>>2]=h;G[c+4>>2]=G[f+4>>2];if((h|0)==4){G[c+8>>2]=G[e>>2];f=G[f+8>>2];while(1){a=H[f|0];b=G[e>>2];G[e>>2]=b+1;E[b|0]=a;a=H[f|0];f=f+1|0;if(a){continue}break}G[c+12>>2]=0;G[c+16>>2]=0;return}f=G[f+20>>2];G[c+12>>2]=f;G[c+16>>2]=G[d>>2];G[d>>2]=G[d>>2]+M(f,20);if(f){b=(G[g+164>>2]+M(b,28)|0)+12|0;f=0;while(1){b=G[b>>2];ne(a,b,G[c+16>>2]+M(f,20)|0,d,e);b=(G[g+164>>2]+M(b,28)|0)+24|0;f=f+1|0;if(f>>>0<J[c+12>>2]){continue}break}}G[c+8>>2]=0}function Gg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(b>>>0<c>>>0){f=a+76|0;while(1){a:{b:{c:{d:{e:{a=H[b+1|0];if(a-216>>>0<4){break e}if(a){break b}f:{switch(H[H[b|0]+f|0]-6|0){case 4:break c;case 3:break d;case 1:break e;case 0:break f;default:break b}}a=b+3|0;break a}a=b+4|0;break a}G[d>>2]=G[d>>2]+1;a=b+2|0;e=c;g:{if((a|0)==(c|0)){break g}e=a;if(H[b+3|0]){break g}e=H[H[b+2|0]+f|0]==10?b+4|0:a}a=e;G[d+4>>2]=-1;break a}G[d+4>>2]=-1;G[d>>2]=G[d>>2]+1}a=b+2|0}G[d+4>>2]=G[d+4>>2]+1;b=a;if(c>>>0>b>>>0){continue}break}}}function jb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=ia-16|0;ia=f;A(+b);g=v(1)|0;d=v(0)|0;c=g&2147483647;e=c+-1048576|0;a:{if((e|0)==2145386495|e>>>0<2145386495){h=d<<28;e=c>>>4|0;c=(c&15)<<28|d>>>4;d=e+1006632960|0;break a}if((c|0)==2146435072|c>>>0>2146435072){h=d<<28;c=(g&15)<<28|d>>>4;d=g>>>4|2147418112;break a}if(!(c|d)){c=0;d=0;break a}e=c;c=c?P(c):P(d)+32|0;Ra(f,d,e,0,0,c+49|0);i=G[f>>2];h=G[f+4>>2];e=15372-c<<16;c=G[f+8>>2];d=e|G[f+12>>2]^65536}G[a>>2]=i;G[a+4>>2]=h;G[a+8>>2]=c;G[a+12>>2]=g&-2147483648|d;ia=f+16|0}function ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(b>>>0<c>>>0){f=a+76|0;while(1){a:{b:{c:{d:{e:{a=H[b|0];if(a-216>>>0<4){break e}if(a){break b}f:{switch(H[H[b+1|0]+f|0]-6|0){case 4:break c;case 3:break d;case 1:break e;case 0:break f;default:break b}}a=b+3|0;break a}a=b+4|0;break a}G[d>>2]=G[d>>2]+1;a=c;e=b+2|0;g:{if((e|0)==(a|0)){break g}a=e;if(H[a|0]){break g}a=H[H[b+3|0]+f|0]==10?b+4|0:e}G[d+4>>2]=-1;break a}G[d+4>>2]=-1;G[d>>2]=G[d>>2]+1}a=b+2|0}G[d+4>>2]=G[d+4>>2]+1;b=a;if(c>>>0>b>>>0){continue}break}}}function Fb(a,b){var c=0,d=0,e=0,f=0,g=0;c=G[18062];d=c+(a<<2)|0;e=G[d>>2]&15;a:{if((e|0)==1){break a}f=c+(b<<2)|0;g=G[f>>2]&15;if((g|0)==1){return b}if((e|0)==2){return b}if((g|0)==2){break a}e=G[18098];c=c+(e<<2)|0;G[c>>2]=4;G[c+8>>2]=b;G[c+4>>2]=a;if(!(!(E[d+1|0]&1)|!(E[f+1|0]&1))){G[c>>2]=260}a=va(72276,e);if((a|0)!=-1){break a}a=G[18098];wa(72276,a);c=G[18062];b=G[18098];b=G[((G[c+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;d=b+3|0;if((d|0)<=G[18061]){break a}d=d<<1;G[18061]=d;G[18062]=sa(c,d,b,4)}return a}function Ib(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;a:{if(f&64){c=f+-64|0;b=c&31;if((c&63)>>>0>=32){c=0;b=e>>>b|0}else{c=e>>>b|0;b=((1<<b)-1&e)<<32-b|d>>>b}d=0;e=0;break a}if(!f){break a}i=d;h=64-f|0;g=h&31;if((h&63)>>>0>=32){h=i<<g;j=0}else{h=(1<<g)-1&i>>>32-g|e<<g;j=i<<g}i=b;b=f&31;if((f&63)>>>0>=32){g=0;b=c>>>b|0}else{g=c>>>b|0;b=((1<<b)-1&c)<<32-b|i>>>b}b=j|b;c=g|h;g=d;d=f&31;if((f&63)>>>0>=32){h=0;d=e>>>d|0}else{h=e>>>d|0;d=((1<<d)-1&e)<<32-d|g>>>d}e=h}G[a>>2]=b;G[a+4>>2]=c;G[a+8>>2]=d;G[a+12>>2]=e}function vh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ia-160|0;ia=d;G[d+156>>2]=b;G[d+12>>2]=d+16;ka[G[a+60>>2]](a,d+156|0,c,d+12|0,d+143|0);b=0;a:{if(G[d+156>>2]!=(c|0)){break a}E[G[d+12>>2]]=0;b=6588;c=d+16|0;while(1){e=H[b|0];f=H[c|0];b=b+1|0;c=c+1|0;f=((f-97&255)>>>0<26?f-32|0:f)&255;e=(f|0)==(((e-97&255)>>>0<26?e-32|0:e)&255)?!f<<1:1;if(!e){continue}break}if((e|0)==2){b=a;if(G[a+68>>2]==2){break a}}a=oc(d+16|0);b=0;if((a|0)==-1){break a}b=G[(a<<2)+16288>>2]}ia=d+160|0;return b|0}function Ah(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ia-160|0;ia=d;G[d+156>>2]=b;G[d+12>>2]=d+16;ka[G[a+60>>2]](a,d+156|0,c,d+12|0,d+143|0);b=0;a:{if(G[d+156>>2]!=(c|0)){break a}E[G[d+12>>2]]=0;b=6588;c=d+16|0;while(1){e=H[b|0];f=H[c|0];b=b+1|0;c=c+1|0;f=((f-97&255)>>>0<26?f-32|0:f)&255;e=(f|0)==(((e-97&255)>>>0<26?e-32|0:e)&255)?!f<<1:1;if(!e){continue}break}if((e|0)==2){b=a;if(G[a+68>>2]==2){break a}}a=oc(d+16|0);b=0;if((a|0)==-1){break a}b=G[(a<<2)+14752>>2]}ia=d+160|0;return b|0}function Fa(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=ia-32|0;ia=e;d=1;f=M(G[a+56>>2],20);a:{if(G[(f+a|0)+76>>2]==(b|0)){break a}d=f;f=a+60|0;d=d+f|0;g=G[d+12>>2];d=G[d+8>>2];h=G[a+4>>2];b=eb(b);G[e+16>>2]=eb(G[(f+M(G[a+56>>2],20)|0)+16>>2]);G[e+12>>2]=b;G[e+4>>2]=d;G[e+8>>2]=g;G[e>>2]=h;d=0;ya(0,a,40,e);b=G[(f+M(G[a+56>>2],20)|0)+16>>2];if((b|0)==(c|0)|(b|0)==-1){break a}while(1){ra(a);b=G[(M(G[a+56>>2],20)+a|0)+76>>2];if((b|0)==(c|0)){break a}if((b|0)!=-1){continue}break}}ia=e+32|0;return d}function Ra(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(f&64){d=b;e=f+-64|0;b=e&31;if((e&63)>>>0>=32){e=d<<b;d=0}else{e=(1<<b)-1&d>>>32-b|c<<b;d=d<<b}b=0;c=0;break a}if(!f){break a}g=d;d=f&31;if((f&63)>>>0>=32){h=g<<d;i=0}else{h=(1<<d)-1&g>>>32-d|e<<d;i=g<<d}g=b;e=64-f|0;d=e&31;if((e&63)>>>0>=32){e=0;b=c>>>d|0}else{e=c>>>d|0;b=((1<<d)-1&c)<<32-d|g>>>d}d=i|b;e=e|h;b=f&31;if((f&63)>>>0>=32){h=g<<b;b=0}else{h=(1<<b)-1&g>>>32-b|c<<b;b=g<<b}c=h}G[a>>2]=b;G[a+4>>2]=c;G[a+8>>2]=d;G[a+12>>2]=e}function Cd(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!G[G[18148]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){E[a+1|0]=b&63|128;E[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){E[a+2|0]=b&63|128;E[a|0]=b>>>12|224;E[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){E[a+3|0]=b&63|128;E[a|0]=b>>>18|240;E[a+2|0]=b>>>6&63|128;E[a+1|0]=b>>>12&63|128;a=4;break a}}G[18106]=25;a=-1}else{a=1}break a}E[a|0]=b;a=1}return a}function yc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;d=ia-32|0;ia=d;g=Sa(72112,b);a:{if(g){e=G[18028]+M(g,12)|0;h=G[e+8>>2];if(h&1){G[e+4>>2]=c;G[e+8>>2]=h&-4;break a}b=G[18011]+b|0;f=M(G[a+56>>2],20)+a|0;e=G[f+72>>2];f=G[f+68>>2];i=G[a+4>>2];if(h&2){G[d+28>>2]=b;G[d+24>>2]=e;G[d+20>>2]=f;G[d+16>>2]=i;xc(53,d+16|0);a=G[18028]+M(g,12)|0;G[a+4>>2]=c;G[a+8>>2]=G[a+8>>2]&-4;break a}G[d+12>>2]=b;G[d+8>>2]=e;G[d+4>>2]=f;G[d>>2]=i;ya(1,a,51,d);break a}Qa(72112,b,c,0)}ia=d+32|0}function cc(a){var b=0,c=0,d=0,e=0;b=G[17996];e=b+(a<<2)|0;c=G[e>>2];if((c|0)<0){return 1}G[e>>2]=c|-2147483648;a:{b:{switch((c&255)-1|0){case 3:case 4:case 5:case 9:b=b+(a<<2)|0;c=G[b+8>>2];d=1;if(cc(G[b+4>>2])){break a}d=(cc(c)|0)!=0;break a;case 13:d=1;break a;default:Z(6674,5339,136,3363);W();case 0:case 1:case 2:case 8:case 10:case 12:break a;case 6:case 7:case 11:break b}}d=cc(G[(b+(a<<2)|0)+4>>2])}a=G[17996]+(a<<2)|0;G[a>>2]=G[a>>2]&2147483647;return d}function Na(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0;h=ki(b,c,h,i);i=ja;j=h;h=ki(d,e,f,g);e=j+h|0;d=ja+i|0;i=e;h=i>>>0<h>>>0?d+1|0:d;j=i;k=g;e=0;l=c;d=0;i=ki(g,e,c,d);g=j+i|0;c=ja+h|0;j=g;g=g>>>0<i>>>0?c+1|0:c;h=f;i=b;f=ki(h,0,i,0);b=ja;c=0;d=ki(h,c,l,d);b=b+d|0;c=ja+c|0;c=b>>>0<d>>>0?c+1|0:c;h=c;c=c+j|0;d=g;d=c>>>0<h>>>0?d+1|0:d;h=c;c=d;d=ki(i,m,k,e)+b|0;e=ja;e=b>>>0>d>>>0?e+1|0:e;g=a;i=e;h=i+h|0;G[g+8>>2]=h;G[g+12>>2]=h>>>0<i>>>0?c+1|0:c;G[g>>2]=f;G[g+4>>2]=d}function gh(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{c:{switch((c-b|0)-2|0){case 0:if(H[b+1|0]!=116){break b}a=H[b|0];return((a|0)==108?60:(a|0)==103?62:0)|0;case 1:if(H[b|0]!=97|H[b+1|0]!=109){break b}c=38;if(H[b+2|0]!=112){break b}break a;case 2:break c;default:break b}}a=E[b|0]-97|0;if(a){if((a|0)!=16|H[b+1|0]!=117|H[b+2|0]!=111){break b}c=34;if(H[b+3|0]!=116){break b}break a}if(H[b+1|0]!=112|H[b+2|0]!=111){break b}c=39;if(H[b+3|0]==115){break a}}c=0}return c|0}function Ke(){var a=0,b=0,c=0;b=G[18099];while(1){a:{b:{c:{switch(G[18101]){case 0:break b;case 3:break c;default:break a}}a=G[18104];if((a|0)==41){break b}if((a|0)!=124){break a}while(1){Ia();a=G[18099];while(1){d:{e:{switch(G[18101]){case 3:c=G[18104];if((c|0)==41|(c|0)==124){break d}break;case 0:break d;default:break e}}a=Fb(a,Je());continue}break}b=db(b,a);if(G[18101]!=3){break b}if(G[18104]==124){continue}break}}return b}b=Fb(b,Je());continue}}function ld(a){var b=0,c=0,d=0,e=0,f=0;c=ia-16|0;ia=c;a:{if(G[(M(G[a+56>>2],20)+a|0)+76>>2]!=35){break a}fb(a);while(1){b:{d=G[a+56>>2];e=G[(M(d,20)+a|0)+76>>2];b=e-19|0;if(b>>>0>23){break b}if(!(1<<b&8912907)){if((b|0)!=16){if((b|0)!=17){break b}fb(a);break a}ld(a);continue}fb(a);continue}if(e>>>0<=18){fb(a);continue}break}b=M(d,20)+a|0;d=G[b+72>>2];b=G[b+68>>2];f=G[a+4>>2];G[c+12>>2]=eb(e);G[c+4>>2]=b;G[c+8>>2]=d;G[c>>2]=f;ya(0,a,41,c)}ia=c+16|0}function Bf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=37;g=166;h=33;a:{b:{c:{d:{switch(b-15|0){case 5:f=35;if(ka[G[e+28>>2]](e,G[e+68>>2]+c|0,d,18579)|0){break b}f=36;if(ka[G[e+28>>2]](e,G[e+68>>2]+c|0,d,18587)|0){break b}if(!(ka[G[e+28>>2]](e,G[e+68>>2]+c|0,d,18596)|0)){break c}f=33;g=189;break b;case 0:break a;case 12:break b;default:break d}}if((b|0)!=28){break c}h=59;if(!G[a+16>>2]){break a}}f=-1;g=151}G[a>>2]=g;h=f}return h|0}function mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{e=b+2|0;f=c-2|0;if((e|0)!=(f|0)){g=a+76|0;while(1){a=b;b=e;if(H[a+2|0]){break a}c=H[a+3|0];a=c<<24>>24;c=H[c+g|0]-9|0;b:{c:{if(c>>>0>26){break c}e=1<<c;if(e&132499443){break b}if(!(e&139264)){if((c|0)!=12){break c}if((a|0)!=9){break b}break a}if((a|0)>=0){break b}}if((a|0)==64){break b}if((a|0)!=36){break a}}e=b+2|0;if((f|0)!=(e|0)){continue}break}}return 1}G[d>>2]=b;return 0}function Fg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{e=b+2|0;f=c-2|0;if((e|0)!=(f|0)){g=a+76|0;while(1){a=b;b=e;if(H[a+3|0]){break a}c=H[b|0];a=c<<24>>24;c=H[c+g|0]-9|0;b:{c:{if(c>>>0>26){break c}e=1<<c;if(e&132499443){break b}if(!(e&139264)){if((c|0)!=12){break c}if((a|0)!=9){break b}break a}if((a|0)>=0){break b}}if((a|0)==64){break b}if((a|0)!=36){break a}}e=b+2|0;if((f|0)!=(e|0)){continue}break}}return 1}G[d>>2]=b;return 0}function vf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=51;g=192;h=39;a:{b:{c:{d:{switch(b-15|0){case 5:if(!(ka[G[e+28>>2]](e,G[e+68>>2]+c|0,d,18612)|0)){break c}f=43;g=193;break b;case 8:G[a+4>>2]=2;f=44;g=194;break b;case 15:f=53;break b;case 16:f=52;break b;case 17:f=54;break b;case 0:break a;case 3:case 26:break b;default:break d}}if((b|0)!=28){break c}h=59;if(!G[a+16>>2]){break a}}f=-1;g=151}G[a>>2]=g;h=f}return h|0}function xb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=G[17996];if(H[c+(a<<2)|0]!=1){if(H[c+(b<<2)|0]==1){return b|0}e=G[17996];d=G[17988];c=e+(d<<2)|0;G[c>>2]=15;G[c+8>>2]=b;G[c+4>>2]=a;if(H[(e+(a<<2)|0)+1|0]&2){G[c>>2]=527}a=va(71960,d);a:{if((a|0)!=-1){break a}a=G[17988];wa(71960,a);c=G[17996];b=G[17988];b=G[(H[c+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;d=b+3|0;if((d|0)<=G[18008]){break a}d=d<<1;G[18008]=d;G[17996]=sa(c,d,b,4)}}return a|0}function zc(a){var b=0,c=0,d=0,e=0;if(H[G[17996]+(a<<2)|0]-1>>>0>=3){d=G[17996];c=G[17988];b=d+(c<<2)|0;G[b>>2]=7;G[b+4>>2]=a;e=519;d=d+(a<<2)|0;a=G[d>>2];if(a&256){G[b>>2]=263;e=775;a=G[d>>2]}if(a&512){G[b>>2]=e}a=va(71960,c);a:{if((a|0)!=-1){break a}a=G[17988];wa(71960,a);e=G[17996];b=G[17988];b=G[(H[e+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;c=b+3|0;if((c|0)<=G[18008]){break a}c=c<<1;G[18008]=c;G[17996]=sa(e,c,b,4)}}return a}function fh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(b>>>0<c>>>0){e=a+76|0;while(1){a:{b:{switch(H[H[b|0]+e|0]-5|0){case 0:a=b+2|0;break a;case 1:a=b+3|0;break a;case 2:a=b+4|0;break a;case 4:G[d>>2]=G[d>>2]+1;a=c;f=b+1|0;if((f|0)!=(c|0)){a=H[H[b+1|0]+e|0]==10?b+2|0:f}G[d+4>>2]=-1;break a;case 5:G[d+4>>2]=-1;G[d>>2]=G[d>>2]+1;break;default:break b}}a=b+1|0}G[d+4>>2]=G[d+4>>2]+1;b=a;if(c>>>0>b>>>0){continue}break}}}function Cc(a,b,c,d,e){var f=0,g=0,h=0,i=0;h=-1;f=d&2147483647;i=f;g=(f|0)==2147418112;a:{if(g&!c?a|b:g&(c|0)!=0|f>>>0>2147418112){break a}f=e&2147483647;g=(f|0)==2147418112;if(g?0:g&0|f>>>0>2147418112){break a}if(!(a|c|(f|i|b))){return 0}f=d&e;if((f|0)>0|(f|0)>=0){if(!c&(d|0)==(e|0)?0:(d|0)<(e|0)){break a}return(a|c|(d^e|b))!=0}if(!c&(d|0)==(e|0)?a|b:(c|0)!=0&(d|0)>=(e|0)|(d|0)>(e|0)){break a}h=(a|c|(d^e|b))!=0}return h}function Eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(b>>>0<c>>>0){while(1){a:{b:{switch(H[H[b|0]+14856|0]-5|0){case 0:a=b+2|0;break a;case 1:a=b+3|0;break a;case 2:a=b+4|0;break a;case 4:G[d>>2]=G[d>>2]+1;a=c;e=b+1|0;if((e|0)!=(c|0)){a=H[H[b+1|0]+14856|0]==10?b+2|0:e}G[d+4>>2]=-1;break a;case 5:G[d+4>>2]=-1;G[d>>2]=G[d>>2]+1;break;default:break b}}a=b+1|0}G[d+4>>2]=G[d+4>>2]+1;b=a;if(c>>>0>b>>>0){continue}break}}}function _c(a,b){var c=0,d=0,e=0;c=G[17996];while(1){a:{b:{c:{d:{e:{f:{d=c+(a<<2)|0;switch(H[d|0]-1|0){case 6:case 7:break b;case 11:break c;case 0:case 1:case 2:case 8:case 10:case 12:break d;case 3:case 9:break e;case 4:case 5:break f;default:break a}}b=1}a=c+(a<<2)|0;c=G[a+8>>2];e=1;if(_c(G[a+4>>2],b)){break d}e=(_c(c,b)|0)!=0}return e}if(!b){break b}return 1}a=G[d+4>>2];continue}break}Z(6674,5339,265,4388);W()}function rc(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=ua(a);if((c|0)>0){n=a+i|0;f=c-1|0;while(1){g=(f+j|0)/2|0;d=G[(g<<2)+b>>2];a:{if(i){k=d+i|0;h=a;while(1){l=E[h|0];m=H[d|0];e=0-l|0;if(!m){break a}e=(m<<24>>24)-l|0;if((l&255)!=(m|0)){break a}d=d+1|0;h=h+1|0;if((n|0)!=(h|0)){continue}break}d=k}e=E[d|0]}k=e;if(!e){return g}d=(k|0)>0;j=d?j:g+1|0;f=d?g-1|0:f;if((j|0)<=(f|0)){continue}break}}return c}function Pc(a,b,c,d){var e=0,f=0,g=0;e=ia-16|0;ia=e;G[e+12>>2]=c;a:{if(!H[b+72|0]){b:{if(G[a+144>>2]==(b|0)){f=a+288|0;c=a+292|0;break b}f=G[a+300>>2];c=f+4|0}while(1){G[e+8>>2]=G[a+44>>2];ka[G[b+60>>2]](b,e+12|0,d,e+8|0,G[a+48>>2]);G[c>>2]=G[e+12>>2];g=G[a+44>>2];ka[G[a+80>>2]](G[a+4>>2],g,G[e+8>>2]-g|0);G[f>>2]=G[e+12>>2];if(G[e+12>>2]!=(d|0)){continue}break}break a}ka[G[a+80>>2]](G[a+4>>2],c,d-c|0)}ia=e+16|0}function gb(a,b){var c=0,d=0;d=a;a:{b:{if((d^b)&3){break b}if(b&3){while(1){c=H[b|0];E[d|0]=c;if(!c){break a}d=d+1|0;b=b+1|0;if(b&3){continue}break}}c=G[b>>2];if((c^-1)&c-16843009&-2139062144){break b}while(1){G[d>>2]=c;c=G[b+4>>2];d=d+4|0;b=b+4|0;if(!(c-16843009&(c^-1)&-2139062144)){continue}break}}c=H[b|0];E[d|0]=c;if(!c){break a}while(1){c=H[b+1|0];E[d+1|0]=c;d=d+1|0;b=b+1|0;if(c){continue}break}}return a}function eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{b=b+1|0;e=c-1|0;if((b|0)!=(e|0)){g=a+76|0;while(1){c=H[b|0];a=c<<24>>24;c=H[c+g|0]-9|0;b:{c:{if(c>>>0>26){break c}f=1<<c;if(f&132499443){break b}if(!(f&139264)){if((c|0)!=12){break c}if((a|0)!=9){break b}break a}if((a|0)>=0){break b}}if((a|0)==64){break b}if((a|0)!=36){break a}}b=b+1|0;if((e|0)!=(b|0)){continue}break}}return 1}G[d>>2]=b;return 0}function Pe(a,b){a=a|0;b=b|0;if(a&131072){Me(a&-131073,b);return}a:{switch(a|0){case 1:ka[G[13634]](9750,b)|0;return;case 2:ka[G[13634]](10931,b)|0;return;case 3:ka[G[13634]](8513,b)|0;return;case 4:ka[G[13634]](8615,b)|0;return;case 5:ka[G[13634]](8578,b)|0;return;case 6:ka[G[13634]](9689,b)|0;return;case 7:ka[G[13634]](9705,b)|0;return;default:Z(6674,5302,28,3096);W();case 0:break a}}ka[G[13634]](9723,b)|0}function Pb(a,b,c){var d=0,e=0;d=1;a:{b:{c:{d:{e:{f:{a=G[18005]+(a<<2)|0;switch(H[a|0]-1|0){case 2:break a;case 0:break b;case 4:break d;case 3:break e;case 1:break f;default:break c}}return G[a+4>>2]==(b|0)}e=G[a+8>>2];d=0;if(!Pb(G[a+4>>2],b,c)){break a}return!Pb(e,b,c)}e=G[a+8>>2];if(Pb(G[a+4>>2],b,c)){break a}return(Pb(e,b,c)|0)!=0}Z(6674,5296,184,4182);W()}d=G[a+4>>2]==(b|0)&G[a+8>>2]==(c|0)}return d}function Vg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=1;a=E[b+2|0];a:{if((a|0)>=0){break a}b:{c:{d:{c=H[b|0];if((c|0)==239){e=191;b=H[b+1|0];if((b|0)!=191){break d}b=191;if(a>>>0<=4294967229){break b}break a}if(a>>>0>4294967231){break a}b=H[b+1|0];if((c|0)!=224){break c}return(b- -64&255)>>>0<224|0}if(a>>>0>4294967231){break a}}if(!(b&128)){break a}e=b&255}d=(c|0)==237?(b&255)>>>0>159:(e&192)==192}return d|0}function jg(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=149;a:{b:{c:{d:{e:{switch(b-11|0){case 1:f=1;break b;case 0:f=55;break b;case 2:f=56;break b;case 5:if(!(ka[G[e+28>>2]](e,(G[e+68>>2]<<1)+c|0,d,18456)|0)){break d}f=3;g=150;break b;case 18:f=2;break c;case 3:break a;case 4:break b;default:break e}}if((b|0)!=28){break d}f=59;if(!G[a+16>>2]){break a}}f=-1}g=151}G[a>>2]=g}return f|0}function Sf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=39;a:{b:{c:{switch(b-15|0){case 3:if(ka[G[e+28>>2]](e,c,d,18602)|0){G[a+8>>2]=39;G[a>>2]=172;return 42}if(!(ka[G[e+28>>2]](e,c,d,18608)|0)){break b}G[a+8>>2]=39;G[a>>2]=172;return 41;case 8:G[a+4>>2]=1;G[a>>2]=175;return 44;case 0:break a;default:break c}}if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;f=-1}return f|0}function xe(a,b){a=a|0;b=b|0;ka[G[13633]](8146,0)|0;if(a&32768){Ne(a&-32769,b);return}a:{switch(a|0){case 1:ka[G[13634]](8644,b)|0;return;case 2:ka[G[13634]](10898,b)|0;return;case 3:ka[G[13634]](8682,b)|0;return;case 4:ka[G[13634]](9779,b)|0;return;case 5:ka[G[13634]](10683,b)|0;return;case 6:ka[G[13634]](10634,b)|0;return;default:Z(6674,5333,31,3123);W();case 0:break a}}ka[G[13634]](8720,b)|0}function dh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:{a=G[b>>2];if((c|0)==(a|0)){break a}while(1){f=G[d>>2];g=E[a|0];b:{if((g|0)<0){if((e-f|0)<2){break a}G[d>>2]=f+1;E[f|0]=(g&192)>>>6|192;a=G[d>>2];G[d>>2]=a+1;E[a|0]=g&63|128;a=G[b>>2]+1|0;G[b>>2]=a;break b}if((e|0)==(f|0)){break a}G[b>>2]=a+1;a=H[a|0];f=G[d>>2];G[d>>2]=f+1;E[f|0]=a;a=G[b>>2]}if((a|0)!=(c|0)){continue}break}}}function La(a,b,c){var d=0,e=0,f=0;if(!(H[a|0]&32)){a:{d=b;b=a;a=G[b+16>>2];b:{if(!a){if(Jd(b)){break b}a=G[b+16>>2]}f=G[b+20>>2];if(a-f>>>0<c>>>0){ka[G[b+36>>2]](b,d,c)|0;break a}c:{if(G[b+80>>2]<0){break c}a=c;while(1){e=a;if(!a){break c}a=e-1|0;if(H[d+a|0]!=10){continue}break}if(ka[G[b+36>>2]](b,d,e)>>>0<e>>>0){break b}d=d+e|0;c=c-e|0;f=G[b+20>>2]}Pa(f,d,c);G[b+20>>2]=G[b+20>>2]+c}}}}function eg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=7;f=154;h=3;a:{b:{c:{d:{switch(b-15|0){case 2:g=8;f=155;break b;case 3:g=3;f=156;if(ka[G[e+28>>2]](e,c,d,18464)|0){break b}f=157;if(!(ka[G[e+28>>2]](e,c,d,18471)|0)){break c}break b;case 0:break a;case 10:break b;default:break d}}if((b|0)!=28){break c}h=59;if(!G[a+16>>2]){break a}}g=-1;f=151}G[a>>2]=f;h=g}return h|0}function Gh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;a:{f=G[b>>2];if((f|0)==(c|0)){break a}i=a+76|0;j=a+376|0;g=G[d>>2];while(1){if((e|0)==(g|0)){break a}h=I[(H[f|0]<<1)+j>>1];b:{if(!h){h=ka[G[a+368>>2]](G[a+372>>2],f)|0;f=G[b>>2];f=(H[H[f|0]+i|0]+f|0)-3|0;break b}f=f+1|0}G[b>>2]=f;f=G[d>>2];g=f+2|0;G[d>>2]=g;F[f>>1]=h;f=G[b>>2];if((f|0)!=(c|0)){continue}break}}}function Vc(a){var b=0,c=0,d=0;b=G[18062];d=b+(a<<2)|0;a:{if((G[d>>2]&15)-1>>>0<2){break a}c=G[18098];b=b+(c<<2)|0;G[b>>2]=5;G[b+4>>2]=a;if(E[d+1|0]&1){G[b>>2]=261}a=va(72276,c);if((a|0)!=-1){break a}a=G[18098];wa(72276,a);d=G[18062];b=G[18098];b=G[((G[d+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;c=b+3|0;if((c|0)<=G[18061]){break a}c=c<<1;G[18061]=c;G[18062]=sa(d,c,b,4)}return a}function Uf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=11;a:{b:{c:{switch(b-15|0){case 3:if(ka[G[e+28>>2]](e,c,d,18464)|0){G[a>>2]=170;return 11}if(!(ka[G[e+28>>2]](e,c,d,18471)|0)){break b}G[a>>2]=171;return 11;case 12:G[a+8>>2]=11;G[a>>2]=172;return 12;case 0:break a;default:break c}}if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;f=-1}return f|0}function Qf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=11;a:{b:{c:{switch(b-15|0){case 3:if(ka[G[e+28>>2]](e,c,d,18464)|0){G[a>>2]=178;return 11}if(!(ka[G[e+28>>2]](e,c,d,18471)|0)){break b}G[a>>2]=179;return 11;case 12:G[a+8>>2]=11;G[a>>2]=172;return 12;case 0:break a;default:break c}}if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;f=-1}return f|0}function ig(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a:{b:{c:{switch(b-11|0){case 0:return 55;case 2:return 56;case 5:if(!(ka[G[e+28>>2]](e,(G[e+68>>2]<<1)+c|0,d,18456)|0)){break b}G[a>>2]=150;return 3;case 18:G[a>>2]=151;return 2;case 3:case 4:break a;default:break c}}if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;f=-1}return f|0}function md(a){var b=0,c=0,d=0,e=0;c=ia-16|0;ia=c;a:{b:{b=G[a+56>>2];d=G[(M(b,20)+a|0)+76>>2];if((d|0)!=9){if((d|0)!=42){break b}b=xa(G[(M(b,20)+a|0)+60>>2]);break a}b=G[(G[18028]+M(Sa(72112,-1),12)|0)+4>>2];break a}d=G[a+4>>2];b=M(b,20)+a|0;e=G[b+72>>2];G[c+4>>2]=G[b+68>>2];G[c+8>>2]=e;G[c+12>>2]=7803;G[c>>2]=d;ya(0,a,40,c);b=-1}ra(a);ia=c+16|0;return b}function $c(a){var b=0,c=0;a:{b:{c:{d:{e:{a=G[17996]+(a<<2)|0;switch(H[a|0]-1|0){case 0:case 8:case 10:break a;case 1:case 2:case 4:case 5:case 6:case 7:case 11:case 12:break b;case 3:break d;case 9:break e;default:break c}}Z(6946,5339,233,1566);W()}c=G[a+8>>2];b=1;if($c(G[a+4>>2])){break a}return($c(c)|0)!=0}Z(6674,5339,241,1566);W()}b=1}return b}function sf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=39;a:{b:{switch(b-15|0){case 8:G[a+4>>2]=G[a+4>>2]+1;return 44;case 3:case 26:G[a>>2]=192;return 51;case 15:G[a>>2]=192;return 53;case 16:G[a>>2]=192;return 52;case 17:G[a>>2]=192;return 54;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function Ic(a,b){var c=0;a:{if((a|0)<0){break a}if(a>>>0<=127){E[b|0]=a;return 1}if(a>>>0<=2047){E[b+1|0]=a&63|128;E[b|0]=a>>>6|192;return 2}if(a>>>0<=65535){E[b+2|0]=a&63|128;E[b|0]=a>>>12|224;E[b+1|0]=a>>>6&63|128;return 3}if(a>>>0>1114111){break a}E[b+3|0]=a&63|128;E[b|0]=a>>>18|240;E[b+2|0]=a>>>6&63|128;E[b+1|0]=a>>>12&63|128;c=4}return c}function Oe(a,b,c){var d=0;a:{b:{if(c){c=a+b|0;b=1;while(1){if((a|0)==(c|0)){break a}d=E[a|0];a=a+1|0;if(ta(d)){continue}break}a=G[17972];G[17969]=a;a=mb(a);G[17972]=a;if((a|0)!=G[18021]){break a}c=7;a=G[17969];break b}c=G[17972];G[17969]=c;a=Wd(c,a,b);G[17972]=a;b=1;if((a|0)!=G[18021]){break a}c=6;a=G[17969]}G[17972]=a;b=0;vb(c,0)}return b}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=ia-16|0;ia=d;a=Wc(a);a:{if(G[18093]|G[18094]==(a|0)){break a}c=b+c|0;while(1){if((b|0)==(c|0)){f=G[G[18062]+(a<<2)>>2]&256;break a}b=Ca(d+12|0,b)+b|0;b:{if(!ta(G[d+12>>2])){e=G[d+12>>2];break b}G[d+12>>2]=32;e=32}a=hb(a,e);if((a|0)!=G[18094]){continue}break}}ia=d+16|0;return f|0}function kg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:{a=G[b>>2];f=G[d>>2];if((c-a|0)>(e-f|0)){g=c-2|0;c=(H[g|0]&248)==216?g:c}if((a|0)==(c|0)|(e|0)==(f|0)){break a}while(1){a=H[a|0]|H[a+1|0]<<8;G[d>>2]=f+2;F[f>>1]=a<<8|a>>>8;a=G[b>>2]+2|0;G[b>>2]=a;if((a|0)==(c|0)){break a}f=G[d>>2];if((f|0)!=(e|0)){continue}break}}}function Zc(a){var b=0,c=0,d=0,e=0;d=G[17996];while(1){c=(a<<2)+d|0;b=H[c|0];if(b-7>>>0>=2){a:{if(b>>>0>13){break a}c=1<<b;b:{if(c&2566){break b}e=1;if(c&12328){break b}if(!(1<<b&1104)){break a}a=(a<<2)+d|0;b=G[a+8>>2];if(Zc(G[a+4>>2])){break b}e=(Zc(b)|0)!=0}return e}}else{a=G[c+4>>2];continue}break}Z(6674,5339,291,1476);W()}function ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{c=G[18062];a=c+(a<<2)|0;d=G[a>>2]&15;b=(b<<2)+c|0;b:{if((d|0)!=(G[b>>2]&15)){break b}c:{switch(G[(d<<2)+11392>>2]-1|0){case 2:if(G[a+8>>2]!=G[b+8>>2]){break b}case 1:if(G[a+4>>2]!=G[b+4>>2]){break b}break;case 0:break c;default:break a}}e=1}return e|0}Z(6674,5285,153,3387);W()}function Yc(a){var b=0,c=0,d=0,e=0;e=G[17996];while(1){c=(a<<2)+e|0;b=H[c|0];if(b-7>>>0>=2){a:{b:{if(b>>>0<=13){c=1<<b;if(c&2574){break a}if(c&1136){break b}d=1;if(1<<b&12288){break a}}Z(6674,5339,316,4278);W()}a=(a<<2)+e|0;b=G[a+8>>2];d=1;if(Yc(G[a+4>>2])){break a}d=(Yc(b)|0)!=0}}else{a=G[c+4>>2];continue}break}return d}function Rf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=17;a:{b:{c:{d:{switch(b-15|0){case 3:b=176;if(ka[G[e+28>>2]](e,c,d,18464)|0){break b}b=177;if(!(ka[G[e+28>>2]](e,c,d,18471)|0)){break c}break b;case 0:break a;default:break d}}if((b|0)!=28){break c}f=59;if(!G[a+16>>2]){break a}}f=-1;b=151}G[a>>2]=b}return f|0}function rb(a,b,c,d){var e=0,f=0;if((b|0)>0){f=b<<1;b=1;while(1){e=b;b=b<<1;if((f|0)>(b|0)){continue}break}G[a+8>>2]=b;G[a+16>>2]=(b|0)/2;b=0;e=za(e<<2,4);G[a+12>>2]=0;G[a+4>>2]=d;G[a>>2]=c;G[a+20>>2]=e;if(G[a+8>>2]){while(1){G[e+(b<<2)>>2]=-1;b=b+1|0;if((b|0)!=G[a+8>>2]){continue}break}}return}Z(6663,5308,11,1732);W()}function Nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ia-16|0;ia=e;G[e+8>>2]=b;b=pe(a,G[a+144>>2],e+8|0,c,d,!H[a+484|0]);a:{if(b){break a}b=G[e+8>>2];if(!b){b=0;break a}G[a+280>>2]=62;G[e+12>>2]=b;f=G[a+144>>2];f=ka[G[f>>2]](f,b,c,e+12|0)|0;b=Rb(a,G[a+144>>2],b,c,f,G[e+12>>2],d,!H[a+484|0])}ia=e+16|0;return b|0}function If(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a:{b:{c:{d:{switch(b-15|0){case 3:b=182;if(ka[G[e+28>>2]](e,c,d,18510)|0){break b}b=183;if(!(ka[G[e+28>>2]](e,c,d,18518)|0)){break c}break b;case 0:break a;default:break d}}if((b|0)!=28){break c}f=59;if(!G[a+16>>2]){break a}}f=-1;b=151}G[a>>2]=b}return f|0}function Dg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a:{a=G[b>>2];f=G[d>>2];c=(c-a|0)>(e-f|0)?((H[c-1|0]&248)==216?-2:0)+c|0:c;if((a|0)==(c|0)|(e|0)==(f|0)){break a}while(1){a=H[a|0]|H[a+1|0]<<8;G[d>>2]=f+2;F[f>>1]=a;a=G[b>>2]+2|0;G[b>>2]=a;if((a|0)==(c|0)){break a}f=G[d>>2];if((f|0)!=(e|0)){continue}break}}}function Qh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=ia-16|0;ia=f;a:{if(!(ka[(H[a+236|0]?60:61)|0](a+148|0,a+144|0,G[a+232>>2])|0)){e=te(a,G[a+232>>2]);if(e){break a}}G[a+280>>2]=62;G[f+12>>2]=b;e=G[a+144>>2];e=ka[G[e>>2]](e,b,c,f+12|0)|0;e=Rb(a,G[a+144>>2],b,c,e,G[f+12>>2],d,!H[a+484|0])}ia=f+16|0;return e|0}function sc(a,b){var c=0,d=0;c=G[18098];d=G[18062]+(c<<2)|0;G[d>>2]=6;G[d+8>>2]=b;G[d+4>>2]=a;a=va(72276,c);a:{if((a|0)!=-1){break a}a=G[18098];wa(72276,a);d=G[18062];b=G[18098];b=G[((G[d+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;c=b+3|0;if((c|0)<=G[18061]){break a}c=c<<1;G[18061]=c;G[18062]=sa(d,c,b,4)}return a}function Ze(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{c=G[17996];a=c+(a<<2)|0;d=H[a|0];b=(b<<2)+c|0;b:{if((d|0)!=H[b|0]){break b}c:{switch(G[(d<<2)+11056>>2]-1|0){case 2:if(G[a+8>>2]!=G[b+8>>2]){break b}case 1:if(G[a+4>>2]!=G[b+4>>2]){break b}break;case 0:break c;default:break a}}e=1}return e|0}Z(6674,5313,354,3387);W()}function Xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:{c=G[18005];a=c+(a<<2)|0;d=H[a|0];b=(b<<2)+c|0;b:{if((d|0)!=H[b|0]){break b}c:{switch(G[(d<<2)+11120>>2]-1|0){case 2:if(G[a+8>>2]!=G[b+8>>2]){break b}case 1:if(G[a+4>>2]!=G[b+4>>2]){break b}break;case 0:break c;default:break a}}e=1}return e|0}Z(6674,5313,366,5187);W()}function Ff(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=11;a:{b:{c:{d:{switch(b-15|0){case 2:f=15;b=G[a+16>>2]?154:174;break b;case 3:if(!(ka[G[e+28>>2]](e,c,d,18525)|0)){break c}b=184;break b;case 0:break a;default:break d}}if((b|0)!=28){break c}f=59;if(!G[a+16>>2]){break a}}f=-1;b=151}G[a>>2]=b}return f|0}function ud(){var a=0,b=0,c=0,d=0;b=G[17988];a=G[17996]+(b<<2)|0;G[a>>2]=14;G[a+4>>2]=0;b=va(71960,b);a:{if((b|0)!=-1){break a}b=G[17988];wa(71960,b);d=G[17996];a=G[17988];a=G[(H[d+(a<<2)|0]<<2)+11056>>2]+a|0;G[17988]=a;c=a+3|0;if((c|0)<=G[18008]){break a}c=c<<1;G[18008]=c;G[17996]=sa(d,c,a,4)}return Ka(71960,b)}function vd(a,b){var c=0,d=0;c=G[17988];d=G[17996]+(c<<2)|0;G[d>>2]=523;G[d+8>>2]=b;G[d+4>>2]=a;a=va(71960,c);a:{if((a|0)!=-1){break a}a=G[17988];wa(71960,a);d=G[17996];b=G[17988];b=G[(H[d+(b<<2)|0]<<2)+11056>>2]+b|0;G[17988]=b;c=b+3|0;if((c|0)<=G[18008]){break a}c=c<<1;G[18008]=c;G[17996]=sa(d,c,b,4)}return a}function sd(a,b){var c=0,d=0;c=G[18006];d=G[18005]+(c<<2)|0;G[d>>2]=1;G[d+8>>2]=b;G[d+4>>2]=a;a=va(72048,c);a:{if((a|0)!=-1){break a}a=G[18006];wa(72048,a);d=G[18005];b=G[18006];b=G[(H[d+(b<<2)|0]<<2)+11120>>2]+b|0;G[18006]=b;c=b+3|0;if((c|0)<=G[18009]){break a}c=c<<1;G[18009]=c;G[18005]=sa(d,c,b,4)}return a}function fc(a,b){var c=0,d=0;c=G[18006];d=G[18005]+(c<<2)|0;G[d>>2]=6;G[d+8>>2]=b;G[d+4>>2]=a;a=va(72048,c);a:{if((a|0)!=-1){break a}a=G[18006];wa(72048,a);d=G[18005];b=G[18006];b=G[(H[d+(b<<2)|0]<<2)+11120>>2]+b|0;G[18006]=b;c=b+3|0;if((c|0)<=G[18009]){break a}c=c<<1;G[18009]=c;G[18005]=sa(d,c,b,4)}return a}function bb(a,b,c){var d=0,e=0;a:{e=G[17996];d=H[e+(b<<2)|0];if(d>>>0>15){break a}b:{if(!(1<<d&16366)){if((d|0)==4){break b}if((d|0)!=15){break a}b=(b<<2)+e|0;return xb(G[b+4>>2],ka[a|0](G[b+8>>2],c)|0)}return G[18021]}b=(b<<2)+e|0;d=G[b+8>>2];return Ha(bb(a,G[b+4>>2],c),bb(a,d,c))}Z(6674,5296,199,3005);W()}function uc(a){var b=0,c=0,d=0;b=G[18098];c=G[18062]+(b<<2)|0;G[c>>2]=10;G[c+4>>2]=a;a=va(72276,b);a:{if((a|0)!=-1){break a}a=G[18098];wa(72276,a);c=G[18062];b=G[18098];b=G[((G[c+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;d=b+3|0;if((d|0)<=G[18061]){break a}d=d<<1;G[18061]=d;G[18062]=sa(c,d,b,4)}return a}function tc(a){var b=0,c=0,d=0;b=G[18098];c=G[18062]+(b<<2)|0;G[c>>2]=8;G[c+4>>2]=a;a=va(72276,b);a:{if((a|0)!=-1){break a}a=G[18098];wa(72276,a);c=G[18062];b=G[18098];b=G[((G[c+(b<<2)>>2]&15)<<2)+11392>>2]+b|0;G[18098]=b;d=b+3|0;if((d|0)<=G[18061]){break a}d=d<<1;G[18061]=d;G[18062]=sa(c,d,b,4)}return a}function fg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a:{b:{c:{switch(b+4|0){case 37:G[a>>2]=153;return 0;case 38:b=G[a+12>>2];if(!b){break b}G[a+12>>2]=b-1;return 0;default:return Rd(a,b,c,d,e)|0;case 19:break a;case 30:break b;case 0:break c}}if(!G[a+12>>2]){break a}}G[a>>2]=151;f=-1}return f|0}function Dc(a){var b=0;b=1;a:{if((a|0)>=1024){b=8.98846567431158e307;if(a>>>0<2047){a=a-1023|0;break a}b=Y;a=((a|0)<3069?a:3069)-2046|0;break a}if((a|0)>-1023){break a}b=2.004168360008973e-292;if(a>>>0>4294965304){a=a+969|0;break a}b=0;a=((a|0)>-2960?a:-2960)+1938|0}x(0,0);x(1,a+1023<<20);return b*+z()}function kd(a,b){var c=0,d=0,e=0,f=0,g=0;c=ia-32|0;ia=c;d=M(G[a+56>>2],20)+a|0;f=G[d+76>>2];e=f-22|0;a:{if(e>>>0>=3){e=G[d+72>>2];d=G[d+68>>2];g=G[a+4>>2];G[c+16>>2]=eb(f);G[c+12>>2]=4853;G[c+4>>2]=d;G[c+8>>2]=e;G[c>>2]=g;ya(0,a,40,c);d=0;break a}d=G[(e<<2)+11336>>2]}ra(a);dd(a,b,wb(a),d);ia=c+32|0}function tf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=39;a:{b:{switch(b-15|0){case 9:G[a+8>>2]=39;G[a>>2]=172;return 45;case 21:G[a+8>>2]=39;G[a>>2]=172;return 46;case 6:G[a>>2]=195;return 39;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function Za(a,b){var c=0,d=0,e=0,f=0;d=ia-16|0;ia=d;a:{if(!b){b=0;break a}c=b>>31;e=(c^b)-c|0;c=P(e);Ra(d,e,0,0,0,c+81|0);e=0+G[d+8>>2]|0;c=(G[d+12>>2]^65536)+(16414-c<<16)|0;c=e>>>0<f>>>0?c+1|0:c;f=b&-2147483648|c;c=G[d+4>>2];b=G[d>>2]}G[a>>2]=b;G[a+4>>2]=c;G[a+8>>2]=e;G[a+12>>2]=f;ia=d+16|0}function Ue(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(G[17972]!=G[18021]){a=G[17963];e=G[17970];f=e+c|0;d=f+1|0;g=G[17962];d=(d|0)>(g|0)?d:g;d=(f|0)<16384?(g|0)>16384?16384:d:d;if((d|0)!=(g|0)){G[17962]=d;a=sa(a,d,e,1);G[17963]=a;e=G[17970];f=e+c|0}Pa(a+e|0,b,c);G[17970]=f;E[a+f|0]=0}}function Wb(a){var b=0,c=0,d=0,e=0;while(1){b=a;a=b+1|0;if(Gc(E[b|0])){continue}break}a:{b:{c:{c=E[b|0];switch(c-43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=E[a|0];b=a}if(Eb(c)){while(1){d=(M(d,10)-E[b|0]|0)+48|0;a=E[b+1|0];b=b+1|0;if(Eb(a)){continue}break}}return e?d:0-d|0}function _e(a){a=a|0;var b=0;a:{b:{c:{d:{e:{a=G[17996]+(a<<2)|0;b=H[a|0];switch(G[(b<<2)+11056>>2]-1|0){case 0:break b;case 2:break d;case 1:break e;default:break c}}a=b&15|G[a+4>>2]<<4;break a}a=b&15|(G[a+8>>2]^G[a+4>>2])<<4;break a}Z(6674,5313,329,3413);W()}a=b&15}return M(a,1021)|0}function ua(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!H[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=G[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=H[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function Ye(a){a=a|0;var b=0;a:{b:{c:{d:{e:{a=G[18005]+(a<<2)|0;b=H[a|0];switch(G[(b<<2)+11120>>2]-1|0){case 0:break b;case 2:break d;case 1:break e;default:break c}}a=b&7|G[a+4>>2]<<3;break a}a=b&7|(G[a+8>>2]^G[a+4>>2])<<3;break a}Z(6674,5313,340,5196);W()}a=b&7}return M(a,251)|0}function xa(a){var b=0,c=0,d=0,e=0;if(!H[71988]){d=G[18011];b=G[18004];e=ua(a)+1|0;c=b+e|0;if((c|0)>G[18010]){c=c<<1;G[18010]=c;d=sa(d,c,b,1);G[18011]=d;b=G[18004]}gb(b+d|0,a);b=va(71992,b);if((b|0)==-1){b=G[18004];wa(71992,b);G[18004]=G[18004]+e}return b}Z(2077,5313,95,4112);W()}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ia-16|0;ia=d;a=Wc(a);a:{if(G[18093]|G[18094]==(a|0)){break a}c=b+c|0;while(1){if((b|0)==(c|0)){e=G[G[18062]+(a<<2)>>2]&256;break a}b=Ca(d+12|0,b)+b|0;a=hb(a,G[d+12>>2]);if((a|0)!=G[18094]){continue}break}}ia=d+16|0;return e|0}function Tf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=22;e=173;d=33;a:{b:{c:{switch(b-15|0){case 2:e=G[a+16>>2]?154:174;c=33;break b;case 0:break a;case 3:case 26:break b;default:break c}}c=-1;e=151;if((b|0)!=28){break b}d=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;d=c}return d|0}function Kh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=ia-16|0;ia=e;G[e+12>>2]=b;b=je(a,G[a+144>>2],e+12|0,c,d,!H[a+484|0]);a:{if(b){break a}b=G[e+12>>2];if(!b){b=0;break a}if(G[a+476>>2]){G[a+280>>2]=73;b=ie(a,b,c,d);break a}G[a+280>>2]=66;b=re(a,b,c,d)}ia=e+16|0;return b|0}function ad(a){var b=0,c=0,d=0,e=0;a:{b:{c:{d=G[17996];b=H[d+(a<<2)|0];if(b>>>0>13){break c}e=1<<b;c=1;if(e&8172){break a}if(e&8194){break b}if((b|0)!=4){break c}a=(a<<2)+d|0;b=G[a+8>>2];c=1;if(ad(G[a+4>>2])){break a}return(ad(b)|0)!=0}Z(6674,5339,220,1556);W()}c=0}return c}function va(a,b){var c=0,d=0,e=0;c=ka[G[a>>2]](b)|0;e=-1;c=c&G[a+8>>2]-1;d=G[G[a+20>>2]+(c<<2)>>2];a:{if((d|0)==-1){break a}while(1){e=d;if(ka[G[a+4>>2]](b,d)|0){break a}e=-1;d=G[a+20>>2];if(!c){c=G[a+8>>2]}c=c-1|0;d=G[(c<<2)+d>>2];if((d|0)!=-1){continue}break}}return e}function Ba(a){var b=0,c=0,d=0,e=0,f=0;d=ia-16|0;ia=d;while(1){b=c;c=b+1|0;e=a+b|0;if(H[e|0]){continue}break}a:{if(!b){c=0;break a}while(1){c=-1;b=Ca(d+12|0,a);if(!b){break a}a=a+b|0;if(e>>>0<a>>>0){break a}f=f+1|0;c=f;if((a|0)!=(e|0)){continue}break}}ia=d+16|0;return c}function nf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=17;a:{b:{switch(b-15|0){case 12:G[a+8>>2]=17;G[a>>2]=172;return 19;case 2:G[a>>2]=G[a+16>>2]?154:174;return 20;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function Jb(a,b){var c=0,d=0,e=0,f=0;c=ia-16|0;ia=c;a:{if(!b){b=0;break a}d=b;b=P(b);Ra(c,d,0,0,0,b+81|0);e=16414-b<<16;b=0;d=b+G[c+8>>2]|0;e=e+(G[c+12>>2]^65536)|0;e=b>>>0>d>>>0?e+1|0:e;f=d;d=G[c>>2];b=G[c+4>>2]}G[a>>2]=d;G[a+4>>2]=b;G[a+8>>2]=f;G[a+12>>2]=e;ia=c+16|0}function Xb(){var a=0,b=0;a:{if((va(71920,G[17987])|0)!=-1){if(!G[17974]){break a}Kd(71920,G[17987])}a=G[17987];G[17987]=a+1;wa(71920,a);a=G[17987];if(!(!G[17974]|(a|0)!=32768)){G[17987]=0;a=0}if(G[17976]!=(a|0)){break a}b=a<<1;G[17976]=b;G[17977]=sa(G[17977],b,a,20)}}function Ug(a,b){a=a|0;b=b|0;var c=0;c=1;a=H[b+3|0];a:{if(!(a&128)|(a&192)==192){break a}a=H[b+2|0];if(!(a&128)|(a&192)==192){break a}a=H[b+1|0];b=H[b|0];if((b|0)==240){return(a- -64&255)>>>0<208|0}if(!(a&128)){break a}c=(b|0)==244?a>>>0>143:(a&192)==192}return c|0}function fi(a){a=a|0;var b=0;a:{b:{c:{d:{b=G[18062]+(a<<2)|0;a=G[b>>2]&15;switch(G[(a<<2)+11392>>2]-1|0){case 0:break a;case 1:break b;case 2:break d;default:break c}}a=(G[b+8>>2]^G[b+4>>2])<<4|a;break a}Z(6674,5285,163,3413);W()}a=G[b+4>>2]<<4|a}return M(a,251)|0}function Lb(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=li(a,b,10);f=ja;e=ki(d,f,10,0);c=c-1|0;E[c|0]=a-e|48;e=b>>>0>9;a=d;b=f;if(e){continue}break}}if(d){while(1){c=c-1|0;a=(d>>>0)/10|0;E[c|0]=d-M(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function Qa(a,b,c,d){var e=0,f=0;e=G[a>>2];if(G[(e+M(G[a+8>>2],12)|0)+4>>2]!=-2){f=M(G[a+12>>2],12)+e|0;G[f+8>>2]=d;G[f+4>>2]=c;G[f>>2]=b;b=G[a+12>>2]+1|0;G[a+12>>2]=b;if((b|0)==G[a+4>>2]){c=b<<1;G[a+4>>2]=c;G[a>>2]=sa(e,c,b,12)}return}Z(6818,5345,57,5174);W()}function qf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=39;a:{b:{switch(b-15|0){case 21:G[a+8>>2]=39;G[a>>2]=172;return 46;case 6:G[a>>2]=195;return 39;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function dg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=0;a:{b:{switch(mi(b-11|0,31)|0){case 0:return 55;case 1:return 56;case 9:G[a>>2]=151;return 2;case 2:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function ag(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=164;c=11;d=11;a:{b:{c:{switch(b-15|0){case 3:c=9;e=165;break b;case 0:break a;case 7:break b;default:break c}}c=-1;e=151;if((b|0)!=28){break b}d=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;d=c}return d|0}function Xf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=7;e=154;d=3;a:{b:{c:{switch(b-15|0){case 2:c=8;e=155;break b;case 0:break a;case 10:break b;default:break c}}c=-1;e=151;if((b|0)!=28){break b}d=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;d=c}return d|0}function ch(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:{a=G[b>>2];if((c|0)==(a|0)){break a}f=G[d>>2];while(1){if((e|0)==(f|0)){break a}G[b>>2]=a+1;a=H[a|0];g=G[d>>2];f=g+2|0;G[d>>2]=f;F[g>>1]=a;a=G[b>>2];if((c|0)!=(a|0)){continue}break}}}function xf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=186;d=33;c=33;a:{b:{c:{switch(b-15|0){case 6:e=185;break b;case 0:break a;case 9:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function wf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=186;d=33;c=33;a:{b:{c:{switch(b-15|0){case 6:e=190;break b;case 0:break a;case 9:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Id(a,b){var c=0,d=0,e=0;A(+a);d=v(1)|0;e=v(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=Id(a*0x10000000000000000,b);c=G[b>>2]+-64|0}G[b>>2]=c;return a}G[b>>2]=c-1022;x(0,e|0);x(1,d&-2146435073|1071644672);a=+z()}return a}function Jf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=11;a:{b:{c:{switch(b-15|0){case 2:e=G[a+16>>2]?154:174;d=15;break b;case 0:break a;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Cf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=31;e=188;c=33;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:case 4:case 26:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=G[17977];d=c+M(a,20)|0;e=M(b,20)+c|0;a:{if(G[d>>2]!=G[e>>2]|G[d+4>>2]!=G[e+4>>2]){break a}a=M(a,20)+c|0;b=M(b,20)+c|0;if(G[a+8>>2]!=G[b+8>>2]){break a}f=G[a+12>>2]==G[b+12>>2]}return f|0}function Nf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a:{switch(b-15|0){case 0:return G[a+8>>2];case 2:G[a>>2]=G[a+16>>2]?154:174;return G[a+8>>2];default:break a}}b:{if((b|0)==28){b=59;if(!G[a+16>>2]){break b}}G[a>>2]=151;b=-1}return b|0}function rf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=51;e=196;c=39;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:case 26:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function _f(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=40;e=167;c=39;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:case 26:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function $f(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=34;e=166;c=33;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:case 26:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Hf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=0;a:{b:{switch(b-15|0){case 10:G[a>>2]=174;G[a+12>>2]=G[a+12>>2]+1;return 0;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function hg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=4;e=152;c=3;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:case 26:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Jh(a,b){a=a|0;b=b|0;var c=0;c=1;a=ka[G[a+368>>2]](G[a+372>>2],b)|0;a:{if(a>>>0>65535){break a}b=a>>>8|0;if(b-216>>>0<8){break a}b:{if((b|0)!=255){if(H[a+11928|0]|b){break b}break a}if((a&-2)==65534){break a}}c=0}return c|0}function Cg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a:{a=G[b>>2];if((c|0)==(a|0)){break a}while(1){if(G[d>>2]==(e|0)){break a}G[b>>2]=a+1;a=H[a|0];f=G[d>>2];G[d>>2]=f+1;E[f|0]=a;a=G[b>>2];if((c|0)!=(a|0)){continue}break}}}function yf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=32;e=191;c=33;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Wf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=10;e=169;c=11;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Gf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=58;e=174;c=0;a:{b:{c:{switch(b-15|0){case 0:break a;case 10:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Af(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=190;d=33;c=33;a:{b:{c:{switch(b-15|0){case 0:break a;case 8:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Zf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=168;c=17;a:{b:{c:{switch(b-15|0){case 0:break a;case 3:break b;default:break c}}c=(b|0)!=28;b=-1;d=151;if(c){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=d;c=b}return c|0}function Yf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=8;e=155;c=3;a:{b:{c:{switch(b-15|0){case 0:break a;case 2:break b;default:break c}}d=-1;e=151;if((b|0)!=28){break b}c=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;c=d}return c|0}function Ef(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=11;a:{b:{switch(b-15|0){case 3:G[a+8>>2]=11;G[a>>2]=172;return 16;case 0:break a;default:break b}}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function Gd(a){var b=0,c=0,d=0;if(!Eb(E[G[a>>2]])){return 0}while(1){d=G[a>>2];b=-1;if(c>>>0<=214748364){b=E[d|0]-48|0;c=M(c,10);b=(2147483647-c|0)<(b|0)?-1:b+c|0}G[a>>2]=d+1;c=b;if(Eb(E[d+1|0])){continue}break}return b}function zf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=38;e=166;c=b-15|0;f=33;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function of(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=21;e=197;c=b-15|0;f=17;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}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;d=13;e=180;c=b-15|0;f=11;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function Of(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=14;e=170;c=b-15|0;f=11;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function Mf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=13;e=181;c=b-15|0;f=11;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function Lf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=14;e=178;c=b-15|0;f=11;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function ki(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=M(e,f);g=c&65535;h=a&65535;i=M(g,h);f=(i>>>16|0)+M(f,g)|0;e=(f&65535)+M(e,h)|0;ja=(M(b,c)+j|0)+M(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function cg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=5;e=163;c=b-15|0;f=3;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function bg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;d=6;e=156;c=b-15|0;f=3;a:{if(!c){break a}b:{if((c|0)==12){break b}d=-1;e=151;if((b|0)!=28){break b}f=59;if(!G[a+16>>2]){break a}}G[a>>2]=e;f=d}return f|0}function De(a,b,c){var d=0,e=0,f=0;if(c){f=b+c|0;c=a+c|0;while(1){d=E[b|0];e=H[a|0];if(!e){return 0-d|0}if((d&255)!=(e|0)){return(e<<24>>24)-d|0}a=a+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}a=c}return E[a|0]}function pa(a,b,c){var d=0,e=0,f=0;if((c|0)>0){c=c-1|0;while(1){d=(c+e|0)/2|0;f=(d<<3)+b|0;a:{if(G[f>>2]>(a|0)){c=d-1|0;break a}if(G[f+4>>2]>=(a|0)){return 1}e=d+1|0}if((c|0)>=(e|0)){continue}break}}return 0}function pf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=b-15|0;c=17;a:{if(!d){break a}if((d|0)==12){G[a+8>>2]=17;G[a>>2]=172;return 19}if((b|0)==28){c=59;if(!G[a+16>>2]){break a}}G[a>>2]=151;c=-1}return c|0}function fd(a){var b=0;b=ed(a);a:{switch(G[(M(G[a+56>>2],20)+a|0)+76>>2]-28|0){case 0:ra(a);return Ha(b,G[18019]);case 1:ra(a);return Ha(zc(b),G[18019]);case 2:ra(a);b=zc(b);break;default:break a}}return b}function Oa(a,b,c,d,e){var f=0;f=ia-256|0;ia=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;Ob(f,b&255,d?c:256);if(!d){while(1){La(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}La(a,f,c)}ia=f+256|0}function tg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[d|0];a:{if(a){while(1){if(H[b|0]|(b|0)==(c|0)|H[b+1|0]!=(a|0)){break a}b=b+2|0;a=H[d+1|0];d=d+1|0;if(a){continue}break}}e=(b|0)==(c|0)}return e|0}function Mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[d|0];a:{if(a){while(1){if(H[b+1|0]|(b|0)==(c|0)|H[b|0]!=(a|0)){break a}b=b+2|0;a=H[d+1|0];d=d+1|0;if(a){continue}break}}e=(b|0)==(c|0)}return e|0}function rg(a,b){a=a|0;b=b|0;var c=0;if(H[b|0]){return b|0}a=a+76|0;while(1){c=H[a+H[b+1|0]|0];if(c>>>0>21){return b|0}if(!(1<<c&2098688)){return b|0}c=H[b+2|0];b=b+2|0;if(!c){continue}break}return b|0}function Kg(a,b){a=a|0;b=b|0;var c=0;if(H[b+1|0]){return b|0}a=a+76|0;while(1){c=H[a+H[b|0]|0];if(c>>>0>21){return b|0}if(!(1<<c&2098688)){return b|0}c=H[b+3|0];b=b+2|0;if(!c){continue}break}return b|0}function _a(a,b){var c=0;c=7;a:{b:{switch(a+40|0){case 4:case 5:case 6:case 7:return 8;case 39:c=0;if(b>>>0>4294967293){break a}break;case 0:case 1:case 2:case 3:break a;default:break b}}c=29}return c}function Oh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ia-16|0;ia=e;G[e+12>>2]=b;f=G[a+144>>2];f=ka[G[f>>2]](f,b,c,e+12|0)|0;a=Rb(a,G[a+144>>2],b,c,f,G[e+12>>2],d,!H[a+484|0]);ia=e+16|0;return a|0}function ue(a,b,c){var d=0,e=0;d=G[17986];if((d|0)==G[17978]){e=d<<1;G[17978]=e;G[17979]=sa(G[17979],e,d,12)}d=xa(a);e=G[17986];a=G[17979]+M(e,12)|0;G[a+8>>2]=c;G[a+4>>2]=b;G[a>>2]=d;G[17986]=e+1}function lh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[d|0];a:{if(a){while(1){if((b|0)==(c|0)|H[b|0]!=(a|0)){break a}b=b+1|0;a=H[d+1|0];d=d+1|0;if(a){continue}break}}e=(b|0)==(c|0)}return e|0}function kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+76|0;a=b;while(1){c=H[H[a|0]+e|0]-5|0;d=c&255;if(!(d>>>0>=25|!(25034759>>>d&1))){a=G[(c<<24>>24<<2)+18156>>2]+a|0;continue}break}return a-b|0}function Ie(a){var b=0,c=0,d=0,e=0;b=ia-16|0;ia=b;c=G[18093];if(!c){d=G[18066]+G[18103]|0;e=Ba(d);c=Ba(G[18066]+G[18102]|0);G[b>>2]=d;G[b+4>>2]=e-c;Ma(a,b);c=G[18093]}G[18093]=c+1;ia=b+16|0}function Jd(a){var b=0;b=G[a+72>>2];G[a+72>>2]=b-1|b;b=G[a>>2];if(b&8){G[a>>2]=b|32;return-1}G[a+4>>2]=0;G[a+8>>2]=0;b=G[a+44>>2];G[a+28>>2]=b;G[a+20>>2]=b;G[a+16>>2]=b+G[a+48>>2];return 0}function Bc(a,b,c,d,e,f,g,h,i){var j=0;j=ia-16|0;ia=j;Wa(j,b,c,d,e,f,g,h,i^-2147483648);d=G[j>>2];c=G[j+4>>2];b=G[j+12>>2];G[a+8>>2]=G[j+8>>2];G[a+12>>2]=b;G[a>>2]=d;G[a+4>>2]=c;ia=j+16|0}function hc(a,b){var c=0,d=0;c=H[a|0];d=H[b|0];a:{if(!c|(d|0)!=(c|0)){break a}while(1){d=H[b+1|0];c=H[a+1|0];if(!c){break a}b=b+1|0;a=a+1|0;if((c|0)==(d|0)){continue}break}}return c-d|0}function Va(a){var b=0,c=0,d=0;b=G[a+12>>2];G[a+8>>2]=b;G[a+12>>2]=b+1;c=G[a>>2];G[(c+M(b,12)|0)+4>>2]=-1;b=G[a+12>>2];if((b|0)==G[a+4>>2]){d=M(b,b)<<1;G[a+4>>2]=d;G[a>>2]=sa(c,d,b,12)}}function Zb(a){var b=0,c=0,d=0;G[a+4>>2]=64;c=za(64,12);G[a>>2]=c;G[a+8>>2]=0;G[a+12>>2]=1;G[c+4>>2]=-1;b=G[a+12>>2];if((b|0)==G[a+4>>2]){d=M(b,b)<<1;G[a+4>>2]=d;G[a>>2]=sa(c,d,b,12)}}function rd(a){var b=0,c=0,d=0,e=0;d=G[18011];c=G[18004];e=ua(a)+1|0;b=c+e|0;if((b|0)>G[18010]){b=b<<1;G[18010]=b;d=sa(d,b,c,1);G[18011]=d;c=G[18004];b=e+c|0}gb(d+c|0,a);G[18004]=b}function Ge(a,b){var c=0,d=0,e=0;d=G[18062];e=d+(a<<2)|0;a:{if((G[e>>2]&15)==3){c=1;if(G[e+8>>2]==(b|0)){break a}return(Ge(G[((a<<2)+d|0)+4>>2],b)|0)!=0}c=(a|0)==(b|0)}return c}function Bb(a){var b=0,c=0;b=G[17952];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>la()<<16>>>0){if(!(ca(a|0)|0)){break a}}G[17952]=a;return b}G[18106]=48;return-1}function td(a,b){var c=0,d=0,e=0;d=G[17996];e=d+(a<<2)|0;a:{if(H[e|0]==4){c=1;if(G[e+8>>2]==(b|0)){break a}return(td(G[((a<<2)+d|0)+4>>2],b)|0)!=0}c=(a|0)==(b|0)}return c}function Sh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=fc(0,a-G[18011]|0);if((a|0)==G[18022]){return!De(b,c,d)|0}if((a|0)==G[18023]){return!Ga(b,c,d)|0}Z(6674,5296,128,3849);W()}function jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=ia-16|0;ia=e;a=Kb(ha(G[a+60>>2],b|0,c|0,d&255,e+8|0)|0);ia=e+16|0;ja=a?-1:G[e+12>>2];return(a?-1:G[e+8>>2])|0}function Sa(a,b){var c=0,d=0;c=G[a+12>>2];d=G[a>>2];G[d+M(G[a+8>>2],12)>>2]=b;while(1){c=c-1|0;if(G[M(c,12)+d>>2]!=(b|0)){continue}break}return G[a+8>>2]==(c|0)?0:c}function ya(a,b,c,d){var e=0;e=ia-16|0;ia=e;if(!(!a&G[b+28>>2]==G[b+36>>2])){G[e+12>>2]=d;ka[G[13635]](c,d);G[b+36>>2]=G[b+28>>2]}G[b>>2]=G[b>>2]|4;ia=e+16|0}function _g(a,b){a=a|0;b=b|0;var c=0,d=0;a=H[b+2|0];c=1<<a;d=a>>>5&1;a=H[b+1|0];return c&G[((d|(H[(a>>>2&15|H[b|0]<<4&240)+14496|0]<<3|a<<1&6))<<2)+12224>>2]}function Xg(a,b){a=a|0;b=b|0;var c=0,d=0;a=H[b+2|0];c=1<<a;d=a>>>5&1;a=H[b+1|0];return c&G[((d|(H[(a>>>2&15|H[b|0]<<4&240)+14240|0]<<3|a<<1&6))<<2)+12224>>2]}function sa(a,b,c,d){var e=0,f=0;e=ia-16|0;ia=e;b=M(b,d);f=Cb(b);if(!f){G[e>>2]=b;ka[G[13633]](8312,e)|0;aa(1);W()}b=Pa(f,a,M(c,d));Aa(a);ia=e+16|0;return b}function Ec(a){var b=0,c=0;G[a+112>>2]=0;G[a+116>>2]=0;c=G[a+4>>2];b=G[a+44>>2]-c|0;G[a+120>>2]=b;G[a+124>>2]=b>>31;b=a;a=G[a+8>>2];if(!1){a=c}G[b+104>>2]=a}function Ih(a,b){a=a|0;b=b|0;a=ka[G[a+368>>2]](G[a+372>>2],b)|0;if(a>>>0<=65535){a=G[(a>>>3&28|H[(a>>>8|0)+14240|0]<<5)+12224>>2]&1<<a}else{a=0}return a|0}function Hh(a,b){a=a|0;b=b|0;a=ka[G[a+368>>2]](G[a+372>>2],b)|0;if(a>>>0<=65535){a=G[(a>>>3&28|H[(a>>>8|0)+14496|0]<<5)+12224>>2]&1<<a}else{a=0}return a|0}function zh(a,b,c){a=a|0;b=b|0;c=c|0;c=oc(c);if((c|0)==-1){return 0}G[a+76>>2]=b;G[a+52>>2]=79;G[a+4>>2]=83;G[a>>2]=84;E[a+73|0]=c;G[b>>2]=a;return 1}function ge(a,b,c){a=a|0;b=b|0;c=c|0;c=oc(c);if((c|0)==-1){return 0}G[a+76>>2]=b;G[a+52>>2]=79;G[a+4>>2]=80;G[a>>2]=81;E[a+73|0]=c;G[b>>2]=a;return 1}function Wd(a,b,c){var d=0;d=ab(a,b,c);a:{if(c){c=b+c|0;while(1){if(!ta(E[b|0])){break a}b=b+1|0;if((c|0)!=(b|0)){continue}break}}d=Ha(a,d)}return d}function Yg(a,b){a=a|0;b=b|0;var c=0,d=0;a=H[b+1|0];c=1<<a;d=a>>>5&1;a=H[b|0];return c&G[((d|(H[(a>>>2&7)+14240|0]<<3|a<<1&6))<<2)+12224>>2]}function $g(a,b){a=a|0;b=b|0;var c=0,d=0;a=H[b+1|0];c=1<<a;d=a>>>5&1;a=H[b|0];return c&G[((d|(H[(a>>>2&7)+14496|0]<<3|a<<1&6))<<2)+12224>>2]}function ic(a){var b=0,c=0;G[a+12>>2]=0;if(G[a+8>>2]){c=G[a+20>>2];while(1){G[(b<<2)+c>>2]=-1;b=b+1|0;if((b|0)!=G[a+8>>2]){continue}break}}}function _h(a,b){a=a|0;b=b|0;var c=0;c=G[18068];a=c+M(a,12)|0;b=M(b,12)+c|0;if(G[a>>2]==G[b>>2]){a=G[a+4>>2]==G[b+4>>2]}else{a=0}return a|0}function jh(a,b){a=a|0;b=b|0;var c=0;a=a+76|0;while(1){c=H[a+H[b|0]|0];if(!(c>>>0>21|!(1<<c&2098688))){b=b+1|0;continue}break}return b|0}function $a(a){var b=0,c=0;b=G[a+8>>2];G[a+12>>2]=b;c=G[a>>2];while(1){b=b-1|0;G[a+8>>2]=b;if(G[(M(b,12)+c|0)+4>>2]>=0){continue}break}}function wh(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return fe(85,a,b,c,d,e,f,g,h,i,j)|0}function Ne(a,b){a=a|0;b=b|0;ka[G[13633]](8124,0)|0;if(a>>>0>=12){Z(6674,5285,196,3043);W()}ka[G[13634]](G[(a<<2)+11436>>2],b)|0}function Nb(a,b,c){var d=0;d=ia-16|0;ia=d;G[d+12>>2]=c;G[d+8>>2]=b;a=Kb(da(a|0,d+8|0,1,d+4|0)|0);ia=d+16|0;return a?-1:G[d+4>>2]}function Fc(a){var b=0;b=ia-16|0;ia=b;G[b>>2]=0;a=ea(a|0,32768,b|0)|0;if(a>>>0>=4294963201){G[18106]=0-a;a=-1}ia=b+16|0;return a}function Bh(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 fe(82,a,b,c,d,e,f,g,h,i,j)|0}function za(a,b){var c=0;c=ia-16|0;ia=c;a=M(a,b);b=Cb(a);if(!b){G[c>>2]=a;ka[G[13633]](8312,c)|0;aa(1);W()}ia=c+16|0;return b}function gc(a){var b=0,c=0;b=ua(a)+1|0;while(1){a:{c=0;if(!b){break a}b=b-1|0;c=b+a|0;if(H[c|0]!=58){continue}}break}return c}function Me(a,b){a=a|0;b=b|0;if(a&65536){xe(a&-65537,b);return}if(!a){ka[G[13634]](10600,b)|0;return}Z(6674,5296,50,3069);W()}function Ce(a){var b=0,c=0;b=H[a|0];if(b){while(1){c=M(c,31)+(b<<24>>24)|0;b=H[a+1|0];a=a+1|0;if(b){continue}break}}return c}function Bd(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;G[c+8>>2]=a;a=Kb(_(1,c+8|0,1,c+4|0)|0);ia=c+16|0;return a?-1:G[c+4>>2]}function gf(a,b){a=a|0;b=b|0;var c=0;c=b;b=G[b>>2]+7&-8;G[c>>2]=b+16;L[a>>3]=yd(G[b>>2],G[b+4>>2],G[b+8>>2],G[b+12>>2])}function Wg(a,b){a=a|0;b=b|0;a=1;a:{if(H[b|0]<194){break a}b=H[b+1|0];if(!(b&128)){break a}a=(b&192)==192}return a|0}function Pd(a,b,c,d,e,f,g,h,i){G[a>>2]=b;G[a+4>>2]=c;G[a+8>>2]=d;G[a+12>>2]=e&65535|(i>>>16&32768|e>>>16&32767)<<16}function sb(a,b,c,d){var e=0,f=0;e=ia-32|0;ia=e;f=e+16|0;Yb(f,d,a);Rc(e,d,b,c);a=Sb(f,e);ia=e+32|0;return a}function Vf(a,b){a=a|0;b=b|0;var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;a=ka[G[13634]](a,b)|0;ia=c+16|0;return a|0}function Vh(a){a=a|0;a=G[17977]+M(a,20)|0;return M((G[a+8>>2]^G[a+4>>2]^G[a+12>>2])<<3|G[a>>2]&7,4093)|0}function bd(a,b){a=a|0;b=b|0;if(a>>>0>=8){Z(6674,5339,29,3150);W()}ka[G[13634]](G[(a<<2)+11348>>2],b)|0}function ob(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;ka[G[13655]](a,b);G[18049]=G[18049]+1;ia=c+16|0}function Ac(a,b){var c=0;c=G[17996];b=G[c+(b<<2)>>2];a=G[(a<<2)+c>>2];return a&b&2048?1:(b|a)>>>10&1}function bf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=ka[a|0](b,c,d,e)|0;ba(ja|0);return a|0}function uh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=he(a,b,c,d);if(a){E[a+134|0]=23}return a|0}function mi(a,b){var c=0,d=0;c=b&31;d=(-1>>>c&a)<<c;c=a;a=0-b&31;return d|(c&-1<<a)>>>a}
function eb(a){a=a+1|0;if(a>>>0>=44){Z(6674,5350,390,2973);W()}return G[(a<<2)+11160>>2]}function ta(a){var b=0;a:{if(a>>>0<=13){b=1;if(1<<a&9728){break a}}b=(a|0)==32}return b}function ci(a,b){a=a|0;b=b|0;var c=0;c=G[18064];return G[c+(a<<3)>>2]==G[(b<<3)+c>>2]|0}function Qe(a,b){a=a|0;b=b|0;if(a&4096){qd(a&-4097,b);return}if(a&8192){bd(a&-8193,b)}}function xc(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;ka[G[13635]](a,b);ia=c+16|0}function vb(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;ka[G[13657]](a,b);ia=c+16|0}function Ua(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;ka[G[17856]](a,b);ia=c+16|0}function Ma(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;ka[G[13658]](a,b);ia=c+16|0}function Qd(a){var b=0;b=ia-16|0;ia=b;G[b+12>>2]=a;ka[G[13632]](0,a);ia=b+16|0}function ai(a,b){a=a|0;b=b|0;var c=0;c=a;a=G[18066];return!hc(c+a|0,a+b|0)|0}function Ve(a,b){a=a|0;b=b|0;var c=0;c=a;a=G[18011];return!hc(c+a|0,a+b|0)|0}function $h(a){a=a|0;a=G[18068]+M(a,12)|0;return M(G[a+4>>2]^G[a>>2],1021)|0}function yh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nc(16288,a,1,b,c,d)|0}function xh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nc(16288,a,0,b,c,d)|0}function Dh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nc(14752,a,1,b,c,d)|0}function Ch(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nc(14752,a,0,b,c,d)|0}function Hb(a,b,c){a=G[17996]+(a<<2)|0;G[a>>2]=G[a>>2]|((b|0)>(c|0)?b:c)}function bc(a,b){var c=0;c=ia-16|0;ia=c;G[c+12>>2]=b;Xc(a,b);ia=c+16|0}function Te(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;bc(2,0);return 1}function Ph(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return G[a+284>>2]}function Db(a){return I[((a>>>0>149?0:a)<<1)+53664>>1]+51840|0}function gg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function Be(){return G[(G[18036]+M(G[18038],12)|0)+4>>2]==-2}function di(a){a=a|0;return M(G[G[18064]+(a<<3)>>2],31)|0}function pc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function gi(a,b){a=a|0;b=b|0;ka[G[13657]](a|131072,b)}function Uc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 1}function Zh(a,b){a=a|0;b=b|0;ka[G[13632]](a|65536,b)}function Th(a,b){a=a|0;b=b|0;ka[G[17856]](a|32768,b)}function wd(a){if((va(71960,a)|0)==-1){wa(71960,a)}}function ii(a,b){a=a|0;b=b|0;ka[G[13656]](a|4096,b)}function hi(a,b){a=a|0;b=b|0;ka[G[13656]](a|8192,b)}function Kb(a){if(!a){return 0}G[18106]=a;return-1}function zb(a){return G[G[17996]+(a<<2)>>2]&7168}function cf(a){a=a|0;a=ia-a&-16;ia=a;return a|0}function bi(a){a=a|0;return Ce(G[18066]+a|0)|0}function We(a){a=a|0;return Ce(G[18011]+a|0)|0}function rh(a,b){a=a|0;b=b|0;return yb(b,a)|0}function xg(a,b){a=a|0;b=b|0;Xc(a|262144,b)}function lf(a){a=a|0;return $(G[a+60>>2])|0}function Vb(a){a=$(a|0)|0;Kb((a|0)==27?0:a)}function Ta(a){return gb(za(ua(a)+1|0,1),a)}function Mh(a,b){a=a|0;b=b|0;Xc(a|16384,b)}function Mb(a,b){gb(ua(a)+a|0,b);return a}function Gc(a){return(a|0)==32|a-9>>>0<5}
function Re(){G[18148]=72480;G[18130]=42}function Zg(a,b){a=a|0;b=b|0;return 0}function Tc(a){return pa(a,68800,202)}function ze(a){return pa(a,71216,15)}function ye(a){return pa(a,71344,10)}function Ae(a){return pa(a,70448,95)}function od(a){return G[a>>2]>>>2&1}function Sc(a){return pa(a,70416,3)}function Yb(a,b,c){Rc(a,b,c,ua(c))}function Ka(a,b){return Dd(a,b,1)}function Eb(a){return a-48>>>0<10}function qb(a){return Ld(a,0)}function ae(a){return lc(a,0)}function _d(a){return lc(a,1)}function xd(a){Ka(71960,a)}function mf(){return 72424}function Kd(a,b){Dd(a,b,0)}function ef(){return ia|0}function df(a){a=a|0;ia=a}
// EMSCRIPTEN_END_FUNCS
e=H;p(na);var ka=c([null,Mh,xg,pc,pc,pc,pc,af,$e,Ue,Te,Se,Zh,Vh,Uh,Uc,Uc,Uc,Sh,ub,Rh,pb,yb,xb,rh,Me,Vf,Kf,_e,Ze,Ye,Xe,We,Ve,qd,Ha,bd,ii,hi,Qe,gi,Pe,fi,ei,di,ci,bi,ai,$h,_h,Ne,Th,xe,Yh,Xh,Wh,Cb,Aa,ff,Qh,zh,ge,Oh,uh,he,Ph,re,Nh,wh,Bh,Kh,Lh,Jc,ie,Jh,Ih,Hh,Gh,Fh,Eh,Dh,Ch,Ah,yh,xh,vh,th,sh,qh,ph,oh,nh,mh,lh,kh,jh,ih,hh,gh,fh,eh,dh,ch,bh,ah,$g,_g,Zg,Yg,Xg,Wg,Vg,Ug,Bg,Ag,zg,yg,wg,vg,ug,tg,sg,rg,qg,pg,og,ng,mg,lg,kg,Tg,Sg,Rg,Qg,Pg,Og,Ng,Mg,Lg,Kg,Jg,Ig,Hg,Gg,Fg,Eg,Dg,Cg,jg,ig,hg,gg,eg,If,Rd,dg,cg,bg,ag,$f,_f,Zf,Yf,Xf,Wf,Uf,Tf,Sf,Rf,Qf,Pf,Of,Nf,Df,fg,vf,pf,of,Mf,Lf,Ff,Jf,Hf,Gf,Ef,Cf,Bf,Af,xf,zf,yf,wf,uf,tf,sf,rf,qf,nf,lf,kf,jf,hf,gf]);function la(){return D.byteLength/65536|0}return{"m":Re,"n":ji,"o":mf,"p":ka,"q":Aa,"r":Cb,"s":ef,"t":df,"u":cf,"v":bf}}return ma(oa)}
// EMSCRIPTEN_END_ASM
)(asmLibraryArg)},instantiate:function(binary,info){return{then:function(ok){var module=new WebAssembly.Module(binary);ok({"instance":new WebAssembly.Instance(module)})}}},RuntimeError:Error};wasmBinary=[];if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heap,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heap[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=heap[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heap[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heap[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heap[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":INITIAL_MEMORY/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){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 addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="relax-ng.tmp.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(file);if(binary){return binary}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["p"];addOnInit(Module["asm"]["m"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch=="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func=="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}Module["callRuntimeCallbacks"]=callRuntimeCallbacks;function withStackSave(f){var stack=stackSave();var ret=f();stackRestore(stack);return ret}Module["withStackSave"]=withStackSave;function demangle(func){return func}Module["demangle"]=demangle;function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}Module["demangleAll"]=demangleAll;function getWasmTableEntry(funcPtr){return wasmTable.get(funcPtr)}Module["getWasmTableEntry"]=getWasmTableEntry;function handleException(e){if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)}Module["handleException"]=handleException;function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}Module["jsStackTrace"]=jsStackTrace;function setWasmTableEntry(idx,func){wasmTable.set(idx,func)}Module["setWasmTableEntry"]=setWasmTableEntry;function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}Module["stackTrace"]=stackTrace;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}Module["___assert_fail"]=___assert_fail;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"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");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)}};Module["PATH"]=PATH;function getRandomDevice(){if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){var randomBuffer=new Uint8Array(1);return function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]}}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");return function(){return crypto_module["randomBytes"](1)[0]}}catch(e){}}return function(){abort("randomDevice")}}Module["getRandomDevice"]=getRandomDevice;var PATH_FS={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_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=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;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")}};Module["PATH_FS"]=PATH_FS;var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.flush(stream.tty)},flush:function(stream){stream.tty.ops.flush(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(60)}try{for(var i=0;i<length;i++){stream.tty.ops.put_char(stream.tty,buffer[offset+i])}}catch(e){throw new FS.ErrnoError(29)}if(length){stream.node.timestamp=Date.now()}return i}},default_tty_ops:{get_char:function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;try{bytesRead=fs.readSync(process.stdin.fd,buf,0,BUFSIZE,-1)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){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){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};Module["TTY"]=TTY;function zeroMemory(address,size){HEAPU8.fill(0,address,address+size)}Module["zeroMemory"]=zeroMemory;function alignMemory(size,alignment){return Math.ceil(size/alignment)*alignment}Module["alignMemory"]=alignMemory;function mmapAlloc(size){abort()}Module["mmapAlloc"]=mmapAlloc;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(63)}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;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)>>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[44]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size},write:function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=buffer.slice(offset,offset+length);node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray){node.contents.set(buffer.subarray(offset,offset+length),position)}else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length},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.usedBytes}}if(position<0){throw new FS.ErrnoError(28)}return position},allocate:function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)},mmap:function(stream,address,length,position,prot,flags){if(address!==0){throw new FS.ErrnoError(28)}if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&contents.buffer===buffer){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<contents.length){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}HEAP8.set(contents,ptr)}return{ptr:ptr,allocated:allocated}},msync:function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};Module["MEMFS"]=MEMFS;function asyncLoad(url,onload,onerror,noRunDep){var dep=!noRunDep?getUniqueRunDependency("al "+url):"";readAsync(url,function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}});if(dep)addRunDependency(dep)}Module["asyncLoad"]=asyncLoad;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath:(path,opts={})=>{path=PATH_FS.resolve(FS.cwd(),path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(p=>!!p),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH_FS.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count+1});current=lookup.node;if(count++>40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath: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:(parentid,name)=>{var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length},hashAddNode:node=>{var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode: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:(parent,name)=>{var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,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:(parent,name,mode,rdev)=>{var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>{return node===node.parent},isMountpoint:node=>{return!!node.mounted},isFile:mode=>{return(mode&61440)===32768},isDir:mode=>{return(mode&61440)===16384},isLink:mode=>{return(mode&61440)===40960},isChrdev:mode=>{return(mode&61440)===8192},isBlkdev:mode=>{return(mode&61440)===24576},isFIFO:mode=>{return(mode&61440)===4096},isSocket:mode=>{return(mode&49152)===49152},flagModes:{"r":0,"r+":2,"w":577,"w+":578,"a":1089,"a+":1090},modeStringToFlags:str=>{var flags=FS.flagModes[str];if(typeof flags=="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:flag=>{var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:(node,perms)=>{if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup:dir=>{var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:(dir,name)=>{try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:(dir,name,isdir)=>{var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:(node,flags)=>{if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:(fd_start=0,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(33)},getStream:fd=>FS.streams[fd],createStream:(stream,fd_start,fd_end)=>{if(!FS.FSStream){FS.FSStream=function(){};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}}}}stream=Object.assign(new FS.FSStream,stream);var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:fd=>{FS.streams[fd]=null},chrdev_stream_ops:{open: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:()=>{throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice:(dev,ops)=>{FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts: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:(populate,callback)=>{if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err("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(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:(type,opts,mountpoint)=>{var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}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(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}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:mountpoint=>{var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>{return parent.node_ops.lookup(parent,name)},mknod:(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(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:(path,mode)=>{mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:(path,mode)=>{mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:(path,mode)=>{var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev:(path,mode,dev)=>{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>{return FS.stat(path,true)},chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode,fd_start,fd_end)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>{return stream.fd===null},llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,address,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,address,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir:path=>{var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories:()=>{FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:()=>{FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device=getRandomDevice();FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:()=>{FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:()=>{var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup:(parent,name)=>{var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:()=>{if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error"};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}},getMode:(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode},findObject:(path,dontResolveLastLink)=>{var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{return null}},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,577);FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node},createDevice:(parent,name,input,output)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:(stream,buffer,offset,length,pos)=>{for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(29)}}if(length){stream.node.timestamp=Date.now()}return i}});return FS.mkdev(path,mode,dev)},forceLoadFile:obj=>{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new 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.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.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=(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);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(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;out("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(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});stream_ops.read=((stream,buffer,offset,length,position)=>{FS.forceLoadFile(node);var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size});node.stream_ops=stream_ops;return node},createPreloadedFile:(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(Browser.handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}},indexedDB:()=>{return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:()=>{return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(paths,onload,onerror)=>{onload=onload||(()=>{});onerror=onerror||(()=>{});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=(()=>{out("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)});openRequest.onsuccess=(()=>{var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(path=>{var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=(()=>{ok++;if(ok+fail==total)finish()});putRequest.onerror=(()=>{fail++;if(ok+fail==total)finish()})});transaction.onerror=onerror});openRequest.onerror=onerror},loadFilesFromDB:(paths,onload,onerror)=>{onload=onload||(()=>{});onerror=onerror||(()=>{});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=(()=>{var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(path=>{var getRequest=files.get(path);getRequest.onsuccess=(()=>{if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()});getRequest.onerror=(()=>{fail++;if(ok+fail==total)finish()})});transaction.onerror=onerror});openRequest.onerror=onerror}};Module["FS"]=FS;var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(dirfd,path,allowEmpty){if(path[0]==="/"){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(8);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}HEAP32[buf>>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;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,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-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;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-28}var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}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<iovcnt;i++){var ptr=HEAP32[iov+i*8>>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<len)break}return ret},doWritev:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>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:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(low,high){return low}};Module["SYSCALLS"]=SYSCALLS;function ___syscall_open(path,flags,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(path);var mode=varargs?SYSCALLS.get():0;var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}Module["___syscall_open"]=___syscall_open;function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}Module["_emscripten_memcpy_big"]=_emscripten_memcpy_big;function _emscripten_get_heap_max(){return HEAPU8.length}Module["_emscripten_get_heap_max"]=_emscripten_get_heap_max;function abortOnCannotGrowMemory(requestedSize){abort("OOM")}Module["abortOnCannotGrowMemory"]=abortOnCannotGrowMemory;function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;abortOnCannotGrowMemory(requestedSize)}Module["_emscripten_resize_heap"]=_emscripten_resize_heap;function _exit(status){exit(status)}Module["_exit"]=_exit;function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}Module["_fd_close"]=_fd_close;function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doReadv(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}Module["_fd_read"]=_fd_read;function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}Module["_fd_seek"]=_fd_seek;function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}Module["_fd_write"]=_fd_write;function _setTempRet0(val){setTempRet0(val)}Module["_setTempRet0"]=_setTempRet0;function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}Module["_time"]=_time;var 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};var readMode=292|73;var writeMode=146;Object.defineProperties(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)}}});FS.FSNode=FSNode;FS.staticInit();Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;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;i<array.length;i++){var chr=array[i];if(chr>255){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<input.length);return output};function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE=="boolean"&&ENVIRONMENT_IS_NODE){var buf=Buffer.from(s,"base64");return new Uint8Array(buf["buffer"],buf["byteOffset"],buf["byteLength"])}try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}var asmLibraryArg={"b":___assert_fail,"i":___syscall_open,"j":_emscripten_memcpy_big,"g":_emscripten_resize_heap,"e":_exit,"d":_fd_close,"h":_fd_read,"l":_fd_seek,"c":_fd_write,"a":wasmMemory,"f":setTempRet0,"k":_time};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["m"]).apply(null,arguments)};var _main=Module["_main"]=function(){return(_main=Module["_main"]=Module["asm"]["n"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["o"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["q"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["r"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["s"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["t"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["u"]).apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return(dynCall_jiji=Module["dynCall_jiji"]=Module["asm"]["v"]).apply(null,arguments)};var ___emscripten_embedded_file_data=Module["___emscripten_embedded_file_data"]=51820;Module["addRunDependency"]=addRunDependency;Module["removeRunDependency"]=removeRunDependency;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){var entryFunction=Module["_main"];args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i<argc;i++){HEAP32[(argv>>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=entryFunction(argc,argv);exit(ret,true);return ret}catch(e){return handleException(e)}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);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){EXITSTATUS=status;if(keepRuntimeAlive()){}else{exitRuntime()}procExit(status)}function procExit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;run();
return JS_RNV.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = JS_RNV;
else if (typeof define === 'function' && define['amd'])
define([], function() { return JS_RNV; });
else if (typeof exports === 'object')
exports["JS_RNV"] = JS_RNV;
var cslSchemaFiles = {
"csl.rnc": `namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
namespace bibo = "http://purl.org/ontology/bibo/"
namespace cs = "http://purl.org/net/xbiblio/csl"
namespace dc = "http://purl.org/dc/elements/1.1/"
namespace sch = "http://purl.oclc.org/dsdl/schematron"
namespace xhtml = "http://www.w3.org/1999/xhtml"
# CSL schema metadata
dc:title [ "Citation Style Language" ]
dc:creator [ "Bruce D'Arcus" ]
dc:creator [ "Simon Kornblith" ]
bibo:editor [ "Frank Bennett" ]
bibo:editor [ "Rintze Zelle" ]
dc:rights [
"Copyright 2007-2020 Citation Style Language and contributors"
]
dc:license [ "MIT license" ]
dc:description [
"RELAX NG compact schema for the Citation Style Language (CSL)."
]
## Subparts of the CSL schema
include "csl-choose.rnc"
include "csl-terms.rnc"
include "csl-types.rnc"
include "csl-variables.rnc"
include "csl-categories.rnc"
# ==============================================================================
## cs:style and cs:locale - Root Elements
div {
start =
independent-style.style | dependent-style.style | locale-file.locale
independent-style.style =
element cs:style {
## Select whether citations appear in-text or as notes.
attribute class { "in-text" | "note" },
style.default-locale,
style.options,
version,
independent-style.style.info,
(style.locale*
& style.macro*
& style.citation
& style.bibliography?)
}
dependent-style.style =
element cs:style {
style.default-locale, version, dependent-style.style.info
}
style.default-locale =
## Set a default style locale.
attribute default-locale { xsd:language }?
version =
## Indicate CSL version compatibility.
[ a:defaultValue = "1.0" ] attribute version { "1.0" }
}
# ==============================================================================
## cs:info - Style and Locale File Metadata
div {
## Metadata for independent styles.
independent-style.style.info =
element cs:info {
info.author*
& info.category*
& info.contributor*
& info.id
& info.issn*
& info.eissn?
& info.issnl?
& independent-style.info.link*
& info.published?
& info.rights?
& info.summary?
& info.title
& info.title-short?
& info.updated
}
## Metadata for dependent styles.
dependent-style.style.info =
element cs:info {
info.author*
& info.category*
& info.contributor*
& info.id
& info.issn*
& info.eissn?
& info.issnl?
& dependent-style.info.link+
& info.published?
& info.rights?
& info.summary?
& info.title
& info.title-short?
& info.updated
}
## Metadata for locale files.
locale-file.locale.info =
element cs:info { info.translator* & info.rights? & info.updated? }
info.author = element cs:author { personal-details }
info.contributor = element cs:contributor { personal-details }
info.translator = element cs:translator { personal-details }
personal-details =
element cs:name { text }
& element cs:email { text }?
& element cs:uri { xsd:anyURI }?
info.category =
## Specify the citation format of the style (using the "citation-format"
## attribute) or the fields and disciplines for which the style is
## relevant (using the "field" attribute).
element cs:category {
attribute citation-format { category.citation-format }
| attribute field { category.field }
}
info.id =
## Specify the unique and stable identifier for the style. A URI
## is valid, but new styles should use a UUID to ensure stability
## and uniqueness.
element cs:id { xsd:anyURI }
info.issn =
## Specify the journal's ISSN(s) for journal-specific styles. An ISSN
## must consist of four digits, a hyphen, three digits, and a check
## digit (a numeral digit or roman X), e.g. "1234-1231".
element cs:issn { issn }
info.eissn =
## Specify the journal's eISSN for journal-specific styles.
element cs:eissn { issn }
info.issnl =
## Specify the journal's ISSN-L for journal-specific styles.
element cs:issnl { issn }
issn = xsd:string { pattern = "\\d{4}\\-\\d{3}(\\d|x|X)" }
independent-style.info.link =
element cs:link {
attribute href { xsd:anyURI },
## Specify how the URL relates to the style.
attribute rel {
## The URI of the CSL style itself.
"self"
|
## URI of the style from which the current style is derived.
"template"
|
## URI of style documentation.
"documentation"
},
info-text
}
dependent-style.info.link =
element cs:link {
attribute href { xsd:anyURI },
## Specify how the URL relates to the style.
attribute rel {
## The URI of the CSL style itself.
"self"
|
## URI of the CSL style whose content should be used for
## processing. Required for dependent styles.
"independent-parent"
|
## URI of style documentation.
"documentation"
},
info-text
}
info.published =
## Specify when the style was initially created or made available.
element cs:published { xsd:dateTime }
info.rights =
element cs:rights {
attribute license { xsd:anyURI }?,
info-text
}
info.summary = element cs:summary { info-text }
info.title = element cs:title { info-text }
info.title-short =
## Specify an abbreviated style title (e.g., "APA")
element cs:title-short { info-text }
info.updated =
## Specify when the style was last updated (e.g.,
## "2007-10-26T21:32:52+02:00")
element cs:updated { xsd:dateTime }
info-text =
attribute xml:lang { xsd:language }?,
text
}
# ==============================================================================
## cs:locale in Independent Styles
div {
style.locale =
## Use to (re)define localized terms, dates and options.
element cs:locale {
## Specify the affected locale(s). If "xml:lang" is not set, the
## "cs:locale" element affects all locales.
attribute xml:lang { xsd:language }?,
(locale.style-options? & locale.date* & locale.terms?)
}
}
# ==============================================================================
## cs:locale Contents - Localization Data
div {
## Localized global options are specified as attributes in the
## cs:style-options element. If future versions of CSL include localized
## options that are citation or bibliography specific, the elements
## cs:citation-options and cs:bibliography-options can be added.
locale.style-options =
element cs:style-options {
## Limit the "ordinal" form to the first day of the month.
[ a:defaultValue = "false" ]
attribute limit-day-ordinals-to-day-1 { xsd:boolean }?,
## Specify whether punctuation (a period or comma) is placed within
## or outside (default) the closing quotation mark.
[ a:defaultValue = "false" ]
attribute punctuation-in-quote { xsd:boolean }?
}
locale-file.locale =
element cs:locale {
## Specify the locale of the locale file.
attribute xml:lang { xsd:language },
version,
locale-file.locale.info?,
(locale.style-options & locale.date+ & locale.terms)
}
locale.date =
element cs:date {
date.form,
delimiter,
font-formatting,
text-case,
locale.date.date-part+
}
date.form =
## Select the localized date format ("text" or "numeric").
attribute form {
## Text date form (e.g., "December 15, 2005").
"text"
|
## Numeric date form (e.g., "2005-12-15").
"numeric"
}
locale.date.date-part =
element cs:date-part {
affixes, font-formatting, text-case, (day | month | year)
}
locale.terms = element cs:terms { terms.term+ }
## The "cs:term" element can either hold a basic string, or "cs:single" and
## "cs:multiple" child elements to give singular and plural forms of the term.
terms.term =
element cs:term {
term.attributes,
(text | (term.single, term.multiple))
}
term.attributes =
(attribute name { terms },
[ a:defaultValue = "long" ] attribute form { term.form }?)
| (attribute name { terms.ordinals },
attribute form { "long" }?,
attribute gender-form { "masculine" | "feminine" }?,
attribute match {
"last-digit" | "last-two-digits" | "whole-number"
}?)
| (attribute name { terms.long-ordinals },
attribute form { "long" }?,
attribute gender-form { "masculine" | "feminine" })
| (attribute name { terms.gender-assignable },
attribute form { "long" }?,
attribute gender { "masculine" | "feminine" })
## "verb-short" reverts to "verb" if the "verb-short" form is not available.
## "symbol" reverts to "short" if the "symbol" form is not available.
## "verb" and "short" revert to "long" if the specified form is not available.
term.form = "long" | "verb" | "short" | "verb-short" | "symbol"
term.single =
## Singular version of the term.
element cs:single { text }
term.multiple =
## Plural version of the term.
element cs:multiple { text }
}
# ==============================================================================
## cs:macro
div {
style.macro =
## Use to create collections of (reusable) formatting instructions.
element cs:macro {
attribute name { xsd:NMTOKEN },
rendering-element+
}
}
# ==============================================================================
## Rendering Elements
div {
rendering-element =
rendering-element.names
| rendering-element.date
| rendering-element.label
| rendering-element.text
| rendering-element.number
| rendering-element.choose
| rendering-element.group
}
# ==============================================================================
## cs:citation and cs:bibliography
div {
style.citation =
## Use to describe the formatting of citations.
element cs:citation { citation.options, sort?, citation.layout }
style.bibliography =
## Use to describe the formatting of the bibliography.
element cs:bibliography {
bibliography.options, sort?, bibliography.layout
}
citation.layout =
element cs:layout {
affixes, delimiter, font-formatting, rendering-element+
}
bibliography.layout =
element cs:layout { affixes, font-formatting, rendering-element+ }
}
# ==============================================================================
## cs:names Rendering Element
div {
rendering-element.names =
element cs:names {
names.attributes,
((names.name?, names.et-al?) & names.label?),
names.substitute?
}
names.attributes =
attribute variable {
list { variables.names+ }
},
affixes,
## Specify the delimiter for name lists of name variables rendered by
## the same cs:names element.
delimiter,
display,
font-formatting
names.name =
element cs:name {
name.attributes,
## Select the "long" (first name + last name, for Western names),
## "short" (last name only, for Western names), or "count" name form
## (returning the number of names in the name variable, which can be
## useful for some sorting algorithms).
[ a:defaultValue = "long" ]
attribute form { "long" | "short" | "count" }?,
affixes,
## Set the delimiter for names in a name variable (e.g., ", " in
## "Doe, Smith")
[ a:defaultValue = ", " ] delimiter,
font-formatting,
name.name-part*
}
name.attributes =
## Use to separate the second-to-last and last name of a name list by
## the "and" term or ampersand.
attribute and {
## Use the "and" term (e.g., "Doe, Johnson and Smith").
"text"
|
## Use the "ampersand" (e.g., "Doe, Johnson & Smith").
"symbol"
}?,
## Specify when the name delimiter is used between a truncated name list
## and the "et-al" (or "and others") term in case of et-al abbreviation
## (e.g., "Smith, Doe et al." or "Smith, Doe, et al.").
[ a:defaultValue = "contextual" ]
attribute delimiter-precedes-et-al {
## The name delimiter is only used when the truncated name list
## consists of two or more names.
"contextual"
|
## The name delimiter is always used.
"always"
|
## The name delimiter is never used.
"never"
|
## The name delimiter is only used if the preceding name is inverted as
## a result of the "name-as-sort-order" attribute.
"after-inverted-name"
}?,
## Specify when the name delimiter is used between the second-to-last
## and last name of a non-truncated name list. Only has an effect when
## the "and" term or ampersand is used (e.g., "Doe and Smith" or "Doe,
## and Smith").
[ a:defaultValue = "contextual" ]
attribute delimiter-precedes-last {
## The name delimiter is only used when the name list consists of
## three or more names.
"contextual"
|
## The name delimiter is always used.
"always"
|
## The name delimiter is never used.
"never"
|
## The name delimiter is only used if the preceding name is inverted as
## a result of the "name-as-sort-order" attribute.
"after-inverted-name"
}?,
## Set the minimum number of names needed in a name variable to activate
## et-al abbreviation.
attribute et-al-min { xsd:integer }?,
## Set the number of names to render when et-al abbreviation is active.
attribute et-al-use-first { xsd:integer }?,
## As "et-al-min", but only affecting subsequent citations to an item.
attribute et-al-subsequent-min { xsd:integer }?,
## As "et-al-use-first", but only affecting subsequent citations to an
## item.
attribute et-al-subsequent-use-first { xsd:integer }?,
## If set to "true", the "et-al" (or "and others") term is replaced by
## an ellipsis followed by the last name of the name variable.
[ a:defaultValue = "false" ]
attribute et-al-use-last { xsd:boolean }?,
## If set to "false", names are not initialized and "initialize-with"
## only affects initials already present in the input data.
[ a:defaultValue = "true" ] attribute initialize { xsd:boolean }?,
## Activate initializing of given names. The attribute value is appended
## to each initial (e.g., with ". ", "Orson Welles" becomes "O. Welles").
attribute initialize-with { text }?,
## Specify whether (and which) names should be rendered in their sort
## order (e.g., "Doe, John" instead of "John Doe").
attribute name-as-sort-order {
## Render the first name of each name variable in sort order.
"first"
|
## Render all names in sort order.
"all"
}?,
## Sets the delimiter for name-parts that have switched positions as a
## result of "name-as-sort-order" (e.g., ", " in "Doe, John").
[ a:defaultValue = ", " ] attribute sort-separator { text }?
name.name-part =
## Use to format individual name parts (e.g., "Jane DOE").
element cs:name-part {
attribute name { "family" | "given" },
affixes,
font-formatting,
text-case
}
names.et-al =
## Specify the term used for et-al abbreviation and its formatting.
element cs:et-al {
## Select the term to use for et-al abbreviation.
[ a:defaultValue = "et-al" ]
attribute term { "et-al" | "and others" }?,
font-formatting
}
## Inherits variable from the parent cs:names element.
names.label =
element cs:label {
[ a:defaultValue = "long" ] attribute form { term.form }?,
label.attributes-shared
}
names.substitute =
## Specify substitution options when the name variables selected on the
## parent cs:names element are empty.
element cs:substitute { (substitute.names | rendering-element)+ }
## Short version of cs:names, without children, allowed in cs:substitute.
substitute.names = element cs:names { names.attributes }
}
# ==============================================================================
## cs:date Rendering Element
div {
rendering-element.date =
element cs:date {
attribute variable { variables.dates },
((
## Limit the date parts rendered.
[ a:defaultValue = "year-month-day" ]
attribute date-parts {
## Year, month and day
"year-month-day"
|
## Year and month
"year-month"
|
## Year only
"year"
}?,
date.form,
rendering-element.date.date-part.localized*)
| (rendering-element.date.date-part.non-localized+, delimiter)),
affixes,
display,
font-formatting,
text-case
}
rendering-element.date.date-part.localized =
## Specify overriding formatting for localized dates (affixes
## cannot be overridden, as these are considered locale-specific).
## Example uses are forcing the use of leading-zeros, or of the
## "short" month form. Has no effect on which, and in what order,
## date parts are rendered.
element cs:date-part {
font-formatting, text-case, (day | month | year)
}
rendering-element.date.date-part.non-localized =
## Specify, in the desired order, the date parts that should be
## rendered and their formatting.
element cs:date-part {
affixes, font-formatting, text-case, (day | month | year)
}
day =
attribute name { "day" },
## Day forms: "numeric" ("5"), "numeric-leading-zeros" ("05"), "ordinal"
## ("5th").
[ a:defaultValue = "numeric" ]
attribute form { "numeric" | "numeric-leading-zeros" | "ordinal" }?,
range-delimiter
month =
attribute name { "month" },
## Months forms: "long" (e.g., "January"), "short" ("Jan."), "numeric"
## ("1"), and "numeric-leading-zeros" ("01").
[ a:defaultValue = "long" ]
attribute form {
"long" | "short" | "numeric" | "numeric-leading-zeros"
}?,
range-delimiter,
strip-periods
year =
attribute name { "year" },
## Year forms: "long" ("2005"), "short" ("05").
[ a:defaultValue = "long" ] attribute form { "short" | "long" }?,
range-delimiter
range-delimiter =
## Specify a delimiter for date ranges (by default the en-dash). A custom
## delimiter is retrieved from the largest date part ("day", "month" or
## "year") that differs between the two dates.
[ a:defaultValue = "" ] attribute range-delimiter { text }?
}
# ==============================================================================
## cs:text Rendering Element
div {
rendering-element.text =
## Use to call macros, render variables, terms, or verbatim text.
element cs:text {
text.attributes,
affixes,
display,
font-formatting,
quotes,
strip-periods,
text-case
}
text.attributes =
## Select a macro.
attribute macro { xsd:NMTOKEN }
| (
## Select a term.
attribute term { terms },
[ a:defaultValue = "long" ] attribute form { term.form }?,
## Specify term plurality: singular ("false") or plural ("true").
[ a:defaultValue = "false" ] attribute plural { xsd:boolean }?)
|
## Specify verbatim text.
attribute value { text }
| (
## Select a variable.
attribute variable { variables.standard },
[ a:defaultValue = "long" ] attribute form { "short" | "long" }?)
}
# ==============================================================================
## cs:number Rendering Element
div {
rendering-element.number =
## Use to render a number variable.
element cs:number {
number.attributes, affixes, display, font-formatting, text-case
}
number.attributes =
attribute variable { variables.numbers },
## Number forms: "numeric" ("4"), "ordinal" ("4th"), "long-ordinal"
## ("fourth"), "roman" ("iv").
[ a:defaultValue = "numeric" ]
attribute form { "numeric" | "ordinal" | "long-ordinal" | "roman" }?
}
# ==============================================================================
## cs:label Rendering Element
div {
rendering-element.label =
## Use to render a term whose pluralization depends on the content of a
## variable. E.g., if "page" variable holds a range, the plural label
## "pp." is selected instead of the singular "p.".
element cs:label { label.attributes, label.attributes-shared }
label.attributes =
attribute variable { variables.numbers | "locator" | "page" },
[ a:defaultValue = "long" ]
attribute form { "long" | "short" | "symbol" }?
label.attributes-shared =
## Specify when the plural version of a term is selected.
[ a:defaultValue = "contextual" ]
attribute plural { "always" | "never" | "contextual" }?,
affixes,
font-formatting,
strip-periods,
text-case
}
# ==============================================================================
## cs:group Rendering Element
div {
rendering-element.group =
## Use to group rendering elements. Groups are useful for setting a
## delimiter for the group children, for organizing the layout of
## bibliographic entries (using the "display" attribute), and for
## suppressing the rendering of terms and verbatim text when variables
## are empty.
element cs:group {
group.attributes,
affixes,
delimiter,
display,
font-formatting,
rendering-element+
}
group.attributes = notAllowed?
}
# ==============================================================================
## Style Options
div {
style.options =
style.demote-non-dropping-particle,
style.initialize-with-hyphen,
style.page-range-format,
names-inheritable-options,
name-inheritable-options
citation.options =
citation.cite-group-delimiter,
citation.collapse-options,
citation.disambiguate-options,
citation.near-note-distance,
names-inheritable-options,
name-inheritable-options
bibliography.options =
bibliography.hanging-indent,
bibliography.line-formatting-options,
bibliography.second-field-align,
bibliography.subsequent-author-substitute-options,
names-inheritable-options,
name-inheritable-options
style.demote-non-dropping-particle =
## Specify whether the non-dropping particle is demoted in inverted
## names (e.g., "Koning, W. de").
[ a:defaultValue = "display-and-sort" ]
attribute demote-non-dropping-particle {
"never" | "sort-only" | "display-and-sort"
}?
style.initialize-with-hyphen =
## Specify whether compound given names (e.g., "Jean-Luc") are
## initialized with ("J-L") or without a hyphen ("JL").
[ a:defaultValue = "true" ]
attribute initialize-with-hyphen { xsd:boolean }?
style.page-range-format =
## Reformat page ranges in the "page" variable.
attribute page-range-format {
"expanded"
| "minimal"
| "minimal-two"
| "chicago"
| "chicago-15"
| "chicago-16"
}?
citation.cite-group-delimiter =
## Activate cite grouping and specify the delimiter for cites within a
## cite group.
[ a:defaultValue = ", " ] attribute cite-group-delimiter { text }?
citation.collapse-options =
## Activate cite grouping and specify the method of citation collapsing.
attribute collapse {
## Collapse ranges of numeric cites, e.g. from "[1,2,3]" to "[1-3]".
"citation-number"
|
## Collapse cites by suppressing repeated names, e.g. from "(Doe
## 2000, Doe 2001)" to "(Doe 2000, 2001)".
"year"
|
## Collapse cites as with "year", but also suppresses repeated
## years, e.g. from "(Doe 2000a, Doe 2000b)" to "(Doe 2000a, b)".
"year-suffix"
|
## Collapses cites as with "year-suffix", but also collapses
## ranges of year-suffixes, e.g. from "(Doe 2000a, Doe 2000b,
## Doe 2000c)" to "(Doe 2000a-c)".
"year-suffix-ranged"
}?,
## Specify the delimiter between year-suffixes. Defaults to the cite
## delimiter.
attribute year-suffix-delimiter { text }?,
## Specify the delimiter following a group of collapsed cites. Defaults
## to the cite delimiter.
attribute after-collapse-delimiter { text }?
citation.disambiguate-options =
## Set to "true" to activate disambiguation by showing names that were
## originally hidden as a result of et-al abbreviation.
[ a:defaultValue = "false" ]
attribute disambiguate-add-names { xsd:boolean }?,
## Set to "true" to activate disambiguation by expanding names, showing
## initials or full given names.
[ a:defaultValue = "false" ]
attribute disambiguate-add-givenname { xsd:boolean }?,
## Set to "true" to activate disambiguation by adding year-suffixes
## (e.g., "(Doe 2007a, Doe 2007b)") for items from the same author(s)
## and year.
[ a:defaultValue = "false" ]
attribute disambiguate-add-year-suffix { xsd:boolean }?,
## Specify how name are expanded for disambiguation.
[ a:defaultValue = "by-cite" ]
attribute givenname-disambiguation-rule {
## Each ambiguous names is progressively transformed until
## disambiguated (when disambiguation is not possible, the name
## remains in its original form).
"all-names"
|
## As "all-names", but name expansion is limited to showing
## initials.
"all-names-with-initials"
|
## As "all-names", but disambiguation is limited to the first name
## of each cite.
"primary-name"
|
## As "all-names-with-initials", but disambiguation is limited to
## the first name of each cite.
"primary-name-with-initials"
|
## As "all-names", but only ambiguous names in ambiguous cites are
## expanded.
"by-cite"
}?
citation.near-note-distance =
## Set the number of preceding notes (footnotes or endnotes) within
## which the current item needs to have been previously cited in order
## for the "near-note" position to be "true".
[ a:defaultValue = "5" ]
attribute near-note-distance { xsd:integer }?
bibliography.hanging-indent =
## Set to "true" to render bibliographic entries with hanging indents.
[ a:defaultValue = "false" ]
attribute hanging-indent { xsd:boolean }?
bibliography.line-formatting-options =
## Set the spacing between bibliographic entries.
[ a:defaultValue = "1" ]
attribute entry-spacing { xsd:nonNegativeInteger }?,
## Set the spacing between bibliographic lines.
[ a:defaultValue = "1" ]
attribute line-spacing {
xsd:integer { minExclusive = "0" }
}?
bibliography.second-field-align =
## Use to align any subsequent lines of bibliographic entries with the
## beginning of the second field.
attribute second-field-align {
## Align the first field with the margin.
"flush"
|
## Put the first field in the margin and align all subsequent
## lines of text with the margin.
"margin"
}?
bibliography.subsequent-author-substitute-options =
## Substitute names that repeat in subsequent bibliographic entries by
## the attribute value.
attribute subsequent-author-substitute { text }?,
## Specify the method of substitution of names repeated in subsequent
## bibliographic entries.
[ a:defaultValue = "complete-all" ]
attribute subsequent-author-substitute-rule {
## Requires a match of all rendered names in the name variable, and
## substitutes once for all names.
"complete-all"
|
## Requires a match of all rendered names in the name variable,
## and substitutes for each name.
"complete-each"
|
## Substitutes for each name, until the first mismatch.
"partial-each"
|
## Substitutes the first name if it matches.
"partial-first"
}?
## Options affecting cs:names, for cs:style, cs:citation and cs:bibliography.
names-inheritable-options =
## Inheritable name option, companion for "delimiter" on cs:names.
attribute names-delimiter { text }?
## Options affecting cs:name, for cs:style, cs:citation and cs:bibliography.
name-inheritable-options =
name.attributes,
## Inheritable name option, companion for "delimiter" on cs:name.
attribute name-delimiter { text }?,
## Inheritable name option, companion for "form" on cs:name.
[ a:defaultValue = "long" ]
attribute name-form { "long" | "short" | "count" }?
}
# ==============================================================================
## cs:sort - Sorting
div {
sort =
## Specify how cites and bibliographic entries should be sorted. By
## default, items appear in the order in which they were cited.
element cs:sort { sort.key+ }
sort.key =
element cs:key {
(attribute variable { variables }
| attribute macro { xsd:NMTOKEN }),
## The minimum number of names needed in a name variable to activate
## name list truncation. Overrides the values set on any
## "et-al-(subsequent-)min" attributes.
attribute names-min { xsd:integer }?,
## The number of names to render when name list truncation is
## activated. Overrides the values set on the
## "et-al-(subsequent-)use-first" attributes.
attribute names-use-first { xsd:integer }?,
## Use to override the value of the "et-at-use-last" attribute.
attribute names-use-last { xsd:boolean }?,
## Select between an ascending and descending sort.
[ a:defaultValue = "ascending" ]
attribute sort { "ascending" | "descending" }?
}
}
# ==============================================================================
## Formatting attributes.
div {
affixes =
[ a:defaultValue = "" ] attribute prefix { text }?,
[ a:defaultValue = "" ] attribute suffix { text }?
delimiter = attribute delimiter { text }?
display =
## By default, bibliographic entries consist of continuous runs of text.
## With the "display" attribute, portions of each entry can be
## individually positioned.
attribute display {
## Places the content in a block stretching from margin to margin.
"block"
|
## Places the content in a block starting at the left margin.
"left-margin"
|
## Places the content in a block to the right of a preceding
## "left-margin" block.
"right-inline"
|
## Places the content in a block indented to the right by a standard
## amount.
"indent"
}?
## The font-formatting attributes are based on those of CSS and XSL-FO.
font-formatting =
[ a:defaultValue = "normal" ]
attribute font-style { "italic" | "normal" | "oblique" }?,
[ a:defaultValue = "normal" ]
attribute font-variant { "normal" | "small-caps" }?,
[ a:defaultValue = "normal" ]
attribute font-weight { "normal" | "bold" | "light" }?,
[ a:defaultValue = "none" ]
attribute text-decoration { "none" | "underline" }?,
[ a:defaultValue = "baseline" ]
attribute vertical-align { "baseline" | "sup" | "sub" }?
quotes =
## When set to "true", quotes are placed around the rendered text.
[ a:defaultValue = "false" ] attribute quotes { xsd:boolean }?
strip-periods =
## When set to "true", periods are removed from the rendered text.
[ a:defaultValue = "false" ]
attribute strip-periods { xsd:boolean }?
text-case =
attribute text-case {
## Renders text in lowercase.
"lowercase"
|
## Renders text in uppercase.
"uppercase"
|
## Capitalizes the first character (other characters remain in
## their original case).
"capitalize-first"
|
## Capitalizes the first character of every word (other characters
## remain in their original case).
"capitalize-all"
|
## Renders text in title case.
"title"
|
## Renders text in sentence case.
## Deprecated. Will be removed in CSL 1.1
"sentence"
}?
}
`,
"csl-choose.rnc": `namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
namespace cs = "http://purl.org/net/xbiblio/csl"
## cs:choose - Conditional Statements"
div {
rendering-element.choose =
## Use to conditionally render rendering elements.
element cs:choose { choose.if, choose.else-if*, choose.else? }
choose.if = element cs:if { condition+, match, rendering-element* }
choose.else-if =
element cs:else-if { condition+, match, rendering-element* }
choose.else = element cs:else { rendering-element+ }
condition =
## If used, the element content is only rendered if it disambiguates two
## otherwise identical citations. This attempt at disambiguation is only
## made after all other disambiguation methods have failed.
[ a:defaultValue = "true" ] attribute disambiguate { "true" }
|
## Tests whether the given variables contain numeric text.
attribute is-numeric {
list { variables+ }
}
|
## Tests whether the given date variables contain approximate dates.
attribute is-uncertain-date {
list { variables.dates+ }
}
|
## Tests whether the locator matches the given locator types.
attribute locator {
list { terms.locator+ }
}
|
## Tests whether the cite position matches the given positions.
attribute position {
list {
("first"
| "subsequent"
| "ibid"
| "ibid-with-locator"
| "near-note")+
}
}
|
## Tests whether the item matches the given types.
attribute type {
list { item-types+ }
}
|
## Tests whether the default ("long") forms of the given variables
## contain non-empty values.
attribute variable {
list { variables+ }
}
match =
## Set the testing logic.
[ a:defaultValue = "all" ]
attribute match {
## Element only tests "true" when all conditions test "true" for all
## given test values.
"all"
|
## Element tests "true" when any condition tests "true" for any given
## test value.
"any"
|
## Element only tests "true" when none of the conditions test "true"
## for any given test value.
"none"
}?
}
`,
"csl-terms.rnc": `namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
## Terms
div {
terms =
terms.gender-assignable
| terms.gender-variants
| terms.locator
| item-types
|
## Contributor roles
variables.names
| "editortranslator"
|
## Miscellaneous terms
"accessed"
| "ad"
| "advance-online-publication"
| "album"
| "and"
| "and others"
| "anonymous"
| "at"
| "audio-recording"
| "available at"
| "bc"
| "bce"
| "by"
| "ce"
| "circa"
| "cited"
| "et-al"
| "film"
| "forthcoming"
| "from"
| "henceforth"
| "ibid"
| "in"
| "in press"
| "internet"
| "interview"
| "letter"
| "loc-cit"
| "no date"
| "no-place"
| "no-publisher"
| "on"
| "online"
| "op-cit"
| "original-work-published"
| "personal-communication"
| "podcast"
| "podcast-episode"
| "preprint"
| "presented at"
| "radio-broadcast"
| "radio-series"
| "radio-series-episode"
| "reference"
| "retrieved"
| "review-of"
| "scale"
| "special-issue"
| "special-section"
| "television-broadcast"
| "television-series"
| "television-series-episode"
| "video"
| "working-paper"
|
## Punctuation
"open-quote"
| "close-quote"
| "open-inner-quote"
| "close-inner-quote"
| "page-range-delimiter"
| "colon"
| "comma"
| "semicolon"
|
## Seasons
"season-01"
| "season-02"
| "season-03"
| "season-04"
## Terms to which a gender may be assigned
terms.gender-assignable =
## Months
"month-01"
| "month-02"
| "month-03"
| "month-04"
| "month-05"
| "month-06"
| "month-07"
| "month-08"
| "month-09"
| "month-10"
| "month-11"
| "month-12"
| terms.non-locator-number-variables
| terms.locator-number-variables
## Terms for which gender variants may be specified
terms.gender-variants = terms.ordinals | terms.long-ordinals
terms.ordinals =
## Ordinals
xsd:string { pattern = "ordinal(-\\d{2})?" }
terms.long-ordinals =
## Long ordinals
"long-ordinal-01"
| "long-ordinal-02"
| "long-ordinal-03"
| "long-ordinal-04"
| "long-ordinal-05"
| "long-ordinal-06"
| "long-ordinal-07"
| "long-ordinal-08"
| "long-ordinal-09"
| "long-ordinal-10"
## Locators
terms.locator =
"act"
| "appendix"
| "article-locator"
| "book"
| "canon"
| "chapter"
| "column"
| "elocation"
| "equation"
| "figure"
| "folio"
| "line"
| "note"
| "opus"
| "paragraph"
| "rule"
| "scene"
| "sub-verbo"
| "table"
| "timestamp"
| "title-locator"
| "verse"
| terms.locator-number-variables
## Locator terms with matching number variables
terms.locator-number-variables =
"issue"
| "page"
| "part"
| "section"
| "supplement"
| "version"
| "volume"
## Non-locator terms accompanying number variables
terms.non-locator-number-variables =
"chapter-number"
| "citation-number"
| "collection-number"
| "edition"
| "first-reference-note-number"
| "number"
| "number-of-pages"
| "number-of-volumes"
| "page-first"
| "printing"
}
`,
"csl-types.rnc": `namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
## Item types
div {
item-types =
"article"
| "article-journal"
| "article-magazine"
| "article-newspaper"
| "bill"
| "book"
| "broadcast"
| "chapter"
| "classic"
| "collection"
| "dataset"
| "document"
| "entry"
| "entry-dictionary"
| "entry-encyclopedia"
| "event"
| "figure"
| "graphic"
| "hearing"
| "interview"
| "legal_case"
| "legislation"
| "manuscript"
| "map"
| "motion_picture"
| "musical_score"
| "pamphlet"
| "paper-conference"
| "patent"
| "performance"
| "periodical"
| "personal_communication"
| "post"
| "post-weblog"
| "regulation"
| "report"
| "review"
| "review-book"
| "software"
| "song"
| "speech"
| "standard"
| "thesis"
| "treaty"
| "webpage"
}
`,
"csl-variables.rnc": `namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
## Variables
div {
## All variables
variables = variables.dates | variables.names | variables.standard
## Standard variables
variables.standard =
variables.numbers | variables.strings | variables.titles
## Date variables
variables.dates =
"accessed"
| "available-date"
| "event-date"
| "issued"
| "original-date"
| "submitted"
## Name variables
variables.names =
"author"
| "chair"
| "collection-editor"
| "compiler"
| "composer"
| "container-author"
| "contributor"
| "curator"
| "director"
| "editor"
| "editor-translator"
| "editorial-director"
| "executive-producer"
| "guest"
| "host"
| "illustrator"
| "interviewer"
| "narrator"
| "organizer"
| "original-author"
| "performer"
| "producer"
| "recipient"
| "reviewed-author"
| "script-writer"
| "series-creator"
| "translator"
## Number variables
variables.numbers =
"chapter-number"
| "citation-number"
| "collection-number"
| "edition"
| "first-reference-note-number"
| "issue"
| "locator"
| "number"
| "number-of-pages"
| "number-of-volumes"
| "page"
| "page-first"
| "part-number"
| "printing-number"
| "section"
| "supplement-number"
| "version"
| "volume"
## Title variables
variables.titles =
"collection-title"
| "container-title"
| "original-title"
| "part-title"
| "reviewed-title"
| "title"
| "volume-title"
| # Short title forms. Will be removed in CSL 1.1
"title-short"
| "container-title-short"
## String variables
variables.strings =
"abstract"
| "annote"
| "archive"
| "archive_collection"
| "archive_location"
| "archive-place"
| "authority"
| "call-number"
| "citation-key"
| "citation-label"
| "dimensions"
| "division"
| "DOI"
| # Alias for 'event-title'. Deprecated. Will be removed in CSL 1.1.
"event"
| "event-title"
| "event-place"
| "genre"
| "ISBN"
| "ISSN"
| "jurisdiction"
| "keyword"
| "language"
| "license"
| "medium"
| "note"
| "original-publisher"
| "original-publisher-place"
| "PMCID"
| "PMID"
| "publisher"
| "publisher-place"
| "references"
| "reviewed-genre"
| "scale"
| "source"
| "status"
| "URL"
| "year-suffix"
}
`,
"csl-categories.rnc": `namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
## Categories for style metadata
div {
category.citation-format =
"author" | "author-date" | "label" | "note" | "numeric"
## Use "generic-base" for styles that are non-discipline specific, such as
## APA, Harvard, etc.
category.field =
"anthropology"
| "astronomy"
| "biology"
| "botany"
| "chemistry"
| "communications"
| "engineering"
| "generic-base"
| "geography"
| "geology"
| "history"
| "humanities"
| "law"
| "linguistics"
| "literature"
| "math"
| "medicine"
| "philosophy"
| "physics"
| "political_science"
| "psychology"
| "science"
| "social_science"
| "sociology"
| "theology"
| "zoology"
}
`
};
/*
***** BEGIN LICENSE BLOCK *****
Copyright © 2022 Corporation for Digital Scholarship
Vienna, Virginia, USA
http://zotero.org
This file is part of Zotero.
Zotero is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Zotero is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with Zotero. If not, see <http://www.gnu.org/licenses/>.
***** END LICENSE BLOCK *****
*/
(function() {
/**
* Runs the Relax NG Compact Syntax Validator compiled from C++ to JS
* with csl.rs and specified string CSL
*
* @param string {String} A string containing a CSL style to be validated
* @returns {string}
*/
var validate = async function(string) {
const Module = {
arguments: ["-q", "csl.rnc", "style.xml"],
preRun: [async () => {
const depName = 'initializing-rnc-fs';
Module.addRunDependency(depName);
for (var file in cslSchemaFiles) {
await Module.FS.writeFile(file, cslSchemaFiles[file]);
}
await Module.FS.writeFile('style.xml', string);
Module.removeRunDependency(depName);
}],
stdout: function(code) {
cslValidatorOutput += String.fromCharCode(code);
},
stderr: function(code) {
cslValidatorOutput += String.fromCharCode(code);
}
};
let cslValidatorOutput = "";
await JS_RNV(Module);
return cslValidatorOutput;
};
if (typeof window === 'undefined') {
onmessage = async function(event) {
postMessage(await validate(event.data));
}
}
if (typeof exports === 'object' && typeof module === 'object') {
module.exports = validate;
}
else if (typeof window !== "undefined") {
window.validate = validate;
}
})();